Luego de que en la entrega anterior complicáramos un poco las cosas introduciendo concurrencia en el servidor, un amigo me hizo notar que quizás sería mejor dar un ejemplo un tanto más “real” de lo que estábamos haciendo.
Es por eso que dejaremos por un rato el camino planificado para jugar un poco explorando las posibilidades [...]
Programación archivos (del autor)
Programación para redes y concurrencia (III)
Programación para redes y concurrencia (II)
En la entrega anterior abordamos el diseño de un protocolo y la implementación de un servidor secuencial muy simple y un cliente. Haciendo esto, inspeccionamos los conceptos fundamentales de la programación de aplicaciones usando sockets.
En esta segunda parte, desarrollaremos un servidor capaz de recibir conexiones de varios clientes de manera concurrente (en paralelo). Para ello [...]
Programación para redes y concurrencia (I)
Este es el inicio de una serie de artículos introductorios sobre programación para redes (usando sockets) y programación concurrente. El objetivo es presentar una serie de conceptos que iremos explorando progresivamente:
Programación cliente/servidor usando sockets: Cómo desarrollar programas que se comuniquen a través de la red para realizar distintas tareas.
Protocolos de comunicación: Explorar los principios básicos [...]
Programación orientada a objetos
Cuando comencé a explorar la programación orientada a objetos (POO u OOP, en inglés), allá por el año 1994, me ocurrió lo que a muchos. Luego de casi 10 años de programar proceduralmente (en Basic, Pascal y Cobol) me encontraba con una nueva visión. Si bien creía entender los conceptos de clase, objeto, herencia [...]
Aplicaciones web con plantillas
Comencé a desarrollar aplicaciones web hace más de 6 años. Inicialmente utilicé Perl y luego también PHP, Rails, entre otros.
Al poco tiempo de escribir mi primera aplicación interesante noté algo que no me parecía apropiado. Partes de mi programa se ocupaban de obtener los datos enviados por el usuario (entrada), otras se encargaban de realizar [...]
La complejidad de los algoritmos
Hace unos años presencié una discusión entre dos programadores sobre la “eficiencia de los programas“. Ellos discutían sobre la manera de especificar el problema en la herramienta CASE que utilizaban, para que el programa generado fuera más “eficiente“. La discusión era acalorada y tenían visiones muy diferentes del asunto (yo, al no conocer ni de [...]
Por qué deberíamos contar desde cero
Este es un breve documento de Edsger Dijkstra que traduje hace un tiempo y tenía cubierto de polvo en algún directorio de mi disco duro.
A simple vista parece una trivialidad: ¿Qué más da si comenzamos a contar desde 0, desde 1 o desde cualquier número natural? Pero luego, cualquier persona que haya programado sin tener [...]
Qué es la computación
Sin lugar a dudas Edsger Dijkstra fue uno de los grandes maestros de la computación. Durante su larga y productiva carrera nos brindó avances científicos, técnicos, educativos y también filosóficos.
En su artículo “Sobre la crueldad de verdaderamente enseñar Ciencias de la Computación” nos muestra claramente la naturaleza de la programación, explicando el por qué de [...]
Conversor de texto a binario y ROT13
Es una pavada… pero muchas veces me hizo falta y tuve que andar buscando por ahí.
El asunto es que escribí un pequeño script en PHP (no por bueno, sino por rápido y simple) que convierte texto a binario (carácter por carácter) y viceversa; con la posibilidad de aplicar ROT13.
Buscar
Enlaces
Categorías
- General (9)
- Hardware (2)
- Software (55)
- Software libre (18)
- Software privativo (21)
- Microsoft (17)
- Programación (19)
- Libertad (14)
- Ciencia (8)
- Computación (2)
- Escepticismo (3)
- Educación (10)
- Censura (2)
- Enlaces (1)
- Medios (5)
- Política (3)
- Seguridad (3)
- Internet (9)
- Redes (4)
- Religión (3)
- Lógica y Matemática (10)
- Opinión (9)
- Humor (3)
Archivos
- Julio de 2008 (1)
- Junio de 2008 (2)
- Julio de 2007 (1)
- Abril de 2007 (3)
- Marzo de 2007 (1)
- Enero de 2007 (7)
- Diciembre de 2006 (19)
- Noviembre de 2006 (22)
- Octubre de 2006 (8)
- Agosto de 2006 (10)
- Julio de 2006 (17)
- Junio de 2006 (11)