Archivo categoría Web
Gana una portada en meneame con el Mundial
Que el mundial está creando mucha expectación, eso ya lo sabe todo el mundo, pero lo curioso de la situación en el mundo de la web 2.0 (o al menos particularmente en Meneame.net) es la velocidad a la que se publican los resultados de los partidos.
Aprovechando esa expectación es posible llevar a portada en poco más de media hora la noticia del resultado de cualquier partido(si el resultado es de España aun menos).

Eso si, tienes que estar pendiente no la envíe nadie antes que tú. Me imagino a un puñado de usuarios pendientes de que acabe el partido y pulsando a F5 en las webs de marca, as o el mundo deportivo para enviar la noticia.
Que si los árbitros, que si Sara Carbonero o que si el balon es de playa, pero lo que tira de verdad son los resultados, y los de España (o la roja como le llama ya todo el mundo) tiran aun más:
España a cuartos 1-0: 3200 meneos
420 comentarios
y lo mejor de todo:
hace 16 horas 9 minutos, publicado hace 16 horas 7 minutos
¿Publicado en 2 minutos? Pues sí. Si miramos otros resultados de la selección que se publican nada más enviar la noticia vemos que la media ronda los 3 minutos. Y lo mejor es que si perdemos tampoco pasa nada porque la derrota ante Suiza también salió a portada en poco más de diez minutillos.
http://www.meneame.net/story/espana-a-cuartos-1
http://www.meneame.net/story/espana-gana-a-chile-1-2
http://www.meneame.net/story/espana-gana-a-honduras-2
http://www.meneame.net/story/espana-pierde-primer-partido-mundial-1-ante-suiza
Así que ya sabes, si tienes espíritu de karmawhore lo que tienes que hacer es “hacer cola” en una web deportiva en el próximo partido del mundial, y lanzarlo a la lista de pendientes enseguida. Si a demás lo twitteas y lo pones en tu facebook para que lo voten tus “amigos” mejor que mejor.
Actualización:
holanda – brasil
http://www.meneame.net/story/holanda-2-1-brasil-holanda-pasa-semifinales-holanda-eliminada
Publicado en 5 minutos y no habla de españa
uruguay – ghana
http://www.meneame.net/story/uruguay-gana-penalties-ghana-clasifica-para-semifinales
publicado en 10 minutos
Estadísticas en JavaScript
Por Scipion - JavaScript, Web - 5 Junio 2010
Ya que hace tiempo que no escribo nada, voy a mostra una extensión de jQuery que hace maravillas con gráficas para representar los datos indicados. La biblioteca es bastante útil para los que necesiten mostrar estadísticas en una web.
Aunque hace tiempo que existe, Highchars me ha sorprendido por la gran versatilidad que tiene. Gráficas de barras, de rectas, acumulados etc y varias posibilidades de diseño para cada tipo.

Usarla es igual de fácil que cualquier extensión de jQuery con la única diferencia que hay que indicar los datos a representar:
var chart1; // globally available
$(document).ready(function() {
chart1 = new Highcharts.Chart({
chart: {
renderTo: 'chart-container-1',
defaultSeriesType: 'bar'
},
title: {
text: 'Fruit Consumption'
},
xAxis: {
categories: ['Apples', 'Bananas', 'Oranges']
},
yAxis: {
title: {
text: 'Fruit eaten'
}
},
series: [{
name: 'Jane',
data: [1, 0, 4]
}, {
name: 'John',
data: [5, 7, 3]
}]
});
});
En la variable series es donde se encuentran los datos indicados, ahí cada campo data es un vector con toda la información a representar. Pero de todas formas ellos explican bien como se debe de usar la biblioteca. Si tienes ya experiencia con jQuery no te resultará dificil para nada. La biblioteca completa la podeis descargar aquí de la página oficial.
Algunos gráficos vinenen preparados para introducir movimiento en la representación, los llaman dinamic chars. Vienen al pelo para trabajar con ajax y descargar datos de la web periodicamente sin necesidad de recargar la página.
Así que parece que se lo han montado bastante bien los chicos de HighChars.
Validar formularios en JavaScript
Por Scipion - Aplicacion web, JavaScript - 19 Febrero 2010
En toda aplicación web de hoy en día no pasa sin que el usuario meta la pata, aunque sea de forma premeditada, por eso los fromularios hay que comprobar que no nos la cuelan. Validar los datos hay algo que siempre hay que hacer en el lado del servidor, pero le podemos dar agilidad a la web si antes de mandar el formulario lo verificamos en el lado del cliente.

Esto para nada es un problema nuevo, y ya se ha intentado solucionar de muchas maneras en JavaScript. Algunas de las librerias(bibliotecas) son especificas para validación, otras son usos especificos de otras más genericas. En cualquier caso si quieres ponerte a escribir tus funciones JS que validen los formularios que sepas que estas Reinventando la Rueda, porque ya se ha hecho unas cuantas veces:
Ketchup basado en JQuery:
http://demos.usejquery.com/ketchup-plugin/
Vanadium:
JQuery:
http://bassistance.de/jquery-plugins/jquery-plugin-validation/ (demo)
Validation con Prototype:
http://tetlaw.id.au/view/javascript/really-easy-field-validation (demo)
MooTools:
http://mootools.floor.ch/en/demos/formcheck/ (demo)
JsVal:
http://jsval.fantastic-bits.de/
Validanguage:
http://www.drlongghost.com/validanguage.php (demo)
Django (basado en Google App Engine):
http://code.google.com/appengine/articles/djangoforms.html
LiveValidation:
http://livevalidation.com/ (demo/ejemplos)
wForms:
http://www.formassembly.com/wForms/ (demo)
Yav (última versión del 2008):
JSValidate/JValidate:
http://www.jsvalidate.com/ , http://www.jvalidate.com/
fValidator:
http://zendold.lojcomm.com.br/fvalidator/
qForms (últmia versión del 2007):
http://www.pengoworks.com/index.cfm?action=get:qforms
Validatious:
Si te quieres montar tu propia libreria puedes empezar con los ejemplos propuestos en w3schools.
Libreria de validacion abandonada en 2004 chrysalis.
A parte de la validación el elemento visual es también algo que deja que desear bastante en los formularios. CustomFormElements da un aspecto agradable a los formularios web, incluso se pueden parecer a aplicaciones de escritorio. Está disponible para usar con Mootools y JQuery.
Los videos de HTML 5 y el factor X
Por Scipion - General, Lenguajes de Marcado, Web - 6 Febrero 2010
La dichosa etiqueta <video> está dando que hablar mucho en la blogosfera sobre la nueva versión de nuestro lenguaje de marcado favorito.
Más interesante que la especificación de la etiqueta es el twitter de HTML5 (sí, ahora todo tiente twitter) para ver si dicen algo del video.
La cosá está en que la etiqueta <object> no va a desaparecer del “mercado”. Claro, que harían con todos los videos flash que ya están macados como objects, no se puede reescribir todo de repente. Y a demas están todos los juegecillos flash (y en otras tecnologías como silverlight/moonlight y JavaFX) que hay y que habrá, eso no son videos ni audios, son … objetos.
Pero la polemica con que el iPad no soporte flash es lo que reaviva el tema. Tenemos a las empresas que tienen formatos de video propietario, como Adobe y Microsoft que quieren se sea el suyo, está claro. Por otro lado la comunidad que quiere que se utilice el estandar OGG que para eso está y es libre. Por otro lado aparece el ya famoso driver h.264 que es el driver con el que Google ha implementado el HTML5 de YouTube, pero por lo visto Apple tiene patentes por ahí, así que tiene metida la mano en ese formato una empresa privada.
Pero no es Apple una empresa más malevola que Adobe, las dos son eso, empresas y por lo tanto su mayor prioridad es ganar dinero y es por eso que “barren para casa”. La voluntad de la industria y no la de las empresas particulares es la de ir hacia algo abierto. Es por eso que ya se habla de la muerte de Flash, y es curioso porque nadie habla de la muerte de JavaFX o de la muerte de Silverlight cuando al rededor del 95% de los PCs tiene instalada una maquina virtual de Flash y la cuota de mercado de sus competidores es bajisima (porque JavaFX corre sobre una JVM SE que aun aun, pero Silverlight … :S ).
¿Es la muerte de Flash la nueva etiqueta video? Pues es lo que dicen muchos, que si es cerrado, hace falta maquina virtual a parte, dependes de Adobe, y para elegir a Adobe porqué no elegir a otro que mejora X.
Esos son los argumentos en contra y a favor tiene que la maquina virtual a parte, bueno, ya la tienen casi todos, dependes de Adobe, bueno pero mejor malo conocido que bueno por conocer, que no es libre … ¿Con que sistema operativo y navegador estas leyendo este post?
Lo que tiene a favor Falsh es la primera ley del marqueting: “Es mejor ser el primero que ser el mejor“. Bueno no se si es la primera ley, pero desde luego es importante. A demás el factor de apoyo que tiene flash es el mismo que tenía el VHS contra el BETA, el mismo que hizo que el Blue Ray luchara duro y ganara la batalla contra el HD-DVD. Ese es el factor Porno. Las webs de video streaming porno usan flash AHORA, son ellas las que tendrian que cambiar para que otro formato tuviese fuerza de verdad. Es el Porno lo que tira de internet y no Google como parece. Esó dá para un buen debate también.
De todos modos aun queda tiempo para ver cómo se decide el vencedor de esta guerra que va a seguir generando polemicas.
Programando en javascript en el navegador
Por Scipion - Aplicacion web, JavaScript, Navegadores, SEO - 29 Enero 2010
He probando por recomendación de ThinkWasabi una herramientilla bastante util que se llama Quix. Tiene muchisimas funcionalidades y funcina a base de comandos, por eso es interesante mirarse la ayuda que tiene para ejecutarlos. Tiene cosas utiles para SEO y reducción de URLs, en fin lo que le pedirias a un monton de addons pero solo en uno y bueno … por comandos, al que no le guste nada, pero está bastante bien.

Quix
Va directamente desde el navegador, lo arrastas y lo pegas y te sale una pantallita donde escribes el comando.
Pero lo que arrastras es en realidad un método en JavaScript que se va a ejecutar cada vez que pinches en el enlace que arrastras a la barra de marcadores (en firefox, como se llama en los otros navegadores).
En la barra de estado cuando estas encima del enlace se ve claramente que es codigo JavaScritp que va a invocar a la función ‘Quix()’ y empieza la declaración de la función. Por curiosidad me he CopiadoYPegado el codigillo para verlo.
El texto debidamente tabulado quedaria algo así:
javascript:Quix();
function%20Quix(){
var%20e=encodeURIComponent;
var%20t=window.getSelection?window.getSelection():(
document.getSelection?document.getSelection():(
document.selection?document.selection.createRange().text:''
)
);
var%20c=window.prompt('Quix:%20Type%20`help`%20for%20a%20list%20of%20commands:');
if(t!=''){
if(c){
c+='%20'+t;
}
else{
c=''+t;
}
}
if(c){
var%20u='http://quixapp.com/go/?c='+e(c)+'&t='
+(document.title?e(document.title):'')+'&s='+'&v=080'+'&u='
+(document.location?e(document.location):'');
d=''+document.location;
if(d.substr(0,4)!='http'){
window.location=u+'&mode=direct';
}
else{
heads=document.getElementsByTagName('head');
if(c.substring(0,1)=='%20'){
var%20w=window.open(u+'&mode=direct');
w.focus();
}
else%20if(heads.length==0){
window.location=u+'&mode=direct';
}
else{
q=document.getElementById('quix');
if(q){
q.parentNode.removeChild(q);
}
sc=document.createElement('script');
sc.src=u;
sc.id='quix';
sc.type='text/javascript';
void(heads[0].appendChild(sc));
}
}
}
}
La funcioncilla tiene su tela, pero lo unico que cambia respecto al javascript normal es que los espacios se cambian por %20 para que el navegador no se haga un lio. Pero a parte de esto te puedes escribir tus funciones todo lo largas que quieras e incrustarlas en el navegador tal cual.
Al fin y al cabo el navegador interpreta/ejecuta un mazo de elementos en html, css y javascript por no contar los aplets de java, los objetos flash y ahora los silverlight/moonlight que se le envia desde el servidor. Que le importa hacerlo tambien en local.
La mayoria de los add-ons de firefox se hacen de forma similar, al final siempre se llama a la maquina virtual de JS para que haga algo, ya sea conectar por ajax con algun servidor que da el servicio o con alguna clase Java compilada que te ha instalado la extensión.




