2013/12/24

¿Cuál es el mejor lenguaje de programación?

¿Cuál es el mejor lenguaje de programación?

Aquel que te permite resolver mejor el problema que enfrentas.

Los lenguajes son herramientas.

¿Cuál es la mejor herramienta?

¿Un martillo, una sierra, un hacha, unos alicates, una navaja suiza?

Depende de lo que necesites hacer.

Si eres muy hábil con el hacha quizás puedas usarla para clavar clavos, cortar madera, y preparar sushi.

Pero si tienes un equipo, puede pasar un largo tiempo hasta que todos logren ese nivel de hacking. Y el tiempo también es parte de la ecuación.

También la gente se vuelve parte de la ecuación. Para muchos no es fácil respetar las diferencias y distinguir las particulares habilidades de los demás.

Hay jefes de proyecto que reniegan y se frustran porque nadie más en su equipo logra hacer sushi con el hacha tan potente y de buena calidad que han comprado. Mango de roble, acero americano. ¿Por qué no pueden ser como él? Si escuchara un poco, tal vez llegaría a enterarse que hay un chef entre ellos, que podría preparar el sushi con un pequeño cuchillo que tiene. O, mucho mejor, si le dieran un Ginzu 2013, en lugar de la pesada hacha que le saca ampollas de las manos.

Si finalmente se haciera evidente el hecho que el sushi se prepararía mejor con un cuchillo de cocina, el jefe lo aceptaría a regañadientes, no sin antes haber soltado algunas preguntas como: ¿Y es escalable?

Analizando si el salvavidas es perfectamente circular.

Quizás esa forma de ver los problemas se vuelve un hábito.

Quizás, en el fondo, haya un miedo, quién sabe, cuando se quiere que todo sea perfecto y seguro antes de empezar.

MacGyver salía a sus misiones sin mochila, ni nada en los bolsillos, en la confianza de que podría manejar cualquier situación con lo que encontrara en el camino.

Alguien puede querer lo más potente, lo más fuerte, lo más escalable y garantizado, no tanto porque sea la mejor respuesta al problema, sino porque le da miedo caminar sin protección, sentir el viento en la cara, la arena bajo los pies, el sonido del mar incontrolable. Quizás porque no sabe nadar. O porque una ola lo revolcó y le dejó un trauma hace tiempo.

¿Cuál es el mejor lenguaje de programación? Es una pregunta incompleta. ¿Cuál es el mejor lenguaje de programación, para este problema? está un poco mejor.

¿Y cuál es el problema? Esa quizás es la pregunta por la que se debe empezar. Y tomar en cuenta que nosotros también nos volvemos parte de la ecuación.

2013/12/20

¿Es posible vivir sin dominios?

Un dominio como midominio.com ayuda a acceder más fácilmente a un IP como 123.456.789.123.

También permite que disponga de cuentas de correo como minombre@midominio.com
Dado que el email llego antes que la web, supongo que esta forma de usarlo fue primero.

Recuerdo que cuando estaba en la universidad, antes de google, mantenía en una libreta una lista de los url que me parecían interesantes.

Sin embargo, hoy en día, me parece que la mayoría de las personas no llegan a un site escribiendo el url en el navegador. Generalmente hacemos click en alguna recomendación, de algún site social, como facebook, google+, stack overflow, etc. O de directorios de enlaces como yahoo!, diigo, reddit, etc.

Para muchos es más fácil escribir directamente en google el nombre de lo que buscamos o algo que nos lleve a ello, en lugar de buscarlo previamente en un directorio o incluso nuestros bookmarks.

En lugar de una libreta, podría usar ahora directorios de links recomendados, o acceder a mi bookmark desde cualquier lugar donde corra Chrome, como una PC o un smartphone.

A veces lo hago, pero quizás la mayoría de las veces entro por google.

Es práctico. Google puede funcionar como si fuera nuestra colección de bookmarks.

Entonces, el asunto es aparecer en google. Sin embargo, sabemos que no basta tener un dominio para lograrlo. Podemos comprar el dominio mifamosafloreria.com, pero eso no hará que aparezcamos automáticamente en google cuando busquemos florería o flores.

Deben pasar ciertas cosas que para que eso suceda. Como ser mencionado por otros sites reconocidos. De cómo lograrlo efectivamente tratan los especialistas en SEO.

Aunque la vía de los SEO no es una ciencia exacta y es posible llegar al top por algún golpe de suerte viral, ofrece una metodología para lograrlo.

Técnicamente, es posible hacer SEO de un IP en lugar de un url. Imaginemos que ignoramos todas las desventajas de no tener un dominio y lo logramos. Entonces, cuando la gente entre a google e ingrese florería o flores, aparecerá nuestra página Mi Famosa Florería.

No importará que conduzca a un url con un número. Muchos ni se darán cuenta de ese detalle. Lo importante es que tienen al frente la página que buscaban.

Me pregunto, ¿sería posible vivir sin dominios?. Quizás si no vamos a necesitarlo para un correo corporativo es más sencillo. Si sólo es para tener un site, me parece posible.

The Pirate Bay (TPB) es un site que permite compartir torrents. Los torrents permiten formar archivos con partes distruibuidas por la red. Pueden ser archivos de cualquier tipo.

Debido a disputas por derechos de copia, la presencia de TPB en algunos dominios de internet viene siendo bloqueda. Ha sucedido en USA, Inglaterra, etc. Recientemente, también en Groenlandia y Perú.

Al margen de la validez de un derecho que priva a la mayoría de hacer lo que la tecnología ya nos permite hacer, e ignora el mayor bienestar común que es posible con la libre difusión del conocimiento, o de la moralidad de las intervenciones que censuran por reputación y no por hechos comprobados, resulta interesante ver que esos bloqueos no afectan demasiado a TPB (el por qué de cosas como esas son explicadas en el libro en The Starfish and the Spider).

Hay páginas que funcionan como proxys y ofrecen listas, extensas, de accesos alternativos a TPB.

Ellos anuncian que pronto usarán un sistema donde no importarán los dominios.

Viéndolo un poco en perspectiva, quizás los dominios son como una facilidad que camufla un control central. Los controles centralizados no son muy amigos del espíritu de Internet, que quizás se mueve con más fluidez en un mundo de IP y anonimato. Tal vez sea mejor dejarlos atrás y buscar un modo descentralizado y libre de lograr lo que buscamos.




2013/12/08

Root y Link2SD para Galaxy S3 Mini (GT-I8190L)


Root

  • Consideraciones previas:
    • El proceso de rooteo aquí descrito se supone que no es destructivo, pero siempre es recomendable hacer un backup, principalmente de la información más importante.
    • El proceso puede tardar como 10 minutos. Asegurarse que la batería del celular tenga una buena cantidad de carga (yo lo hice con 20% aunque se recomienda 80%).
    • Tener a mano el cable de conexión USB para conectar el celular a la PC (pero no conectarlo hasta que la guía lo indique).
    • Que en el celular esté activado el modo de depuración.
    • Tener activa la conexión a Internet en la PC.
    • Puede ser que si está instalado una versión antigua de Kies, Odin no reconozca al dispositivo. (A mi me pasó, pero el inconveniente es salvable. Desinstalé Kies y los drivers asociados y más bien instalé los drivers usando el mini toolkit.)
    • Ver las guias completas antes de realizar los pasos.
    • Este post es sólo con fines educativos. La responsabilidad de la ejecución es tuya.
  • Ejecutar Samsung Galaxy S3 Mini Toolkit, que es un programa que permite automatizar muchas de las cosas que hay que hacer a mano en otros tutoriales. (La versión actual 1.3.5 se puede descargar de https://mega.co.nz/#!CghX0bqT!ST73wkDV07JQ8Of84xISTR6p6rNG42gUAJmGX-PKTwM)
  • Seguir las instrucciones del video http://www.youtube.com/watch?v=dO2O6HMQirc 
    • En el video no aparece la opción 33 (la versión del toolkit es más antigua), que se parece mucho a la 32. Yo elegí la 32 y resultó bien.
    • En el video no hacen el paso de instalar los drivers. Yo lo hice y luego continué con las demás instrucciones.
    • Habrá un momento en que indicará conectar el celular a la PC. Hacerlo, pero antes de continuar, esperar a que Windows lo reconozca. El toolkit iniciará Odin (la herramienta que se usa para instalar una nueva ROM en el celular). Cuando Windows reconoce el celular, en Odin la primera casilla ID:COM debe aparecer en azul. Entonces continuar.
  • Luego del rooteo, en la lista de aplicaciones instaladas aparecerá SuperSU.

Link2SD

  • Luego del rooteo, para usar la app Link2SD para enlazar las aplicaciones a la memoria SD externa, se requiere que además se haga una segunda partición primaria en esa memoria. Para ello se puede seguir la guía http://forum.xda-developers.com/wiki/SD_card_partitioning, que usa el programa Mini Partition Wizard. Una guía alternativa es http://www.htcmania.com/showthread.php?t=540481.
    • El programa Mini Partition Wizard se puede descargar de http://download.cnet.com/MiniTool-Partition-Wizard-Home-Edition/3000-2094_4-10962200.html
    • La operación de repartición no se realiza en el celular sino en la PC. Así que hay que entrar a Configuración, Almacenamiento, Tarjeta de memoria, Retirar la tarjeta de memoria. Luego, apagar el celular, quitar la tarjeta de memoria (que esta debajo de la batería) y colocarla en un adaptador que permita conectarla a la PC.
    • Luego que Windows reconozca la tarjeta SD, formatearla y particionarla siguiendo las instrucciones de alguna de las guías. Para el tamaño de la primera partición, elegí FAT32 y todo el espacio disponible menos 1 GB (mi SD es de 8 GB). Para el tamaño de la segunda partición primaria, elegí Ext4 y 1024 MB.
    • Luego de retirar la memoria de la PC y el adaptador, se puede volver a colocar en el celular. Quizás sea necesario reiniciarlo una vez para asegurarse que lo reconozca adecuadamente.
    • Al ejecutar Link2SD, pedirá autorización de root. Luego de dársela, preguntará por el tipo de partición (Ext4 en mi caso) e indicará reiniciar el celular.

Referencias