SISTEMAS & DESARROLLO
8 meneos
264 clics
Los libros que como desarrollador de software no deberían faltar en tu estantería

Los libros que como desarrollador de software no deberían faltar en tu estantería  

Hace unos meses tuve la suerte de asistir a la JS CraftCamp de Munich, una interesantísima conferencia centrada en JavaScript desde el punto de vista del Craftsmanship. En ella, una de las sesiones que propuse en este Open Space y que resultó realmente enriquecedora, fue la de revisión de libros. La idea era simple: 45 minutos para hablar de libros que habíamos leído y por qué nos habían resultado de gran interés. La lista que salió como resultado fue muy larga, pero nunca os agobiéis por lo grande que pueda resultar una tarea.
7 meneos
111 clics

¿Cómo funciona la llamada al sistema ‘open’ en Linux? [ENG]

Como supongo que sabrás, nuestros programas interaccionan con el kernel mediante un mecanismo especial conocido como llamadas al sistema (system calls o syscalls). Si has escrito al menos un programa en C, sabrás que antes de hacer cualquier lectura y/o escritura a un archivo es necesario abrirlo. Para ello se utiliza la función ‘open’. En este caso es una función de la librería estándar (libc) y es ella la que se encarga de realizar la llamada al sistema por nosotros.
10 meneos
136 clics
Cómo cambiar los colores del comando ls en Linux

Cómo cambiar los colores del comando ls en Linux  

El comando ls es uno de los más utilizados cuando trabajamos en la consola; observamos que no hemos dedicado ningún artículo a este excelente comando en el blog, por lo que traemos el tutorial de cómo cambiar los colores de la salida del comando ls. De igual manera, vamos a dar una explicación breve de este comando y su uso basándonos en la información oficial y en varios métodos encontrados en la web con la misma finalidad, por lo que esté artículo va a ser una recopilación de varios métodos probados y funcionando.
12 meneos
277 clics
osTicket: el mejor sistema de tickets de código abierto

osTicket: el mejor sistema de tickets de código abierto  

He trabajado en par de empresas bastante grandes de mi natal Venezuela, en ambas, el departamento de soporte tenía muchas complicaciones a la hora de gestionar los problemas técnicos de los usuarios, las mismas, se fueron solucionando con el uso de diversas tecnologías, pero sobretodo con la puesta en marcha de un sistema de gestión de tickets. En este caso, y después de analizar varias propuestas (RT, OTRS, GLPI y osTicket), mi opinión es que el mejor es osTicket.
21 meneos
207 clics
Googler, una herramienta de línea de comandos para buscar en Google desde el terminal [ENG]

Googler, una herramienta de línea de comandos para buscar en Google desde el terminal [ENG]  

Googler es una potente herramienta desarrollada en Python para acceder a las búsquedas de Google (web y noticias) desde la línea de comandos en cualquier terminal de Linux.
11 10 0 K 41
11 10 0 K 41
15 meneos
146 clics
Lecciones aprendidas en 25 años de desarrollo del kernel Linux [ENG]

Lecciones aprendidas en 25 años de desarrollo del kernel Linux [ENG]

Debido a la celebración de los 25 años del inicio del desarrollo del kernel Linux en 2016, mucha gente nos ha preguntado el secreto de la longevidad y el éxito del proyecto. Generalmente me río y bromeo ya que no tengo ni idea. El proyecto se ha enfrentado a numerosos desacuerdos y desafíos. Pero ya hablando en serio, la razón que nos ha hecho llegar hasta aquí tiene mucho que ver con la capacidad de la comunidad para hacer instrospección y cambiar su modo de trabajar.
15 meneos
336 clics
¿Crees que sabes mucho de C? [ENG]

¿Crees que sabes mucho de C? [ENG]

Muchos programadores dicen que saben C. Tiene la sintaxis más famosa, tiene más de 44 años de historia y no tiene características oscuras. ¡Es fácil! Bueno, muchos programadores dicen que saben C. Lo más probable es que lo hayan aprendido en la universidad y que tengan algún tipo de experiencia en ello, porque en realidad no hay mucho más que saber. Pero en realidad C no es tan simple. Pero si piensas que sí lo es, prueba a hacer este test.
13 2 0 K 37
13 2 0 K 37
13 meneos
356 clics
Aplicando el requerimiento del “buen gusto” en la programación de Linus Torvalds [ENG]

Aplicando el requerimiento del “buen gusto” en la programación de Linus Torvalds [ENG]  

En una reciente entrevista a Linus Torvalds, el creador de Linux, este hizo un apunte sobre programar con “buen gusto”. ¿Buen gusto? El entrevistador le pidió algunos detalles al respecto y Linus presentó un trozo de código. Código que era un ejemplo de programación de “mal gusto” para poder hacer un contraste inicial. Entonces, ¿qué es programar con “buen gusto”?
8 meneos
137 clics
Cómo el depurador (debugger) pone los ‘breakpoints’ [ENG]

Cómo el depurador (debugger) pone los ‘breakpoints’ [ENG]  

Estoy fascinado con los depuradores (debuggers). Tanto que escribí un pequeño y muy básico depurador como uno de mis recientes proyectos. En esta entrada voy a escribir lo que he aprendido acerca de cómo un depurador establece un breakpoint.
Subs
by Menéame
Las grandes potencias del mundo tienen sus propios sistemas.
DESCÚBRELOS
Ciencia
1528 SEGUIDORES
Series
971 SEGUIDORES
Videojuegos
796 SEGUIDORES
Retuit
332 SEGUIDORES
10 meneos
165 clics

Buenas prácticas en el desarrollo de interfaces de línea de comandos [ENG]

Las interfaces de línea de comandos se siguen usando para la administración de infraestructuras de software. Aunque la mayoría de estas herramientas suelen ser internas, su calidad no debe ser diferente a las herramientas públicas. Para ello es conveniente seguir una serie de buenas prácticas durante su desarrollo.
10 meneos
136 clics
Cómo evitar errores usando C++ moderno [ENG]

Cómo evitar errores usando C++ moderno [ENG]

Uno de los mayores problemas de C++ es tener un gran número de constructores cuyo comportamiento no está definido o simplemente es inesperado para el desarrollador. Estos problemas se identifican generalmente cuando se pasa el analizador estático que es, hasta donde sabemos, la parte donde mejor se detectan dichos errores, en la fase de compilación. Veamos qué técnicas de C++ moderno nos ayudan a escribir código simple y limpio para evitar este tipo de errores.
13 meneos
305 clics
Diez razones para migrar a MariaDB si todavía usas MySQL [ENG]

Diez razones para migrar a MariaDB si todavía usas MySQL [ENG]

La primera versión de MySQL fue lanzada en 1995 por MySQL AB. Aunque al principio fue lanzada como una base de datos para uso personal, pronto evolucionó a una base de datos empresarial. En 2008, Sun Microsystems compró MySQL y en 2009 Oracle compró Sun Microsystems. Fue debido a la desconfianza con la administración de Oracle sobre MySQL por lo que se creó un fork: MariaDB. Con el paso del tiempo, MariaDB ha reemplazado a MySQL en numerosos ámbitos, siendo estas diez razones las que consideramos más importantes para hacer la migración.
4 meneos
116 clics
Mosh: el terminal móvil [ENG]

Mosh: el terminal móvil [ENG]  

Mosh es un terminal remoto que permite itinerancia, soporta conectividad intermitente y proporciona echo local inteligente y edición de pulsaciones de teclado del usuario. Mosh es un reemplazo de SSH. Es más robusto y más responsable, especialmente sobre redes wifi y redes móviles. Además, Mosh es de código libre y está disponible para Linux, Windows y macOS, entre otras plataformas.
12 meneos
463 clics
Las características de los malos programadores [ENG]

Las características de los malos programadores [ENG]

Descripción de arquetipos de desarrolles de software terribles que pueblan el ecosistema de "programación defensiva".
12 meneos
265 clics
Doce ideas de la filosofía Clean que no pueden faltar en tu código

Doce ideas de la filosofía Clean que no pueden faltar en tu código

Si has oído conceptos como SOLID, conoces a personas como Uncle Bob, o eres un experto en arquitecturas, seguro que has oído hablar sobre Clean o el código limpio. Esta filosofía básicamente aglutina un conjunto de ideas que pretenden hacer que el código sea más fácil de leer, mantener, extender y menos propenso a errores. La idea original surgió gracias al libro del mismo nombre escrito por Robert C. Martin (Uncle Bob), y del que he querido extraer algunas ideas que creo que son interesantes.
13 meneos
163 clics

¿Cuántas instrucciones tiene la arquitectura Intel x86? [ENG]

Aunque parezca mentira, es sorprendentemente difícil dar una respuesta correcta. De hecho, todo depende de cómo se cuenten. Y los detalles al respecto son bastante interesantes. Para no dejarte colgado: Intel tiene un software para codificar y decodificar instrucciones llamado XED que indica que hay 1503 instrucciones en la arquitectura x86, pero depende de cómo se cuenten. Por ejemplo, “ADD” y “LOCK ADD” son diferentes instrucciones, pero algunos ensambladores las cuentan como una sola, ya que la segunda es igual que la primera más un prefijo.
11 2 0 K 56
11 2 0 K 56
13 meneos
205 clics

Lo básico sobre la seguridad de aplicaciones web [ENG]  

El desarrollo de páginas web modernas tiene muchos retos. Uno de ellos es la seguridad, que habitualmente está subestimada. Mientras que algunas técnicas, como el análisis de amenazas, son cada vez más reconocidas como esenciales para cualquier desarrollo serio, hay también otras prácticas básicas que todo desarrollador debería estar haciendo como alto rutinario.
11 meneos
146 clics
Cómo plantarle cara al ‘legacy code’

Cómo plantarle cara al ‘legacy code’

Aunque podemos tener una discusión profunda sobre lo que es y lo que no es legacy code, hay un aspecto concreto que para mí puede marcar la diferencia, y es la confiabilidad con la que somos capaces de realizar cambios sobre el producto a medida que estos son requeridos por negocio. Si en una base de código en la que ciertas tarjetas de nuestro Kanban se eluden sistemáticamente por parte de los desarrolladores, se tiene un claro síntoma de que hay una gran porción del sistema sobre la que nadie quiere asumir el riesgo de su modificación.
5 meneos
87 clics

Crear un mirror para un volumen lógico LVM existente

Al crear un mirror LVM se crean copias idénticas de los datos del volumen lógico en los distintos dispositivos que lo componen. La idea inicial es tener protección ante fallos de dispositivos aunque podemos dar otros usos interesantes a esta funcionalidad. Los vemos a continuación.
27 meneos
437 clics
Por qué Uber cambió sus bases de datos de Postgres a MySQL [ENG]

Por qué Uber cambió sus bases de datos de Postgres a MySQL [ENG]  

La primera arquitectura de Uber consistía en una aplicación monolítica escrita en Python conectada a una base de datos PostgreSQL. Desde entonces, esta arquitectura ha cambiado bastante a un modelo de microservicios y nuevas plataformas de datos. Entre ellas destaca el cambio de PostgreSQL por Schemaless, una capa de abstracción sobre MySQL que construye una base de datos distribuida. En este artículo se explican las motivaciones técnicas que llevaron a dicho cambio.
« anterior123458

menéame