Aprender a programar con Adam Savage de Cazadores De Mitos

Actualmente hay cada vez mas recursos para aprender a programar, y a su vez hay mas gente interesada, pero un problema común es que luego de leer un manual, hacer un curso en alguna de las opciones para aprender y practicar online, como CodeAcademy, los usuarios no saben que hacer y se atascan. Pero no desesperen, porque Adam Savage tiene algunos tips para ustedes, y si bien los escribió pensando en la comunidad “Hazlo tu mismo”, casi todos se aplican a la programación, sobre todo al proceso de aprendizaje.

mythbusters

Los 10 mandamientos de Adam

  1. Hacé algo. Cualquier cosa.
    No es necesario que hagas el nuevo Facebook, empezá por algo sencillo, no esperes a tener la idea de tu vida para empezar a programar. Ojo, si hacés el próximo Facebook inspirado por este post, con un 1% me conformo.
  2. Hacé algo que mejore tu vida.
    Relacionado con lo anterior, no tiene que ser algo para cambiar el mundo, tal vez podés empezar con un pequeño script para automatizar alguna tarea que tengas que hacer, o porque no, hacer una nueva versión de alguna aplicación que no te convence.
  3. No esperes.
    No esperes a ser un guru del lenguaje que estás aprendiendo, cuanto antes empieces mas rápido vas a aprender. Y como en la matemática, en la programación, la practica es fundamental, bueno, tienen bastante en común.
  4. Usá un proyecto para aprender una habilidad.
    Una de las mejores maneras de sentirse motivado es empezar un proyecto que nos interese e incluya lo que sea que quieran aprender. Además, al realizar un proyecto podemos practicar algo más que programación y resolución de problemas, también puede plantearse objetivos y poner fechas, como para ir tomándole el gustito a la planificación.
  5. Preguntá. Pedí ayuda.
    Si bien en Stack Overflow están las respuestas a una cantidad de preguntas, siempre es bueno tratar de conseguir a alguien que quiera enseñarnos y tenga el conocimiento y experiencia suficientes para resolver nuestras dudas, obviamente no es necesario que lo haga en todas las ocasiones, porque con la tecnología no hay nadie que todo lo sepa.
  6. Compartí tus métodos y conocimiento. No mantengas secretos.
    Éste es un punto un poco mas complejo, escribir sobre lo que están aprendiendo es un excelente ejercicio, y hacer tutoriales aún mas, ya que debemos pensar en todas las dudas que tuvimos cuando aprendían, y las dudas que pueden tener quienes lean el tutorial, pero hay que considerar una cosa, si apenas están aprendiendo un lenguaje, framework, paradigma, tómense su tiempo para hacer tutoriales al respecto, o al menos asegúrense de aclararlo.
    Además, en la programación hay algo extra que con las cosas físicas no se puede hacer, y es compartir algo sin perderlo, pueden subir su código gratis a sitios como Github, algo que además, si lo que suben es interesante y está bien hecho, pueden sumar para su curriculum.
    En cuanto a lo de los secretos, si están trabajando en un proyecto con fines comerciales e identifican una funcionalidad que hace diferente a su producto, mediten antes de liberar el código al mundo.Y si comparten código y reciben criticas, siempre que sean fundamentadas, escuchen a quienes los critican y piensen acerca de lo que le dicen, no vayan a ser como algunos de los programadores que andan dando vueltas por ahí que se rehúsan a reconocer vulnerabilidades en su código.
  7. La perdida de entusiasmo y el fracaso son parte del proceso.
    Seguramente en algún punto van a sentir que no pueden continuar, que algo es muy difícil, que configurar x cosa es imposible. Pero no se rindan, busquen, pero si no encuentran nada la documentación es su mejor amiga. Si se traban con algo y tienen otras cosas para hacer, sigan con eso otro, muy a menudo pasa que se nos ocurren ideas para problemas que tuvimos antes sin necesidad de estar pensando en ello.
  8. Medí con cuidado.
    Esta está complicada, pero lo podemos llevar para el lado de la Ingeniería de Requerimientos, pero me parece que va mas allá de alguien que está empezando a aprender programación, bah, muchas veces va mas allá de cualquier persona sin importar su nivel, ya que la volatilidad de lo que quiere la gente es difícil de manejar.
  9. Hacé cosas para los demás.
    Mientras aprendés podes ir haciendo cosas para los demás, una pequeña pagina en HTML+Javascript (no Java) para que tu hijo practique las tablas, una aplicación para que tu mamá tenga todas sus recetas en la PC o también para administrar las facturas de servicios/compras. Hacer éste tipo de cosas puede motivarte al ver la reacción de la otra persona, además, puede hacer que la otra persona te motive, unas palabras de aliento y aprecio no le vienen mal a nadie. ALERTA, no todo es sencillo, y seguramente en algún momento te vas a ligar una puteada porque tu super programa borró una receta, etc.
  10. Usá mas liquido refrigerante.
    Ok, estemm ¿A esta como la pinto? A ver que sale de ésto, es importante que mientras estés en la PC te mantengas hidratado, que apliques la técnica 20-20-20, cada 20 minutos mira un punto a al menos 20 metros por 20 segundos, tus ojos te lo van a agradecer, y si no tenes nada lejos para mirar cerra lo ojos por 30 segundos. Además, cada 1 hora levántate y camina un poco. MANTENÉ LA POSTURA!!

El vídeo de Adam (en inglés).

Si se les ocurre algo mas no duden en dejarlo en los comentarios. Prometo ignorar sus comentarios como los de cualquier otra persona.

Hotsale en Argentina, el comercio electrónico por su segunda oportunidad

Los argentinos somos desconfiados, y con razón, cuando me enteré del Hotsale lo primero que se me vino a la cabeza fue: “Estos hijos de buena madre que se tuvo que dedicar a cosas no tan buenas para mantenerlos van a jugar con los precios cual plastilina”. Mi imagen mental fue algo así.

tira cuetes

¿Se acuerdan de esto?

¿Cuál era el plan?

El plan era simple, armar un crawler para obtener los precios antes del Hotsale, y luego volver a correrlo durante el Hotsale. Desafortunadamente, luego de ver la organización de las paginas, mis victimas fueron Dexter y Garbarino, sí, pobre Don Garbarino, siento que hacer este post es como hacer leña del árbol caído, pero bueno, les traigo datos, datos ricos y baratos. Ojo, también los interprete, puufff, tenemos información, que loco es todo esto. Seguir leyendo »

Desactivacion de lineas prepagas en Argentina (cada cuanto recargar)

Tener un linea prepaga de alguna empresa es algo que no resulta inusual, en general se usan debido a que otra persona con la que nos comunicamos seguido tiene números gratis para comunicarse, o el otro uso que se les da, en mi caso al menos, es de teléfono de emergencia cuando se sale a lo desconocido ¡Paraa! ¿Sos Rambo, chabon? Bueno, vuelvo a la Tierra, para cuando voy al aire libre en algún lugar alejado o de travesía en kayak. Seamos honestos, un Samsung viejito le pasa el trapo al envejecido Razr i que tengo, además, el Mototrola tiene menos señal que un walkie-talkie de $50.

claro movistar personal

¿Se nota que GIMP aún me supera?

Lo que importa

Lo que les importa a todos es lo siguiente, cuanto tiempo puede estar una linea prepaga sin ser recargada antes de ser dada de baja o desactivada, como les guste mas. Un detalle importante, una vez que es dada de baja el numero que teníamos se pierde, por lo que si alguien nos tenía como su contacto gratis, deberá cambiar el numero.

El siguiente es el listado empresa/tiempo hasta la baja.

Movistar: 1000 días

Personal: 8 meses (240 días)

Claro: 120 días se suspende, 180 días se cancela.

En el caso de Claro, a los 120 días (4 meses) la linea es suspendida, pero si recargamos se vuelve a activar.

Para informarse más sobre planes de telefonía de Argentina, pueden ingresar Planes Para Todos, un compilado de planes de telefonía celular.

La telefonía móvil en Argentina, mi pequeño aporte

Si son argentinos y tienen un teléfono celular (o similar), bueno, pobres de ustedes, ya que el servicio es bastante pedorro, por decirlo de manera delicada. ¿Y cual es tu aporte? ¡¡HDP!! Seguramente es lo que piensan ustedes, bueno, mi aporte es que hice mi mejor esfuerzo, el cual aún no ha concluido, con el objetivo de recopilar los planes de telefonía disponibles en las 3 principales empresas del mercado, Claro, Personal y Movistar. He aquí la obra de arte, Planes para todos! (nombre trillado y barato si los hay)

planes para todos

He aquí el monstruo

Mi mejor esfuerzo consta de 10hs, y contando, de recopilación de datos, sumados a un rato de maquetado apalancado por Bootstrap y utilizando AngularJS para juntar el menjunje de datos, algunos dirán: – “¿Angular para esa boludez?”, a lo que mi respuesta es algo así como: -“Sí, soy un boludo, me fui de mambo, pero es porque tengo pensado ir contruyendo sobre esta base”.

Otros dirán: -“Pero si lo actualizas tanto como tu blog va a ser una reverenda cagada inútil”. Es verdad, pero la razón por la que pseudo abandoné el blog es porque estaba usando el tiempo en hacer esta fenomenal aplicación, en vez de actualizar como Dios manda, en un momento pensé ir posteando sobre las peripecias que pasé, pero bueno, puede que lo haga próximamente cuando llegue el “Gran Refactoring, Gran”.

El diseño

El diseño actual no le gusta a nadie, ni a mí, pero bueno, espero poder ir mejorando luego de que se terminó, por ahora, la ardua tarea de juntar los datos y decidir cuales eran importantes y cuales no.

Los datos

Los datos salen de los sitios de las empresas de telefonía, sumados a un poco de interacción a través de Twitter, tengo que confesar que todos fueron muy rápidos en contestar a través de éste medio. Lo malo, es que después te mandan mensajes para que los califiques, para que empieces a usar la autogestion, y para juntar firmas para que Carlitos vaya al mundial, a lo cual, meh.

El código

No lo miren, me da pudor, hay una mezcla mortal de cosas locas, filtros, sin filtro, watchers, paparruchadas con expressions, abuso de las bondades de AngularJS, pero bueno, el código fue escrito bajo el siguiente supuesto que todo programador hace: “Ahora lo hago así para obtener resultados rápido, después lo mejoro” Sabemos que después significa nunca. Recuerden, excepto que estén prototipando como Dios manda, o sea, prototipo que NO se debe reciclar y llegar a producción, siempre, siempre, escriban el codigo como si fuese a durar para siempre, y pensando en la pobre persona a la que le puede llegar a tocar mantenerlo en un futuro, aunque sean ustedes mismos, apiádense de ustedes.

Conclusión

Ni los científicos de la NASA son capaces de comprender al 100% los términos de los planes de telefonía de Argentina, si se creían grosos por pasar los test de comprensión de texto de Techint, bueno, piénselo otra vez, porque tratar de “formalizar” los términos de las empresas de telefonía es un dolor de escroto comparable con el de viajar en un colectivo de larga distancia y que atrás te toque una de esas personas que creen que el respaldo de tu asiento es un apoyapies, el de al lado tuyo ronque, y adelante vaya un bebe llorón.

WordPress 3.9 ya (casi) está entre nosotros

Ok, todavía no, pero falta muy poco, ya que a quienes alguna vez desarrollamos un plugin y lo publicamos en el sitio oficial de WordPress.org, recibimos información sobre cambios en la plataforma de modo de que podamos mantener nuestros plugins al día.

wordpress logo

WordPress

Si desarrollaron algún plugin a medida es una buena idea que se den una vuelta por acá, ya que van a encontrar cuales son los principales cambios que se vienen con la versión 3.9 de WordPress, obviamente que mientras no actualicen no habrá problemas, y además, en general el equipo de WordPress mantiene la compatibilidad con funciones disponibles en versiones anteriores, pero nunca es tarde para arreglar ése código que está usando funciones que están en camino a ser retiradas de WordPress.

Ya quiero probar WordPress 3.9

Como siempre sucede, la opción de actualizar automáticamente a WordPress 3.9 todavía no está disponible, y no lo estará por al menos unos días, actualmente la ultima versión estable es la 3.8.3. Pero si están apurados, pueden descargar el Release Candidate 2 desde acá, si bien no es una versión oficial, ya para el segundo RC se espera que todo esté andando bastante bien, obviamente no lo vayan a usar en producción, pero si quieren ver si se aproximan dolores de cabeza pueden darle una probadita con sus plugins.