Páginas

miércoles, 27 de marzo de 2013

[Solved] jQuery UI Autocomplete accent insensitive for catcomplete

jQuery autocomplete is great and works great, but has a bug. Its catcomplete version is case sensitive.

It works...


... but It doesn't work...

I can't be able to find a solution searching on the web and decide to hack the jQuery plugin. I built a solution that works fine:

First of all you have to add a new property to the data array with the possible values to find. this new property will have the label value without accents:

var data = [
      { label: "camión", category: "Cat1", labelNoAccents: "camion" },
      { label: "coche", category: "Cat1",  labelNoAccents: "coche"}
]

After that you have to hack the jquery-ui.js file:

Find $.extend( $.ui.autocomplete, {
Find filter: function(array, term) {

Here is where the filter is done. The variable term is the text yhe user has typed in the search box. Replace all accents:

term=term.replace("á","a");
term=term.replace("ó","o");
...

After that change the comparison from the label property to your new property without accents:

return matcher.test( value.label || value.value || value );
return matcher.test( value.labelNoAccents || value.value || value );

This will find user's search term without accents in your values without accents.

That's all.

Thanks @genisbarrera for his help.

lunes, 28 de enero de 2013

Bootstrap tabs and ASP.NET AJAX postback

When you are using Twitter Bootstrap tabs combined with AJAX ASP.NET and some content inside the panes is firing a page postback then you have a problem. If you are viewing the content of the second pane and do a postback, then  the first tab and he first panel will be actived.

Imagine both panels have sorted tables. If the user is viewing the table of the second tab and sorts the table, the focus comes back to the first pane after the postback.

This is how I built a solution:
  • Make the pills accessible from code behind adding an ID and runat="server".
  • Make the tabs panes accessible from code behind  adding an ID and runat="server".
  • Add the ID of the pane that the table belongs to to the Command Name of the element that is sorting the table, for example a linkbutton:
  • On the linkbutton sort click event call the funtion that binds the data and set the active pane using the function I've called ManageTabsPostBack.



I'm back, again

miércoles, 9 de febrero de 2011

Mi primera experiencia Facebook Deals

Mark lo ha hecho. Claro que sí. Después de varios meses, dudo que hayan sido más de 12, durante los que los nuevos gurús que venden servicios 2.0 han estado repitiendo hasta la saciedad la cantinela "facebook-twitter-youtube-foursquare", y han respondido a la pregunta "¿y eso de foursquare qué es? ¿qué hago yo ahí?", más o menos así: "pues le regalas un café gratis al major", ahora ha llegado Mark y... Facebook Places + Facebook Deals = Bye, bye 4sq.



Miércoles, 9:30h de la mañana. Reunión en Paradís, 14. No, no tengo nada que ver con el briefing creativo. Como sé que llegaré antes de hora, también sé que desayunaré encantado en el Buenas Migas junto a la Plaça del Rei. Un placer. Antes de entrar, recuerdo que cerca, en Via Laietana, hay un Starbucks así que podré comprobar como es eso de Facebook Deals. La noche anterior había oído que Starbucks ya ofrecía descuentos. Voy a probar, y... sí, por fin veo mi primer Facebook Deal. Qué emoción. Un café espresso gratis. No me vale la pena, así que desayuno gustoso en este rincón del gótico.


Viernes, 15h de la tarde. Comida en el Sky Food Bar del Hotel Me. Meses atrás genial menú de mediodía por menos de 16 euros. Ya en la entrada me avisan de que el menú ha cambiado y ahora ofrecen un menú, más reducido e innovador (sic), por 25 euros. Bien, no pasa nada. Hoy celebramos. Como me toca esperar y estoy en el Hotel Me, pienso en hacer un check-in, que para eso están si está en un lugar como el Hotel Me.


Para mi ya no tiene sentido darle al icono del Foursquare, ni todos mis amigos están ahí, ni los que están seguramente lo miren muy a menudo. Así que el check-in lo hago en Facebook Places. Gran sorpresa. El Hotel Me ofrece un descuento del 50% en sus restaurantes y spas. Simplemente hay que mostrarle a alguien del personal del restaurante la pantalla del, en este caso (y espero que por poco tiempo), iPhone, donde está el bono de descuento. Cara de póquer. "No, este es el único menú que tenemos". No sabe de lo que le hablo. "¿La encargada por favor?". A la encargada le suena algo lo de los descuentos de Facebook. "Lo consulto". "No mira, es que este menú vale 50euros, el descuento ya está aplicado". Gran respuesta. Insisto. Me vengo arriba. Pesadísimo. Pero es que vale la pena estrenarse en esto. Finalmente, la encargada me explica que "sí, se ha publicado la oferta pero no está implementada", como le repito que eso me da igual, que "aquí pone 50% descuento" finalmente me ofrece "el descuento del 50% sobre el precio del menú, aunque no esté implementado, queremos que esté contento". Yo creo que sabía que este blog lo leen miles de personas (reputación online, bla bla bla).



Finalmente comimos decentemente por 12,5 euros por persona (sin oferta olvidadlo, ese menú no vale 25euros). La gran sorpresa llegó cuando el ticket sí mostraba el concepto Descuento Facebook. Implementado sí. Comunicado al personal no. As usual.

Creo haber vivido uno de los momentos del año 2011. Por ahora no hay mucha oferta Facebook Deals en Barcelona, me pareció ver algo en los H&M de Paseo de Gracia, pero cuando se extienda será la bomba. "¿Qué hacemos? ¿Dónde vamos?" Con un par de clicks decenas de ofertas. Una herramienta muy potente para los comercios on gestores inteligentes, espero que sepan aprovecharla.

Después de haberse comido a Foursquare, es mi opinión, ahora debería ir a por Linkedin. No debería ser tan difícil. En el próximo post explicaré como lo haría si yo fuera Mark.

sábado, 29 de enero de 2011

¿Cuántos son 5000 followers?

Pues cinco mil, me contestaron. Exacto. Ni uno más, ni uno menos. Pero lo que debemos preguntarnos, lo que de verdad importa, lo que debe alterar el sueño de cualquier social media manager, social media analyst, online community manager, internet brand manager y, ¡por dios, dejémonos de pijadas!, del director de márketing/comunicación, es, qué supone tener 5000 followers. ¿Cual es el ROI? ¡Argh! un anuncio de Alejandro Sanz irrumpe en mi Spotify. Para el que paga impuestos en EEUU, 5000 followers supondría recibir una visita de los loqueros.

Hace un par de días, el usuario de Barcelona Activa de Twitter alcanzó los 5000 followers. Abrimos la cuenta el 15 de junio de 2009. Han pasado 19 meses. No entraré a valorar si es un éxito o un fracaso (los recursos son los que son y este ha sido un proyecto de guerrilla), solo sé que hoy compartimos información con 5000 ciudadanos, y me gustaría saber qué supone eso.

Supongamos, aunque no sea cierto, que los 5000 usuarios son ciudadanos de Barcelona, ya que son principalmente los barceloneses los beneficiarios de sus servicios. En ese caso, estamos hablando de que mediante twitter impactamos de forma directa al 0,31% de la población barcelonesa. ¡Uff! Con estos datos, los incrédulos de esto del dospuntocero se me lanzana la yugular. Pues están en su derecho. Vamos intentar arreglarlo un poco, si es que hay que arreglarlo. Decenas de tweets a su vez son retuiteados, @barcelonactiva está listado en 374 listas, así que, realmente no sabemos el número real de impactos, y mientras no tengamos Twitter Analitycs, no sabemos por cada tweet cual es el impacto real. Quizá algún tweet no lo lee nadie. Puede pasar. En facebook sí podemos saber el impacto real de cada mensaje en el muro, pero otro día hablaremos de Facebook vs. Twitter.


Ante los abucheos de la audiencia, alguien nos intenta ayudar: “¡Cuantifica únicamente sobre el público potencial!”. Entonces, para poder completar esta reflexión, sería necesario cuantificar cual es público potencial real de Barcelona Activa, aunque me temo que por tipología de servicios, cercano al 100%: desde emprendedores de todas las edades, pasando por desempleados, empresarios, profesionales que desean formarse tecnológicamente, ciudadanos que desean iniciarse en Internet, profesionales que desean crecer y/o reorientar su carrerar profesional, jóvenes que desean conocer las oportunidades laborales del futuro presente... Casi el 100% ¿verdad?

Así pues, por esta amplitud de servicios, hay que ser ambicioso y no cejar en el intento de llegar a más y más gente y, llegados a este punto, mejorar en el servicio que se ofrece mediante estos canales. Una vez conseguida una masa crítica, ahora nos toca saber que esperan los followers de @barcelonactiva. Actualmente, se dinamiza el canal con: recordatorios sobre las actividades que se realizan en las próximos días, información propia sobre servicios, retweets interesantes relacionados con las líneas de actuación y resolución de dudas.

Para finalizar, y tratar de responder a la pregunta que abre este post, siempre podemos comparanos. En el país de los ciegos, el tuerto es el rey:


Número de followers
@gencat: 9163
@bcncultura: 6480
@barcelonactiva : 5056
@UOC_Universitat: 3416
@madridemprende: 2544
@TMB_Barcelona: 2129
@ocupaciocat: 1641
@FeinaActiva: 1222
@iniciacat: 700
@BibliotequesBCN: 364
@Bcnmobilitat: 177

NOTA: Un post tremendamente desordenado y sin conclusiones. Estoy en una baja forma que asusta. El que quiera un buen post, deberá tener paciencia o pasar por aquí.

viernes, 17 de diciembre de 2010

I'm back

martes, 10 de febrero de 2009

Dominios .tel y cambios de piso

Desde la semana pasada es posible para cualquier persona comprar dominios .tel (leer noticia de elpais.com). A raíz de la utilidad de los dominios .tel (todavía no la tengo muy clara) recuerdo una de las necesidades que creo que deberían solucionarse con la ayuda de las nuevas tecnologías en los próximos tiempos. Un ejemplo (extremo) con el que quizá te identifiques:

Vives en una dirección postal (tu casa actual). Estás empadronado en otra dirección. En tu DNI figura otra dirección. En Hacienda tienen otra dirección diferente. En la Seguridad Social otra más. Tu ex-universidad te sigue enviando cartas a la dirección donde vivías cuando te graduaste, lo mismo que la escuela donde realizaste un posgrado. Las multas de tráfico te llegan a otra dirección diferente. Aquella revista a la que te suscribiste y nunca recordaste llamar para cambiar la dirección de envío sigue enviandote cada ejemplar a una de tus antiguas residencias... Además de todo esto, recibes en tu buzón decenas de cartas de las personas que antes vivieron en tu casa... Eso sí, tienes una página web personal (o un dominio .tel).

¿Qué tal algo así? Una base de datos donde se centralizara la información de nuestra residencia actual y que nosotros pudieramos dar permiso a entidades y empresas para que nos enviaran los documentos según la dirección que se indica y podemos actualizar nosotros mismo (firma digital). Además, las empresas o entidades no necesariamente deberían conocer nuestra dirección postal. Simplemente lo enviarían a nuestro identificador único (DNI).

Pero, ¿y qué hay de la correspondencia digital? Cierto, tendemos a no recibir nada en nuestros buzones. Pero un libro de Amazon (Kindle mediante) o una revista en papel, hoy por hoy, es un placer recibirla en el buzón de nuestra casa.

martes, 27 de enero de 2009

Hoja de ruta para crear un buen producto Web 2.0

Como ya escribí en su momento, no es intención de este blog difundir contenidos de otros blogs con un simple corta y pega, pero como la excepción confirma la regla, no me puedo resistir a listar más abajo las "50 Essential Strategies For Creating A Successful Web 2.0 Product". Dion Hinchcliffe, como buen gurú, reune con arte lo que los demas vivimos, sufrimos o "pecamos de" en el día a día de los proyectos web en los que participamos.

Así que no me queda nada más que decir "Amén Dion". Eso sí, intentaré (buenas son las intenciones) en este blog ir desgranando uno por uno los puntos que se listan a continuación:

1. Start with a simple problem.
2. Create prototypes as early as possible.
3. Get people on the network to work with the product prototype rapidly and often.
4. Release early and release often.
5. Manage your software development and operations to real numbers that matter.
6. Gather usage data from your users and input it back into product design as often as possible.
7. Put off irreversible architecture and product design decisions as long as possible.
8. Choose the technologies later and think carefully about what your product will do first.
9. When you do select technologies, carefully consider skill sets and staff availability.
10. Balance programmer productivity with operational costs.
11. Variability in the productivity amongst programmers and development platforms each varies by an order of magnitude.
12. Plan for testing to be a larger part of software development process than non-Web applications.
13. Move beyond traditional application hosting.
14. Have an open source strategy.
15. Consider mobile users as important as your regular browser customers.
16. Search is the new navigation, make it easy to use in your application.
17. Whenever users can provide data to your product, enable them.
18. Offer an open API so that your Web application can be extended by partners around the world.
19. Make sure your product can be spread around the Web by users, provide widgets, badges, and gadgets.
20. Create features to make the product distribute virally.
21. The link is the fundamental unit of thought on the Web, therefore richly link-enable your applications.
22. Create an online user community for your product and nurture it.
23. Offer a up-to-date, clean, compelling application design.
24. Load-time and responsiveness matter, measure and optimize for them on a regular basis.
25. User experience should follow a "complexity gradient."
26. Monetize every page view.
27. Users' data belongs to them, not you.
28. Go to the user, don't only make them come to you.
29. SEO is as important as ever, so design for it.
30. Know thy popular Web standards and use them.
31. Understand and apply Web-Oriented Architecture (WOA).
32. Online products that build upon enterprise systems should use open SOA principles.
33. Strategically use feeds and syndication to enable deep content distribution.
34. Build on the shoulders of giants; don't recreate what you can source from elsewhere.
35. Register the user as soon as possible.
36. Explicitly enable your users to co-develop the product.
37. Provide the legal and collaborative foundations for others to build on your data and platform.
38. Design your product to build a strong network effect.
39. Know your Web 2.0 design patterns and business models.
40. Integrate a coherent social experience into your product.
41. Understand your business model and use it to drive your product design.
42. Embrace emergent development methods.
43. It's all about usability, usability, and usability.
44. Security isn't an afterthought.
45. Stress test regularly and before releases.
46. Backup and disaster recovery, know your plan.
47. Good Web products understand that there is more than the Web.
48. Look for emerging areas on the edge of the Web.
49. Plan to evolve over time, for a long time.
50. Continually improve yourself and your Web 2.0 strategies.

sábado, 24 de enero de 2009

El vendaval que nos dio de bruces con la realidad

Hoy ha amanecido dos horas antes de que saliera el sol. Ha amanecido con los pájaros aletargados y con el postigo golpeando la puerta. Ha amanecido con las sillas volando por encima de los abetos y con Otto, asustado, arañando la pared. Hoy ha amanecido con el grito del vendaval.

En el país que nunca pasa nada hoy era un día especial. No saldremos en la CNN, no nos verán en Australia, no se emocionarán en Argentina. Esto no es el Katrina, ni el Mitch, ni tan solo el Wilma. Pero es un día especial, un día que llevaba tiempo esperando, un día para dejar de ver y actuar. Un día para estar conectado a Internet, informarse. También para informar, twittear, bloguear, colgar fotos de un ciprés acostado sobre diez tumbas de mármol, frías, ausentes. Un día para ser como ellos. Ellos que amerizan, ellos que tiene un presidente 2.0 con Blackberry. Pero cuando el sol ha iluminado la mañana, la luz ha desaparecido. La mañana 2.0 al traste. No hay Twitter que valga, ni actualización del status del Facebook. No hay fotos subidas a Flickr. No hay conexión a Internet. No hay ordenador. Adiós realidad imaginada. Adiós imaginación hecha realidad. Ni tan siquiera hay televisión. Ni ducha de agua caliente. No hay comida cocinada. No hay bebida fresca, no hay cubitos de hielo. No hay nada. Un vacío. Tic-tac, tic-tac. No me ha quedado otra que redefinir la forma de perder el tiempo... escuchar música (hasta que la batería ha dicho basta) y leer a García-Alix pidiéndome que no le siguiera porque estaba perdido en los ochenta de Madrid, tiempos de plata, bromuro de plata y la plata fumada… Un vendaval y nos ponemos a leer. Un vendaval y tiempo para pensar. Un vendaval y volvemos, por unas horas, a ser “uno-punto-cero”. Bendito, pues, país tercermundista. [continúa debajo de la foto]


Hoy era sábado y no había luz, ¿Qué hubiera pasado un martes? ¿Qué se puede hacer en una oficina sin luz? ¿Sin ordenadores? Ni tan siquiera sé que se puede hacer en una oficina sin Internet. ¿Quizá beber whisky, fumar y acosar?

Después de algunas horas cuando el viento se ha llevado por delante un día entero, la luz ha vuelto. La luz ha vuelto y aquí estoy.

jueves, 15 de enero de 2009

Las redes sociales y el periodismo de investigación

Los amigos de mis amigas son mis amigos ¡Uy!, vaya lío…”, ya lo cantaba Objetivo Birmania.

Se ha hablado mucho (aquí y aquí) del peligro en cuanto a mostrar datos personales en las redes sociales: edad, sexo, teléfono, profesión, etc. Pero incluso, tu listado de amistades o aparecer etiquetado en el álbum (Facebook) de un amigo pueden jugarte una mala pasada.

Esta semana se ha destapado un escándalo mayúsculo (el adjetivo mayúsculo es relativo, ya que “solo” se trata de fútbol) en el Real Madrid (ver Marca de los últimos 3 días). La razón principal (resumiendo para los no futboleros) es la de la presencia de ciertas personas (amigos de amigos) en la pasada asamblea de compromisarios del club blanco sin derecho a voto. Parece ser que los infiltrados votaron a favor del presidente Calderón. Calderón asegura no conocerlos, pero el diario Marca ha revelado un entramado de amigos de amigos. ¿Cómo lo han descubierto? No lo sé. Pero hoy en día se me ocurre una muy sencilla. Empezar a mirar la lista de amigos de los amigos del presidente en el Facebook, o de sus hijos, sobrinos, colaboradores… y, de esta forma, estoy seguro que podremos saber si dichas personas tiene relación con el presidente del Real Madrid. Si conseguimos ser amigos-del-Facebook de algunos de ellos, solo tenemos que esperar a que nuestro nuevo amigo aparezca etiquetado en un álbum, y “chas”, ya tenemos acceso a las fotos del grupo de amigos. Además, seguro que han hecho el favor de “etiquetarse” entre ellos y “chas”, ya tenemos la foto de los amigos en el viaje a Roma.

Si hoy en días estás metido de lleno en las redes sociales, es muy probable que no puedas negar ciertos datos. “¿Me dijiste que estabas cansado y te fuiste a dormir pronto y veo que has escrito en el muro de fulano a las tres de la mañana?”. Una prueba de las “amenazas” de las redes sociales. O una nueva forma de investigación periodística del siglo XXI.

PD1: Parece ser que Facebook sí que ha tenido algo que ver en esta investigación. Según el blog de Fernando Carreño en Marca:
"En la página de Facebook del señor ‘Nanin’, por cierto, pueden ver las caras de los falsos compromisarios identificados por MARCA que figuran como amigos suyos. Desde luego, si se ha tratado de realizar alguna operación encubierta, este hombre no parece precisamente formado ni en la CIA, ni el MI6, ni el Mossad, ni el FSB. Quizá en la TIA, con permiso del gran Ibáñez. Al margen del hecho de que este señor, al que Calderón agradeció públicamente su triunfo electoral y ahora ha despedido por trabajar a su favor, no tenía una función clara en el club. El propio presidente no ha sabido o querido decirla."

PD2: Un bloguero hablando del mismo tema.

PD3: Otro ejemplo, esta noticia de El Confidencial: Los peligros de Facebook: la foto de Asensio vestido de Obelix encabezará las manifestaciones contra Zeta.