MySQL

Cuando estamos diseñando una base de datos siempre nos preguntamos cual sera el tipo de dato que vamos a manejar, pero, que pasa con esos campos en los que necesitamos guardar cierta cantidad de informacion?

Aqui es donde aparece: TINYTEXT, TEXT, MEDIUMTEXT y LONGTEXT

Muy bien, ya sabemos que podemos usar algunos de esos tipos pero, relamente cual es el tamaño maximo de almacenamiento de cada uno de ellos?

En StackOverflow.com el usuario Bridge realizo una respuesta a esta interrogante y es la siguiente:

``` Type | Maximum length -----------+------------------------------------- TINYTEXT | 255 (2 8−1) bytes TEXT | 65,535 (216−1) bytes = 64 KiB MEDIUMTEXT | 16,777,215 (224−1) bytes = 16 MiB LONGTEXT | 4,294,967,295 (232−1) bytes = 4 GiB ```
NOTA: El numero de caracteres que pueden ser alamacenados va a depender de la codificacion que estemos usando. Ya con esto podemos tener una idea de como hacer nuestras tablas y evitar modificarlas mientras estamos trabajando en algun proyecto web. Lecturas recomendadas - [Documentacion de MySQL para mas info](http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html). - [TINYTEXT, TEXT, MEDIUMTEXT, and LONGTEXT maximum storage sizes](http://stackoverflow.com/questions/13932750/tinytext-text-mediumtext-and-longtext-maximum-storage-sizes)

Imagen

Lightbox

The original lightbox script. Eight years later — still going strong!

Ciertamente, desde hace tiempo estos script nos permiten realizar cosas muy entretenidas cuando necesitamos hacer el tipico carousel de imagenes...

Como usarlo

Esta disponible en bower asi que lo podemos bajar usando:

 bower install lightbox2 --save

Luego:

Debemos incluir el css

<link href="path/to/lightbox.css" rel="stylesheet">

Y el script para que funcione:

<script src="path/to/lightbox.js"></script>

Tomando en cuenta lo siguiente:

  • Si ya usamos jQuery debemos estar seguros de colocarlo antes de lightbox.js
  • Si no usamos jQuery debemos usar el archivo lightbox-plus-jquery.js que esta listo para funcionar sin jQuery ?

Ahora con las imagenes:

Debemos usar el atributo data-lightbox en las imagenes que deseamos que el Lightbox funcione.

<a href="images/image-1.jpg" data-lightbox="image-1" data-title="My caption">Image #1</a>

De forma opciona podemos agregar data-title para que salga un caption en la imagen.

Para saber mas, clic aqui.

Dummy Content

Cuando estamos trabajando como desarrollador web e iniciamos un proyecto siempre escuchamos: "Te paso el contenido más tarde" "El diseñador aun no ha terminado las imagenes" entre muchas otras cosas... Gracias a $deidad existen servicios que nos pueden ayudar en estos casos...

Este post viene por el siguiente "tuit":

¿Pero teniendo Batman Ipsum, Bacon Ipsum o Heisenberg Ipsum hay gente que sigue usando el Lorem Ipsum? ? http://t.co/lAZsxZ7kuB #EXF

— Ariana Escobar (@arianaescobar) Mayo 7, 2015

### Meet the Ipsums Es una web que recopila varias herramientas para generar contenido de prueba para nuestros proyectos y gracias a este tipo de servicios web podemos seguir adelante con nuestro proyecto sin necesidad de tener la informacion del cliente... ### Necesitamos imagenes? Como no todo es texto tambien hay servicios que proveen imagenes de prueba: - dummyimage.com - lorempixel.com - dummy-image-generator.com - placehold.it Y un gran ETC... PD: Podemos usar estas herramientas para cualquier tipo de proyectos

tri color

bancos-json

Código y Bancos correspondientes de Venezuela

Creemos que las bases de datos No-SQL son geniales, por ello queremos ofrecele a los desarrolladores Venezolanos un recurso útil para sus proyectos. Básicamente, BANCOS-JSON es un documento en formato JSON que agrupa gran parte de los bancos dentro del territorio nacional.

Inspirado en el excelente trabajo de:

  • xombra Por crear este gist sobre: "Código y Bancos correspondientes de Venezuela"
  • marydn en venezuela-sql
  • zokeber en venezuela-json

Y motivado por la ausencia de proyectos de éste tipo, BANCOS-JSON apunta a ser la mejor elección para todo aquél que requiera la organización bancaria de Venezolana en .json.

Uso

El documento bancos.json es ideal para ser importado a una base de datos No-SQL. Aunque sabemos que existen muchas soluciones de este tipo, sólo te dejaremos las instrucciones necesarias para importarlo a una de las más conocidas.

MongoDB

Para importar bancos.json a MongoDB sólo debes escribir en tu consola:

``` mongoimport --jsonArray --db tu_base_de_datos --collection tu_coleccion --type json --file "/ruta/a/bancos.json" ```
Referencias ----------- - [JSON](https://es.wikipedia.org/wiki/JSON) - [MongoDB](http://www.mongodb.com/mongodb-overview) - [Venezuela-SQL](https://github.com/marydn/venezuela-sql) - [Venezuela-JSON](https://github.com/zokeber/venezuela-json) - [Código y Bancos correspondientes de Venezuela](https://gist.github.com/xombra/11335801) Licencia -------- Licencia [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/deed.es_ES)

OpenWeatherMap service provides open weather data for more than 200,000 cities and any geo location that is available on our web-site and through API. Ideology of our service is inspired by OpenStreetMap and Wikipedia that make information free and available for everybody. OpenWeatherMap provides wide range of weather data including current weather, forecast, precipitations, wind, clouds, data from weather stations, lots of maps, analytics and many others. We have own model of weather calculation that involves global meteorological broadcast data, own WRF calculation for regions and real-time data from more than 40,000 weather stations.

http://openweathermap.org/

Entonces, que necesitamos para obtener info sobre el clima en la ciudad?

  • URL del API de OWM
  • Saber un poquito de PHP

Juguemos ᕕ( ᐛ )ᕗ

URL del API:

http://api.openweathermap.org/data/2.5/weather?q=valencia,ve&units=metric

( Pueden cambiar lo de valencia,ve con el nombre de su ciudad y el pais )

Vamos a obtener algo como esto:

``` { "coord": { "lon": -68.01, "lat": 10.16 }, "sys": { "type": 1, "id": 4292, "message": 0.5854, "country": "VE", "sunrise": 1434017427, "sunset": 1434063184 }, "weather": [ { "id": 802, "main": "Clouds", "description": "scattered clouds", "icon": "03n" } ], "base": "stations", "main": { "temp": 28.56, "pressure": 1014, "humidity": 58, "temp_min": 28, "temp_max": 29 }, "visibility": 10000, "wind": { "speed": 1.5, "deg": 230 }, "clouds": { "all": 40 }, "dt": 1433980800, "id": 3625549, "name": "Valencia", "cod": 200 } ```
En un archivo PHP colocamos lo siguiente:
``` $url = file_get_contents("http://api.openweathermap.org/data/2.5/weather?q=valencia,ve&units=metric"); $json = json_decode($url); $ciudad = $json->name; $latitud = $json->coord->lat; $longitud = $json->coord->lon; $temperatura = $json->main->temp; $temperaturamax = $json->main->temp_max; $temperaturamin = $json->main->temp_min; $presion = $json->main->pressure; $humedad = $json->main->humidity; $viento = $json->main->speed; ```
Ya solo nos queda imprimir las variables y listo :) Es muy sencillo, no hay gran cosa en esto quizas, lo que se puede hacer para mejorar esto es: - Guardar los datos que se necesiten en una tabla en una db para no tener que consultar a cada rato la API ya que es muy lenta la consulta.

Aquí les dejo un script que me ayuda a mi a respaldar mi librería de música desde mi laptop a mi NSLU2 que por cierto esta a unas 30 millas (48 kilómetros) de distancia. El script usa Rsync sobre SSH. Démosle un vistazo a este script al cual he salvado como rsync_itunes.sh.

#!/bin/bash
#rsync -avx --delete --exclude='iTunes/iTunes\ Media/Movies/*' --progress ~/Music/iTunes -e "ssh -p22" usuario.aqui@host.remoto.aqui:~/
#rsync -avx --progress ~/Music/iTunes -e "ssh -p22" usuario.aqui@host.remoto.aqui:~/
rsync -avx --delete --progress ~/Music/iTunes -e "ssh -p22" usuario.aqui@host.remoto.aqui:~/

Como pueden ver tengo dos lineas comentadas las cuales las descomento de acuerdo con lo que quiera hacer. La primera omite el directorio 'Movies'. La segunda no borra los archivos que he eliminado de iTunes o que ya no están en esa ubicación. La ultima que es la que no esta comentada borra y sincroniza la librería entera. Noten que -e "ssh -p22" le dice a rsync que va a ejecutar SSH por el puerto 22, útil en caso de que engan SSH corriendo en otro puerto.

Yo en particular lo tengo en ~/scripts y lo ejecuto así:

sh ~/scripts/rsync_itunes.sh
Este año venimos hablarles nuevamente del Congreso Nacional de Software Libre, en su edición número 11. Este es un evento itinerante que visita una ciudad por semana durante tres (3) meses, a lo largo de Venezuela. Difundiendo información sobre el uso de las tecnologías libres, en un evento totalmente Libre y Gratuito.


Este año el evento visitará las siguientes ciudades:
  • Aragua, Maracay. Fecha: 10 – 11 de Abril. 
  • Sucre, Carúpano. Fecha: 17 – 18 de Abril. 
  • Cojedes, San Carlos. Fecha: 24 – 25 de Abril.
  • Apure, San Fernando. Fecha: 08 – 09 de Mayo.
  • Anzoátegui, El Tigrito. Fecha: 15 – 16 de Mayo.
  • Yaracuy, San Felipe. Fecha: 22 – 23 de Mayo.
  • Bolívar, Ciudad Bolívar. Fecha: 29 – 30 de Mayo.
  • Delta Amacuro, Tucupita. Fecha: 05 – 06 de Junio.
  • Carabobo, Valencia. Fecha: 12 – 13 de Junio.
  • Mérida, Mérída. Fecha: 26 – 27 de Junio.
  • Monagas, Maturin. Fecha: 03 – 04 de Julio.
  • Zulia, COL. Fecha: 10 – 11 de Julio.
  • Falcón, Coro. Fecha: 17 – 18 de Julio.
  • Distrito Capital, Caracas. Fecha: 24 – 25 de Julio.
Si quieres formar parte del evento como ponente, puedes leer los lineamientos en la sección Ponencias de su página, y si quieres asistir, y participar en las diversas actividades que se presentan en el evento regístrate.

Siguelos en sus redes sociales y mantente al tanto de las informaciones:
Twitter: CNSLve
Facebook: Congreso Nacional de Software Libre
Instagram: cnslve


Ruta CNSL 2015


Vagrant Logo

Como ya es sabemos Vagrant es un sistema que funciona sobre Virtual Box, es un software que sirve para instalar máquinas virtuales con otros Sistemas Operativos en nuestro equipo.

Pre-requisitos: Hay 2 herramientas que debes tener en tu maquina para que puedas usar esta gran herramienta:

Para más info clic aquí.

Que es lo que hace el script?

  • Instalación de apache 2.4, php 5.5, MySQL, PHPMyAdmin, Composer, nodejs, npm, bower, git, python-pip y lftp.
  • Configura un password pre-definido para MySQL y PHPMyAdmin que es: root.
  • Activa mod_rewrite y agrega AllowOverride All a la configuración del vhost.
``` #!/bin/bash echo "Provisioning virtual machine..." echo "Please, wait..." # Use single quotes instead of double quotes to make it work with special-character passwords PASSWORD='root' # update sudo apt-get update -y > /dev/null 2>&1 # install apache 2.5 and php 5.5 sudo apt-get install apache2 -y > /dev/null 2>&1 sudo apt-get install php5 libapache2-mod-php5 php5-mcrypt php5-cli -y > /dev/null 2>&1 # install mysql and give password to installer sudo debconf-set-selections <<< "mysql-server mysql-server/root_password password $PASSWORD" sudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $PASSWORD" sudo apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql -y > /dev/null 2>&1 # install phpmyadmin and give password(s) to installer # for simplicity I'm using the same password for mysql and phpmyadmin sudo debconf-set-selections <<< "phpmyadmin phpmyadmin/dbconfig-install boolean true" sudo debconf-set-selections <<< "phpmyadmin phpmyadmin/app-password-confirm password $PASSWORD" sudo debconf-set-selections <<< "phpmyadmin phpmyadmin/mysql/admin-pass password $PASSWORD" sudo debconf-set-selections <<< "phpmyadmin phpmyadmin/mysql/app-pass password $PASSWORD" sudo debconf-set-selections <<< "phpmyadmin phpmyadmin/reconfigure-webserver multiselect apache2" sudo apt-get install phpmyadmin -y > /dev/null 2>&1 # setup hosts file VHOST=$(cat < DocumentRoot "/var/www/html/" AllowOverride All Require all granted EOF ) echo "${VHOST}" > /etc/apache2/sites-available/000-default.conf # enable mod_rewrite sudo a2enmod rewrite # enable php5-mcrypt sudo php5enmod mcrypt # restart apache sudo service apache2 restart # install Composer curl -s https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer sudo apt-get install git -y > /dev/null 2>&1 sudo apt-get install nodejs -y > /dev/null 2>&1 sudo apt-get install npm -y > /dev/null 2>&1 sudo apt-get install python-pip -y > /dev/null 2>&1 sudo apt-get install lftp -y > /dev/null 2>&1 # Install globally dependencies sudo npm install -g bower > /dev/null 2>&1 echo "Finished provisioning." ```
Pueden revisar este [repo](https://github.com/abr4xas/vagrant-config) para más info.

A veces cuando estamos imprimiendo un documento puede aparecer un mensaje diciéndonos que hay un problema con la impresora o con el servicio de cola de impresión.

Para solventar este inconveniente podemos crear un archivo .bat con lo siguiente:

``` net stop spooler del %systemroot%\system32\spool\printers\*.shd del %systemroot%\system32\spool\printers\*.spl Net start spooler ```
Lo que hace este archivo es eliminar todo lo que se encuentre en la cola de impresión y nos permite trabajar nuevamente sin problemas. Espero que este post les ayude si presentan este mismo problema.

Lean lo que piensa el vicerrectorado administrativo de la UCV con respecto a la migración a las tecnologias libres. Y si el llega a leer alguno de su equipo esto, que me disculpen, pero son una cuerda de ignorantes y flojos que no buscan mas que excusas porque no quieren ni estudiar, ni aprender mas!!!! IGNORANTES!

Ley de Infogobierno.

Análisis conjunto entre el VRAC y la DITC del Rectorado UCV. Posición Inicial del VRAC.

El día martes 10-03-2015, el Vicerrector Académico Prof. Nicolás Bianco C., los Gerentes de Área y de Línea así como el personal profesional de Informática, la Jefa del Departamento de Administración y la Asesora Jurídica, todos del VRAC, se reunieron en la Sala C del Complejo de la Biblioteca Central en amplia interacción con el Prof. Julio Vivas, Director de Información y Tecnologías de la Comunicación (DITC) adscrita al Rectorado, y sus colaboradores, para analizar en profundidad la Ley de Infogobierno promulgada por el EjecutivoNacional a finales de 2014. Es pertinente recordar que la base de sustentación operativa del nuevo Vicerrectorado Académico de la UCV (gestión 2008- ) está conformada por la integración, la gerencia y el masivo empleo de sistemas y programas (software).

Como conclusión de esta interacción se acordó que la DITC presentaría ante la Rectora García Arocha Márquez, la solicitud de un derecho de palabra ante el Consejo Universitario para exponer y tratar esta compleja materia y, por otra parte, la DITC procedería a interactuar con la Oficina Central de Asesoría Jurídica (OCAJ) de la UCV, para establecer acciones jurídicas en relación al contenido y al impacto de la Ley de Infogobierno sobre la esencia y operatividad de las
universidades.

El Vicerrectorado Académico presenta en este informe ante el CU una opinión preliminar, que proviene de la discusión entre sus directivos y la Asesoría Jurídica en comisión de servicios Abogado Julie González. Nuestra opinión es la siguiente:

La Ley de Infogobierno es el instrumento jurídico mediante el cual se pretende establecer los principios, bases y lineamientos que rigen el uso de las tecnologías de información en el Poder Público para mejorar la gestión pública y los servicios que se prestan a  las personas impulsando la transparencia del sector público, estableciéndose una serie de sanciones que van desde multas comprendidas entre cincuenta (50) y quinientas (500) Unidades Tributarias, hasta la inhabilitación para el ejercicio de funciones públicas cuando, entre otras infracciones, no se cumpla con la obligación de migrar a software libre o adquieran o siga usándose de algún modo software propietario. Las Universidades Públicas, así como cualquier otra institución del sector universitario de naturaleza pública, están sometidas a las disposiciones contenidas en esta Ley de conformidad con el artículo 2.8 de la misma.

Entre las finalidades de la Ley de Infogobierno está garantizar la transparencia de la gestión pública, facilitando el acceso a la información pública (art 3.6) y contribuir en los modos de organización y funcionamiento del Poder Público, apoyando la
simplificación de los trámites y procedimientos administrativos que éstos realizan (art.3.8). Se establece además que son de interés público y de carácter estratégico las tecnologías de información libres, como instrumento para garantizar la efectividad, transparencia, eficacia y eficiencia de la gestión pública (art. 4).

 

Lo peor viene aqui:
Ahora bien, entendiendo que la gestión pública es la aplicación de todos los procesos e instrumentos que posee la administración pública para lograr los objetivos de desarrollo o de bienestar de la población, es decir es el ejercicio de la función administrativa del gobierno que busca poner en contacto directo a la ciudadanía con el Poder Público, consideramos lógico que esta Ley se aplique a todos los órganos y entes que ejercen el Poder Público Nacional, Estadal y
Municipal y a las sociedades, fundaciones y empresas de Estado por la naturaleza de las funciones que realizan; pero en ningún caso se le puede aplicar a las Universidades porque es una violación flagrante al Derecho a la Educación y a la Autonomía Universitaria.

El Derecho a la Educación no puede estar sujeto a restricciones y prohibiciones, y mucho menos a sanciones, ya que es un derecho fundamental de todos los seres humanos que les permite adquirir conocimientos y alcanzar así una vida social plena, siendo vital para el desarrollo económico, social y cultural de todas las sociedades. La Universidad, por su parte,  es una comunidad de intereses espirituales que reúne a profesores y estudiantes en la tarea de buscar la verdad y afianzar los valores trascendentales del hombre, teniendo como finesrealizar una función rectora en la educación, la cultura y la ciencia.

Para cumplir esta misión, las actividades universitarias se dirigirán a crear, asimilar y difundir el saber mediante la investigación y la enseñanza, a completar la formación integral iniciada en los ciclos educacionales anteriores, y a formar los equipos profesionales y técnicos que necesita la Nación para su desarrollo y progreso. En este contexto la Constitución venezolana establece  que el Estado reconocerá la autonomía universitaria como principio y jerarquía que permite a los profesores, estudiantes y egresados dedicarse a la búsqueda del conocimiento a través de la investigación, científica, humanística y tecnológica  para beneficio de la Nación, en consecuencia pretender limitar o restringir la búsqueda del
conocimiento, la creación de conocimiento, al uso exclusivo de software libre so pena de sanciones es abiertamente inconstitucional porque atenta contra el espíritu y razón de ser de las  Universidades, contra el derecho a la educación y contra la progresividad del mismo.

De modo que este Vicerrectorado Académico recomienda que no solo esta Casa de Estudios, sino todas las Universidades Públicas, ejerzan un recurso de nulidad por razones de inconstitucionalidad junto con medida cautelar de suspensión de efectos contra el artículo 2.8 de la Ley de Infogobierno que establece que esta Ley se aplica a las Universidades Públicas.

Prof. Nicolás Bianco  C.

Vicerrector Académico211||||