El sinsentido del odio a PHP

El sinsentido del odio a PHP

No es odio, es desprecio

Primeramente creo que debería decir, en que me baso para afirmar que existe cierto odio a PHP.

Tal vez la palabra odio no sea la más justa pero creo que a fin de cuentas llama más la atención.

Más que odio, seguramente se trate de desprecio, o de ridiculización, algo que nació como un meme y que más de uno toma como algo serio.

Como yo que ahora lo tomo en serio, pero el meme no nace de la nada, el meme es humor y el humor también puede tener una critica implícita.

El meme también es una forma de reírse de uno mismo y de reírse de las cosas que de una forma u otra nos afectan.

Y claramente siendo informático, y PHP una herramienta de trabajo (discusión aparte sería saber si se trata de una herramienta o no) es una cuestión que creo que me afecta a mí a todos los que trabajamos con dicho lenguaje de programación.

El problema, a por lo que entiendo, es que muchos memes apuntan hacia el desprecio.

Los memes de Cobol

Haciendo una búsqueda rápida en Google o Duck Duck Go, podemos ver algunos memes muy buenos sobre Cobol!

Se puede ver que en lineas generales lo que predomina es una valoración de lo antiguo del lenguaje.

Tal vez si se hiciera una votación para elegir una nueva mascota para lenguaje, un dinosaurio sea la elección natural.

Y no hay nada de malo en que sea viejo o antiguo, no todo lo nuevo es mejor.

Y no hay que perder de vista que el Software tiene como principal función la resolución de problemas, no ser algo nuevo o novedoso.

Después de todo, si algo funciona bien, ¿Para que tocarlo?

¿Cuando el Software se vuelve obsoleto?

Los memes de PHP

Bueno, ahora que pasa si uno busca “memes de PHP”?

Nos encontramos con cosas como estas:

Sin palabras…
En serio? Programar en PHP es peor que vivir en la calle?
¿Cómo puede ser que usar PHP lleve pegarse un tiro a si mismo y un framework especifico un parche que no mejora las cosas?
Es PHP un nolenguaje de programación?
Sin palabras…

Bueno, y hay muchos más memes, la idea tampoco es agregarlos a todos!

¿Por qué?

Por que tratar así a un lenguaje de programación? Se supone que como informáticos también deberíamos intentar ser objetivos, creo que PHP no se merece ser tratado así.

En términos de rendimiento es muy bueno, siendo muy buena competencia con respecto a otros lenguajes de programación.

A lo mejor está un poco flojo en el manejo de Web Sockets y consumo de RAM para algunos tipos de proyectos.

Pero está demostrado que es un lenguaje vivo en continuo desarrollo.

A cada versión mejora su rendimiento y consistencia en funciones propias del lenguaje.

Se mejora en cuestiones relacionadas al consumo de recursos y tengo la seguridad de que así seguirá avanzando.

Y sobre la seguridad, es cuestión de seguir las buenas practicas de programación.

Es un lenguaje no tipado, lo que en algunos escenarios podrían dar algunos problemas, pero eso se aplica a todos los lenguajes no tipados, no solo a PHP, JavaScript también tiene sus problemas.

Pero son cuestiones que con un poco de práctica y atención se pueden salvar.

¡Es totalmente injustificado odiar o despreciar PHP!

Hay que desmitificar la Consola/Terminal/Linea de Comandos

Pareciera que cuando se habla de ejecutar comandos en una computadora, fuera cosa de hackers, gente que sabe mucho, que quiere hacer las cosas más complicadas de lo que son, o cualquiera de las múltiples interpretaciones, que en general tienden a que usar esa herramienta sea algo percibido como complejo.

Y puede que mucha gente ni se interese en ella por que lo más lógico es no complicarse sin necesidad.

Cuando en realidad no es tan así.

Solo una forma más de interactuar con la PC

Así como está el mouse para clickear el programa que se quiera abrir, también está la terminal en donde esa misma acción se puede hacer escribiendo el nombre del programa y apretando la tecla Enter, y con la función de auto-completado además puede que ya aparezca el nombre escribiendo las primeras 3 o 4 letras.

También se puede navegar entre los archivos y carpetas, aunque de una forma diferente, con el comando “cd” (abreviación de Change Directory), y con la función de auto-completar (apretando Tab) se termina de escribir parte del nombre de la ubicación de la carpeta a donde se quiera ir, y si uno ya se acuerda la ubicación, hace que moverse entre carpetas pueda hacerse de forma muy rápida.

Claro que hay que acordarse de memoria algunos comandos básicos, que en realidad se cuentan con los dedos de la mano. unos para ver el contenido de la carpeta en la cual se está situado (ls, dir) otros para copiar y mover archivos (cc, mv), y así con el resto de funciones, ya después de un tiempo de usarlos ya sale naturalmente.

A veces no queda otra

Muchos sistemas, por diferentes motivos, solo pueden ser usados usando una terminal, en general se tratan de servidores, equipos de red como routers, microcontroladores, algunos tipos de equipos especializados, etc.

Además que muchas cosas muy específicas son más prácticas de hacer con comandos.

Como por ej. si se necesitara renombrar muchos archivos que cumplan con criterios específicos, entre las muchísimas posibles tareas.

Que puede que le de parte de su reputación al ser una herramienta de trabajo más para el informático.

También siempre aparece en las películas de hackers, y a veces las escenas son muy fantasiosas haciendo que parezca algo más épico.

Y exclusivo de quienes saben de computadoras.

A primera vista espanta

Una pantalla negra con letras blancas sin nada más claramente no es algo amigable, algo así como una barrera o un peaje que se puede pasar sabiendo la frase secreta.

Además es algo viejo, de las computadoras de hace como 40 años atrás, esas que ahora están súper amarillas por los años.

Y si, esas computadoras usaban la terminal, en la época del DOS era la única forma de comunicarse con el sistema.

Hasta que Xerox desarrolló una de las primeras interfaces gráficas que agregaron el mouse, los íconos, el escritorio, etc.

O se quiere o se le odia

Si ya se usa durante un tiempo, puede ser que a lo mejor pasé que uno no se termine de habituar y desista para no volver nunca más a usarla.

O que uno se pueda acostumbrar y encontrarle el gusto, por que con suficiente tiempo de uso se pueden hacer algunas cosas mucho más rápido.

Igual, dependiendo de que se puede ahorrar mucho tiempo como también ninguno, y puede ser que lo cómodo al final sea lo que diga la costumbre.

¿Una red social que cuide la privacidad?

Es de público conocimiento que la gran mayoría de las redes sociales, o al menos aquellas que son usadas por la mayoría de las personas que consumen las mismas, utilizan la información de sus usuarios para su provecho económico.

No solo se trata de la construcción de perfiles personalizados para servir publicidad, también se trata del control centralizado de la información en pocas manos y el poder que tienen las mismas por encima de las regulaciones gubernamentales de cada país.

Hay una frase relativamente conocida que dice:

“Si algo es gratis, el producto es uno”

Y efectivamente es así, igualmente con un modelo de negocio basado en la publicidad las empresas desarrolladoras de redes sociales necesitan la conformación del mercado, y ellas mismas son las que crean dicho mercado siendo necesaria la recopilación de todo aquella información que pueda ser analizada para construir el perfil de aquello que podríamos desear comprar, por que sin esa información el negocio basado en la publicidad sería mucho menos lucrativo.

Igualmente, pensándolo mejor, uno como usuario de una red social, más que ser producto se es quien realmente aporta valor a la plataforma.

¿Cuanto vale la privacidad personal? ¿Como usuarios comunes de las mismas, el precio que pagamos cediendo nuestros datos justifica las ventajas de uso de las mismas? ¿Podría existir otro modelo de negocio que sustente una red social que si cuide la privacidad de sus usuarios?

No solamente se trata de la privacidad, también se trata de la Libertad de Expresión.

Es de público conocimiento que las publicaciones que nos muestra Facebook, Instagram, etc, dependen de la programación de la misma, de lo que la empresa necesita para cumplir con sus metas comerciales, por lo que un grupo de expertos se encarga de la creación del algoritmo que se encarga de seleccionar que publicaciones mostrar primero y cuales al final de la lista, de hecho también define que publicaciones directamente no tendrán visibilidad.

¿Este hecho no podría comprometer la libertad de expresión?

En gobiernos como el Chino que tienen un gran control soberano sobre sus ciudadanos se puede apreciar como redes sociales, que podrían ser catalogadas, como pertenecientes a países occidentales, son bloqueadas de su conexión a internet.

Bien, este hecho supone que si dichas redes se utiliza para compartir opiniones que molesten al régimen el mismo no solo que puede impedir su uso, sino que también puede fomentar la creación de una red social interna con el algoritmo que más le convenga implementar, siendo su principal interés el de censurar la llegada e incluso catalogar a sus ciudadanos de acuerdo a sus opiniones en la misma, algo que sería gravísimo para la democracia y la participación ciudadana, algo que de hecho ya ocurre en parte con su sistema de “Crédito Social”.

Por lo que la descentralización de las redes sociales, podría ser un gran avance para impedir el control centralizado de una entidad, ya sea que la misma sea controlada por grandes corporaciones o gobiernos fuertes.

Además dicha descentralización aportaría a que cada uno de los usuarios de las redes pudieran tener un mayor control de la información que comparten y publican, pudiendo uno si lo desea, borrar totalmente su información personal prácticamente sin dejar rastro (solo quedaría la información que pudiera ser recuperada con software de recuperación de datos, o las copias que pudieran haber hecho otras personas).

“La nube no existe, es la computadora de otro”

El termino “nube” se podría considerar un eufenismo, ya que la nube como tal no existe, se tratan de grandes centros de datos repletos de servidores que se encuentran encendidos las 24hs del día atendiendo las peticiones de todos sus usuarios y almacenando toda la información compartida por los mismos.

Y todo lo que subamos allí ya no esta bajo nuestro control, y todo lo que deseáramos borrar, realmente no es borrado de la misma.

Si cada uno guardáramos nuestra información en nuestros dispositivos, y no en la nube, al estar la información atomizada en millones de nodos interconectados, y poder fijar mejores controles sobre la información compartida, haría más difícil que cualquier entidad pudiera generar una gran base de datos la cual analizar con finalidad política o comercial.

Naturalmente en la estructura de la red deberían existir nodos que organicen el funcionamiento de la red, pero a diferencia del modelo centralizado, los mismos no deberían almacenar ningún dato de sus usuarios.

Un cambio de modelo comercial.

Un cambio en las redes, las reglas del algoritmo fijadas de forma arbitraria y la manera de almacenar la información necesita si o si de un modelo de negocio que lo sustente, en lo ideal no debería ser basado solo en donaciones por la baja previsibilidad de ingresos (como lo hacen muchos proyectos libres).

Sinó que bien podría ser una combinación de una pequeña cuota de uso anual, y donaciones, WhatsApp por ej antes de ser comprada por Facebook era de pago, solo costaba un dolar anual y era usada ya por millones de personas.

Creo que es factible establecer un modelo de financiación similar, con una cuota de uso baja, que se utilice para la manutención de los nodos encargados de organizar la red, que consumirían muchísimos menos recursos que en el modelo centralizado, ahorrando en espacio de almacenamiento y en capacidad de procesamiento, lo que generaría a su vez un beneficio medioambiental al consumir menos energía para ser mantenida.

El pago para las personas encargadas de realizar el desarrollo de la plataforma y aquellos encargados de la moderación del contenido subido por sus usuarios.

Además sería muy bueno que las normas en las que se basara la red, pudieran ser construida de forma democrática por sus usuarios, generando un sistema de selección de propuestas por popularidad y votación directa de los miembros.

Yo creo que es una idea factible!