Cómo convertirse en un desarrollador de aplicaciones Web modernas

miércoles, 4 de junio de 2014

En este artículo busco resumir mi experiencia en cuanto a los pasos o la trayectoria que normalmente se seguiría para llegar a dominar el desarrollo de aplicaciones Web.
Aunque yo aprendí de forma distinta, ya que me tuve que meter de lleno al desarrollo e ir aprendiendo al paso, lo más normal y muy efectivo es siempre iniciar de cero. Pero, para aquellas personas que ya tienen bases o experiencia, puede que haya sido distinto. Lo siguiente, sin embargo, lo comprendí después de haber estado enseñando a mi futura esposa cómo desarrollar aplicaciones Web y viendo la forma en que ella aprendía.

Primero: Identifica qué es lo que sabes y comienza por lo básico, lo que aun no conoces.
Haz un análisis de los conocimientos que tienes actualmente. Normalmente, si estas estudiando una carrera, estarás aprendiendo algún lenguaje de programación, y cualquiera que este sea te será muy útil. Entre las cosas básicas que deberás aprender están:

HTML: Luego de aprenderlo, también deberás comprender lo que es XHTML.
El protocolo HTTP: Deberás entender qué son las peticiones, tipos y cómo se procesan.
CSS: Qué es, cómo se agrega al HTML y cómo se usa.
Javascript: Ees una de las herramientas más importantes para tí como desarrollador de aplicaciones Web modernas; debes aprender qué es, cómo se agrega al HTML y cómo funciona. Aquí deberás hacer uso de tus conocimientos de programación; si no tienes ningún conocimiento de programación, no te preocupes ya que encontrarás muchos tutoriales que también te ensañan las nociones de la programación a través de Javascript.

De todas estas puedes encontrar infinidad de manuales y tutoriales en todo Internet.

Segundo: Determinar hasta dónde quieres llegar.
Ten en cuenta que para desarrollar aplicaciones Web deberás aprender distintas tecnologías, algunas ya las he mencionado, y dependiendo de la complejidad con la que has de desarrollar las aplicaciones y el tipo de aplicaciones Web.
De acuerdo a la complejidad necesitarás aprender lo siguiente:

XML (ya habrás entendido un poco al leer acerca de XHTML)
Un lenguaje para el servidor (aquí comienza el dinamismo de las aplicaciones Web) como Java, PHP, lenguajes de .Net, etc. Esto ya dependerá de varios factores como el proyecto y tus gustos. Ten en cuenta que al decidirte por una tecnología para el servidor, habrás de aprender además otras tecnologías necesarias para el desarrollo de tus aplicaciones.

Tercero: Paciencia y entusiasmo.
Puedo decir que este es el flujo de aprendizaje común para comenzar a desarrollar aplicaciones Web. Puedes comenzar haciendo pequeñas páginas usando HTML y CSS, luego agregarle alguna intereactividad con Javascript, y posteriormente agregarle complejidad.
Pero como siempre, para llegar al lugar que quieres, deberás tener paciencia y estar dispuesto a leer y hacer "pininos" conforme aprendas nuevas cosas. Ten en cuenta que no te servirá mucho si devoras un libro Javascript sin hacer ejemplos, ya que esto se trata de leer, entender y poner en práctica. Tal vez este último punto lo puedo resumir en, pasión.

Espero te sirva.

Problemas con SpringSource Tool Suite + Papyrus

miércoles, 21 de mayo de 2014

Actualmente estoy trabajando sobre un proyecto de código abierto, y algunos otros de mi trabajo; en los cuales he requerido generar cierta documentación técnica. Para realizar la documentación he decidido utilizar alguna herramienta libre o gratuita para diagramar el sistema. Después de buscar y probar algunos encontré Papayrus de la fundación Eclipse, y quise probarlo.


Después de haber instalado el plugin en STS (SpringSource Tool Suite o Spring Tool Suite) a través del Update Site, fue momento para comenzar a usarlo. Pero la sorpresa fue que al crear un proyecto o un modelo de Papyrus, la ventana del Wizard no cerraba al hacer click en Finish, y al intentar abrir el modelo desde el Project Explorer, marcaba el siguiente error.

Your model is corrupted, invalid links have been found: Problems encountered while loading one of the models.
...
org.eclipse.papyrus.infra.core.resource.uml.UmlModel : org.eclipse.core.internal.resources.ResourceException: Resource '../../model.uml' does not exist.

Después de busccar un rato por Google, encontré en un foro que puede ser por conflicto de versiones de un plugin, Google Guava. Para resolver el problema y poder utilizar Papyrus desde el STS lo que hice fue:

  1. Ir a la carpeta de plugins de STS. .../sts-3.4.0.RELEASE-test-papyrus/plugins/
  2. Buscar la palabra "guava".
  3. Encontré dos versiones com.google.guava_11.0.2.v201303041551 y com.google.guava_13.0.0.
  4. Moví com.google.guava_13.0.0 a una carpeta distinta como respaldo, para dejar solamente la versión 11.0.2.
  5. Reincié STS.
  6. Volví a crear un nuevo proyecto de Papyrus, y todo comenzó a funcionar correctamente.
Si llegan a tener el mismo problema espero les pueda funcionar esta solución.
Esperemos a que en las nuevas versiones resuelvan este problema.

Cliente para HSQLDB en Windows

sábado, 26 de enero de 2013

Bases de datos en memoria

Cuando comenzamos a trabajar con las bases de datos en memoria como lo son H2, HSQLDB (antes HypersonicSQL) o Derby, encontramos que son excelentes herramientas para tener acceso rápido a datos persistentes; y que ofrecen grandes ventajas para construcción de software de todo tipo en Java. Ya sea como base de datos temporal de nuestra aplicación empresarial, para ejecución de pruebas o para demostraciones a los clientes, siempre se hace indispensable la administración visual de estas bases de datos, tablas, registros, etc.

Las herramientas gráficas de administración de las RDBMS como los TOAD, SQLyog, MySQL Workbench, SQL Developer, entre otros, ofrecen grandes facilidades para las bases de datos correspondientes. Pero, ¿y para las bases de datos en memoria? 

SQuirreL SQL Client es la herramienta gráfica que utilizo para visualizar mis bases de datos en memoria, ya sea con H2, HSQLDB o Derby, aunque también soporta otros motores de bases de datos tradicionales.

SQuirreL SQL Client es muy sencillo de configurar y utillizar. Pero con la introducción de Windows Vista/7 encontré un problema al intentar instalarlo y posteriormente al intentar correr la herramienta.

Mi ambiente de trabajo:
  • Laptop Mexicana 
  • Procesador de 64bits
  • 8GB de RAM 
  • Windows 7 Professional de 64 bits

Problema al instalar SQuirreL SQL Client en Windows 7

El primer problema surgió al intentar instalar SQuirreL, ya que no permitía crear la carpeta de instalación en Program Files (x86), esto por el permisos de seguridad.
Tratándose de un archivo JAR el instalador del programa, Windows no da la opción de Correr en modo administrador.
Por lo tanto, al intentar crear la carpeta de instalación de SQuirreL muestra el error: "This directory can not be writtenPlease chose another directory"
La instalación se lleva a cabo con el clásico Next>Next.

  










 



Solución 1 al problema de seguridad: Desactivar la seguridad del control de acceso

Para solucionarlo se puede bajar el nivel de seguridad en el control de acceso de Windows. Esto significará reiniciar el equipo antes de poder ejecutar nuevamente la instalación, y nuevamente después de haber instalado para incrementar nuevamente la seguridad. Procedimiento para desactivar UAC. No queremos esto.


Solución 2 al problema de seguridad: Abrir desde navegador

Otra opción para poder ejecutar completamente la instalación de SQuirreL, es 

  1. Abrir un navegador de Internet (IE) en modo administrador (Para este caso no usaremos Google Chrome)
  2. Arrastrar y soltar el instalador de SQuirreL en la ventana del navegador. En mi caso: C:\downz\squirrel-sql-3.3.0-install.jar. O copiar la ruta del archivo del Explorador de Windows y pegarlo en la barra de direcciones del navegador.
  3. En la ventana de diálogo, seleccionen Abrir.


Esto ejecutará el archivo de instalación en modo administrador, con lo que permitirá terminar la instalación del programa.


Problema para ejecutar el programa recién instalado y solución

Al finalizar la instalación de SQuirreL podríamos comenzar a usar la aplicación. Pero surge ahora un nuevo problema. Al hacer doble clic o correr el archivo por lotes que ejecuta el programa, simplemente no lo carga. El problema está en que el archivo por lotes que ejecuta el programa necesita una corrección ya que la ruta de instalación de Java, apuntado por nuestra variable JAVA_HOME contiene espacios. Por ejemplo, C:\Program Files (x86)\Java\jdk1.6.0_17. Para solucionarlo, editaremos el archivo squirrel-sql.bat modificando la línea set IZPACK_JAVA=%JAVA_HOME% agregándole comillas set IZPACK_JAVA="%JAVA_HOME%". Con esta modificación ya será posible ejecutar y comenzar a usar nuestro cliente de gestión de bases de datos en memoria.


Últimas anotaciones

Claro que podríamos habernos evitado todo esto con solo seleccionar una ruta distinta para instalar nuestro programa. Pero nosotros los programadores en ocasiones... 

Disfruten tirando código.