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

IDE Toolbox: 70+ IDEs for Developers

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.
reloj.png
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

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.

Ten MySQL Best Practices

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.

AsxJax

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:

android.png

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.
bouml.png
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