SCRUM parte 1: “Introducción” y primeras dificultades que se presentan.

Standard

Buen día, hoy les quiero compartir mi experiencia implementando SCRUM con varios equipos. Primero que nada esta serie de publicaciones (así es, serán varias publicaciones) más que una guía para implementar SCRUM en tu negocio o equipo es para transmitir lo mejor posible mis experiencias y opiniones sobre algunos temas que se suscitan al tratar de implementar este framework, también hacer notar que si bien en el título escribí “Introducción” este,  está entre comillas, y eso es porque la verdad SCRUM es sencillo de explicar así que me enfocaré en cosas que considero básicas. Ahora sí empecemos.

Continue reading

LaTeX: Because it’s beautiful

Standard

latex_logo

Qué tal, en esta ocasión os traigo belleza en forma de documentos académicos, técnicos y/o científicos (generalmente).

Voy a hablarles acerca del sistema de preparación de documentos de alta calidad tipográfica por excelencia, que es de hecho estándar para la publicación y divulgación de documentos científicos. ¿Esto por qué? Simple: su calidad tipográfica es comparable a la de editoriales científicas de primera línea. Aunque es utilizado con mayor frecuencia para estos fines, eso no limita para nada su uso; puede ser empleado para crear cualquier forma de publicación. Cabe destacar que hablamos de una herramienta multiplataforma y, por si esto fuera poco, se trata de software libre de código abierto.

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

ANSI C Pointers 101

Standard

Hi, I believe that Pizza and The C Programming Language are two of the most awesome things in the Universe. Also, I have a thesis:  The Universe was created by Morgan Freeman using just ANSI C code and Pizza, think about it! (I’m quite sure that Neil deGrasse Tyson has already done it). Celebrating this spiritual belief I’ll explain some very essential rules that govern our reality (#SpoilerAlert: I’ll talk about Pointers in C) in a basic but really different way.

The key concepts served in this post are:

  1. The use of pointers to manipulate variables.
  2. The use of pointers to access the elements of an array.
  3. The use of pointers to cast data across different data types.

As you might already imagine I’ll dish up these ideas with the magic of a crispy crust, tomato sauce and a lot of cheese (#OhYeah). But before we begin, I’ll expect from you a basic knowledge about C (mainly data types, variables and functions). O.K. lets go!

Continue reading

Realm (parte 2)

Standard

Hola a todos, buenas tardes.

Después de algunos contratiempos, estamos de regreso para terminar el seguimiento de Realm. Hoy nos enfocaremos en darle funcionalidad a una pequeña aplicación de captura de algunos datos en Android (les adelanto que voy iniciando en el desarrollo con Android, por si ven algún horror en mi codificación, tengan piedad xD). Continue reading

Transmisión: tornillo Sin fin y Corona

Standard

Buen día, me presento hoy con otro aporte al blog. En este caso, les hablaré sobre la transmisión de tornillo sin fin corona que me ayudó para un proyecto de un seguidor solar que se realizó en la empresa. Para comenzar les hablaré sobre el significado de transmisión.

Una transmisión es el traspaso de energía, ondas o información desde un punto de inicio hacia un punto de llegada diferente, pudiendo alterarse o no aquello que es transmitido en el recorrido. Cualquier proceso de transmisión implica un movimiento y esto puede darse de manera voluntaria o involuntaria de muchas maneras diferentes, existiendo transmisiones mecánicas, eléctricas, relacionadas con la comunicación y otras con la salud o la higiene. En este caso se enfocará el término hacia la mecánica. Continue reading

El dilema: ¿Cómo elegir el mejor microcontrolador?

Standard

Hola queridos lectores.

En esta ocasión les hablare de un tema que muchos de los que empezamos en el mundo del prototipado y embebidos nos puede abrumar ¡¡ Sonido de tambores !! ¿Qué micro, marca o tipo elegir para comenzar nuestros nuevos  proyectos?

Comenzando les doy mi primer consejo, no se casen con una marca, puesto que si su objetivo es algo mas que un hobby (por ejemplo vivir de este trabajo) en muchas ocasiones te veras obligado a manejar otras marcas con lo cual, si hablamos  español, automáticamente  tendrás que hablar chino, en casos mas drásticos. aprender marciano O.O. por eso les aconsejo aprendan a manejar “C” antes de aprender algún micro-contolador especifico.

Ya comenzando en materia, en la actualidad hay mucha variedad desde el clásico pic (es uno de las marcas mas antiguas de micros)

Continue reading

Trabajo en equipo

Standard

Hola!, Trabajar en equipo es para algunos la cosa más fácil, mientras que para otros es una cosa muy difícil.

En algún momento de nuestras vidas hemos tenido que trabajar en equipo, esperamos que “por arte de magia” nos toque como compañero de equipo alguien responsable que colabore para sacar adelante el proyecto, rogando que tus compañeros no sean unos flojos irresponsables que solo retrasen el trabajo. Pues bien, para empezar esa idea de “esperanza” debe cambiar en tu cabeza. El concepto de trabajo en equipo no es lo que el equipo puede hacer por ti, si no lo que tu puedes hacer por el equipo.

Continue reading

¿Cómo hacer un proyecto tecnológico universitario y no morir en el intento?

Standard

Que tal. Me reporto de nuevo. Esta vez a cuenta de nostalgia estudiantil, comentaré algunas buenas y malas prácticas que me llevaron a buenos y malos momentos a lo largo de mi vida de estudi-hambre (estudiante). Para ello enlisto las siguientes recomendaciones y vivencias con la intención de ayudar a aquellos estudiantes que están a punto de realizar un proyecto (y de preferencia pasar la materia).

  1. Todo con tiempo!, no comiences el proyecto a 3 días de la entrega
  2. Objetivo y mentalidad.  Define, qué quieres lograr con tu proyecto. Con esto me refiero a pensar que quieres lograr con la realización de tu proyecto, puede ser pasar una materia, ganar algún concurso académico o realizar un experimento.
  3. Define funciones prácticas.  Lo ideal es aislar las ideas que se aplicarán, de las que solo te harán perder tiempo en investigación o experimentación.
  4. Elige a tus colaboradores con cuidado. En las universidades públicas abundan las mentalidades y las metas individuales, además, no todos muestran el mismo interés o tienen las mismas capacidades al momento de elaborar un proyecto. Es común que la primera opción para formar el equipo de trabajo es pensar en nuestros amigos, si recurrirás a esta opción, considero sano establecer acuerdos con el fin de salir adelante. Busca siempre el poder decir “aliviánate morro” y no ocasionar problemas en las funciones del equipo.
  5. Pensar nunca es mala idea. En más de una ocasión me toco perder enormes cantidades de tiempo y dinero por intentar las cosas a prueba y error, es mucho más conveniente dedicar tiempo a la investigación que a la corrección de errores.

Continue reading

¿Por qué programar orientado a pruebas y convencer a tu equipo de utilizarlas?

Standard

Buen día, hoy quiero compartir un tema que desde hace relativamente poco tiempo he estado tratando de implementar en mi vida de programador, y esto es la implementación de la programación orientada a pruebas (Test Driven Development) en los proyectos de software.

tdd

Primero que nada me gustaría citar un texto que viene de la pàgina de RailsGuide y es esta: ´Testing support was woven into the Rails fabric from the beginning. It wasn’t an “oh! let’s bolt on support for running tests because they’re new and cool” epiphany.´ que podemos resumir como ´El soporte de pruebas en Rails fue pensado desde el principio y no un: “oh! vamos a agregar pruebas nada más porque son nuevas y están de moda”.´ el desarrollo a pruebas ha comprobado incrementar la satisfacción del cliente y la calidad del software, así que no hay que tomarlas tan a la ligera.

Continue reading