Bienvenida

Como todo en la vida, la innovación es la clave del éxito por lo que nos hemos visto en la necesidad de "evolucionar" este blog para abarcar muchos otros temas que estaban quedando de lado en nuestros cursos "oficiales".

Si deseas aprender o profundizar algunos temas en particular, no dudes en contactarnos.


viernes, 28 de diciembre de 2012

Organización vs. Reorganización


Una vez más al tacho con las best practices ...

"We trained hard, but it seemed that every time we were beginning
to form up into teams, we would be reorganized. I was to learn later
in life that we tend to meet any new situation by reorganizing;
and a wonderful method it can be for creating the illusion of progress
while producing confusion, inefficiency, and demoralization."

Y aquí Dilbert lo explica muy bien ( hace casi 20 años ... )

http://dilbert.com/fast/1995-02-05/

Leer el texto completo "Modifican el Reglamento de Organización  y Funciones de la Superintendencia Nacional de Aduanas y de Administración Tributaria - SUNAT" DECRETO SUPREMO Nº 259-2012-EF

PD: Dr. House una vez más Yo soy responsable de lo que digo, no de lo que tú entiendes

miércoles, 19 de diciembre de 2012

domingo, 16 de diciembre de 2012

Infografía: Almacenamiento en la nube

Una interesante comparación entre Google Drive, Dropbox, Microsoft SkyDrive, Apple iCloud y Amazon Cloud Drive. 

Ver la infografía aquí

domingo, 18 de noviembre de 2012

¿ Como llamar a esto ?

Revisando las ofertas laborales me encuentro con esto.

No es de extrañar que hace tiempo, los que ingresan a trabajar por C.A.S. ganan igual o más que los que tiene varios años a cuestas en la organización. Pero eso NO es lo que motiva mi atención, sino el hecho de ver que el contrato finaliza el 31 de diciembre del 2012 .. o sea .. ahorita.

¿ Para qué gastar recursos en un contrato que durará un mes ? ( mes en el cual casi nadie trabaja porque todos andan pensando en el amigo secreto, el regalito, la comilona de confraternidad y tontería y media ... ) ¿ O será que ese CAS será el elegido para trabajar por lo que no hace el resto ?

Lo peor es que los requisitos se acreditan mediante declaración jurada ... o sea .. juro nomás que el papel aguanta todo ... como la palabra empeñada está de capa caída en el Perú ... que importa .. total, si no sé algo, luego de ingresar los cursos de capacitación son fijos ... so pretexto de estar a la vanguardia ... AAAGGGGGG ....  ¿ Y que dice el adorado sindicato ? ...

Luego nos quejamos que los sistemas funcionan mal ....

Finalmente como diría el Dr. House : Yo soy responsable de lo que digo, no de lo que tú entiendes

miércoles, 31 de octubre de 2012

Los 81 tipos de Empleados en Worst Place to Work

Parece que el diseñador gráfico se basó en casos de la vida real tomados de Worst Place to Work.

Cualquier parecido con la realidad .... es cierto !!!!


Tomado de : http://lourdesquinteiros.com.ar/wp-content/uploads/2012/10/Los-81-tipos-de-empleados-Lourdes-Quinteiros.jpg

domingo, 14 de octubre de 2012

DNI Electrónico

Esta noticia es de España y me parece bastante interesante sobre todo ahora que la RENIEC está implementando algunas cosas similares ...

Lee el post completo aquí.

jueves, 11 de octubre de 2012

Un casito de Programación


Escriba un programa Java que solicite un número entero entre 2 y 10 que además sea impar.

En base al número debe formar un rombo invertido

package com.ejemplo.main;

import java.util.Scanner;

public class Rombo {
int[] array = null;
int num = 0;
int filas = 0;
public static void main(String[] args) {
Rombo r = new Rombo();
r.cargaRombo();

}
public void cargaRombo() {
Scanner sc = new Scanner(System.in);
System.out.println("Ingrese un numero IMPAR entre 2 y 10 :");
num = sc.nextInt();
if ( num >= 2 && num <= 10 && (num % 2 != 0 )) {
imprimeROmbo();
} else {
System.out.println("El numero NO ESTA entre 2 y 10 ... BYE");
}
}
public void imprimeROmbo() {
// El numero es el centro de la fila externa del rombo
boolean llegamos_a_uno = false;
Boolean no_llegamos_al_numero = true;
int num_aux1 = 0;
int num_aux2 = 0;
String tabs = "\t";
num_aux1 = num;
do {
System.out.print(tabs);
num_aux2 = num_aux1;
for (int i=1; i <= num_aux2;  i++ ) {
System.out.print( i + "\t" );
}
System.out.print("\n");
num_aux1 = num_aux1 - 2;
tabs = tabs + "\t";
if ( num_aux1 < 1 ) {
llegamos_a_uno = true;
}
} while ( !llegamos_a_uno );
// num_aux se quedo en -1
num_aux2 = 1;
tabs = tabs.substring(1);
// Ahora imprimimos al reves
while ( no_llegamos_al_numero ) {
// a tabs hay que quitarle un TAB
tabs = tabs.substring(1);
System.out.print(tabs);
num_aux2 = num_aux2 + 2;
for (int i=1; i <= num_aux2;  i++ ) {
System.out.print( i + "\t" );
}
System.out.print("\n");
if ( num_aux2 == num ) {
no_llegamos_al_numero = false;
}
}
}

}

jueves, 4 de octubre de 2012

Un casito de Programación

Escriba un programa Java que solicite un número entero entre 2 y 10 que además sea impar.

En base al número debe formar un rombo invertido como el de la figura.


Sólo como quien práctica para el examen. 

La solución ... pronto en este link

PD: Esa fue pregunta en otro lado ... y no la hice yo

VoltDB the new SQL database for high velocity applications


VoltDB se dirige a una nueva generación de aplicaciones de base de datos - feeds en tiempo real, sensor impulsados ​​por flujos de datos, micro-transacciones, de baja latencia de los sistemas de comercio - el rendimiento que requiere la base de datos que puede llegar a millones de operaciones por segundo. Es más, las aplicaciones que utilizan estos datos deben escalar bajo demanda, ofrecer tolerancia a fallos sin defectos y permitir visibilidad en tiempo real a los datos que impulsa el valor del negocio.


VoltDB es más que una base de datos ultra-rápida. Todas las distribuciones de productos vienen con las herramientas de productividad para desarrolladores, aplicaciones de muestra y las implementaciones de referencia para hacer despegar su proyecto rápidamente. Incluye ​​imágenes de Amazon EC2 y VMware que permiten probar VoltDB sin hacer grandes inversiones de infraestructura.

Dar click aqui para leer el artículo "10 rules for scalable performance in 'simple operation' datastores"

miércoles, 3 de octubre de 2012

Mini Curso de Android #5


Android ofrece una variedad Layouts útiles para contener y organizar los elementos individuales de
una actividad como botones, casillas de verificación y otras vistas.

La interfaz de usuario de Android se define como una jerarquía de View y ViewGroups. El ViewGroup es un objeto contenedor que actúa como clase base para la familia de Layouts, que se extendían desde la misma.

Los diseños se pueden combinar y anidar para producir casi cualquier configuración de componentes de pantalla que podemos imaginar.

A partir de Android 3,0 se puede producir Actividades multi-paneles empleando la clase Fragment, que se comporta en parte como una actividad en sí misma y en parte como un ViewGroup, y además estas nuevas características se ponen a disposición a través de la plataformas anteriores mediante el paquete de Compatibilidad.

Sigue leyendo aquí.

martes, 2 de octubre de 2012

ACM anuncia importante actualización en la clasificación de sistemas de cómputo

La  ACM (Association for Computing Machinery)  ha completado una importante actualización de su sistema de clasificación de los computadores (CCS), que ha servido como el estándar de facto para clasificar el campo de la informática desde 1964. 

El Profesor Zvi Kedem de la Universidad de Nueva York dirigió el proyecto denominado  "2012 CCS update project". Lideró un grupo de 120 especialistas en computación (un tercio de los becarios ACM) que trabajan en colaboración con el personal y con ACM Semedica, una división de Silverchair especializada en el desarrollo de ontologías. 

La última actualización importante de la CCS fue en 1998.

Se puede ver la clasificación aquí.

Mini Curso de Android #4


La clase Activity proporciona el bloque fundamental para el desarrollo en Android y constituye la primera interface de interacción entre el usuario y la aplicación. Conceptualmente es muy similar en funcionamiento a un JFrame de java Swing.

Las Activities y otros components de una aplicación ( como servicios por ejemplo ) se declaran en el archivo AndroidManifest.xml. Esta declaración permite que Android sepa cómo se puede invocar a esta Actividad y qué código se ejecutará ( muy similar a los servlets ).

Sigue leyendo aquí.

lunes, 1 de octubre de 2012

Mini Curso de Android #3

En este post trataremos sobre la arquitectura de Android que está formada por varias capas que facilitan la creación de aplicaciones de tal forma que ésta distribución permite acceder a las capas más bajas mediante el uso de librerías para no tener que programar a bajo nivel las funcionalidades necesarias para que una aplicación haga uso de los componentes de hardware de los dispositivos móviles. Cada una de las capas utiliza elementos de la capa inferior para realizar sus funciones, es por ello que a este tipo de arquitectura se le conoce también como pila.


Tambien es vital comprender cómo Android gestiona la memoria y puede llegar a detener algunas actividades con tal de ofrecerle los recursos que necesita una aplicación que esté interactuando en un momento determinado con el usuario. Las aplicaciones en Android sólo tienen un primer plano que ocupa toda la pantalla.

Las aplicaciones están formadas por actividades: En un momento dado una actividad pasa al primer plano y se coloca por encima de otra formando así una pila de actividades.

El botón back cierra la actividad y recupera de la pila la anterior. La aplicaciones en Android no tienen control de su ciclo de vida: Deben estar preparadas para terminar en cualquier momento.

Sigue leyendo aquí

domingo, 23 de septiembre de 2012

MongoDB : Cursos Gratis


Que interesante. Se anuncian clases gratuitas on-line de MongoDB:
M101 : MongDB for Developers
M102: MongoDB for DBA's

Inicio el 22 de octubre. Entregan certificados al final del curso.

Los interesados pueden registrarse en este link

domingo, 16 de septiembre de 2012

jueves, 13 de septiembre de 2012

Create amazing Android apps with C# and .NET

Un IDE para desarrollar con Android ... visual ... dale click aqui

Más sabe el diablo por diablo... aunque no le hagan caso

El popular refrán dice que el diablo sabe más por viejo que por diablo. Sin embargo creo que para el área de T.I. no necesariamente aplica:  el conocimiento y la experiencia no vienen ligados a la edad, sino a las vivencias, profesionales y personales. Hay jefes más viejos que yo cuya experiencia únicamente se basa en manejar word y excel ( además de gestionar proyectos ... ) pero que nunca han tenido participación en proyectos de envergadura con grandes equipos de gente.

Entonces , ¿ por qué no hacerle caso a los que tienen experiencia ? ¿ capricho o ganas de demostrar que soy el jefe y aquí se hace lo que yo digo ?. Bueno, sucede que si avizoras los problemas que pueden ocurrir y eso va en contra de los "intereses" del jefe .. sonaste ... eres el pesimista del equipo por tanto, tu opinión, por muy técnica que sea y aunque esté fuertemente sustentada no tendrá la mínima oportunidad de ser escuchada y analizada.

Es así que esta semana, hemos ( ??? yo ? ... yo lo avisé)  tenido un gran "roche" ( ???  una raya más al tigre que importa ). Tenemos que aplicar el Plan B o sea revertir todo lo actuado ( "me encanta cuando un Plan se realiza" - Hannibal Smith The A-Team). Digo tenemos porque cuando hay problemas .... todos somos parte del equipo, pero cuando hay que posar para la foto ... TÚ no eres parte del equipo. 

Al final, creo que el Dr. House tenía razón cuando decía : "No soy el único en mi equipo, pero en mi equipo soy UNICO" 

Me preocupa ..... ¿ Les ha pasado ?


viernes, 7 de septiembre de 2012

Mini Curso de Android #1

Ya salió la entrega #1 

Ver más ...

Mini Curso de Android #1

Y aquí vamos !!!

Esta es la primera entrega: cómo instalar y configurar el entorno de desarrollo.

El documento PDF está aquí.

Por favor comenta que te pareció.


jueves, 6 de septiembre de 2012

¿Quién se ha llevado a mi Programador?

En este blog se ha pulicado una entrada muy interesante: 

http://josediazdiaz.blogspot.com/2012/08/quien-se-ha-llevado-mi-programador.html

¿ Te consideras un buen programador ?. Si la respuesta es sí , lee el post ... y si la respuesta es no, mejor dedicate a otra cosa.

Algunos puntos con los que coincido : 

1)  "tal vez tu programador ya no se interese por programar y solamente desea tener un puesto laboral. Comentale que de esos hay varios por turnos en RAMSA y en ALICORP como obrero". ... De esos tambien conozco a varios que en su puesto de programador pasaron por EPE, EPEL, CEPEL y demás carreras para gente que trabaja y luego se fueron a otro lado.

2) "Que le guste hacer buen código. Código puede hacerlo hasta un mono." ..  Entones ¿ Trabajo con un montón de monos .... ?  ( ¿ los monos son animales ? ).

3) "Conozco programadores que no saben ni instalar un apache. No configuran nada. Le tienen miedo a la consola." .... en mi "Worst place to Work" conozco a un montón ... que dicen  necesito que me configuren tal o cual cosa porque sino, no puedo avanzar y el proyecto se atrasa ... y los jefes avalan eso ... a pesar que en las contrataciones piden genios que sepan de todo.

4) "Un buen programador sabe de seguridad: " .... ¿ seguridad ? ¿ qué es eso ... no tienen firewall ? ja ja ja  .... bastantes ... incluidos los que supuestamente Diseñan el sistema.

5)  "Tener una obsesión por el diseño. He visto buenos programadores que hacen unas interfaces de usuario espantosas" .... sí pues .. pero así lo quiere el usuario ... además lo que importa es que el sistema salga en la fecha comprometida, luego lo estabilizamos ( plop !!!! ) 

6) "Conoce herramientas colaborativas:"  si claro ... usan Facebook para coordinar estando sentados uno frente a otro ... ( lo máximo con la tecnología colaborativa ! ).

FInalmente "Srs. el exito lo hacen las personas. Enfoquense ahí. Si logran un grupo comprometido, profesional, interesado en el código que hace, que se interesa en el trabajo de sus compañeros, que es proactivo y propone cada vez mejorar los procesos del team. A esa persona la debes retener. "  En mi "WORST Place to Work" ... a esas personas las debes ABURRIR ..porque no van con el status quo de la organización, no siguen normas ilógicas dadas por gente que no sabe ni prender una pc, son creativos, son previsores  y en conclusión todo ello hace que sean visto como problemáticos.

Te sentiste aludido ... será motivo para que reflexiones.

Bye

miércoles, 5 de septiembre de 2012

Mini curso de Android

¿ Quieres aprender los fundamentos del desarrollo en Android ? . Es gratis y está hecho en Perú

Da click aquí.

Apuntes de Android

Después de mucho tiempo me animo a escribir sobre un tema nuevo : el desarrollo en Android.

En este blog iré colocando artículos que conforman un pequeño curso de Android ... no se lo pierdan.

VII SEMINARIO INTERNACIONAL Tecnologías de la Información,Sistemas y Soluciones Empresariales

13 y 14 DE SETIEMBRE DEL 2012 | DE 16.00 A 22.00 HORAS 
AUDITORIO CENTRAL - Universidad de Lima

Campus Monterrico

Actualmente las organizaciones operan en un entorno caracterizado por un grado sin precedentes de convergencia y globalización, donde la libertad y la seguridad son relaciones difíciles, y las direcciones de sistemas se enfrentan a grandes retos como: la gestión de nuevas infraestructuras, nuevos productos y servicios, nuevos tipos de usuarios de alta movilidad.

Leer más aquí.

miércoles, 29 de agosto de 2012

WebLogic : Desasignar recursos JDBC masivamente

A veces se requiere retirar recursos JDBC ( DataSources ) asignados a diversos servidores y clusters de WebLogic de una manera masiva y rápida : si lo hacemos vía consola web el proceso sería demasiado lento y costoso.

Aquí aparece una gran herramienta de WeLogic : WLST ( WebLogic Scripting Tool ) que permite generar scripts o interactuar con el servidor de administración y leer o manipular los ManagedBeans de la configuración.

En este ejemplo (probado con un WLS 10.3.4 ), se requiere quitar la asignación de todos los DataSources del dominio :



from java.io import FileInputStream

print("*** Intentando conectar al Admin Server.... *****")
connect('weblogic','password','t3s://ip:port')

print("*** Conectado !!!  *****")
cd('/Servers/myserver')
edit()
startEdit()
cd('JDBCSystemResources')
pwd()
ls()
allDS=cmo.getJDBCSystemResources()
for tmpDS in allDS:
       dsName=tmpDS.getName();
       print 'Procesando DataSource : ', dsName
       print ' '
       print ' '
       cd('/JDBCSystemResources/'+dsName+'/JDBCResource/')
       viewMBean(cmo)

       targetNames=cmo.getTargets();
       for tmpTargets in targetNames:
            print '*** Removiendo el  Target *** : ', tmpTargets
            cmo.removeTarget( tmpTargets );
            print("*** OK !!! Se removio el Target : ", tmpTargets, " para el DS " ,dsName)

       print ('')
       print ('')

save()
activate()

NOTA: en la sentencia "connect" debe colocarse o valores de conexión al servidor de administración del dominio.

jueves, 19 de julio de 2012

T6AC - 2012-I Resumen

¿ Qué cosa hace que se obtengan estos resultados ? ... Parece que la sede de Miraflores será sobre poblada y no es mi culpa ... el examen estuvo super fácil.

La gráfica muestra la distribución por rangos de notas : la gran masa esta en el rango de 11 a 15 ... aunque ustedes saben que aprueban con 13.



En todo caso ya saben ... Que no les enseñe cualquiera .....


Saludos.

lunes, 11 de junio de 2012

Interbank : El tiempo vale más que el dinero ???



Tremendo error el que sale en la web de Interbanking ....
¿ Qué podemos averiguar del error ?
1) Está hecho en Java
2) Por el paquete Java que se muestra, parece que el desarrollo lo hizo la empresa chilena http://www.excelsys.cl/  ( paquete net.excelsys.emotion.HostTransactionManager )
3) Parece que algo no está activo porque según esto http://www.excelsys.cl/soluciones.html?panel=1#examples se cayó el engine de ExcelSys.
4) ¿ Donde está el monitoreo ? o como le llaman ahora ... la "Governanza de TI" ....



jueves, 7 de junio de 2012

martes, 5 de junio de 2012

Indecopi ...seguimos

Acabo de ingresar y creo que esta vez se excedieron con su error ...  en este blog ya son 3 reportes de errores diferentes en sus aplicaciones ....

Este error está relacionado con acceso a disco. Conceptualmente ese servicio no es 7 x 24 ....

lunes, 4 de junio de 2012

SAT : Servicio de Administración Tributaria de Lima

 ¿ Al servicio de quien ?

Me dicen que las notarías están interconectadas por internet con una aplicación del SAT que permite el pago de la Alcabala "en línea".

Resulta que el famoso sistema ... NO FUNCIONA ... se cuelga o simplemente está fuera de línea ... entonces los sufridos ciudadanos que queremos pagar el impuesto para comprar propiedades ... no podemos !!!! y tenemos que perder tiempo y dinero para ir a una oficina del SAT a pagar y regresar a la notaria con el voucher ... ¿ eso es gobierno electrónico ? ... Espero que no se presenten al concurso de buenas prácticas gubernamentales ....

Hasta el próximo error.

viernes, 25 de mayo de 2012

viernes, 18 de mayo de 2012

miércoles, 16 de mayo de 2012

Struts 2 : Nuevo libro ....

Struts 2 Black Book, 2Nd Ed (With Cd) 

 Escrito por Kogent Solutions Inc.



¿ Cómo personalizar mensajes 404 ? ... aquí

miércoles, 18 de abril de 2012

¿Tienes una idea brillante y quieres llevarla al Silicon Valley?

Participa en el Desafío Intel® América Latina y conéctate con el Silicon Valley y su increíble
mundo de expertos, inversionistas, empresas y universidades!

¿Interesando? Participa hoy en desafiointel.com
La convocatoria es válida hasta el 14 de Mayo

sábado, 31 de marzo de 2012

Sean todos bienvenidos a un nuevo ciclo de cursos en el periodo 2012-I, aquí en la ciudad de Lima - Perú.

Este ciclo introduciremos algunas innovaciones para beneficio de nuestros seguidores: alumnos y lectores. Recuerden que el facebook sigue activo.

El material de este ciclo está relacionado con:
- Programación en Java SE
- Programación en Java EE
- Struts 2, JSF2, JPA2
- Web Services
- Proyecto de curso

¡ Mucha suerte a todos y mucho empeño en conocer estas interesantes tecnologías ¡




viernes, 10 de febrero de 2012

Error en Google


Navegando por la web y buscando en Google me salió este error ...

 ¿ Alguien sabe a que se debe ? ...¿ a alguien le ha salido alguna vez ?


Y yo que pensaba que Google nunca fallaba ....

lunes, 9 de enero de 2012

Developing a Data Access Layer with Java Persistence API

If you’re still using Java Database Connectivity (JDBC) for development, or thinking about which Java persistence methodology to use for your project, consider the Java Persistence API implementation—the open source EclipseLink. You want a faster, more productive, and more flexible deployment solution than JDBC. Java Platform, Enterprise Edition 6 reference implementation is the right choice