Más de 70 IDEs para programadores
Una gran lista de IDEs para programadores. Aunque yo para según que lenguajes de programación prefiero un simple editor de texto, para otros proyectos, por ejemplo con Android, es necesario tener montado un buen IDE para no tener que pegarnos demasiado con el entorno.
La lista está dividida en los diferentes lenguajes de programación:
- C/C++
- Java
- .NET
- Perl
- PHP
- Python
- Ruby
Selector de hora con Mootools
Cada dÃa son más los scripts que se realizan con frameworks de Javascript, estos, al estar ayudados por las funcionalidades del framework, son más sencillos de desarrollar, lo que aporta más riqueza a la web2.0. En este caso se trata de un selector de horas, que mediante un reloj se puede seleccionar la hora, moviendo las manillas o indicando si queremos AM o PM.
El script es sencillo de usar e implementar, controla independientemente las manillas de las horas y los minutos, permite mover las manillas para indicar la hora y usa CSS sprits para mejorar la velocidad de carga.
NoGray Time Picker
VÃa / WebAppers
links for 2007-11-19
-
If you are trying to do pixel-perfect cross-browser CSS layout, then you have probably ran into problems with IE . I am going to highlight the top 7 CSS hacks that we often use to have pixel perfect design.
links for 2007-11-17
-
Deny all access to files, no www, error page, redirect directives, access restriction
10 consejos para MySQL
Buenos consejos a tener en cuenta:
- Ponle contraseña al usuario root y luego cámbiale de nombre: lo más normal es ponerle contraseña al usuario root, pero no nos sorprendamos si vemos un root sin password o con algo tan ridÃculo como root_1. Lo que si no se suele hacer mucho es cambiar el nombre al root y eso es una buena idea que habrÃa que tener siempre en cuenta… pero que tampoco sea admin (como dice el artÃculo), sino algo más difÃcil de adivinar.
- Oculta MySQL de Internet: MySQL no necesita estar accesible desde Internet, por lo que mejor evitar esa posibilidad.
- Protege el directorio de instalación de MySQL de otros usuarios
- No almacenes datos binarios: que MySQL lo permita no quiere decir que sea lo mejor hacerlo. MySQL envÃa los datos de una única vez, esto implica que hasta que no se envÃe el campo completo, la aplicación no puede parsear la información. Es preferible almacenar los datos en el sistema de ficheros y almacenar en la BD un ruta hasta el fichero. Aunque yo casi recomendarÃa guardar en la BD una clave, para que mediante una lógica en la aplicación se pueda recuperar la ruta, asÃ, si tenemos que modificar la ruta no tenemos que modificar todos los registros de la BD, tan solo la lógica del programa.
- Usa SQL standard: MySQL ofrece posibilidades que no son del SQL estándar y que pueden aportarnos muchas ventajas, el problema es que nos limita a exportar nuestra aplicación a otras BD si en un futuro lo necesitamos. La solución es no ejecutar esas sentencias directamente, sino mediante una clase, que extienda de una clase genérica, asà podremos simular esas funcionalidades de MySQL en otras BDs creando otras clases para cada motor de BD.
- Crea tu propio generador de auto_increment: el auto_increment nos crea números consecutivos que podemos usar en nuestras tablas, pero con limitaciones, solo existe un auto_increment por tabla y son independientes de las tablas, por lo que distintas tablas pueden tener mismo id, lo cual puede no convenirnos en algunas circunstancias.
- No mezcles código de presentación con el de acceso a BD: es el sistema MVC que siempre debemos usar.
- Normalización y denormalización: la normalización nos permite tener una BD sin datos redundantes. Desafortunadamente, a veces esta pena el rendimiento, para lo cual, una vez normalizada la BD es conveniente denormalizarla.
- Usa un pool de conexiones en el servidor Web o en el servidor de aplicaciones: la conexión a la BD es algo costoso, si compartimos conexión mediante un pool, ganaremos en rendimiento.
- Mejoras tus queries con EXPLAIN SELECT: aunque es un comando difÃcil de seguir, nos puede ayudar mucho.
VÃa / Sheeri Kritzer Cabral
AsxJax: Ajax accesible
AsxJax es un framework que permite añadir accesibilidad a los desarrollos web que utilicen Ajax, asà usuarios que utilicen screenreaders u otros dispositivos similares podrán disfrutar de las caracterÃsticas que ofrece la web 2.0.
AxsJAX añade accesibilidad según lo definido por la W3C ARIA, siendo necesarios los siguientes requisitos:
- Un navegador como Firefox 2.0 que soporte la W3C ARIA.
- TecnologÃas que respondan correctamente a las mejoras de accesibilidad añadidas por la W3C ARIA.
- Alguna de las mejoras añadidas por AxsJAX dependen del soporte para las live regions, una caracterÃstica que permite a las tecnologÃas como los screen readers tratar correctamente con actualizaciones asÃncronas de partes de la página web.
El framework AxsJAX puede añadir accesibilidad a aplicaciones Web 2.0 existentes mediante las siguientes técnicas:
- Como un bookmarklet.
- Usando Greasemonkey.
- Usando Fire Vox.
Guía rápida para desarrollar en Android: Hello World
Para aquellos que aún no lo sepan, Android es un conjunto de software para dispositivos móviles: sistema operativo, middleware y aplicaciones key mobile.
Tiene toda la pinta de que va a tener mucho éxito, quizás porque está realizado por Google, quizás porque los miembros de la alianza son muy importantes, quizás porque es open source, quizás porque es sencillo o quizás porque estamos hasta el gorro de Windows. Sea lo que sea, merece la pena empezar a desarrollar aplicaciones para Android, y si los motivos anteriores o el desarrollo como profesional no te estimula, quizás los 10 millones de dólares que ofrecen a la mejor aplicación si te puedan interesar.
Pues venga, a ponerse a picar que los pisos están muy caros.
Empezar a desarrollar para Android es muy sencillo, tan solo tienes que tener el SDK de Android, tener instalado Eclipse, por ejemplo la versión Classic y añadir un plugin para Eclipse que ofrecen, para lo cual hay que:
- En Eclipse ir a Help > Software Updates > Find and Install.
- Seleccionar Search for new features to install y pinchar en Next.
- Seleccionar New Remote Site.
- Añadir esta URL: https://dl-ssl.google.com/android/eclipse/.
- Selecionar Android Plugin > Eclipse Integration > Android Development Tools.
Una vez instalado el plugin, debemos indicar la ruta del SDK, para lo cual iremos a Window > Preferences y en la opción de Android modificaremos la ruta del SDK.
Ya lo tenemos todo listo, ahora solo nos falta crear un nuevo proyecto Android (File > New > Project) y modificar el código base que nos ofrece.
En el ejemplo que vamos a hacer tan solo escribiremos una frase en el terminal, para lo cual editaremos el fichero principal del proyecto, en mi caso como he llamado al proyecto prueba el fichero es prueba.java:
package com.sentidoweb;
import android.app.Activity;
import android.widget.TextView;
import android.os.Bundle;
public class prueba extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
TextView tv = new TextView(this);
tv.setText("Sentido Web");
setContentView(tv);
}
}
He marcado en negrita el código que se ha de modificar, y como veréis no tiene mucha dificultad. El resultado es este:
Como véis el ejemplo se ejecuta en un emulador de Android, si jugáis un poco con este emulador podréis daros cuenta de las posibilidades que ofrece.
BOUML: aplicación UML
BOUML es una aplicación UML2 que permite definir y generar código en C++, Java, Idl y PHP. Es compatible con Unix/Linux/Solaris, MacOS X y Windows, es muy rápido y no requiere mucha memoria para manejar varios miles de clases.
Se le pueden añadir aplicaciones externas escritas en C++ o Java, siendo una de estas extensiones predefinidas la generación de código y la ingenierÃa inversa.
BOUML
VÃa / OpenSourceCommunity.org
links for 2007-11-14
-
La idea: difundir y concientizar a todos sobre la importancia de crear sitios accesibles, sin dejar a nadie afuera.