Se acaba la semana “laboral”

No es trabajo. De hecho, estoy freigestellt. No estoy trabajando, sino que estoy… pues eso, pasando el rato, disfrutando de la vida. Pero igualmente estoy viniendo aquí cada mañana, y sentándome delante del ordenador, y escribiendo estos textos, y haciendo ajustes al sitio web, y aprendiendo cosas nuevas. No es un trabajo, pero se le parece mucho. Lo único que lo diferencia es el papeleo y el sueldo: ambos inexistentes. Es un buen negocio: compro. De hecho, ya me compré.

Pero se parece mucho a mi antiguo trabajo. Cada mañana vengo a mi mesa de trabajar, aquí en casa, y me siento al teclado y hago cosas. Hago cosas hasta la hora de comer. Luego como y sigo haciendo cosas hasta que termina la jornada laboral. Quitando los detalles, es lo mismo. De hecho, incluso trabajo más. A menudo me tengo que obligar a hacer pausas, pues estoy haciendo cosas con el ordenador hasta me duele la cabeza o estoy mareado o me encuentro mal. Todavía estoy aprendiendo a hacer diez minutos de pausa cada hora u hora y media. Tanto tengo que hacer y tan entretenido estoy haciéndolo.

Aprendí mucho en el antiguo trabajo, eso es obvio. Aprendí mucho de PHP, lo que me permite hacer pequeñas cosas que se irán ampliando a medida que vaya conociendo los entresijos de WordPress. Aprendí mucho de CSS, lo cual… tres cuartos de lo mismo. Pero sigo aprendiendo.

El desarrollo de páginas web se compone básicamente de tres pilares, de cuatro si me apuras: PHP, HTML, CSS y JavaScript.

Para que cualquiera me pueda entender, voy a desgranar estos elementos, pues me estoy dando cuenta de que esta mierda me encanta y quiero compartir ese encanto con vosotros. Empecemos con el…

PHP

PHP es un lenguaje de programación. Las siglas vienen de algo que ahora no consigo recordar. Se ejecuta en el lado del servidor. Esto significa que no “corre” en nuestro propio ordenador, sino que corre en el servidor, que es un ordenador conectado a la red y que acepta peticiones de diferentes tipos determinados. Un servidor web, a diferencia por ejemplo de un servidor de correo, acepta solamente peticiones web.

El PHP no es, a mi modo de ver, un lenguaje bonito, pero para gustos los colores. Me gusta mucho más por ejemplo Python. Pero lo interesante de PHP es lo que puede hacer.

Un ejemplo de PHP:

echo "Hola mundo";

Este comando imprimirá la cadena de texto “Hola mundo” en pantalla. Nota el punto y coma al final de cada línea. Eso sirve para que el ordenador se queje si olvidas escribirlo. De verdad, esa es toda la utilidad que le conozco. Es por cosas así que me gusta más Python.

Al principio de los tiempos de Internet, las páginas web eran lo que se llamaba “estáticas”. Eso significaba que no cambiaban, sino que permanecían siempre igual a menos que se las modificara a mano cambiando el código. Eso estaba bien y era un gran hito, pero pronto se hizo necesario mejorar eso, lo que llevó a las páginas “dinámicas”.

Las páginas dinámicas se generan dinámicamente. Sorpresa. Por ejemplo, en este sitio web, la portada se genera dinámicamente. Cuando mañana publique una nueva entrada, ésta se mostrará en la portada. Si alguien deja un comentario (dejadme comentarios, por Dios) el comentario aparecerá. Abajo he puesto un widget en el que se muestran los últimos usuarios registrados. Cuando se registra un nuevo usuario, el widget cambia. De ahí que el asunto sea dinámico.

Base de datos

He olvidado mencionar un componente del chiringuito, del sitio web, que resulta fundamental, y es la base de datos. Las bases de datos son una entidad en sí misma y son necesarias también para que esto funcione. Las hay de diferentes tipos pero básicamente todas funcionan igual: almacenan datos y permiten hacer operaciones con ellos. PHP tiene funciones para acceder a la base de datos, para leer datos, para escribirlos, para borrarlos…

HTML

Con el HTML empezó todo. Hyper Text Mark-up Language, si recuerdo bien. Lenguaje de marcado de hipertexto, si traduzco correctamente. Es lo que se llama un “lenguaje de marcado”, ya que lo que hacemos es marcar las cosas. Por ejemplo:​

<h1>Esto es un título</h1>

<h2>Esto es un subtítulo</h2>

<p>Esto es un párrafo.</p>

Ponemos, a las diferentes partes del documento, etiquetas que señalan lo que son. Esto nos permite definir la estructura del texto. Una vez hecho esto, es el momento de darle estilo.

CSS

CSS es el acrónimo de Cascade Style Sheets, y en su momento, todavía estaba yo en la universidad, supusieron una revolución. Esto es así porque resolvían un problema que venía agravándose en los últimos años: el mantenimiento.

Imagina que escribo un documento. Le añado las etiquetas HTML y lo convierto en una página web estática.

En aquellos momentos, los estilos se añadían al HTML. En la misma etiqueta de, por ejemplo, un título grande o header 1 (<h1></h1>), se especificaba el tipo de letra, el tamaño, el color, etc. Esto se hacía en las diferentes páginas del sitio web. Ahora, ¿qué sucede si quiero cambiar el estilo de todo el sitio web? Sucede que tengo un problema gordo, pues tengo que ir a través del código de cada una de las páginas y hacer los cambios en todas las etiquetas, y además me tengo que asegurar de que lo hago de forma consistente. Esto es lo que yo llamo algo más que un engorro, especialmente para sitios web grandes. Por eso se tomó la sabia decisión de separar la estructura de las páginas de sus estilos.

¿Qué aspecto tiene el CSS? Este:

h1 {

font-family: helvetica;

font-color: black;

font-size: 11 px;

}

En este trocito de código le hemos dicho al ordenador que nos muestre los titulares principales (el elemento h1) con las siguientes propiedades: fuente de tipo helvética, de color negro y con un tamaño de 11 píxeles. Herrlich, formidable, que diríamos aquí. Estás aprendiendo programación, alemán y además estás pasando el rato tan ricamente. Pero sigamos.

JavaScript

La última evolución (dejémoslo ahí, pues esto sigue evolucionando) es el JavaScript. De esto sé poco, así que haré lo que pueda para explicarme claramente.

El JavaScript es un lenguaje que viene del Java, que fue el primer lenguaje popular orientado a objetos. ¿Qué es un lenguaje orientado a objetos?

Un lenguaje orientado a objetos es un lenguaje que permite modelar el mundo real considerando a cada cosa como un objeto y estableciendo relaciones entre los mismos. Eso permite simplificar enormemente el modelado y su programación, dividiéndola en partes funcionales muy pequeñas que se relacionan entre sí.

Cada objeto tiene dos características: propiedades y funciones.

Por ejemplo, si creo el objeto lámpara, este objeto tiene algunas propiedades: color, peso, etc; y algunas funciones, como por ejemplo encenderse y apagarse. El número de propiedades y funciones del objeto depende de la complejidad necesaria del modelo. Lo que más me mola de esto es cómo se accede a estas propiedades:

lampara.color = azul;

lampara.encender() = 1;

La primera línea le dice al ordenador que el color de la lámpara es azul. La segunda le dice que la encienda. Nota que las funciones del objeto, también llamadas “métodos”, llevan paréntesis al final. Entre estos paréntesis se le puede pasar a la función información extra. Por ejemplo, si quiero encender la lámpara con luz roja, podría decirle al ordenador:

lampara.encender(luz_roja) = 1;

Espero estar acertando con esto, pero lo que me importa es que aprecies la modularidad del lenguaje y las posibilidades que ofrece, pues estamos creando pequeñas piezas que encajan entre sí para formar cosas más grandes. Eso es naturalmente muy ingenioso.

JavaScript es una evolución sencilla de eso. Consiste en quitarle toda la chatarra a Java y simplificar y enfocar su potencia. Algo interesante de JavaScript es que corre en el navegador. A diferencia de PHP, que se dice que se ejecuta en el lado del servidor, JavaScript se ejecuta en el lado del navegador o del cliente. Cada navegador contiene un intérprete de JavaScript.

Y en cuanto a cómo encaja esto en la evolución, si primero fueron las páginas web estáticas, luego las dinámicas con PHP y luego las hojas de estilo CSS, JavaScript (abreviado como JS a partir de aquí) añade todavía más dinamismo a las páginas. La diferencia con PHP es que con él hay que recargar la página para que cambie lo que se muestra, mientras que JS permite por ejemplo hacer click sobre un menú y hacer que éste se despliegue sin tener que recargar la página. Esto puede ser muy útil de muchas maneras diferentes, pero básicamente le da un nuevo nivel de vida a una página web.

Lo voy a dejar aquí, que me he entusiasmado y me he ido por primera vez a las 1.400 palabras. ¿Alguna duda?

Recapitulando:

  • HTML
  • CSS
  • PHP
  • JavaScript

Comentarios

Deja una respuesta