Si eres de los usuarios que cambia constantemente su sistema operativo, o simplemente haz instalado recientemente una distribución ubuntu y no quieres perder el tiempo buscando los repositorios de software más adecuados para (quieres que sólo funcione ya), entonces este post es para ti. Como sabemos ya los usuarios de ubuntu el tema de obtener los repositorios más adecuados normalmente nos toma un tiempo importante dentro de nuestra configuración habitual, los 4 grupos principales de repositorios bases de ubuntu(main, restricted, universe y multiverse) pueden ser activados sin mayores problemas pero siempre hay software adicional que será necesario agregar una forma fácil y rápida es autogenerar el fichero de repositorios utilizando la siguiente web: UBUNTU: http://repogen.simplylinux.ch/ , DEBIAN: http://debgen.simplylinux.ch/, luego descargamos el fichero que genera y lo guardamos en /etc/apt/sources.list y pues luego desde terminal «apt-get update» y ya está a instalar software se ha dicho :D.
pdta: los servidores no serán totalmente óptimos pero si funcionales.
En la asignatura de gestión de proyectos que curso en la universidad estamos modificando parte del famoso programa de gestión de proyectos «Gantt Proyect» ya llevo bastantes horas descifrando de que va el desarrollo de este software y la verdad es que me deprimió un poco el ver el estado del proyecto en si.
Gantt Project si bien es uno de los software de gestión de proyectos bajo licencia libre más conocido nunca me gustó personalmente, prefería OpenProj que tiene un aspecto mucho más simple y limpio. Pero el detalle que tienen ambos software es que ambos están quedando obsoletos o bien su desarrollo de plano está frenado, el caso cercano es ahora Gantt Proyect que luego de buscar por mil partes por más información para realizar sobre el modificaciones he deducido tras un correo de uno de sus propios desarrolladores el estado actual del proyecto (está frenado). He comprobado esto posteriormente en el sitio http://www.ohloh.net un sitio en el cual pueden verse estadísticas en base a sourceforge del proyecto y el panorama es decepcionante más de cerca de 2 años sin actualizaciones importantes, En el mismo sitio leo de parte de un colaborador la recomendación de migrar hacia OnePoint Project que es justamente lo que pretendo mostrar en este post.
OnePoint Project es originalmente un software comercial para manejo de proyectos, pero tiene una versión libre bajo licencia Apache y otras, disponible libremente aqui: http://sourceforge.net/projects/opproject , la verdad de las cosas es que la versión libre es más que suficiente para proyectos simples y se nota bastante la superioridad frente a otras soluciones para la gestión de proyectos de licencia libre. Las principales ventajas que he visualizado en una primera mirada a este proyecto son:
Compatible con microsoft project
Versión para escritorio y servidor
Múltiples bases de datos
Desarrollo activo
Versionado
Manejo de objetivos
Monitoreo, Control y Reportes.
Multiplataforma
El modelo de negocio de la empresa que respalda el desarrollo de la versión libre es además bastante escalable como puede leerse en el FAQ del sitio comercial. OnePoint Project es sin duda una buena opción a considerar al momento de realizar desarrollos sobre software de planificación libres o simplemente para un uso gratuito de una herramienta similar a microsoft project con similares o quizás mejores características.
¿A quien no le gustaría tener una bola de cristal para ver el futuro?, que daríamos por ser el inventor de youtube, google u otras tantas ideas revolucionarias desarrolladas en el momento precesito y que generaron incalculables sumas de dinero. Es cierto que el futuro de la informática es incierto, es complejo preever un futuro sin dar lugar a equivocaciones, sin embargo un grupo de experto trata de dar caza a un pequeño de tecologías que han determinado serán cruciales durate un próximo periodo de tiempo, se trata de un informe creado por expertos, se trata del reporte horizonte.
Este interesante documento muestra las tecnologìas que se desarrollaràn dentro de los pròximos 5 años según un grupo de expertos y es titulado «The horizont Report». Ayer llegó este libro a mis manos en forma digital, la verdad no lo conocía, fué lanzado hace un par de semanas atrás solamete , este reporte muestra 6 uevas tecnologías que se desarrollarán y sobre las cuales convendría invertir en un plazo de 1 a 5 años, estas tecnologías son:
* Un año o menos: Computación móvil, Contenidos abiertos.
* Dos o tres años: Libros electrónicos, Realidad aumentada simple.
* Cuatro o cinco años: Computación basada en gestos, Análisis visual de datos.
Como lo describe su nombre, con este infome puedes hechar una mirada al horizonte y lo que vendrá en temas de tecnología, por cierto, bastante interesante. Adjunto la versión original en inglés y una traducción al español.
El tema de la usabilidad es un tema crucial para quienes nos dedicamos al desarrollo web, determina muchas cosas; que el usuario use el servicio, que lo recomiende, que le agrade usarlo étc. El otro dìa visitando la web de jamendo.com (sitio para escuchar música libre) estube analizando varias cosas que me llamaron la atención entre ellas bastantes conceptos interesantes que han inplementado sobre la usabilidad del sitio, de hecho me sorprendió y estoy seguro que el desarrollador de ese sitio conoce mejor que yo la importancia de la usabilidad hasta en los mínimos detalles, por eso he querido dedicarle estas lineas y si es que me lee por ahi mi mensaje seria «eres seco» jjeje.
Ahora bien como me encantó tanto el concepto de varias cosas las anoté por ahi en mi super agenda para ver si de a poco las voy implementando en mis próximos desarrollos, analicé tambien las lienas de javascript y css tratando de hacer ingeniería inversa pero fué imposible, el código esta ofuscado y cuando logre descubrir las funciones que estaban tras pequeños detalles me di cuenta que se implementaron con javascript solamente «a poto pelado» y carecen de bastante estilod e programación, al leer tanto desastre he pensado que la implementación de dichos conceptos basandome en jquery podría simplificarse bastante y he aqui el primer resultado un concepto de usabilidad sobre los campos input interesante simple para el usuario final y simple para el desarrollador basado en jquery.
Típicamente un campo input se ve asi:
esa implemntación es más que simple:
<input type=»text» value=»»>
Añadiendole un poco de estilo al campo podríamos lograr cambiar el estilo de la linea, el fondo y el color de fondo al hacer focus sobre el mismo, y hasta ahi llegan los consejos de usabilidad en este campo que puedas encontrar en google. Ahora conun poco de esfuerzo podemos transformar todos nuestros campos input para agregarles además del color y el estilo de lineas un indicador del uso del campo. Primeros definamos el estilo css:
Podemos ver que el color de fondo cambia al hacer o no click en conjunto con el color de la linea y el efecto se vería así:
Con esto le indicamos al usuario donde esta parado y que ha habilitado el campo, sin embargo no le hemos indicado que puede escribir sobre el para eso agregaemos la especificación de el css que indique la escritura:
.form .input_escribiendo { /* para aplicarlo a los elementos input type=»text»*/
padding-right: 20px;
background-image: url(«lapiz.png»);
background-repeat: no-repeat;
background-position: right center;
min-height:16px; /*altura imagen*/
}
Ahora lo usaremos desde un javascript cambiando a dicho estilo solo cuando el input este en focus, algo muy simple si usas jquery como framework para manejar los elementos dom:
<script type="text/javascript">
$(function(){
$('input[type="text"]').focus(function() {
$(this).css("width",$(this).width()-20);
$(this).toggleClass("input_escribiendo");
if (this.value == this.defaultValue){
this.value = '';
}
if(this.value != this.defaultValue){
this.select();
}
});
$('input[type="text"]').blur(function() {
$(this).toggleClass("input_escribiendo");
$(this).css("width",$(this).width()+20);
$(this).val($(this).val());/*fix para re-reenderizar el valor por desface en ancho*/
if ($.trim(this.value) == ''){
this.value = (this.defaultValue ? this.defaultValue : '');
}
});
});
</script>
El truco es eluso de la función «toggleClass» agregando o quitando el estilo según sea el focus, puedes observar también un pequeño truco sobre el ancho del campo que he realizado, se que esto quita un poco de estilo de programación pero ruego que si alguien encuentra una forma más estética de hacerlo la postee en un futuro quiza lo mejore pero como diría por ahi alguien «lo mejor es enemigo de lo bueno» por eso lo deje como estaba no mas.
$(this).toggleClass("input_escribiendo");
finalmente se verá así:
El resultado final puedes verlo acá (adjunto el ejemplo bajo licencia gpl v3):
Siempre es bueno documentar, si ya te haz dado cuenta de este problema que trae la última versión de ubuntu (ubuntu 10.04) y te haz googleado la solución y no la haz encontrado os dejo aqui el porblema que ocurre.
El problema
AL habilitar usermod bajo apache al intentar acceder a los ficheros php de la forma http://localhost/~knx/fichero.php en lugar de que apache intereprete el fichero te lanza una descarga, sin embargo al interpretar ficheros php que estan bajo /var/www de la forma http://localhost/fichero.php estos son interpretados de forma correcta.
La solución:
Comentar las lineas que se muestran EN NEGRITA
root@fenix2:/etc/apache2# sudo nano /etc/apache2/mods-available/php5.conf
<IfModule mod_php5.c>
<FilesMatch «\.ph(p3?|tml)$»>
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch «\.phps$»>
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule …> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it. # <IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_value engine Off
# </Directory>
# </IfModule>
</IfModule>
root@fenix2:/etc/apache2# service apache2 restart
Explicación :
Si sabes inglés habrás lanzado una carcajada To re-enable php in user directories comment the following lines (from <IfModule …> to </IfModule>.) Do NOT set it to On as it prevents .htaccess files from disabling it. , Para volver a habilitar php en directorios de usuario comentar las siguientes líneas (de <IfModule …> a> </ IfModule.) …. A mi no me preguntes porque .. salu2.
EL bonus track:
El problema:
Por alguna razón php bajo ubuntu 10.04 te ha lanzado un error asociado al caracter de comentario en agunos archivos (cambio de estándar)
knx@fenix2:~/public_html/psico$ ./symfony -V
PHP Deprecated: Comments starting with ‘#’ are deprecated in /etc/php5/cli/conf.d/imagick.ini on line 1 in Unknown on line 0
PHP Deprecated: Comments starting with ‘#’ are deprecated in /etc/php5/cli/conf.d/imap.ini on line 1 in Unknown on line 0
PHP Deprecated: Comments starting with ‘#’ are deprecated in /etc/php5/cli/conf.d/mcrypt.ini on line 1 in Unknown on line 0
symfony version 1.4.5 (/home/knx/public_html/Symfony/symfony-1.4.5/lib)