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.
¿Cómo podía dejarme ésta suite ofimática que todo ordenador debería de llevar? Tienes las utilidades básicas que en la oficina o en casa todos necesitamos: editor de textos, hojas de cálculo, presentaciones, dibujos, e incluso un potente gestor de bases de datos.
Generalmente me dedico a usar el editor de textos y hojas de cálculo. Pero para escribirles éste post me he puesto a curiosear la suite completa a ver qué tal funciona.
Una primera aproximación
Veo que en mi Linux Ubuntu no tengo instalado LibreOffice Base. Es el gestor de bases de datos que tenemos disponible. Me ha parecido muy pero que muy interesante. Así que lanzo mi Centro de software de Ubuntu y me instalo todos los programas de LibreOffice. En su página oficial lo pueden descargar:
A simple vista tenemos una serie de formatos para los documentos totalmente abierta. Es decir, tus archivos de LibreOffice se guardarán en formatos abiertos que cualquier otro programa podrá abrir si es que es compatible. No hay trabas para otros a la hora de hacerse compatibles como solía pasar con muchos formatos patentados, cerrados y sin documentación.
Tenemos la gran mayoría de herramientas que otros programas tienen.
Muchos ya hemos probado los textos, hojas de cálculo y presentaciones. Con los prácticos botones para exportar los documentos a PDF. Todo tipo de herramientas de edición. Etcétera. Así que he hecho unas pruebas con el último elemento que veo que están mejorando con unos resultados bien buenos, el LibreOffice Base.
LibreOffice Base, muy potente
Destaca que permite la conexión con muchas bases de datos como MySQL que tanto se usa en páginas web, con el robusto PostgreSQL.. también incluye un motor de base de datos al que han llamado HSQL.
Tenemos unas plantillas para tablas con las que ir probando. Podemos crear formularios para trabajar con los datos, generar informes de texto, hojas de cálculo.. se integra con el resto de aplicaciones sin atarte a usar su motor de base de datos.
Probando probando he usado una plantilla para trabajar con datos de contactos. Se puede ver en la imagen como en apenas 5 minutos tenemos un formulario listo para usar.
Este proyecto promete mucho, se está gestando algo grande en el mundo de las suites ofimáticas. Y viene del mundo del código libre.
Terminando
También hay otra herramienta como el LibreOffice Math que les dejo para que ustedes prueben 😉
Resumiendo, toda una joya de la informática. De código libre que se puede consultar, se puede colaborar en el proyecto, y por supuesto se puede usar el paquete completo de forma totalmente gratuita y sin restricciones incluso para entornos de trabajo.
Sigo escribiendo desde Linux, hablo de software libre, pero también lo tienen disponible para Windows o Mac.
¡Buenos días! Hace un tiempo que no escribo aquí así que voy a intentar no perder las buenas costumbres dejándoles aquí otro programa que me está haciendo la vida más fácil.
Por cuestiones de trabajo resulta que cada vez más voy acumulando y atendiendo más y más emails. Tengo varias cuentas que hasta hace poco iba recibiendo todos sus emails en una misma cuenta. Una cuenta gratuita con un proveedor de correo electrónico con opción de usarlo gratuitamente hasta cierto punto. Pero llegué al límite de cuentas que podía recibir.
No quería tener que entrar en cada web para consultar los emails y tampoco quería instalarme un programa en local por lo engorroso que puede resultar su mantenimiento pero no encontré otra solución.
Instalación
Me decidí por Thunderbird porque es gratis, de código libre, y primo hermano del navegador Firefox que ya me gustaba.
Lo primero es que necesitaba usar muchos emails distintos desde un mismo sitio, asunto solucionado.
Necesitaba poder tener copias de seguridad, solucionado porque con copiar el directorio .thunderbird de tu carpeta personal ya tienes toda la copia de seguridad del programa. No hay que andar con complicados cifrados, claves de instalación ni nada parecido. En caso extremo tenemos unos archivos .msf en ésta carpeta en donde tenemos todos los emails guardados como ficheros de texto puro.
Permite todas las cuentas de correo que quieras sin límite ninguno, ni en almacenamiento ni en tamaño de cada email.
Compatible con SMTP e IMAP, filtros, redirecciones, múltiples carpetas, etc. Todo lo que puedas imaginar que un lector de emails debe tener. Además tiene también libreta de direcciones y un chata donde charlar a través de varias redes sociales. Yo he comprobado que funciona correctamente con GoogleTalk, Facebook y Twitter.
También es compatible con Windows, Mac y Linux. Y lo tenemos disponible en muchos idiomas.
Resumiendo, otra gran herramienta del Open Source para todos. Me ha funcionado de maravilla en todo éste tiempo que lo llevo usando. Lo recomiendo.
Estoy ahora curioseando los entresijos de PHP. Viendo hacia dónde tiende la programación en la web. Añadiendo herramientas, librerías de programación para mis proyectos.
Dentro del mundo de la programación, elegir librerías, actualizarlas, combinarlas.. todo esto lleva trabajo y en los últimos años están apareciendo herramientas que nos facilitan la vida.
Pongámonos en situación
Cuando empezamos a programar con PHP. Desde el inicio hasta hace pocos años, que casi todo se hacía a pelo. PHP puro y duro, añadiendo código y más código. Los programas iban creciendo y creciendo. Se iban añadiendo manualmente librerías para todo tipo de tareas. Ahora ya no tenemos que reinventar la rueda. Estan surgiendo librerías públicas como por ejemplo Packagist, donde se recopilan códigos para hacer todo tipo de tareas con PHP.
Para manejo de Packagist tenemos una herramienta llamada Composer, con la que una vez configurado lo que vamos a necesitar Composer se encarga de conectar a Packagist y descargar los ficheros que haga falta. Para la programación front-end tenemos herramientas como Bower, similar a Composer, pero pensado para gestionar librerías Javascript/CSS. Estas herramientas, una vez configuradas, nos descargarán los ficheros a nuestro directorio de trabajo y listo. Ya tendremos nuestro proyecto para programar, podremos añadir o borrar librerías fácilmente, elegir versiones, actualizar todo..
Para éste post he elegido probar Silex, es un framework bien sencillo. Más bien un micro-framework como lo nombran oficialmente. Está construido a base de componentes del gran framework Symfony. Con él tendremos una serie de herramientas para usar como plantillas Twig, podremos enviar emails con Swiftmailer, si no eres un experto en seguridad (como es mi caso) no pasa nada porque tenemos el componente de seguridad Security, el componente para generar formularios Form, el generador de URLs, etcétera.
Como iba diciendo, Composer se va a encargar de gestionar por nosotros las librerías PHP de nuestro proyecto. Con el ejemplo veremos mejor cómo funciona. Prepararemos nuestro proyecto hola mundo con Silex con Composer y veremos qué sencillo que lo tenemos para aumentar luego librerías. Pasos:
Descargamos el fichero composer.phar
Preparamos nuestro fichero composer.json
Ejecutamos Composer.
Empezamos a programar.
Descargamos el fichero composer.phar
En el directorio donde vayamos a desarrollar nuestro proyecto o queramos hacer éstas pruebas debemos de poder usar Composer. Se puede instalar en el sistema, en el PATH del sistema, pero eso ya se sale del post. La forma sencilla que viene en su web oficial es poniendo el fichero composer.phar en el directorio. Si tienes curl ejecutas lo siguiente:
curl -sS https://getcomposer.org/installer | php
Si sólo tienes PHP, puedes ejecutar lo siguiente en línea de comandos y se te descargará el fichero:
No lo he dicho pero supongo que ya tienes instalado PHP. Sino desde su web puedes instalarlo: http://es1.php.net/downloads.php. Si tienes Linux, en mi caso Ubuntu, basta con poner en línea de comandos ‘sudo apt-get install php5’.
Preparamos nuestro fichero composer.json
Para Silex va a ser muy sencillo. Si queremos elegir librerías no tenemos más que ir a Packagist y añadir las que necesitemos. El fichero:
En el mismo directorio raiz donde tenemos el composer.phar creamos éste fichero composer.json con el contenido de aquí encima. Si nos fijamos he puesto dev-master aquí arriba, esto nos descargará siempre la última versión que haya disponible. He añadido phpoffice/phpexcel, para hacer una prueba a ver qué tal.
Ejecutamos Composer
Entonces la primera vez tenemos que ejecutar una instalación de las librerías en linea de comandos:
php composer.phar install
Veremos entonces algo parecido a lo que hay en la imagen inicial. Si estamos modificando el fichero composer.json debemos entonces ejecutar lo siguiente:
php composer.phar update
Si todo ha ido bien entonces tendremos en nuestro directorio los siguientes ficheros: composer.phar, composer.json, composer.lock y el directorio vendor. El fichero composer.lock es un fichero que se actualiza para llevar sus tareas internas cada vez que ejecutamos Composer. Luego en el directorio vendor/ tendremos todas las librerías actualizadas a la versión.
Empezamos a programar
No lo he dicho antes pero dentro del directorio de las librerías (vendor), tendremos ahora un fichero autoload.php que simplemente lo incluimos o requerimos y a programar. Tendremos acceso a todas las librerías de Composer que hayamos incluido. Con un ejemplo se verá más claro:
<?php
// index.php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
require_once __DIR__.'/vendor/autoload.php';
$app = new SilexApplication();
$app->get('/', function () {
return 'Página inicial.';
});
$app->get('/crearTexto', function () {
$nombreArchivo = 'fichero.odt';
$phpWord = new PhpOfficePhpWordPhpWord();
$section = $phpWord->addSection();
$section->addText('Hello world!');
$section->addText('Hello world! I am formatted.',
array('name'=>'Tahoma', 'size'=>16, 'bold'=>true));
$phpWord->addFontStyle('myOwnStyle',
array('name'=>'Verdana', 'size'=>14, 'color'=>'1B2232'));
$section->addText('Hello world! I am formatted by a user defined style',
'myOwnStyle');
$objWriter = PhpOfficePhpWordIOFactory::createWriter($phpWord, 'ODText');
$objWriter->save($nombreArchivo);
$str = 'Fichero de Word en formato Open Document creado.';
$str .= '<a href="' . $nombreArchivo . '">Haz click aquí para descargar</a>';
return $str;
});
$app->run();
Ahora vamos a arrancar el servidor web interno de PHP para probar la pequeña aplicación. Ejecutamos en línea de comandos estando en el directorio del proyecto:
php -S localhost:8000
He usado el ejemplo del libro oficial en castellano sobre Silex, modificándolo para ésta prueba. Si quieres puedes ver toda la documentación de Silex en http://librosweb.es/silex/
Si todo ha ido bien, ejecutando http://localhost:8000/ veremos el mensaje ‘Página inicial.’. Si ejecutamos http://localhost:8000/crearTexto veremos el segundo mensaje, en donde se habrá creado el fichero de texto fichero.odt y podremos descargarlo. Si vemos nuestro directorio del proyecto ahí lo tendremos. En el ejemplo he seguido la documentación de su página oficial para crear dicho fichero.
Resumiendo
¿Qué sencillo usar las librerías para hacer algo tan complejo como un fichero compatible con Word? En casi 40 líneas de código tenemos una aplicación web que crea dicho fichero. Todo gracias a usar dos librerías de Composer y en seguida ya lo tenemos.
Recapitulando, ponemos en el fichero composer.json las librerías que vayamos a usar. Luego incluimos el fichero /vendor/autoload.php y ya tenemos todas las clases de objetos listos para usar. Te ahorra tiempo, es práctico, organizado. Si no estás ya usando los vendors deberías de hacerlo.
¡Hola de nuevo! Hoy les traigo una frikada total. Se trata de un programa para hacer copias de seguridad muy sofisticado y a la vez bastante simple de configurar.
Estoy hablando del FreeFileSync, otro programa de código libre que se publica en SourceForge.net. Donde tenemos que ésta misma semana en que les escribo 13.308 descargas, que son muchas comparando con otros proyectos similares.
Es un programa muy muy completo. Podemos hacer copias espejo de una carpeta a otra. Podemos hacer sincronización de archivos, donde se comparan dos directorios y sólo se copian los archivos en los que ha habido cambios. Las sincronizaciones se pueden hacer en una dirección o en ambas.
Siempre con todo lujo de detalles en la interfaz gráfica. Veremos qué archivos han cambiado, cuáles se han borrado de qué sitio, qué carpetas tienes más cambios. Tendremos también contadores totales de la cantidad de cambios abajo a la derecha. Permite filtros para sólo copiar ciertos archivos, todos los archivos o para excluir archivos. Y por si no era bastante, cuando se realiza la copia o sincronización se muestra una gráfica de estado en tiempo real como la de la imagen de arriba.
Compatible con Linux, Windows y Mac. Traducido a múltiples idiomas. Se pueden grabar las configuraciones que hagamos para copiar. También se pueden grabar para ejecutar luego como tarea programada del sistema operativo, con lo que, una vez configurado, podemos estar tranquilos. Cada vez que se ejecute tendremos una copia de todos nuestros valiosos archivos.
Este post va a ser bien corto. Se trata de cómo instalar el ejecutable de Composer en un directorio de Linux que está en la variable PATH del sistema.
Los directorios que están en PATH son los directorios en donde se busca el programa cuando queremos ejecutar algo en Linux. Podemos escribir lo siguiente en línea de comandos y veremos cuáles tenemos ahora mismo:
echo $PATH
Tendremos separados por : todos los directorios actuales. Vamos entonces a añadir en uno nuestro ejecutable de Composer, que se trata de un phar. Un fichero .phar es un programa PHP empaquetado dentro de un sólo archivo.
Vamos entonces..
Descargar la última versión de composer
Si tenemos instalado curl podemos ejecutar lo siguiente en línea de comandos:
curl -sS https://getcomposer.org/installer | php
Si sólo tenemos instalado PHP ejecutamos lo siguiente:
Entonces debemos tener en el directorio en que estamos un fichero llamado composer.phar que podríamos usar con ‘php composer.phar …’. Pero queremos ir un paso más allá. Pudiendo ejecutarlo desde cualquier directorio, ¿recuerdas?
Instalamos en el sistema en PATH
Ejecutamos los siguientes comandos y ya lo tendremos instalado globalmente.
Cómo no, siguiendo con la serie de utilidades de código abierto, no me podía olvidar de una de las grandes joyas de la informática. Estoy hablando, como indica el titular, del navegador Mozilla Firefox.
Es uno de mis mejores aliados al conectarme a la web, vela por mi seguridad, por mi privacidad, sigue fiel a los estándares, es gratuito, de código abierto, está hecho por todos, es para todos.. si enumero todas sus características me puedo quedar aquí escribiendo toda una eternidad así que mejor voy a ir un poco al grano.
Situación actual
Son muchas las bondades que tiene éste navegador. Muchos ya lo conocerán, alrededor del 17-18% de los usuarios navegamos con él. Según los últimos datos que encuentro a fecha en que escribo, el ranking de navegadores queda en el orden siguiente:
Internet Explorer
Firefox
Chrome
Safari
Opera
Si quieren corroborar los datos pueden consultar las estadísticas de StatCounter o NetMarketShare, por ejemplo. Hay muchos datos muy interesantes dispersados por Internet, como el uso de los navegadores por país, donde podemos ver que en muchos países Firefox es el navegador más utilizado. Probablemente que tengamos a Internet Explorer como ganador en el ranking mundial se debe a que viene instalado con Windows, pero eso ya es mi opinión.
Naturaleza
El hecho es que un proyecto como Firefox, esté siendo el segundo navegador más utilizado tiene mucho mérito. Pensemos que está organizado por la Fundación Mozilla, una organización sin ánimo de lucro. Una fundación que vive de donaciones, publica sus trabajos totalmente gratis para todos y además nos da el código fuente. No existe una gran multinacional detrás del navegador, sino que se trata de muchos voluntarios de todo el mundo colaborando junto con unos pocos que forman la Fundación Mozilla.
Podemos ver, cada vez más a menudo, proyectos de colaboración para un mundo mejor. Estoy hablando de GNU/Linux que nos proporcionan un sistema operativo completo, estoy hablando también de Wikipedia con su filosofía de ayudar a todo el mundo ofreciendo gratuitamente el conocimiento, y así unos tras otro podemos encontrar otros en la misma linea.
Colaboraciones
Personas de todo el mundo están colaborando activamente, y grandes empresas como por ejemplo Google ayudan al proyecto. La Fundación Mozilla está metida en el desarrollo y estandarización de muchas funcionalidades que tenemos hoy en dia en nuestros navegadores. Algunas de las cuales están parcialmente desarrolladas o en pleno desarrollo. Podemos ver proyectos para almacenar información en el navegador como IndexedDB o el WebGL para hacer gráficos en 3 dimensiones.
Destaca en 2014 la presentación de la mano de Mozilla y Unity (entorno de desarrollo con motor gráfico para desarrollo de videojuegos) la librería asm.js, con la que se podrá usar el navegador para correr completos videojuegos portando código desde C/C++. En Unity quieren hacer sus herramientas compatibles con la web, con lo que se podrán exportar los videojuegos y ejecutar dentro de navegadores, corriendo a la misma velocidad que los tradicionales videojuegos. En todos éstos avances y muchos más está metida la Fundación Mozilla.
El navegador
Para hablar de Firefox no podemos olvidarnos de los otros proyectos de Mozilla: como el lector de correo Thunderbird, o un nuevo sistema operativo para móviles, el Firefox OS, con el que podremos correr programas hechos completamente con lenguajes web. Ya hay acuerdos con Telefónica para poner en marcha éste sistema operativo, veremos a ver qué tal. Nos podemos hacer una idea de que Firefox está donde tiene que estar.
Tenemos las clásicas herramientas que podemos encontrar en otros navegadores como el historial, la navegación privada que está ahora de moda, los marcadores para guardar las direcciones de nuestras páginas favoritas, y un largo etcétera.
Hace un par de años podíamos ver que Firefox se estaba quedando un poco atrás, estaba siendo un poco lento, y no incluía muchos cambios con las últimas versiones. Pero ya veo que nos traían muchas nuevos cambios haciendo más pequeña la barra de menús que por defecto no está visible. Tenemos un menú desplegable a la derecha donde podemos configurar los accesos directos que queramos. Es muy configurable, teniendo gran cantidad de complementos con los que aumentamos sus funciones.
Si eres desarrollador podrás inspeccionar las webs mientras navegas o desarrollas, viendo al detalle el funcionamiento de una web. La primera imagen de arriba del todo en 3D es una de éstas herramientas, el visor 3D. Es la página de Mozilla, si lo activamos podemos mirar desde distintas perspectivas una web viendo como se dibujan las web internamente, viendo como las capas se amontonan unas encima de otras hasta llegar a lo que realmente vemos. ¿Mola verdad? ¡Qué frikada! Jajaja
También es interesante que ahora los de Mozilla te dan gratis una cuenta Sync, con la que puedes también guardar los marcadores de páginas favoritas, historial, contraseñas, etc. Todo ello en dicha cuenta, no hay problema si se te estropea el ordenador o lo cambias. Si pones tu usuario y contraseña de Sync en otro navegador Firefox tendrás todos esos datos de nuevo.
En resumen, una maravilla, otra joya de la informática que debemos de conocer.
Instalar
En la web de Mozilla tenemos un enlace para descargar el navegador: https://www.mozilla.org/
Debe salir la versión que te debes instalar según tu ordenador, ya sea Windows, Mac, Linux..
Si tienes Linux como en mi caso sólo con poner lo siguiente el línea de comandos ya lo tendremos instalado:
sudo apt-get install firefox
Si has llegado hasta aquí abajo te digo que ya sólo me queda despedirme. Me permites preguntarte ¿qué navegador estas usando? ¿conocías Firefox? ¿te ha gustado el artículo? ¿falta o sobra algo? Para cualquier cosa, un mensaje aquí abajo, un click en me gusta, compartir, etc.. 😉
Hoy he cogido otro de los grandes proyectos de código abierto que tenemos disponibles para usar gratuitamente en nuestro ordenador.
¿No les han enviado alguna vez un vídeo que ha grabado su tio, abuelo, madre, un amigo.. y resulta que cuando vas a verlo no se puede ver? Es habitual que salga un error de códec desconocido. Ésto se debe a que muchos reproductores, aunque cada vez menos, no instalan los decodificadores de vídeo. Se instalan aparte mediante otros programas. Podemos encontrar grandes recopilaciones de decodificadores de vídeo y audio juntos en un mismo instalador.
Pues con VLC casi seguro que no vamos a necesitar instalar nada más, puesto que ya trae dentro del propio programa la gran mayoría de decodificadores que podamos necesitar. Éste ha sido uno de los puntos fuertes a la hora de elegir VLC como el reproductor multimedia por defecto de muchos de nosotros.
Un poco de historia
VLC nace como un proyecto universitario en 1996 en París. Sus siglas significan Video Lan Client, y como su nombre indica se trata de un programa para transmitir video por la red LAN. De ahí que ha ido derivando a lo que ahora tenemos.
Originalmente en el proyecto VideoLAN había dos soluciones: el VideoLanClient (VLC) y el VideoLanServer (VLS). Donde VLS se dedicaba a transmitir el video mientras que el VLC lo recibía y reproducía. Actualmente los dos proyectos se han unido en el VLC con lo que podemos emitir y recibir una señal de vídeo con el mismo programa. Que es lo que se puede ver en la imagen inicial.
Cabe destacar que partes de éste programa se han integrado en otros grandes proyectos. Siendo habitual que encontremos que nos recomiendan instalarlo.
Instalar o descargar
En la propia página web podemos encontrar todas las distribuciones disponibles. Está para varias plataformas, cómo no, para Windows, Mac o Linux lo tenemos disponible. En mi caso, como tengo Linux, pongo lo siguiente en línea de comandos y ya lo tengo instalado:
También es interesante un proyecto que tienen de editor de vídeo basado en VLC, el llamado VLMC (video lan movie creator). Es un proyecto muy prometedor porque el programa sería compatible con casi todo tipo de vídeos sin tener que instalar nada extra. Buscan colaboradores como en todo buen proyecto de código abierto 😉
Gran proyecto, existen muchos colaboradores, partners, y se están incluyendo partes del VLC en otras soluciones de la industria multimedia.
Terminando
Sólo me queda explicar un poco la imagen con la que empezaba el post. Ahí se puede ver cómo el primer VLC abierto está emitiendo la señal. Los cuatro restantes VLC están recibiendo y mostrando la señal que emite el primero.
Estaba curioseando y encuentro que tenemos muchos protocolos de streaming de video HTTP, RDP, Icecast, etc.. Cada uno tiene su forma de configurar y explicarlos no es el fin de éste post. Simplemente hay que coger un VLC darle a Archivo->Emitir entonces elegimos lo que queremos emitir: desde cámara, desde otro emisor, desde disco o archivos. Configuramos y lo lanzamos el servidor. Luego abriendo otros VLC le damos a Archivo->Abrir ubicación de red.. y podremos conectar al servidor.
Parece sencillo pero si vamos jugando con el programa veremos que tiene muchas, muchas, muchas opciones 🙂
Cuando uno entra en el mundo de la informática y va necesitando programas para solucionar ciertas tareas, nos podemos encontrar con que no encontramos fácilmente la solución. Con éste post, pretendo empezar con una serie de programas de ‘fuente abierta’, open source para los amigos, que nos solucionan éstas tareas.
Basta navegar un poco y seguro que encontraremos alguno dedicado a lo que necesitemos.
Instalando
En mi caso tengo una distribución de Linux instalado. Si tienes Linux sólo con poner lo siguiente en un terminal tendrás instalado Audacity en tu máquina:
sudo apt-get install audacity
Si tienes otro sistema operativo puedes ir a la página oficial de descarga y elegir tu versión. Simplemente descargas el fichero y sigues las instrucciones de instalación como se hace con la mayoría de programas.
Características
Podemos ver en la página del programa que es capaz de grabar con una velocidad de muestreo de hasta 384 000 Hz si tu ordenador es capaz de soportar tanta resolución, con muestras de hasta 32 bits de coma flotante cada una. Soporta los principales formatos de audio como MP3, AC3, WMA, etcétera.. Podemos cortar y pegar fácilmente mientras visualizamos lo grabado, editar, aplicar filtros, mezclar, hacer zoom a trozos de nuestro audio. Enlaza entradas y salidas, eligiendo de dónde queremos grabar, si queremos escuchar mientras grabamos.
Podemos programar grabaciones, establecer umbrales de activación para grabar. Grabación pista a pista al estilo de un estudio de sonido profesional grabando instrumento o instrumento, o voz a voz, mientras unos se escuchan a otros. Podemos tener múltiples pistas, mezclarlas, editarlas por separado. A parte de los efectos de sonido principales, tenemos 117 complementos.
Analizador de espectro, búsqueda de silencios, búsqueda de ritmo, generadores de ruido, de silencio, y un largo etcétera.
Para los expertos, también permite complementos para aumentar sus funciones.
Como puntos negativos sólo le encuentro que la interfaz es bien sencilla en cuanto a diseño: las formas y colores.
Conclusión
Una joya de la informática. Que seguro que haría las delicias de muchos de los aficionados o incluso profesionales que elijan soluciones del mundo de Open Source. Podemos tener resultados muy profesionales si aprendemos a manejarnos bien con éste programa y si tenemos un buen ordenador con buena tarjeta de sonido.
Otra vez más, con PHP tenemos también una utilidad, herramienta, librería, función, o como queramos llamarle.. para hacernos más fácil la vida diaria al programar con PHP.
De igual manera que podemos leer o escribir en un fichero de texto, también podemos leer o escribir línea a línea en ficheros estándar CSV. Los ficheros CSV son los llamados ficheros de valores separados por comas. Dentro se ordenan fila a fila listas de elementos separados por comas, como su nombre indica.
Todo ésto lo podemos manejar con el uso general de un fichero abriendo y cerrando ficheros como veniamos haciendo con fopen y fclose. Y ahora usaremos fgetcsv o fputcsv para leer línea a línea del fichero. Dejemos de tanto hablar de lo mismo y vamos a ver un ejemplo..
Supongamos que tenemos el siguiente fichero:
En éstos días he tenido acceso a un ordenador que ha estado trabajando con archivos grandes, generados de resultado de renderizados 3D. El ordenador ha estado trabajando duro y el disco se ha muerto. Asunto normal teniendo en cuenta la gran carga de trabajo hecho.
No ha quedado otra solución que reemplazar el disco duro, reinstalar el sistema operativo y a seguir funcionando. Pensando en ello, tengo un sistema operativo Windows, igual que el equipo en cuestión. Y resulta que hace tiempo que no desfragmentaba. Con lo que me encontré en uno de los discos la imagen del disco bastante fragmentada que adjunto.
La desfragmentación en Windows
La fragmentación ocurre cuando grabamos archivos en el disco duro en trozos dispersos. Sería mejor que un mismo archivo estuviera en el disco en el mismo sitio, mejorando así su lectura y evitando que el cabezal de lectura del disco vaya dando saltos buscando los trozos del archivo, cosa que reduce la vida del mismo aparte de su velocidad de respuesta.
Aún tenemos en los sistemas de Microsoft el problema de la fragmentación. Cuando teníamos los sistemas de archivos antiguos tipo FAT la desfragmentación era más grave. Con los nuevos sistemas de archivos NTFS se ha mejorado pero sigue pasando, con lo que el desfragmentado viene siendo necesario. Cosa que no ocurre en otros sistemas. Pero ¿porqué ocurre? ¿no sería más fácil grabar los archivos sin partirlos?
La fragmentación ocurre porque Windows da más importancia a que los datos se graben rápidamente, con lo que ahí donde esté el cabezal empezará a grabar y si queda sin espacio contiguo partirá el fichero en trozos más o menos dispersos dependiendo del espacio libre. Además si un archivo crece en tamaño y no hay espacio libre hasta el siguiente archivo entonces se fragmenta. Ésto se ha mejorado con el nuevo NTFS, dejando más espacio libre entre archivo y archivo por si acaso crece en tamaño. Pero tarde o temprano se torna necesario desfragmentar.
Otros sistemas
En los equipos Mac también ocurre la desfragmentación. En Linux, con los sistemas de archivos ‘ext’ se ha solucionado casi totalmente éste problema porque directamente dispersa los archivos por el disco duro asegurándose que no haga falta fragmentarlos. Produciéndose la desfragmentación sobre la marcha donde sólo permite un 1% de archivos fragmentados. Aunque también hay herramientas con las que se puede desfragmentar un sistema Linux.
Mejorando
Resumiendo, si queremos entonces evitar en la medida de lo posible que tu disco duro vaya dando saltos adelante y atrás, moviéndose entre discos, sectores y cilindros para leer y escribir tus datos lo que debemos hacer es desfragmentar el disco duro de vez en cuando.
En Windows 7 tenemos el desfragmentador en el botón de Inicio -> Accesorios -> Herramientas del sistema -> Desfragmentador de disco
Hay muchas soluciones en el mercado, de entre ellas, para uso personal tenemos el famoso Defraggler. Es muy completo, te permite incluso elegir qué archivos quieres compactar entre sus numerosas opciones.
Cada vez menos ordenadores de sobremesa visitan las páginas web. Se venden ingentes cantidades de dispositivos que no son los clásicos ordenadores como tablets, smartphones, smart TV.. Los visitantes de una web necesitan que la página sea compatible con todo tipo de dispositivos. Bootstrap de Twitter está muy de moda, a fecha de hoy van por la versión 3.1.1 así que aprovechando para ponerme al día les dejo éste post. Al grano..
Bootstrap de Twitter es un framework de desarrollo para hacer aplicaciones web compatibles con todo tipo de dispositivos. El modelo de desarrollo cambia totalmente al modo habitual porque se da preferencia a los dispositivos móviles siendo su adaptación primera, antes que para escritorios de ordenador. Para verlo claro más abajo veremos cómo el mismo menú en caso de tener una pantalla ancha se verá en horizontal como en la imagen de arriba. Si tenemos una pantalla estrecha se visualizará desplegándose hacia abajo para que quepa todo.
Lo mismo sucede con el resto de las páginas diseñadas con Bootstrap, se adaptan según cambia el tamaño del navegador. Así tendremos una web que se puede ver correctamente en cualquier dispositivo.
Esbozando la web
Para que sea lo máximo posible compatible necesitamos utilizar el estándar HTML5 con lo que la primera estructura quedará así:
Es importante saber que con la metaetiqueta «viewport» definimos la escala inicial de la página. Ésto se utiliza para agrandar o disminuir con la función de zoom de los navegadores.
Añadiendo los archivos externos
Prefiero descagar los archivos de las páginas oficiales (getbootstrap.com) y usarlos dentro del proyecto en cuestión. Pero para simplificar ésta primera plantilla he puesto los CDN. Será necesario tener conexión a Internet para ejecutar la web y se vean el aspecto estilo Bootstrap. Si los incluyes dichos archivos no será necesario Internet. Añadimos dentro del <head> lo siguiente:
Ésto simplemente enlaza a los archivos públicos que tenemos en Internet. Te ahorras espacio usando los CDN, pero dependes de que dichos archivos estén disponibles para que tu web funcione correctamente.
Algunos componentes para probar
A continuación he puesto un menú de navegación y tres paneles, uno simple, otro con título y un tercero con título con estilo de cabecera. Añadiendo en el body lo siguiente tendremos la barra de navegación que viene en la documentación oficial:
<nav class="navbar navbar-default" role="navigation"> <!-- El logotipo y el icono que despliega el menú se agrupan para mostrarlos mejor en los dispositivos móviles --> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse"> <span class="sr-only">Desplegar navegación</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">Logotipo</a> </div>
<!-- Agrupar los enlaces de navegación, los formularios y cualquier otro elemento que se pueda ocultar al minimizar la barra --> <div class="collapse navbar-collapse navbar-ex1-collapse"> <ul class="nav navbar-nav"> <li class="active"> <a href="#">Enlace #1</a> </li> <li> <a href="#">Enlace #2</a> </li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> Menú #1 <b class="caret"></b> </a> <ul class="dropdown-menu"> <li> <a href="#">Acción #1</a> </li> <li> <a href="#">Acción #2</a> </li> <li> <a href="#">Acción #3</a> </li> <li class="divider"> </li> <li> <a href="#">Acción #4</a> </li> <li class="divider"> </li> <li> <a href="#">Acción #5</a> </li> </ul> </li> </ul>
Nota que los paneles están dentro de un <div class=»container»>. Éste div contenedor se suele usar para el contenido de la web, alinea lo que tengas dentro, para algunos componentes es necesario si no puede que no se vean bien.
Ahora es el momento de probar con un móvil el fichero, o con una tablet. Si quieres verlo claro directamente en el ordenador puedes estrechar horizontalmente el navegador con la página cargada y verás cómo se modifica el aspecto.
Usando archivos incluidos en el proyecto
Si descargamos y descomprimimos los archivos de la página oficial getbootrap.com, tendremos tres directorios con todos los archivos necesarios menos jQuery. jQuery lo podemos descargar de su página oficial http://code.jquery.com/jquery-2.1.0.min.js y copiarlo al directorio js. Ahora tendremos un directorio /css otro /fonts y un tercero /js con todo incluido. En éste caso viendo los archivos que tengamos según la versión podremos incluir en la cabecera el código siguiente:
<nav class="navbar navbar-default" role="navigation"> <!-- El logotipo y el icono que despliega el menú se agrupan para mostrarlos mejor en los dispositivos móviles --> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse"> <span class="sr-only">Desplegar navegación</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="#">Logotipo</a> </div>
<!-- Agrupar los enlaces de navegación, los formularios y cualquier otro elemento que se pueda ocultar al minimizar la barra --> <div class="collapse navbar-collapse navbar-ex1-collapse"> <ul class="nav navbar-nav"> <li class="active"> <a href="#">Enlace #1</a> </li> <li> <a href="#">Enlace #2</a> </li> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown"> Menú #1 <b class="caret"></b> </a> <ul class="dropdown-menu"> <li> <a href="#">Acción #1</a> </li> <li> <a href="#">Acción #2</a> </li> <li> <a href="#">Acción #3</a> </li> <li class="divider"> </li> <li> <a href="#">Acción #4</a> </li> <li class="divider"> </li> <li> <a href="#">Acción #5</a> </li> </ul> </li> </ul>
Si todo ha ido bien debemos de ver la página como la de la imagen de al lado cuando hacemos la ventana del navegador estrecha. Espero haber resumido correctamente la documentación oficial como para poder empezar a jugar con el framework Bootstrap.
Sólo me queda decir que los ejemplos de componentes que he puesto los he sacado de la documentación oficial, en ella estan todos los que hay disponibles. Como por ejemplo el uso de rejillas, las fuentes para los pequeños gráficos incluidos, y un largo etcétera..
Hace tiempo que no escribo, parece que estoy olvidándome de la programación pero no es así. He estado bastante liado, tal vez demasiados proyectos o demasiado «querer hacer». El que mucho abarca poco aprieta, o el que mucho aprieta poco abarca :S así que espero seguir escribiendo, aunque sea los fines de semana.
En éstos días he estado viendo cómo se puede medir la calidad de una página web. Desde un punto de vista se puede medir la cantidad y calidad de los algoritmos que trabajan en la parte servidor, sus funciones o servicios que dan. Por otro lado tenemos las validaciones de la parte cliente, si cumple con los estándares de los lenguajes..
Unos chequeos que podemos hacer para validar la parte cliente:
http://validator.w3.org/ para validar el lenguaje de marcado según la especifiación internacional.
Con ésto ya hay para hacerle algunos checkeos automáticos. Son pocas las webs que cumplen con todos los estándares, pero la organización mundial donde se organiza todo ésto está ahí haciendo su trabajo, queda de nuestra mano todo lo demás sino te arriesgarás a que la web pueda no funcionar bien en algunos navegadores. Ten en cuenta también que cumpliendo con la accesibilidad le hecharás una mano a personas que tienen problemas visuales, a los que necesitan traductores automáticos, de otras culturas, y un largo etcétera. La accesibilidad es algo muy importante y se nos pueden pasar por alto.
Por otro lado tenemos también los criterios de diseño como por ejemplo: «Si algo es un botón que parezca un botón.» no le pongamos una imagen con luces intermitentes.. ésto ya es otro tema, a ver si pronto tengo tiempo.. Si estás leyendo ésto gracias por haber llegado hasta aquí 🙂