General

Esta es la categoría general donde pongo los posts que no encajan con el resto de categorías. Y algunos posts, que aunque encajan en alguna otra categoría, también los he considerado de interés general en informática. Aquí puedes encontrar contenidos varios sobre utilidades como programas, sistemas operativos, herramientas de mantenimiento y cosas de este estilo que me han parecido interesantes.

Symfony & EAV: cómo diseñar una BD para no tener que modificarla después

2019-11-20 - Categorías: General / PHP / Symfony

Estoy haciendo una especie de experimento con Symfony, se trata de un codekata para usar el modelo EAV. No he encontrado en Internet nada hecho en Symfony que hiciera exactamente lo siguiente, todo desde un panel de control, y quería aprender a crearlo. Así que aquí estoy, jugando con la programación, y compartiendo este codekata 😉 Me explico, viendo cómo están hechas por dentro la gestión de productos en CMSs como Magento, Prestashop o Drupal.. o en ERPs como Odoo.. vemos que internamente, podemos dar de alta tantos atributos de producto como queramos desde el panel de control.

¡Podemos dar de alta tantos atributos como queramos sin modificar la base de datos! ¿Cómo es esto por dentro que funciona? ¿No te ha pasado que mientras desarrollabas una aplicación tenías que añadir más y más columnas a una tabla? Si la cantidad de atributos va a ser muy cambiante, la forma más profesional y eficiente para programarlo se consigue usando el modelo EAV.

Continuar leyendo..

Raspberry Pi: manejando un keypad de 4×4 mediante Shell Script

2019-11-10 - Categorías: General / GNU/Linux

Aquí traigo un pequeño code-kata en Shell Script para manejar un keypad conectado a una Raspberry Pi. Es un código fuente que configura, mediante el sistema de ficheros, el acceso a los PINs del GPIO. Este pequeño programa, se puede traducir a cualquier otro lenguaje de programación. Se puede traducir directamente, ya que el manejo del GPIO en la Raspberry Pi, mediante el sistema de ficheros, es compatible e independiente de cualquier lenguaje de programación.

Continuar leyendo..

Raspberry Pi & GNU/Linux: encendiendo y apagando cosas

2019-11-01 - Categorías: General / GNU/Linux
GNU/Linux & Raspberry Pi: programando relés en el tiempo..

Jugando y jugando con la Raspberry Pi, con mi nuevo octo-relé 😛 que he conseguido encontrar una forma muy fácil de programar acciones en el tiempo, sin usar engorrosas instalaciones de programas. Es decir, aquí traigo un howto para programar encendidos y apagados, de lo que quieras, de cualquier cosa. Simplemente usando un sencillo script programado en Shell Script, y el programador de tareas que todo GNU/Linux tiene.

Me explico, tendremos este esquema de todo conectado:

Raspberry Pi <=> Relés <=> Cosas que queremos encender y apagar

Recapitulando, a la Raspberry Pi le podemos conectar relés, que trabajan a 5v/3v a los pines de entrada y salida llamados GPIO. Por otro lado, tenemos el problema de que las cosas que queremos encender y apagar tienen voltajes distintos, corriente alterna quizá, e intensidades que nos pueden fundir la Raspberry Pi. Entonces le ponemos relés entre las cosas y la Raspi, que simplemente van a dar paso a la corriente o no.

Continuar leyendo..

Instalando Netflix en la Raspberry Pi con Kodi

2019-10-27 - Categorías: General / GNU/Linux

Hoy traigo algo divertido para los que nos gusta probar software. Simplemente se trata de un howto para poder ver en la Raspberry Pi, el aclamado Netflix. También debe servir para cualquier ordenador con GNU/Linux. Y en cuestión de pagos, sólo te hace falta estar suscrito a Netflix.

Te propongo usar el programa de centro multimedia llamado Kodi, el add-on de Netflix, y activaremos otros add-ons de InputStream para la reproducción de vídeo en tiempo real usando el protocolo RTMP y el add-on de vídeo adaptativo.

Me ha costado un poco encontrar la información correcta y actualizada. Además, mientras que probaba y probaba, escribiendo este post, los creadores han actualizado el add-on de Kodi. Así que aquí estoy compartiendo los resultados, poniendo mi granito de arena informático.. 😀

Continuar leyendo..

PHP y SEO: detectando contenidos duplicados

2019-05-23 - Categorías: General / PHP / SEO
SEO PHP duplicados

Hoy traigo un howto o code-kata, para comenzar a hacer nuestra propia herramienta de detección de duplicados. Puede ser una tarea más o menos compleja, depende mucho de hasta dónde queramos llegar, pero sólo mediante scripting en PHP podemos implementarlo.

Es decir, podemos recorrer toda una web de la que estamos encargados, guardar los contenidos de sus URLs, y chequearlos para ver si tiene contenidos duplicados. Me remito a un post de hace un par de años para recorrer una web en anchura, o en profundidad, mediante un sencillo script en PHP: https://jnjsite.com/yo-robot-ii-white-gray-black-hat-seo/

Continuar leyendo..

Symfony: tutorial 15: los tests automáticos, funcionales, de aceptación, unitarios, de infraestructura..

2019-05-14 - Categorías: General / GNU/Linux / PHP / Symfony
Automatizando las pruebas unitarias y funcionales en Symfony..

Aquí estoy de nuevo con otro howto o tutorial de la serie de tutoriales de iniciación a Symfony sobre éste framework tan cojonudo. Hoy llegamos a cómo automatizar las pruebas de tu aplicación web. Automatizar las pruebas y pasar los tests puede verse como un juego en el que tenemos que conseguir un buen porcentaje o puntos, para estar seguros de que todo funciona. Es bien divertido trabajar con esto.. ?

Imagina que vas a entregar una web, o una nueva funcionalidad. La pruebas y pruebas, pensando que todo va bien. Pero cada día tiene más cosas, más zonas que comprobar, añadimos algo en un fichero que pensamos que no tiene relación con otra cosa. Pero llega el día de la puesta en producción, y empieza a romperse por los rincones que menos habías pensado ?

Continuar leyendo..

GNU/Linux: terabytes de nube privada con la Raspberry Pi y Syncthing

2019-03-15 - Categorías: General / GNU/Linux
Syncthing y la Raspberry Pi

He seguido jugando para ver hasta donde puede llegar este pequeño ordenador de poco más de 30€, la Raspberry Pi. Una joya de la informática, que junto a Syncthing, otra joya de la informática, hacen una combinación explosiva. Así que aquí estoy escribiendo éste HOWTO sobre servidores para montar una nube de terabytes de almacenamiento sincronizado y privado en tu propia casa, local o en varios lugares remotos.

Sólo por el coste de tus PCs, sin pagar nada a una empresa, sin que tus datos estén copiados en ordenadores que no son tuyos, y sin que tus datos estén copiados en el extranjero. Es decir, tus datos ya no tendrán que estar almacenados en ningún servidor externo en ninguna empresa. Todo sincronizado entre tus móviles, ordenadores y la Raspberry Pi. Además, podrás disfrutar de tantos terabytes como quieras sin coste mensual, sólo necesitas tener los discos externos que quieras y la Raspberry Pi encendida.

Continuar leyendo..

GNU/Linux: montando un centro multimedia de salón con la Raspberry Pi

2019-02-24 - Categorías: General / GNU/Linux
Raspberry Pi 3 Model B+

Ya tengo mi nueva y flamante Raspberry Pi 3 B+. Llevo un par de meses probándola a ver cómo funciona, hasta donde puede llegar, funcionalidades, etc.. Estoy como niño con juguete nuevo, es brillante, una joya de la informática. Una maravilla para empezar a hacer mis primeros pinitos en el IoT o creando cualquier dispositivo que necesite de un ordenador embebido de bajo coste.

La Raspberry Pi 3 B+ tiene un procesador ARM de 4 núcleos de 64 bits a 1,4 GHzs y 1 GB RAM que apenas consume. Funciona con un cargador de móvil y cabe en la palma de una mano, con lo que se puede instalar en cualquier sitio y apenas se nota el consumo eléctrico. Arranca muy rápido en apenas 10-20 segundos veo el escritorio, corre vídeos, fotos, navegador, juegos ligeros, y programas ofimáticos del tipo de LibreOffice que vienen ya preinstalados. En fin, una maravilla..

Continuar leyendo..

Datatables: listando y filtrando tablas de datos con JavaScript

2019-02-11 - Categorías: General / JavaScript
Datatables simple, cargando desde HTML los datos
Proyecto de pruebas en el que se listan sitios web bajo estudio SEO.

Ya estoy de nuevo por aquí compartiendo una verdadera joya del software, el Datatables. Esta es una herramienta para desarrollo frontend, que mediante JavaScript, crea unas tablas de datos muy profesionales para tus proyectos en muy poco tiempo. Se trata de un plugin de jQuery, que le da vitaminas a la presentación de datos en el navegador del cliente.

JavaScript actúa en la parte de frontend, es decir, tenemos que enviarle al navegador el HTML, CSS y JavaScript con el Datatable configurado. Entonces, en el navegador del cliente, mediante JavaScript, se regenerará el contenido web de la tabla para hacer los listados, ordenados y filtrados de la tabla de datos.

Continuar leyendo..

Nueva versión del sencillo mensaje de aceptar cookies para tu web

2018-12-01 - Categorías: General
Monstruo come galletas

Un lector me ha escrito consultando sobre un post algo antiguo, sobre cómo poner un sencillo mensaje de cookies en una web. La verdad es que no me he explicado muy bien en aquel post, los navegadores han cambiado durante estos últimos años, JavaScript también.. así que aquí estoy compartiendo otro mensaje de aceptar cookies más actual.

Este mensaje de aceptar cookies es una actualización de aquel antiguo que vengo usando en nuevos proyectos. Es un mensaje hecho artesanalmente que puedes copiar y pegar para tu web. El único requisito que tiene es que necesitas usar la librería de jQuery para que funcione. jQuery hoy día es como un estándar, hace tan bien su trabajo de acceder al DOM de las páginas web, que cómo no usarlo en todos los proyectos.

Continuar leyendo..

Cómo dar permisos de acceso a un directorio web en GNU/Linux

2018-11-06 - Categorías: General / GNU/Linux
Permisos de acceso a ficherosd

Ahora vengo a compartir un pequeño, pero muy pequeño HOWTO. Se trata de un par de acciones para configurar los permisos de archivos y directorios en un servidor web Linux, y unas pocas explicaciones para saber el porqué hay que dar estos permisos..

La mayoría de los servidores web de Internet corren sobre sistemas operativos Linux. En estos sistemas operativos se establecen usuarios y los recursos del sistema operativos tienen unos permisos de acceso. De esta forma hay propietarios de los directorios y de los ficheros, con lo que los servidores web tienen que tener permiso para poder acceder a dichos ficheros. De lo contrario no podrán servir las páginas web.

Continuar leyendo..

Del código fuente a la ejecución de los programas

2018-06-08 - Categorías: General
Programming programando

Ya tenemos el código fuente, ¿y ahora? ¿cuál es la magia que hace posible que un código fuente se ejecute?

Todo programa necesita un traductor, que compile o interprete el código fuente para que pueda ser ejecutado. Es una primera diferencia que puede marcarse entre los lenguajes de programación, ya que un lenguaje puede ser interpretado, compilado, o incluso ambas cosas. Además, la ejecución puede ser dependiente de la máquina, o ejecutarse en una máquina virtual, que te independiza de la máquina.

Por ejemplo los lenguajes funcionales o lógicos suelen usarse primeramente interpretados, como Prolog o Haskell mientras se desarrolla, pero también tenemos disponible un compilador para mejorar su eficiencia. PHP es interpretado, aunque ha habido compiladores para mejorar su eficiencia de ejecución. Cabe destacar como curiosidad la Hip Hop Virtual Machine de Facebook que crearon para agilizar PHP, que precisamente compila los ficheros fuente a un código objeto intermedio más rápido de ejecutar. Javascript, Typescript, Ruby, también son interpretados. C, C++, VB, C# son compilados, es decir, se necesita compilar el código fuente a códigos objeto, estos códigos objeto a su vez se linkan, se retraducen, para ejecutarse finalmente en la máquina.

Continuar leyendo..

© 2024 JnjSite.com - MIT license

Sitio hecho con WordPress, diseño y programación del tema por Jnj.