Hola les hago una invitación a todos los desarrolladores y al público en general para la creación de un nuevo lenguaje de programción con sintaxis en español y que sea lo más natural posible.
Este proyecto nace de la necesidad de incrementar la educación de nivel básico (primaria y secundaria) debido a que los niños tienen la capacidad de entender la lógica a muy temprana edad y es en esta edad cuando más aprenden, esto motivará a los niños y jovenes por interesarse en el mundo del desarrollo de aplicaciones.
A la hora de programar cálculo científico existen los famosos lenguajes de programación como MATLAB/Octave, R o incluso Python. Sin embargo, estos lenguajes pecan en varios aspectos como eficiencia, paralelización, etc. Últimamente está creciendo en popularidad un nuevo lenguaje que corrige estas deficiencias. Se llama Julia y éstas son algunas de sus principales características:
· Sintaxis sencilla y elegante al estilo MATLAB/Octave.
· Compilador JIT que ofrece una alta eficiencia.
· Diseñado para programar fácilmente sistemas distribuidos y/o paralelos.
· La licencia de Julia es de código abierto, exactamente la MIT.
Al igual que otros muchos proyectos de software libre, para la información estática (que no para la dinámica que ya hablamos de eso el otro día) WordPress usa los famosos ficheros .po/.mo. Más información sobre los mismos en esta serie de artículos que en su día escribí en este mismo blog. El propio núcleo y cualquier theme o plugin que se precie, usa este mecanismo, sencilla, fácil, efectivo y basado en tecnologías libres.
Lo frecuente es lo siguiente:
Sin embargo, ya me di cuenta que no siempre es así. El plugin Events+ de WPMUDev usa una forma alternativa y es que antepone su dominio de información al nombre del idioma, de forma que tendríamos que llamarlo: eab-es_ES.mo.
El tema del multilenguaje en WordPress es uno de los grandes problemas que todavía no ha resuelto este popular sistema gestor de contenidos. Ahora en WordPress 3.8 se espera que los Language Packs sean la solución, sin embargo, hasta que no sea oficial y no tengamos una versión funcional, debemos buscar soluciones de terceros.
Básicamente hay dos soluciones populares en forma de plugins para este problemas (otras soluciones pasan por tener por ejemplo, una instalación en cada lenguaje). Son dos, una premium WPML y otra gratuita qTranslate. Manejo los dos habitualmente cuando trabajo como experto WordPress, así que dedicaré unas pocas entradas a este tema porque me parece interesante para todos.
Linux/Chapro.A: módulo malicioso de Apache utilizado para inyectar código http://t.co/0y64EXZq
— diseño web intuitivo (@raulvdl) December 21, 2012
https://twitter.com/TuXapuntes/status/280309646374338560
Comandos útiles para Linux http://t.co/qW3o23gw vía @codejobs
— Dev Education (@d3veducation) December 16, 2012
Sí, no me he podido resistir y he instalado la nueva LTS de Ubuntu. Me iba a volver loco si no encontraba los JDK de Sun (Oracle) para hacer funcionar de manera completa mis programitas.
Al final di con ellos en LaunchPad. Para instalarlo, es bien fácil. Abrimos un terminal:
1. Agregamos el repositorio y actualizamos las fuentes del sistema:
ahornero@6581-D:~$ sudo add-apt-repository ppa:flexiondotorg/java
ahornero@6581-D:~$ sudo apt-get update
2. Instalamos los paquetes de desarrollo (JDK) y ejecución (JRE):
ahornero@6581-D:~$ sudo apt-get install sun-java6-jdk sun-java6-plugin
El desarrollo web siempre tiene dos interacciones: la que se produce en el lado del servidor y la que se produce en el lado del cliente. Esta segunda cada vez tiene más relevancia para conseguir una mejor experiencia del usuario y JavaScript es el responsable de ésto.
JavaScript es una de esas tecnologías que se pensó para abordar pequeños problemas, pero que por cuestiones de compatibilidad y aceleración tecnológica, se ha convertido en una tecnología versátil a la vez que necesaria para poder afrontar las exigencias de la actualidad.
En lenguajes como PHP, podemos hacer uso de parámetros opcionales (aquí explicaba su uso al hablar de cómo podíamos imitar la sobrecarga de funciones en el curso de PHP orientado a objetos), por ejemplo:
function crearPersona($nombre = "")
Y sus respectivas llamadas:
crearPersona("Javier"); crearPersona();
Sin embargo, en JavaScript no tenemos esta posibilidad, aunque al igual que ocurría con la sobrecarga de funciones en PHP, podemos imitarlo. Veamos cómo.
Los lenguajes no tipados de forma explícita, como JavaScript, suelen darnos a la vez comodidad, por no tener que escribir repetidamente el tipo; y quebraderos de cabeza, por los problemas que podemos tener en ocasiones al hacer igualaciones o pasar parámetros.
Sin embargo, el lenguaje nos provee de mecanismos para poder, al menos en parte, esquivar estos problemas. Uno de ellos es usar el triple-igual, en lugar de el doble-igual, a la hora de comparar.
¿Por qué?
Porque al usar el triple-igual obligamos al intérprete a que compare también tipos. Veamos ejemplos.
Ejemplos
alert(99 == "99"); // devolverá true alert(99 === "99"); // devolverá false
Aunque PHP nació como un lenguaje orientado a la programación procedimental, con el tiempo se fue adaptando a las necesidades de los desarrolladores y comenzó a añadir características propias de los lenguajes orientados a objetos.
Esta es la primera entrada de un mini curso de varias entregas en el que trataremos de explicaros cómo usar los mecanismos propios de la orientación a objetos en este lenguaje tan popular del lado del servidor.
Clases, atributos y operaciones
Simplificando mucho, una clase es la representación software de un elemento de la vida real. Si para un determinado problema, que es el que vamos a utilizar, nos importan los usuarios, tendremos la clase “usuario”. La representación software serán los datos y el comportamiento del mismo que nos importe de cara a nuestro sistema. Imaginemos un sencillo sistema de gestión de usuarios que almacene los siguientes datos: