Sistemas & Desarrollo

encontrados: 9, tiempo total: 0.037 segundos rss2
4 meneos
32 clics

Buenas prácticas en el versionado de bases de datos [ENG]

Hacer un seguimiento de los cambios en una base de datos no es una tarea sencilla. Los esquemas de las bases de datos tienden a ser incompatibles entre diferentes entornos o puede que se pierda alguna pieza importante de los datos al hacer el cambio. Este tipo de eventos suele ser bastante irritante, sobre todo cuando es en producción. Así que, aquí tenéis una lista de buenas prácticas a la hora de tratar con los cambios en bases de datos.
10 meneos
200 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.
3 meneos
51 clics

microctfs: pequeños retos en contenedores docker para practicar

¿Estas de vacaciones y/o tienes tiempo libre y quieres practicar tu pericia con pequeños CTFs (Capture The Flag)? El americano Gabe Marshall tiene un repositorio en Github con una serie de interesantes microrretos en forma de contenedores Docker que pueden levantarse de inmediato para empezar a jugar. Te animo a probarlos y a compartir tu feedback e incluso writeups con nosotros.
327 meneos
6189 clics
Laboratorio para practicar inyecciones SQL (más de 60 ejercicios/lecciones)

Laboratorio para practicar inyecciones SQL (más de 60 ejercicios/lecciones)

El holandés Audi-1 tiene un repositorio en Github muy interesante llamado SQLI-LABS que nos permitirá montar rápidamente una plataforma para aprender y practicar inyecciones SQL de diferentes tipos: inyecciones basadas en error (Union Select): 1. String 2. Integer; inyecciones basadas en error (Double Injection Based); inyecciones ciegas: 1. booleanas 2.basadas en tiempo; inyecciones de peticiones update; inyecciones de peticiones insert; inyecciones en la cabecera HTTP 1. basadas en referer. 2. basadas en user-agent. […]
133 194 5 K 25
133 194 5 K 25
13 meneos
595 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”?
15 meneos
372 clics
Ingeniería inversa práctica, primera parte: buscando puertos de depuración [ENG]

Ingeniería inversa práctica, primera parte: buscando puertos de depuración [ENG]  

En esta serie de publicaciones vamos a seguir el proceso de ingeniería inversa de un router. Más específicamente un Huawei HG533. En las primeras etapas, este es el tipo más básico de ingeniería inversa. Simplemente buscamos un puerto serie que los ingenieros que diseñaron el dispositivo dejaron en la placa para fines de depuración y soporte técnico. Aunque voy a explicar el proceso usando un router, se puede aplicar a toneladas de sistemas integrados domésticos. Desde impresoras hasta cámaras IP.
3 meneos
39 clics

Los buenos comentarios en el código explican “por qué”, no “qué” (y 3 reglas más para escribir buenos comentarios) [ENG]

Los comentarios en el código fuente no son algo adicional al los proyectos, son parte de dichos proyectos. En esta entrada se muestran una serie de consejos para mejorar dichos comentarios.
6 meneos
405 clics
Cinco razones por las que el lenguaje de programación D es una buena elección para el desarrollo [ENG]

Cinco razones por las que el lenguaje de programación D es una buena elección para el desarrollo [ENG]

El lenguaje de programación D es de propósito general, tiene tipado estático, sintaxis similar a C y C++ que compila a código nativo, etc. Estas son varias de las razones por las que este lenguaje de programación es una buena elección para desarrollar aplicaciones.
9 meneos
247 clics
No tengo ni idea de qué estoy haciendo (pero) soy programador [ENG]

No tengo ni idea de qué estoy haciendo (pero) soy programador [ENG]

¿Por qué aprender por prueba y error es la mejor forma de tirar tu tiempo y el dinero del cliente? Cuanto más trabajo en diferentes proyectos y más colaboro con otros desarrolladores, más veo el enfoque de desarrollo “no tengo ni idea de qué estoy haciendo, pero lo voy a intentar”, lo que puede producir unos cuantos problemas. De lo que se saca una conclusión sencilla: es muy difícil ser un buen desarrollador.

menéame