TwitterPoster Groups

Hemos querido darle un cambio a TwitterPoster para dejar de ser únicamente un top de usuarios de Twitter. Se trata de la posibilidad de crear y pertenecer a grupos de usuarios de Twitter.

¿Para qué quiero pertenecer a un grupo de usuarios de Twitter? Pongamos un ejemplo, has acudido a Evento Blog España y quieres que tus opiniones se puedan leer dentro de un contexto, tan solo tienes que unirte al grupo de EBE07 y los usuarios podrán ver en una especie de agrupación de feeds tus mensajes junto al resto de los usuarios del grupo.

Para crear o unirse a un grupo tan solo hay que enviar un mensaje directo al usuario @poster con el siguiente formato:

join #[nombre del grupo]

Por ejemplo si deseas pertenecer al grupo EBE07 escribirás:

join #ebe07

Para poder acceder a los contenidos del grupo solo se deberá acceder a la ruta:

http://twitterposter.com/group/[nombre del grupo]

La única dificultad es que para mandar un mensaje privado a @poster tiene que seguirte, pero eso no es problema, porque en el momento que TwitterPoster detecte que eres follower suyo, en ese momento se hará follower tuyo.

El único problema lo impone el API de Twitter, el cual solo permite 70 peticiones en 1 hora, en esto no podemos hacer nada.

Existen dos grupos creados, uno de ellos pertenecientes a Com’n’Click Networks la empresa propietaria de TwitterPoster y Bitacoras.com (come_n_click) y otro grupo de prueba (test_groups).

Copy/paste / mi otro blog

Texto explicativo en las cajas de los formularios

Dentro de una serie de artículos sobre Javascript he encontrado este script que permite mostrar un texto explicativo en las cajas de texto y que desaparezca cuando el usuario ha escrito algo.

Primeramente necesitamos el HTML que se mostrará, se trata de un formulario normal, pero el texto explicativo, mediante estilos, en vez de aparecer debajo como se vería sin estilos, al darle posición absoluta, se mostrará sobre la caja de texto.

<style type="text/css">
.helptext {
position: absolute;
color: #999999;
z-index: 10;
font-size: small;
overflow: hidden;
}
</style>
<form action="" method="post">
<input type="text" name="login" value="" onkeyup="UpdateHelpText(this);" onmouseup="UpdateHelpText(this);" />
<div class="helptext" id="label_login" onclick="ChangeFocus(this);">
Enter Login Name
</div>
  
<input type="password" name="password" value="" onkeyup="UpdateHelpText(this);" onmouseup="UpdateHelpText(this);" />
<div class="helptext" id="label_password" onclick="ChangeFocus(this);">
Enter Password
</div>
  
<input type="submit" name="submit" value="Login" onclick="return false;" />
</form>
<script type="text/javascript" language="JavaScript">
UpdateHelpText(document.getElementsByName('login')[0]);
UpdateHelpText(document.getElementsByName('password')[0]);
</script>

Acto seguido, se necesitan las funciones javascript, en este caso son dos, una de ella que pasa el foco a la caja de texto cuando se pincha en el texto explicativo (recordad que está encima de la caja de texto):

function ChangeFocus(el) {
while (el.tagName != 'INPUT')
el = el.previousSibling;
el.focus();
}

Y la otra función que oculta el texto explicativo dependiendo del contenido de la caja de texto:

function UpdateHelpText(el)
{
var label = el;
while (label.tagName != 'DIV')
label = label.nextSibling;
if (el.value == '') {  // Field is empty; show text
label.style.left = getElementAbsPosX(el) + 'px';
label.style.top = (getElementAbsPosY(el) - 7) + 'px';
label.style.visibility = 'visible';
}
else { // Field is not empty; hide text
if (label)
label.style.visibility = 'hidden';
}
}

Advanced JavaScript III

Vía / AjaxLine

WampServer 2.0: el nuevo WAMP5

WAMP5 ha cambiado y ahora se llama WampServer 2.0, el cambio no solo ser refiere al nombre, sino a una gran novedad, permite instalar distintas versiones de Apache, MySQL y PHP, pudiendo elegir la que más nos convenga en cada situación, teniendo en cuenta que no todas las versiones de PHP son compatibles con todas las versiones de Apache.
wampserver.png
Este cambio es muy importante, ya que los entornos de trabajo no son siempre los mismos y debido a imcompatibilidades es necesario crear nuestras aplicaciones en entornos de trabajo exactos al real.
Nos permite modificar las opciones de las versiones de MySQL, PHP y Apache que estén seleccionadas en ese momento, aunque aún echo en falta poder visualizar los logs de apache que desee (no solo el por defecto), elegir la aplicación para ver los logs y poder permitir modificar los virtual hosts de apache.
WampServer 2.0
Vía / OpenSourceCommunity.org

phpRemoteShell: ejecución remota mediante PHP

phpRemoteShell es una aplicación que permite ejecutar comandos de shell y código PHP en un host remoto sobre HTTP.
prs.png
Además permite encriptarse y desencriptarse en la petición, PRS se puede alojar a sí mismo en en otro script PHP del servidor para poder restablecerse durante el tiempo de ejecución. Ademas permite modificar el crontab entre otras cosas.
phpRemoteShell
Vía / International PHP Magazine

|

Hadoop: plataforma para trabajar con gran cantidad de datos

hadoop.pngHadoop es una plataforma que nos permite desarrollar aplicaciones que tengan que tratar con grandes cantidades de datos, hasta petabytes. Se trata de un subproyecto de Lucene, un proyecto de Apache que desarrolla software para realizar búsquedas.
Hadoop es muy útil cuando vamos a realizar proyectos que necesiten de escalabilidad, ya hemos dicho que puede almacenar y procesar petabytes de informacion. A su vez, es perfecto para un cluster de servidores, distribuyendo la información entre los nodos, siendo posible disponer de miles de nodos. Al disponer los datos de forma distribuida, la búsqueda se puede realizar muy rápidamente ya que Hadoop puede acceder a ella de forma paralela. Y aunque los datos estén distribuidos, no hay que preocuparse de fallos ya que dispone de un sistema de seguridad.
hadoop.gif
Hadoop implemente el MapReduce de Google, usando un sistema distribuido para dividir las aplicaciones en pequeñas tareas.
Hadoop se ha llegado a probar en un cluster de 2.000 máquinas y se está intentando alcanzar la cifra de 10.000 máquinas. Es necesario Java para su desarrollo y Linux, aunque se puede usar Windows para desarrollo, aunque el cluster no funciona del todo bien.
Hadoop

Bitacoras.com reborn

bits2.pngDespués de muchos meses de trabajo, hemos lanzado la nueva versión de Bitacoras.com. Antes de nada, estamos en beta, por lo que vuestra ayuda nos vendrá muy bien para mejorar.

bits1.png

Quisimos salir antes, pero no siempre es posible hacerlo cuando uno quiere, problemas ajenos a nosotros nos han obligado a retrasar la salida todo un mes.
Bitacoras.com no ha sufrido solamente un cambio de cara, que es lo más evidente, sino que el cambio principal ha sido interno. La filosofía ha cambiado, pasamos de portal a web2.0, y para ello era necesario una programación desde cero de todo el core de la aplicación. Con esta nueva versión podremos ir añadiendo nuevas funcionalidades cada poco tiempo, evitando la falta de renovación que desgraciadamente sufrió Bitacoras.com en el pasado, y así intentar seguir siendo una referencia de los blogs en la comunidad hispana.
El giro que hemos dado está centrado en los usuarios, podremos ver la ficha de los usuarios inscritos y sus bitácoras. Nuestra intención es que Bitacoras.com dependa de los usuarios y los usuarios tengan cierta dependencia de Bitacoras.com 🙂
¿Faltan cosas por hacer?. Muchas. Cada día trabajamos en añadir cosas nuevas, algunas ya están en desarrollo, por lo que según vayan apareciendo las iremos anunciando. Por ejemplo los RSS, al tratarse de RSS que pueden ser muy específicos, por ejemplo para usuarios, para bitacoras, para tags, para úlimos posts, para geo, nos está llevando su tiempo integrarlos todos, pero en ello estamos.
También estamos detectando pequeños errores, algunos producidos por el cambio de DNS, tened paciencia con nosotros 🙂
Bitacoras.com

Beautify Javascript: aclara código Javascript

Normalmente lo que intentamos es comprimir nuestro código Javascript o bien para que ocupe menos, o bien para ofuscarlo. En este caso se trata de un script que nos permite embellecer scripts comprimidos.

Así, por ejemplo, el código de Google Reader, el cual, como todos los de Google son casi imposibles de seguir, lo veríamos así:

...
function nd(a, b) {
a = String(a);
return (new Array(Math.max(0, b - a.length + 1))).join(mc) + a
}
var l = "";
function tj() {
return Array.prototype.join.call(arguments, l)
}
var R = " ",
nc = ", ",
Jc = ":";
function zQ(a) {
...

Beautify Javascript

Vía / Ajaxian

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