Archive for the ‘amigoinvisible’ Category
Regalos originales
Nueva funcionalidad que hará la vida un poquito más fácil a mis jugadores del sorteo del amigo invisible. He conseguido agregar información interesante de ofertas y regalos de diferentes proveedores y los ordeno para los jugadores.
De esta forma, desde el “pide tu regalo” o desde la misma home, se tiene un acceso rápido a un montón de ideas.
Además, los segmento por ciudad. Por ahora tengo regalos para Madrid, Barcelona, Valencia, Zaragoza y Pamplona. Y regalos para disfrutar desde cualquier punto de España, ya que son o envío a domicilio o escapadas y viajes.
La idea es tener un listado variado con las mejores ofertas diarias, y regalos interesantes. Pronto añadiré nuevos proveedores para segmentar más ciudades, y tener más variedad de regalos.
Recuperar un sorteo en el amigo invisible
A veces los filtros antispam nos hacen malas jugadas, o a veces somos nosotros los que escribimos mal un email, pero el caso es que algunos jugadores no reciben su correo.
¿Qué podemos hacer para recuperar el sorteo y no tener que volver a celebrarlo? Bien sencillo, hay varias maneras:
- Al celebrar el sorteo, en la página de ok se devuelve un identificador del sorteo que hemos de guardar. En la home existe un link que dice “alguien no ha recibido su email. Recuperar sorteo” que nos llevará a una formulario donde introducir el identificador del sorteo.
- Más fácil aún, en el email del sorteo hay un link para ver quién participa en este sorteo. Pulsando ese link te llevo a tu página del sorteo.
- Aún más, si sabes 2 emails de 2 participantes del sorteo también puedes ir al link ”alguien no ha recibido su email. Recuperar sorteo“ que con esos emails podrás recuperar tu sorteo.
Más novedades en el Amigo Invisible
El amigo invisible online está que se sale. Hay más novedades: Estreno logo! Gracias a @andresgutgon
También estreno funcionalidad: Pide un regalo! Cuando recibas tu email de “Te ha tocado a fulanito” tendrás un botón que dice “Pide un regalo” Este botón te lleva a una página donde puedes escribir lo que te gustaría que te regalaran, y además puedes ver lo que a tu regalado quiere que le regalen. Podéis ver un ejemplo aquí: http://www.amigoinvisibleonline.com/sugerencia/2210/213646/
Cada día es más difícil saber qué regalar, y de esta forma lo ponemos fácil. Además te presento algunas ideas para regalar, productos de dooplan, colectivia, zacatrus, etc… para hacer un poco más fácil el regalo.
Anecdota terrorífica de AWS
Es solo una anécdota, un compendio de mala suerte, pero una vez más Amazon AWS la lía. Me pasó con la migración del amigo invisible online al AWS EC2. En agosto lo reprogramé todo en django y lo subí a una microinstancia gratuita de amazon para nuevas cuentas. Programé el SES para el envío de emails… Todo bien, hasta más o menos un mes después.
Amazon aterrizó en España en septiembre y abrió su tienda online. Como todo bicho viviente me pudo la curiosidad y me “registré” en amazon España. Entonces tuve un conflicto de cuentas, me dijo que mi cuenta ya existía, que si la quería fusionar o no se qué. Las fusioné, curioseé y me fui.
Entonces fue cuando me di cuenta que no podía acceder a mi amigo invisible, ni por web, ni por ssh. Accedí a la consola, y no podía entrar! No tenía cuenta en AWS!!!!! Pánico. La siguiente sorpresa fue que la asistencia técnica cuesta 50€ al mes, una berbaridad.
Abrí un hilo en el foro gratuito, muy cutre. Envié un email al servicio de facturación… Lo único que me dijereon es que mi cuenta no existía (uffffffff) Bueno, me abrí otra, reinstalé todo y en 24 horas volvía a tener el sistema funcionando (ojo, había perdido 5000 sorteos…)
Lo más absurdo de todo es que días después me vuelven a escribir que habían encontrado mi máquina!!!! No se lo que pasó, nunca me lo explicaron, pero la fusión de las cuentas debió ir mal y me la liaron. Realmente mi servicio es pequeño y gratuito, no perdí dinero, solo tiempo, pero qué habría pasado si mi servicio fuera premium?
Espero que solo sea una anécdota, mis otras cuentas y proyectos en AWS siempre han ido bien (incluso con el incidente del rayo) pero acojona.
El nuevo Amigo Invisible Online
Última hora!!! Tenemos un nuevo Amigo Invisible Online, la mejor forma de celebrar un amigo invisible por email. Bueno, no es última hora, pero como todavía no lo había blogeado, pues alguno no lo sabrá.
El nuevo amigo invisible, que por fuera se parece mucho al antiguo, tiene las siguientes funcionalidades:
- Exclusiones múltiples. Era una funcionalidad muy demanda. Si no quieres que te toque ni fulanito ni menganito, escribe sus ids (su número de sorteo) separados por comas, y el sorteo se encargará de no cruzarlos.
- Recupera el sorteo con el email. Mucha gente, aunque se le avise que debe anotar su número de sorteo, se le olvida o lo pierde y luego es un lío recuperarlo. Con esta funcionalidad puedes recuperar tu sorteo escribiendo 2 emails de los participantes. Es un método seguro, no hay problema de obtener otros emails ya que solo se muestran los nombres de los jugadores, si quieres reenviarles algo tendrás que volver a escribir el email
- Mejores emails. El email que se envía al usuario es más bonito, con más funcionalidad (te puede dar de baja de la bbdd con un click, o recuperar fácilmente tu sorteo)
- Mejor rendimiento. El nuevo amigo invisible corre en python + django. El poco js es jQuery. Está alojado en Amazon EC2 y los emails se envía usando Amazon SES
Amigo Invisible Familiar
Grata sorpresa de David Serrano, me escribe para informarme del nacimiento de su “Amigo Invisible Familiar”
Se trata de una variación del amigo invisible para hacer entre familiares o amigos. En esta aplicación se require que todos los jugadores estén presentes, por eso debe ser familiar!
La gran novedad de esta versión frente a la mía (por ejemplo) es que utiliza su algoritmo de aplicaciones Biyectivas, por lo que puede utilizar múltiples exclusiones entre jugadores sin riesgo a bloqueos. Otra novedad es que cada jugador declara lo que le gustaría que le regalaran, evitando esos pongos dichosos.
David en su día colaboró con mi proyecto del amigo invisible para utilizar su algoritmo y permiitr las múltiples exclusiones, pero finalmente lo dejamos a medias. Ojalá este año lo termine…
En fin, David, que tu applet está muy bien, solo te falta añadir el componente de emailing y lista para usarse a gran escala. Estas navidades pasadas en mi web jugaron 200mil personas, es tu oportunidad de hacer algo grande.
Juega al Amigo invisible estas navidades
Como todos los años en estas fechas, realiza tu sorteo del amigo invisible desde www.amigoinvisibleonline.com. Este año está siendo una locura, a estas alturas ya he superado por mucho el número de jugadores del año pasado!
Recordad sobre todo anotar el código del sorteo que sale al terminar el sorteo. Lo necesitaréis si hay algún error y alguien no recibe su email, que es muuuuuy frecuente. Los sistemas anti spam son muy cabrones y castigan mucho a mi email (tiene un par de enlaces)
Por último, si te es útil, hazme el favor y haz click en la publi. Echa un ojo a mi otro proyecto (dooplan, una agenda de eventos de ocio) que es de lo que vivo y así contribuyes a que tenga un puesto de trabajo y pueda seguir manteniendo el amigo invisible.
Feliz Navidad
Spam
Llevamos un par de semanas en dooplan liados con el tema del spam. Entre newsletters y distintas notificaciones ,enviaremos miles de emails a los usuarios y conseguir que lleguen y no acaben en la carpeta de spam, o lo que es peor, que los tiren por el camino, es un gran quebradero de cabeza.
Desde luego la regla número 1 es permitir que el usuario se de de baja con un solo click. También es importante el doble opt-in en el alta (te das de alta y te enviamos un correo para activar tu cuenta). Pero además de esas hay muchas, muchísimas otras reglas que respetar. Aquí un pequeño artículo explicándolo bastante bien.
Como la dedicación a este tema es bastante exigente y no tenemos los recursos necesarios, un experto en spam y las máquinas e IPs necesarias, estamos pensando en externalizarlo. Existen varias opciones, algunas con precios muy buenos, pero casi todas trabajan con el sistema típico de newsletter, una única newsletter (personalizable el nombre del usuario…) para todos.Hemos encontrado un par de empresas que nos ofrecen el servicio a medida, a ver si llegamos a un acuerdo con alguna.
Lo que quería comentar, además de todo esto, es que este problemón también lo sufro con mi amigoinvisibleonline.com. Es de sobras conocido el problema que tengo con muchos proveedores, que tiran mis emails. Wanadoo y telefónica-terra me tienen baneado al 100%. Hotmail me mira bastante mal y tengo bastantes rechazos, muchos por culpa de los usuarios (sí, vosotros) que escriben mal el mail y me crean mal karma, y yahoo también me causa algún problema.
Lo peor de todo es que esto se va a ir deteriorando con el tiempo. Ya que no puedo validar que los emails que envío son buenos, los proveedores me van a ir clasificando como spammer. Además mis patrones de comportamiento son bastante chungos, no envío casi emails durante el año y en navidad reviento los buzones.
Conclusión, el amigo invisible en cierto modo podría morir de éxito, merece la pena el esfuerzo?
Y el Amigo Invisible llegó a la nube
He subido el amigo invisible versión Django + GAE y ha funcionado! Aquí tenéis una versión primitiva de la aplicación, pero que funciona al 100%. Y con múltiples exclusiones!
TODOs:
- L&F, ponerle el css adecuado
- Corregir los últimos cambios de app_bij.py que ha hecho David
- Uno, dos o tres pasos?
- Añadir todas las funcionalidades extras: Recuperar el sorteo, ver con quien juegas, comentar lo que quieres que te regalen…
- Añadir AdSense (y forrarme)
- …
- Y cuando todo vaya bien, mover el DNS para que www.amigoinvisibleonline.com apunte a la nube
PD. Tengo un límite de 2000 emails por día. Esto puede ser un problema, estas navidades estuve enviando más de 4000 al día, tendré que preguntar precios.
Google App Engine
Llevo esta tarde peleándome con el Google App Engine, para portar el amigo invisible a esto. Y no ha sido trivial. Por un lado, te quedas sin admin. La consola de administración del GAE no es para nada lo mismo. Por otro lado, y mucho mucho mucho más importante, no puedes usar import pdb;pdb.set_trace() Cómo puedes debugar sin eso?!!
Las diferencias con django se producen en la parte de BBDD, ya que se sustituyen los models de django por el sistema de Google. La definición es sencilla, pero los métodos para hacer queries dejan mucho que desear. Y las exceptions lanzadas también son diferentes.
Ojo también con los forms. Los ModelForms se extienden de un paquete de GAE, mientras que los forms normales son los de Django.
Por último, es posible y fácil utilizar Django en su versión actual. Simplemente hay que definir un archivo main.py (y declararlo en el app.yaml), con el siguiente contenido:
import logging, os, sys
# Google App Engine imports.
from google.appengine.ext.webapp import util
# Remove the standard version of Django.
for k in [k for k in sys.modules if k.startswith('django')]:
del sys.modules[k]
# Force sys.path to have our own directory first, in case we want to import
# from it.
sys.path.insert(0, os.path.abspath(os.path.dirname(__file__)))
# Django imports and other code go here...
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
import django.core.handlers.wsgi
def main():
# Run Django via WSGI.
application = django.core.handlers.wsgi.WSGIHandler()
util.run_wsgi_app(application)
if __name__ == '__main__':
main()


