Sernart

July 19, 2010

Taller Garage Band

Filed under: Comentarios — sernart @ 1:32 pm

En días pasados se estuvo cocinando la posibilidad de poder participar en el Campus Party de México este año, dando un taller de una de mis herramientas favoritas en general: Garage Band. En un principio, había hecho un temario contemplando un tiempo de 3 horas, tiempo que duraría en primera instancia el curso. Ahora sé que el tiempo disponible que tengo es de hora y media. Habrá que darle unos ajustes al programa para dejarlo listo. Y a comenzar a preparar el material. Espero que nos divirtamos y que haya mucha gente.

También pensaré seriamente en llevar un par de regalillos, digo para que se anime la concurrencia.

Los datos son los siguientes: Jueves 12 de agosto 17:00 en el escenario de música de Campus Party México en Expo Santa Fé.

Be a rockstar with Garage Band!

April 12, 2010

Apple vs. Adobe

Filed under: Tendencias — Tags: , , , — sernart @ 2:20 pm

Cómo muchos ya sabrán, el jueves pasado Apple dió a conocer la actualización del OS4 para iPhone. Pero creo que eso no fue lo que generó tanto interés y discusión como la actualización de las políticas que se tendrán para el desarrollo sobre dispositivos de Apple bajo el SDK 4,  en resumidas cuentas: Apple considera como ilegales las aplicaciones desarrolladas para sus dispositivos las cuales se generaron con lenguajes que no han sido autorizados por Apple. Los lenguajes autorizados son: ObjectiveC (nativo de la plataforma Mac), C, C++ y JavaScript. Bueno,  ¿Qué pasa con las nuevas características que han sido anunciadas en la suite CS5, Flash específicamente?, la cual es capaz de generar aplicaciones que se pueden exportar a un dispositivo como: iPhone y iPod Touch, la respuesta es que estas aplicaciones, como ya mencionamos, son consideradas como ilegales. (more…)

December 16, 2009

DNS

Filed under: Redes — sernart @ 3:12 pm

Por definición un DNS (Domain Name System) es una base de datos mundial de las computadoras y servicios que existen en la Web, nos sirve para “resolver” direcciones difíciles de recordar en otras más amigables.

En Canal 22, lugar donde trabajo, tenemos un servidor de DNS y una réplica del mismo con nuestro proveedor de servicios de Internet.

Ayer, atendiendo unos puntos en los cuales la página del canal salió mal evaluada por una institución gubernamental me encontré con algo nuevo en este tema. El requerimiento decía: “Permitir a los usuarios entrar a la página de su institución con www y sin este” después de intentar varias configuraciones tanto en mis registros de DNS como en mi apache no di con la solución. Investigando un poco más aprendí lo siguiente:

Existen archivos que contienen toda la descripción de cada dominio que uno aloje en su DNS, en ellos se debe especificar en que servidor se atenderán las peticiones que se hagan para el www.<nombre del dominio>, para el equipo que recibirá los correos electrónicos para el dominio que se configura (Registro MX) y todos los servicios que se publican como Virtual Hosts.

La solución al requerimiento era agregar un registro como el siguiente en el archivo de configuración del dominio, usando sintaxis para BIND 9 :

@                 IN                  A                       <dirección IP homologada del server donde se atiende la petición www>

Limpiamos el cache de nuestra tarjeta de red para que se refresquen los DNS locales y esperamos un par de días para que los cambios se propaguen y las máquinas fuera de nuestra red se direccionen como lo hemos configurado.

Happy Coding!

November 11, 2009

Interfaz nativa o Interfaz a la medida.

Filed under: Programación,Tendencias — Tags: , — sernart @ 2:10 pm

A lo largo de mi experiencia como desarrollador, que ya es más de 10 años, he ido observando la evolución de las herramientas más populares en el mercado: Visual Basic, Delphi, C y C++, Magic (¿Alguien lo conoce?), los lenguajes del tipo script como: PHP, Java Script, Java con sus JSP’s, los cuales están inmersos en el HTML de nuestras páginas favoritas y más recientemente: AJAX, FLEX, AIR y la plataforma de desarrollo para aplicaciones de iPhone.

He mencionado los lenguajes con los que en algún momento he tenido oportunidad de trabajar y a últimos días creo que las tendencias nos han llevado a que los desarrolladores tengamos habilidades de diseñadores y viceversa. Sinceramente, conozco más desarrolladores que son buenos diseñadores que diseñadores desarrolladores, al menos en el ambiente en el que me muevo, aunque sé que eso es relativo.

El cuestionamiento que me hice al leer un artículo en una revista acerca del diseño de aplicaciones para móviles y específicamente para iPhone fue el detonador para este post.

¿Cómo sabemos cuándo centrarnos en la funcionalidad y cuando en la presentación?

Bueno, la respuesta es: depende del usuario al que vaya enfocada la aplicación y eso, creo, forma parte del diseño de la misma. Un día, en la presentación de un sistema con una inglesa, me di a la tarea de crear un módulo estadístico con animaciones, colores y demás parafernalia, lo anuncie con bombo y platillo y su respuesta fue: “No me interesa eso, yo quiero lo resultados en una lista de Excel”.

Ahora bien, considero que hay plataformas con ambientes gráficos que no necesitan mucho diseño detrás pues su vista es sobria, limpia y de buen ver. Para mí ejemplos de lo anterior son: FLEX, AIR y la plataforma de desarrollo para iPhone. Este último adopta el look de la interfaz del SO cómo: Delphi, Visual Basic y todos aquellos dinosaurios que hacían sus peripecias bajo ambiente MSDOS.

Concluyendo, creo que como desarrolladores debemos de ir adoptando la sensibilidad para poder llevar el diseño de nuestra interfaz a buen puerto dependiendo de las necesidades que reconozcamos en nuestros clientes y si bien quizá no ejecutemos los designios del diseño de las vistas de nuestras soluciones, esa sensibilidad que adoptemos nos ayudará a guiar a alguien más a obtener lo que llevamos en la mente y que presumiblemente es lo mismo que nuestro usuario final. Lo más recomendable es encontrar un balance y una firma que distinga nuestras aplicaciones en cuento a performance, presentación y usabilidad. A final de cuentas desarrollar es un arte ¿o no?

Les dejo unos puntos a considerar relacionado a Interfaces nativas y las que se hacen a la medida:

Nativas

  • Permiten aprovechar controles que ya están disponibles junto con la plataforma de desarrollo, en viste y funcionalidad.
  • Nos hacen el desarrollo más rápido.
  • Pueden crear dificultad en nuestros desarrollos para sobresalir ante los demás.
  • Generan desarrollos más optimizados.
  • Permiten enriquecer la funcionalidad y la rapidez de operación.

A la medida

  • Pueden ayudar a sobresalir a una aplicación aunque esta no sea la mejor programada.
  • Generan aplicaciones más pesadas.
  • Llevan más tiempo, implican costos y esfuerzos extra.
  • Generan distracción a los usuarios finales del verdadero objetivo de la aplicación.

Happy Coding.

October 28, 2009

IRCBot.CJJ

Filed under: Seguridad Informática — sernart @ 4:08 pm

Días de misterio se postraron en el destino del Canal 22. Contaré el problema: por las tareas que desarrollo en el canal siempre he requerido mantener mi PC conectada a la red para establecer conexión VPN y poder resolver algunos problemas de manera remota. De un tiempo para acá, en una hora especifica la conexión de mi máquina se colapsaba y perdía comunicación con servidores y acceso a Internet. Después de meses, si meses de investigar nos topamos con un famoso y nunca bienvenido habitante en nuestro ecosistema informático: IRCBot.CJJ,, se autonombra como un gusano incomodo que interfiere las conexiones de un ordenador y la red en la que se conecta además de propagarse a mas equipos. Se introduce a las computadoras por correo, Internet y memorias USB infectadas.

Todo se resolvió haciendo un par de malabares en el RegEdit y actualizando la solución de antivirus institucional.

Así después de mucho tiempo, ahora puedo estar vigilante de lo que pasa en mi red desde la comodidad de mi casa y aprovecho la soledad nocturna de mi estación de trabajo para aprovecharme de las bondades que un ancho de banda de 2 E1’s me brindan.

Happy Coding

October 15, 2009

¿Es realmente confiable la nube?

Filed under: Programación — Tags: , — sernart @ 2:37 pm

Actualmente, entre otras tendencias, podemos ver que muchas grandes empresas están apostando a la tecnología llamada: “Cloud Computing” (Computo en la nube). El concepto anterior se refiere a ofrecer servicios e infraestructura vía Web, sin que el usuario final se preocupe por instalar algo en su computadora personal o una empresa, por ejemplo, invierta en infraestructura de servidores para proveer servicios.

Ejemplos de empresas y tecnologías que siguen el paradigma de Cloud Computing podrían ser: Google con: Google Docs, Gmail, Google Wave;  Macintosh con Mobile me;  Microsoft con el desarrollo de su nuevo Office 2010;  Amazon con Amazon S3 y un largo etcétera.

La pregunta es: ¿Qué tanto confías en estos servicios? Recuerdo a Gmail quedar fuera de combate por un par de horas, un par de veces. La explicación saturación en los servidores. Más allá de una falla y de encontrar el por qué, se debe reflexionar en el estatus de la tecnología y en su viabilidad.

Quizá en algún momento dejemos de guardar cosas en nuestros discos duros externos, en el de nuestras laptops, pero que tan dispuesto estas a sufrir cuando tus datos no están disponibles o peor aún cuando estos se dañen y no se puedan recuperar…..

October 7, 2009

Open Laszlo

Filed under: Programación — Tags: — sernart @ 5:53 pm

Open Lazlo, es una herramienta open source para crear aplicaciones RIA (Rich Internet Applications), la descubrí por que unos canadienses nos contactaron para desarrollar un proyecto. Ayer comencé a explorarlo, equipe mi Macbook con Tomcat, que al final no fue necesario, y baje el install de Open Laszlo, lo instale con éxito. Revise la documentación en su página y me di cuenta de que es amigable, puede ser publicado como un SWF y como parte de DHTML. Hoy, busque un libro para irme guiando, prepare un documento descriptivo de las secciones del proyecto y un timeline, ahora a esperar a que nos den el banderazo de salida y a comenzar a codear. A pesar de lo anterior, sigo siendo fiel al buen Flex….

Sernart explorando Laszlo….. Loszla, alguien recuerda el capitulo de Don Gato y su pandilla?

Happy Coding

October 6, 2009

Programación iPhone

Filed under: Programación — Tags: , — sernart @ 3:25 pm

Llevo explorando la tecnología de programación para iPhone’s cerca de 2 meses. De poco en poco, he ido descubriendo un framework de programación sumamente apegado al modelo MVC (Modelling, View, Controller). En el recorrido de la curva de aprendizaje he ido encontrando similitudes con conceptos que se manejan en otros lenguajes que suelo manejar actualmente y que manejé en el pasado.

Los últimos dos fines de semana tome un curso en Activ (@activMX), impartido por Daniel Fernández (@tangamampilia) quien está dando un curso mucho más amplio y en forma de programación para iPhone’s en la universidad Iberoamericana. Dicho curso cumplió ampliamente con mis expectativas ya que pude conocer a una persona que tiene experiencia en esta tecnología y que nos transmitió esas pequeñas vicisitudes que se va uno encontrando en el camino y que muchas veces no están en los libros. En Activ están preparando un curso más largo de programación para iPhone’s y en propias palabras de Daniel Fernández, se vislumbra una futura comunidad de desarrollo sobre esta plataforma. Así es que habrá que estar pendientes de lo que suceda.

Resumiré mi experiencia en 10 puntos que seguramente con el tiempo irán creciendo e igualmente irán siendo divulgados:

  • Hay dos cosas sumamente importantes en el desarrollo de aplicaciones para iPhone’s y en general para móviles. Estas programando sobre un dispositivo con: display, memoria y procesador diferente al de una computadora. Por lo anterior: cuida tus diseños tomando en cuenta las medidas del display del teléfono, usa y libera la memoria en tus programas y planifica bien el flujo de tu aplicación antes de codificar, así identificaras procesos en los cuales tienes que poner más atención en aras de ganar performance.
  • Por cortesía de Daniel Fernández, no te estreses con los “warnings” del compilador, este suele ser sumamente quisquilloso.
  • Para programar aplicaciones para iPhone utilizamos Objective-C.
  • Existen 3 tipos de archivos principales: .h para definir las clases, .m para la implementación de las mismas y .xib para el manejo de los componentes gráficos de la aplicación.
  • En Objective-C existen IBOutlets e IBActions.
  • IBOutlets, son variables de instancia que permiten a la clase hacer referencia a los objetos gráficos del .xib.
  • Los objetos en un .xib pueden lanzar métodos especiales definidos en nuestra clase (.h) mediante IBActions.
  • Un modo de decirle al compilador que nos asigne métodos de tipo “accessors” y “mutators” (también conocidos como setters y getters) es mediante la palabra reservada @synthesize.
  • Se utiliza release para liberar objetos de memoria. “Nunca liberes memoria que no apartaste”.
  • Finalmente,  y por cortesía de Daniel Fernández, trata de no utilizar Xml para intercambio de información. Experimenta con Json, es sumamente sencillo.

Happy Coding.

Bienvenida

Filed under: Comentarios — Tags: , — sernart @ 3:17 pm

Después de mucho tiempo intentando concretarlo, por fin me decidí a tomarme unos minutos e instalar mi blog. Hablaré de tecnología, música y cualquier cosa que me parezca digna de compartir. Espero que por este medio alguien pueda encontrar algo que le sirva en algún momento precario de su vida :).

Happy coding

César Serna.

Powered by WordPress