Usando Git en la terminal sin morir en el intento

por:

Usando Git en la terminal  sin morir en el intento

Anteriormente ya te hemos hablado en Somos Binarios de Git, el sistema de control de versiones más usado en la actualidad. Sin embargo, soy de los que piensa que es un poco complejo de usar sin interfaz gráfica.

¿Cómo usar Git en la terminal de manera sencilla?

Si escucháis a un experto en el uso de Git, este te dirá que el software es lo suficientemente usable, incluso en línea de comandos. Pero cuando uno está empezando o no es un muy experto, necesita de ciertas ayudas que reduzcan sus errores.

La primera solución que te podría venir a la mente es usar una interfaz gráfica para las cuestiones más complejas, sin embargo, esto no es posible cuando te conectas, por ejemplo con SSH, a un servidor remoto.

Git Aware terminal es un desarrollo que viene a solucionar este problema, ayudándote desde la propia terminal a conocer más a fondo cuál es el estado del repositorio que estás usando:

 

Git Aware Terminal te ayuda a entender cuál es el estado de tu repositorio

Leer más

Las 3 principales desventajas del teletrabajo

por:

Las 3 principales desventajas del teletrabajo

Como muchos de vosotros sabréis el teletrabajo tiene muchas ventajas: una mejor conciliación familiar, reducción de la pérdida de tiempo en desplazamientos, posibilidad de trabajar desde distintos lugar, etc. Pero hoy os vengo a hablar de la parte menos conocida del teletrabajo, las desventajas. A continuación, os cuento las que he encontrado después de un año donde he trabajado bajo este modelo, en varios periodos prolongados.

Aislamiento

Quizás una de las mayores desventajas de este tipo de trabajo, es que te aisla mucho del resto del equipo. Al no compartir un mismo espacio, la comunicación se ve reducida a un cruce de mensajes y esto hace que, en muchos casos, no se tenga contacto, se tomen decisiones sin realizar consultas o se desconozca el avance y las decisiones tomadas por el resto del equipo.

La mejor manera para evitar esto, desde mi punto de vista, es realizar reuniones cortas pero diaras (siguiendo el modelo de Scrum, por ejemplo), el uso de herramientas online para la gestión de proyectos y la utilización de canales de comunicación instantáneos (Slack, chats, etc).

Leer más

Monitorizando el pulso con Arduino

por:

Monitorizando el pulso con Arduino

En las últimas semanas no he podido escribir todo lo que debería debido a mi cada vez más reducido tiempo libre, entre otras cuestiones por el proyecto que estamos desarrollando entre Alquimista y yo.

Arduino: la plataforma para construir tus proyectos

De un tiempo a esta parte, Arduino se ha convertido en la base para construir gran cantidad de proyectos relativos al Internet de las Cosas (IoT) y al Hazlo tu mismo (DIY), gracias a su simplicidad, la multitud de sensores en el mercado y su bajo coste. Por estas cuestiones lo escogimos como plataforma para el proyecto que queríamos desarrollar.

Leer más

⚡ Cómo optimizar bases de datos fácilmente

por:

Cómo optimizar bases de datos fácilmente

Como muchos sabréis una de las cosas en las que más me centro en el campo de web es en la optimización, por ello hoy os vengo a hablar de MySQLTuner, una utilidad para optimizar bases de datos.

La optimización de bases de datos

Una de las cuestiones más complejas a la hora de administrar una infraestructura o servidor web es configurar de manera adecuada todos los sistemas (y no, no basta con que funcione). Para ello es necesario conocer a fondo todos los programas que se utilizan y los múltiples parámetros que tienen cada uno de ellos, sin embargo, este proceso es muy costoso en tiempo. Además, una mala configuración entraña muchos riesgos, tanto de caídas como de seguridad.

Leer más

¿Qué es LaTeX y cómo usarlo fácilmente?

por:

¿Qué es LaTeX y cómo usarlo fácilmente?

En este artículo te vengo a hablar de LaTeX, un sistema para la creación de documentos muy usado en el ámbito científico. Además me gustaría recomendarte un itinerario, para que te puedas adentrar en su uso de manera sencilla.

¿Qué es LaTeX?

LaTeX, como he esbozado anteriormente, es un sistema que permite la creación de documentos. Sin embargo, su funcionamiento difiere mucho del editor de texto por excelencia, Microsoft Word. Esto es debido a que LaTeX funciona de manera similar a HTML, teniendo un conjunto de etiquetas para dar formato y un software capaz de renderizarlo.

¿Qué ventajas tiene LaTeX?

Si bien es cierto que su curva de aprendizaje es bastante pronunciada, LaTeX cuenta con algunas ventajas importantes:

  • Consigue documentos que no pierden calidad al ser ampliados.
  • Facilita la introducción de fórmulas y el uso de la notación matemática.
  • Separa el estilo, del propio contenido.
  • Permite dividir un proyecto en distintos ficheros, que son compilados para obtener el resultado final.
  • Maneja bien la bibliografía, por defecto.

Como puedes apreciar, con las características arriba destacadas, LaTeX se ha convertido en el estándar de facto, para las publicaciones científicas y las obras que contienen simbología matemática.

Leer más

Gestión de proyectos software con Taiga

por:

Uno de los problemas que siempre se tienen al crear un proyecto de cierto tamaño, es cómo gestionarlo. En este artículo os quiero proponer una metodología y un software para facilitar la gestión de vuestros proyectos informáticos.

Gestión de proyectos software con Taiga

¿Metodología de desarrollo software?

Dependiendo de la experiencia profesional que tengáis, podéis ver la necesidad o no de llevar una metodología de desarrollo. Como este no es un artículo sobre cómo desarrollar software, este aspecto os lo puedo resumir en que cuanto más largo y/o grande es un proyecto, más importante es seguir una metodología.

Metodologías de desarrollo de software hay muchas, sin embargo, en los últimos años se han impuesto las denominadas metodologías ágiles. Estas se basan en reducir la carga de trabajo auxiliar (diagramas, esquemas, documentos internos) y en adaptarse mejor a los requisitos del cliente (cambiantes e imprecisos).

Una de las herramientas que sigue esta filosofía es Trello, la cual utiliza un simple sistema de tarjetas. Estas sirven para dividir un problema complejo en tareas más sencillas.

Leer más

Procesamiento del lenguaje natural con ElasticSearch

por:

Procesamiento del lenguaje natural con ElasticSearch

Uno de los problemas que se presentan con una mayor frecuencia hoy en día, es la realización de búsquedas textuales. Esto problema se puede resolver con muchos enfoques, desde una búsqueda exacta como permiten la mayoría de los lenguajes de programación, hasta la utilización de algoritmos de procesamiento del lenguaje natural.

¿Qué es el procesamiento del lenguaje natural?

El procesamiento del lenguaje natural, conocido también por sus siglas en inglés NPL consiste en desarrollar y aplicar distintas técnicas, metodologías y algoritmos que utilizan como entrada y/o salida texto o voz. La complejidad de este campo, es que agrupa conceptos como:

  • El reconocimiento de voz (traducir la voz en texto).
  • La síntesis de voz (traducir el texto en voz).
  • La traducción en tiempo real.
  • La identificación del idioma del usuario.

Además, hay que tener en cuenta que mientras que la escritura por ordenador es siempre igual, en el caso de la voz cada usuario dependiendo de su lugar, sexo, edad, etc presenta características distintas.

¿Qué es ElasticSearch?

ElasticSearch es un proyecto basado en Apache Lucene, que nos permite tener un servidor para realizar búsquedas. El proyecto fue creado por Shay Banon y tiene como principales características la velocidad de búsqueda y la escalabilidad. Este software es ampliamente usado en buscadores, e-commerce y para tratar el lenguaje natural.

Leer más

Eventos de programación: Google HashCode 🎉

por:

Te mostramos los eventos de programación como el Google HashCode

Una de las cosas en las que más me gusta participar, son los eventos de programación, y la semana pasada no pude dejar pasar la oportunidad de concursar en el Google HashCode. Por eso hoy te cuento por qué deberias asistir a este tipo de eventos, los cuales considero muy importantes y cómo funciona uno de los más conocidos, el Google HashCode.

¿Por qué ir a eventos de programación?

Nuestro hub en el Google HashCode con todos los participantes

Apuntarte a un evento de programación, tiene multitud de beneficios:

  • Compruebas tus conocimientos y eres capaz de medirlos.
  • Conoces compañeros del sector, lo que te va a ayudar a incrementar tus contactos.
  • Aprendes nuevas técnicas para resolver problemas.
  • Obtienes stickers y regalos de tus empresas favoritas.

Leer más

Tipografías gratis de gran calidad para tus proyectos ⌨️

por:

Tipografías gratis de gran calidad para tus proyectos

Una de las cuestiones complicadas respecto a la creación de contenido, es la elección de las fuentes. Cuestión que ya hemos tratado en Somos Binarios, en artículos como: cómo crear una web 9: La tipografía. Hoy os traemos un recurso donde podréis encontrar fuentes tipográficas de gran calidad, gratuitas y open source, para usar en vuestros proyectos.

The League of Moveable Type

The League of Moveable Type, es una iniciativa surgida en 2009 por un conjunto de tipografistas para proveer de fuentes de gran calidad a nuestros proyectos. Estas tipografías cumplen con las premisas de estar bien diseñadas, ser gratuitas, open source y estar pensadas para utilizar en pantallas.

Algunas de las fuentes realizadas por estos autores son:

  • League Spartan
  • Junction
  • Ostrich Sans
  • League Gothic
  • Blackout
  • League Script Number One
  • Raleway
  • Orbitron
  • Sniglet
  • Chunk

Leer más

¿Cómo generar avatares para tus usuarios?

por:

¿Cómo generar avatares para tus usuarios?

Uno de los problemas comunes al que nos enfrentamos cuando queremos crear un proyecto web es cómo gestionar la privacidad de los usuarios. Distintos formatos de páginas y empresas, utilizan diversas técnicas pero hay una que viene siendo recurrente, el uso de un avatar o imagen del usuario.

¿Qué es un avatar?

Un avatar, de manera resumida, podríamos decir que es un imagen virtual que representa al usuario, normalmente con un aspecto similar a un comic o ilustración. Cuando decimos que representa a un usuario es porque tanto el avatar como el usuario suelen compartir algunas características, por ejemplo, el uso de gafas, pendientes, color de pelo, el llevar barba etc.

Leer más