Hablando de API’s (Parte 2)

Standard

Hola de nuevo, ¿cómo están?

Vamos a retomar el tema de las API’s. Como quedamos la entrega anterior, vamos a empezar a desarrollar una API REST, esto para que nos quede un poco más claro todo este tema. Desarrollaremos nuestra API sobre el tema medico, con la cual podremos ofrecer a un profesional de la salud un servicio donde pueda registrar a sus pacientes, llevar a cabo una consulta y que pueda agendar dichas consultas. Esto con el fin de que pueda tener un registro de sus pacientes con información básica; así como también un historial por cada paciente de los hallazgos en sus consultas y los temas que se trataron en ella. Como ya les había mencionado, para el desarrollo de nuestra API utilizaremos Ruby on Rails en su versión 5. Sin mas que decir, empecemos nuestro desarrollo.

Lo primero que haremos sera crear un nuevo proyecto en Rails, especificando que utilizaremos una base de datos mysql, al cual yo nombrare como healthcareapi

rails new healthcareapi -d mysql --api

Continue reading

Hablemos de API’s (Parte 1)

Standard

Hola que tal, espero se encuentren muy bien! Hace algún tiempo que no escribía en el blog, espero que este tema sea de su interés y que lo disfruten.

En esta ocasión, abordaremos un tema de moda desde hace algún tiempo, en el cual he tenido la oportunidad de involucrarme desde hace algunos proyectos: Las API’s

Las API (Application Programming Interface, por sus siglas en ingles), son interfaces que nos permiten interactuar con un sistema de una manera mas practica y escalable, sin necesariamente saber que sucede detrás. Desde métodos para realizar acciones de un CRUD, hasta solo mandar una cantidad mínima de datos y que la API nos resuelva todo un proceso que seria extremadamente complejo o tardaríamos una eternidad en completar por nuestra cuenta. Nos permiten encapsular y separar los componentes de un sistema para poder compartirlos con otros usuarios (personas o sistemas). Si lo ponemos en términos mas simples, una API son una serie de acuerdos y requisitos de como una aplicación se comunicara con otra. Continue reading

Manejo de dominios en ambientes de desarrollo

Standard

Hola a todos, espero se encuentren muy bien y preparados para disfrutar sus próximas mini-vacaciones.

En este post abordaremos un tema que a veces nos causa problema al momento de deployar nuestras aplicaciones.

Usualmente como desarrolladores manejamos al menos dos ambientes, uno para producción y otro para desarrollo/pruebas. Cada uno de estos ambientes tiene su objetivo. En desarrollo siempre buscamos desarrollar las nuevas funcionalidades y muchas veces (aunque no recomendable) tareas de testing. En producción buscamos solamente tener versiones estables del desarrollo, características ya probadas y validadas.

Continue reading

Instalación y configuración Gitlab y Apache

Standard

Hola a todos, espero se encuentren muy bien y que hayan disfrutado las pasadas fiestas.

Estábamos pendientes con la instalación y configuración de Gitlab y Apache, en este post retomaremos el tema e instalaremos Gitlab en un servidor para poder usarlo desde donde estemos. ¿Que necesitamos? en este caso yo utilice un equipo con Ubuntu 14.04 en limpio y solo le instale como web server, apache.

Para instalar apache utilizamos el siguiente comando en terminal:

sudo apt-get install apache2

Después, habilitaremos los modos de proxy_http y rewrite en nuestro apache. Esto lo hacemos para poder configurar un virtualhost con proxy en nuestro archivo de configuración de apache.

sudo a2enmod proxy_http
sudo service apache2 restart
sudo a2enmod rewrite
sudo service apache2 restart

Continue reading

Sistemas de versionamiento y GitLab 1

Standard

Hola a todos, espero todos estén muy bien.

En esta ocasión les traigo un post sobre Sistemas de versionamiento, pero antes les dejo un poco de los problemas que busca resolver.

Al momento de desarrollar software es común trabajar en equipo. Estos equipos pueden ser pequeños, medianos o grandes, esto trae como resultado que haya muchos conflictos en el manejo de los archivos del proyecto. Imaginen el escenario donde los archivos se comparten por medio de una memoria USB… ¿Quién tiene la última versión? ¿Quién fue el último desarrollador en modificar “x” archivo?

Para resolver estos problemas se crearon los sistemas de control de versiones (VCS, por sus siglas en ingles); Estas herramientas nos permiten automatizar un control de versiones en los archivos. Dependiendo de la herramienta nos generan un historial de cambios de cada archivo, marcando por ejemplo: quien fue la última persona en modificar un archivo, que cambios o que líneas del archivo fueron modificadas, nos permiten también tener un manejo de conflictos entre cambios con el fin de evitar de que los cambios hechos por un desarrollador se sobrescriban por los hechos por otro. 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

Realm parte 1

Standard

Antes que nada les mando un saludo y me presento: Mi nombre es César Abel Otero Robles A.K.A “el mano” ;), tengo 29 años cumplidos, soy de Los Mochis y vivo en Culiacán desde hace 6 años. Soy desarrollador, con un tanto más de enfoque al backend y bases de datos.

En esta ocasión les vengo manejando Realm. ¿Que es Realm? se estarán preguntando. Pues Realm es un motor de persistencia para dispositivos móviles, es multiplataforma (iOS, OS X y Android), mucho mas rápido que cualquier ORM actual y también es frecuentemente mas rápido que una consulta pura de SQLite

Continue reading