Los ordenadores cada día son más potentes. Y una de las formas de poder ejecutar tareas de forma más rápida, es simultanearlas. Por un lado, es lógico que si una tarea está esperando un dato (ese dato puede venir del disco, del usuario por medio del teclado o el ratón, o descargándoselo de Internet), es normal que el ordenador decida ejecutar otras cosas para no perder el tiempo. Y de hecho se ha aprovechado esto para tener varios programas en ejecución, constantemente dando y quitando el acceso al procesador.… Leer artículo completo
Parece que fue ayer cuando, cada vez que necesitamos hacer algo con bases de datos en algún proyecto, abríamos la conexión y hacíamos la consulta a mano… mysql_connect(), mysql_query(), mysql_fetch_assoc()… No está mal cuando queremos aprender cómo funciona todo, pero cuando vamos a ponernos a programar en el mundo real, nos viene mejor programar con sistemas que nos hagan la vida un poco más fácil y nos separen en cierto modo de las consultas que hacemos a la base de datos.… Leer artículo completoPHP es uno de los lenguajes de programación en el lado del servidor más popular y uno de los pilares en los que se apoyan cientos de millones de sitios web actualmente (aunque su uso no es exclusivo para web y puede darnos mucho juego).
Ya que PHP debe ser versátil y fácil de utilizar, se trata de un lenguaje interpretado o de script. Es decir, el código que programamos se escribe en un archivo de texto plano en un formato inteligible para los desarrolladores (aunque lento para los ordenadores).… Leer artículo completo
Los WebSockets proporcionan un canal bidireccional entre el servidor y el navegador y nos permiten crear aplicaciones aún más dinámicas y rápidas. Hace unas semanas vimos cómo funcionan los WebSockets por dentro. En este post vamos a ver una implementación de los mismos en C++, en realidad la parte de navegador como habréis imaginado será Javascript, HTML y CSS, como siempre; será la parte de servidor la que programemos en C++.… Leer artículo completoEn nuestra historia como programadores, hacemos infinidad de llamadas a funciones propias, de terceros, de biblioteca, a otros programas a un alias, etc Y si queremos que nuestros scripts sean lo más robustos posible, debemos tener claro antes de la ejecución que aquello que llamamos se puede ejecutar o dar opciones si algún comando o función no existe.
Por ejemplo, nuestro script necesita hacer una llamada a wget de este tipo:
wget -O salida http://totaki.com
Pero queremos hacer que sea compatible con otros sistemas, por ejemplo, con cURL, y no podemos cambiar uno por otro, pues con curl sería con o minúscula:
curl -o salida http://totaki.com
Nuestro script podrá ser:
1
2
3
4
5
6
7
8if [ -n "$(which wget)" ]; then
wget -O salida http://totaki.com
elif [ -n "$(which curl)" ]; then
curl -o salida http://totaki.com
else
echo "No puedo descargar el fichero"
exit 1
fiDe modo que probamos la existencia de diferentes programas y utilizamos el que tengamos a disposición.… Leer artículo completo
Estoy subiendo vídeos a mi canal personal de Youtube. Aunque sólo tengo algunos pequeños tutoriales, postales de navidad y cosas así. He decidido subir algunos vídeos y cortos antiguos. Aunque están grabados con una cámara analógica y en cinta magnética, lo que significa que el vídeo tiene mucha pérdida y poca calidad. En un intento por darle algo más de definición, o al menos que el visionado sea algo más agradable, pensé en un filtro de Gimp (Desenfocado Gaussiano Selectivo), y estaría muy bien poder aplicarlo a todos los fotogramas.… Leer artículo completo
Si llevas varios años trabajando con este lenguaje de programación. Tal vez se te ha presentado un pequeño problema: tienes varios desarrollos a lo largo del tiempo y tienes código en una versión de PHP antigua que no es compatible con versiones nuevas. Y, por otro lado, mientras mantienes una versión de producción de otro proyecto (para PHP 5.5 o PHP 5.6), quieres empezar a hacer pruebas para ver cómo se comporta con PHP7, y todo ello sin morir en el intento.… Leer artículo completo
Un día, paseando por Linares, me asomo a este escaparate y… veo tres llaveros cuidadosamente colocados formando las iniciales de uno de mis lenguajes de programación favoritos.
Vale, es CPP y no C++, pero también se dice C plus plus y una de las extensiones típicas para esos archivos es cpp.
Luego hay una B por ahí, que es otro lenguaje de programación… pero, ¿quién programa en B hoy en día?… Leer artículo completo