Variables de inicio para tu aplicación iOS – Swift (Settings)

Standard

 

Una de las opciones para almacenar las preferencias de usuario es utilizar “Settings Bundle”. Implementar Settings Bundle te permite manejar tus preferencias desde las configuraciones propias de la app.

En el siguiente tutorial les mostraré como crear una aplicación sencilla iOS que te permitirá cambiar el color de fondo según la preferencia del usuario.

Screen Shot 2016-06-13 at 6.28.27 PM

Para el tutorial estaré trabajando con Xcode Versión 7.2

Al final del tutorial podrás consultar una url de donde podrás descargar el proyecto.

Continue reading

Memorias de la conferencia: “Best practices for great iOS UI Design”

Standard

Hola a todos.

La semana pasada gracias a una invitación que llegó a Hunabsys tuve la oportunidad asistir a una conferencia impartida por el señor Rodrigo Gómez, Senior Systems Engineer de Apple México. La conferencia trató sobre algunas buenas prácticas de diseño de interfaces de usuario para iOS.

Éstas buenas prácticas que se describieron en la conferencia nos sirven para contrarrestar muchos de los errores o dificultades con los que comúnmente nuestra aplicación móvil puede toparse.

El día de hoy les compartiré el listado de esas dificultades y una serie de tips que nos ayudarán a evitarlas.

Continue reading

Consumiendo servicios web dummy

Standard

Hola, ¡buen día!

¿Les ha pasado que están trabajando en un proyecto colaborativo y necesitan consumir servicios web que aún no están terminados o ni siquiera existen?

Esto es algo que pasa con frecuencia en los equipos de desarrollo, planificas tus actividades y en cierto punto comienzas a “depender” de la finalización de ciertas tareas para completar las tuyas, es algo normal.  Existen muchas formas de atacar este problema, entre ellas está el dejar tu desarrollo preparado para que la integración de los servicios sea rápida y fácil.

El día de hoy les platicaré de una herramienta online que encontré para generar servicios web en segundos, y consumirlos con los verbos GET, POST o PUT.

Continue reading

Instalar NodeJs en una Beaglebone Black.

Standard

Hola, el día de hoy aprenderás cómo instalar NodeJs en una placa Beaglebone sobre el sistema operativo Ångström o Debian.

Instalar NodeJs en una de estas placas puede llegar a ser una pesadilla si lo tratas de instalar sin ayuda de un manejador o si necesitas estar cambiando de versión porque  por ejemplo las bibliotecas necesiten estar corriendo sobre una versión más reciente o anterior, etc.

Mi recomendación fuera de que este tutorial está enfocado principalmente en placas como Beaglebone o Raspberry Pi es que siempre utilices Node Version Manager (NVM), ya que este siempre te permitirá instalar varias versiones de node, manejarlas y cambiar de versión cada que lo desees.

Continue reading

Crear y restaurar imágenes de respaldo en una Beaglebone.

Standard

Seguro, si alguna vez haz trabajado con placas Beaglebone o Raspberry Pi te habrás envuelto en la necesidad de replicar todo lo que hiciste en una o más placas. Y es algo muy común, estás trabajando con una placa, instalas paquetes, bibliotecas, desinstalas, vuelves a instalar, cambias la versión de una biblioteca, generas archivos, etc. Todo esto hasta obtener el ambiente que necesitas. Una buena práctica es siempre tener documentadas las versiones de las bibliotecas que usamos, plugins, etc. pero no siempre es esto posible.

Continue reading

Ruby on rails, documentación ágil a partir de proyectos existentes.

Standard

Desde hace un tiempo que las metodologías ágiles se han establecido más allá de ser una moda en la industria del desarrollo de software. Por ejemplo, nosotros en Hunabsys utilizamos Scrum, y nos ha dado muy buenos resultados. Nos basamos en construir primero la funcionalidad de mayor valor para el cliente y en los principios de inspección continua, adaptación, auto-gestión e innovación. Lamentablemente para la mayoría que sigue el manifiesto ágil la documentación se ha ido dejando de lado. Al mismo tiempo que se le entrega valor al cliente, se deja una deuda técnica al dejar de ayudar a otros, a los que no están familiarizados con nuestro sistema. Aquellos futuros responsables del mantenimiento de un sistema serían los principales afectados por no documentar, la única alternativa al no tener documentación del diseño es explorar directamente en sistema, abrirse caminos y por ende invertirle tiempo.

Continue reading

Vagrant: Solución a “connection timeout…” en box privados

Standard

¡Hola!

El día de hoy les vengo a compartir la solución o consejo para prevenir un error muy recurrente cuando se trabaja con “boxes” privados en Vagrant.

default: Warning: Authentication failure. Retrying…

 

Para reproducir el error basta con descargar e instalar un box privado (previamente habiendote logueado con vagrant login).

$ vagrant init <usuariohashicorp>/<nombredelbox>;
$ vagrant up --provider virtualbox

Al ejecutar el comando vagrant up éste falla debido a un problema con la autenticación del ssh. Continue reading

Solución: Beaglebone no reconoce el puerto ttyUSB0 al conectar un xbee por un puerto usb.

Standard

En algunos desarrollos de embebidos en Hunabsys, hemos estado trabajando con placas Beaglebone, estas placas son similares a las Raspberry Pi pero cuentan con mayores prestaciones.

En los proyectos más recientes hemos estado trabajando con la revisión C de la Beaglebone Black. A la misma le instalamos una distribución de linux: Angstrom.

Continue reading

Curioseando la API de Trello

Standard

Trello

Trello es una herramienta que nos permite tener organizados infinidad de tipos de proyectos. Esta herramienta implementa el paradigma de Kanban para administrar los proyectos. Los proyectos son representados por “boards”, que a su vez contienen listas (listas de actividades). Estas listas contienen “cards” que corresponden a tareas. Cada tarjeta se supone que progresa de una lista a otra (arrastrando y soltando). De esta forma podemos llevar un control del proceso que se sigue desde que una tarea es una idea por ejemplo, hasta su realización. Se puede asignar usuarios a las tarjetas. Así mismo los usuarios y “boards” pueden ser agrupados en organizaciones.

trelloboard2

En Hunabsys implementamos un framework ágil de desarrollo que seguro tú ya conoces, Scrum Nos apoyamos en Trello para apoyar Scrum, representando con tableros cada uno de los Sprints de un proyecto y con tarjetas cada una de las historias de usuario y tareas.

Aparte de ser gratis, Trello proporciona una API para desarrolladores, en la cual nos apoyamos para automatizar el proceso de carga de tarjetas de los sprints, monitorear las actividades por usuario, comparar horas invertidas contra horas estimadas, ver el “burndown chart” en tiempo real, entre otros fines.

La API de Trello trabaja con servicios RESTful. Si no haz trabajado con ellos te recomiendo  documentarte un poco sobre cómo es que funcionan antes de seguir leyendo.

En esta ocasión les mostraré algunos ejemplos de peticiones y algunos problemas y detalles que salieron en el desarrollo y que la documentación de la API no resuelve claramente. Continue reading

¿Por qué utilizamos y tú también deberías utilizar Vagrant?

Standard

Si tu respuesta es sí, al menos a una de estas preguntas te recomendaría seguir leyendo este post.

  • ¿La frase ¨en mi computadora sí funciona¨ ha sido dicha por tí o alguno de los miembros de tu equipo?
  • ¿Inviertes más de 5 minutos en configurar un entorno completo de desarrollo?
  • ¿En tu equipo de trabajo se tiene diversidad de Sistemas Operativos?
  • ¿Te ha pasado que una vez pudiste instalar y configurar tu ambiente de desarrollo y cuando lo quisiste volver a hacer algo fallaba?
  • ¿Haz llegado a saturar tu computadora de demasiadas instalaciones de paqueterias, bibliotecas y programas que haz usado para el desarrollo de software?

Continue reading