Cuál es el mejor lenguaje para aprender a programar

Cuál es el mejor lenguaje para aprender a programar

Reflexiones
Una pregunta que veo repetirse mucho entre gente que quiere aprender a programar es qué lenguaje es más conveniente para empezar. Lo que suelo contestar es que no es de suma importancia el lenguaje que se elija. Lo más importante a la hora de comenzar es aprender los rudimentos básicos de la programación (Qué son las variables, los ciclos, las expresiones, etc...). Todos los lenguajes, de alguna u otra manera, implementan los mismo conceptos básicos. En cierto modo es como preguntar qué instrumento es mejor para aprender música. Ciertamente hay algunos lenguajes que son más amigables con los novatos (Al igual que es más fácil aprender a tocar la guitarra que el arpa... o eso me han dicho :p). En qué se diferencian los lenguajes de programación La diferencia principal que tiene…
Leer más
¿Es PHP un lenguaje sólo para principiantes?

¿Es PHP un lenguaje sólo para principiantes?

Reflexiones
Algo que vengo oyendo y leyendo mucho es esta creencia de que PHP es un lenguaje sólo para principiantes o para desarrollos "poco serios" y una cantidad de otras formas de significar que PHP es un lenguaje de segunda. Me recuerda a esta simpática imagen: Obviamente, mi opinión es la contraria y no puedo perder la oportunidad de expresar mi punto de vista (y esperablemente esclarecer un poco :)). ¿De dónde viene esta creencia? PHP es un lenguaje que no ha sido pensado con un plan de largo plazo. Ha crecido orgánicamente mucho más allá de su objetivo original (una simple herramienta para ayudar a generar scripts CGI) y ese crecimiento ha sido ciertamente desordenado (hasta hace un tiempo al menos). La consecuencia directa de este objetivo es que PHP fue…
Leer más
¿Debo aprender php desde cero o ir directo con un framework?

¿Debo aprender php desde cero o ir directo con un framework?

Reflexiones
Una pregunta que se hace mucha gente que está queriendo empezar con PHP es, habiendo tantos frameworks y habiendo escuchado cosas tan buenas de los frameworks, ¿vale la pena aprender PHP "a secas"? Qué es un framework Empecemos por la definición para entender de qué estamos hablando: un framework es, ante todo, un conjunto de código que ya está escrito y que resuelve una cantidad de problemas genéricos (problemas que muchas aplicaciones diferentes deben resolver). En definitiva, un framework es un punto de partida muy bueno para una aplicación de cierta complejidad, podrías pensarlo como un atajo. Cómo está hecho un framework Salvo casos muy excepcionales (como Phalcon), los frameworks están escritos usando el mismo lenguaje que los programas "finales". En el caso de aplicaciones PHP, los frameworks son, técnicamente, código…
Leer más
¿Todo el mundo debe aprender a programar?

¿Todo el mundo debe aprender a programar?

Reflexiones
Recientemente me crucé con un twit donde un abogado decía algo así como que no todo el mundo debería aprender a programar. Nunca antes había escuchado de un abogado interesado en el tema, pero unas semanas más tarde, una amiga (que casualmente también es abogada) me consultó respecto de cómo podía incursionar en el mundo de la programación, y unos días más tarde otro amigo licenciado en historia me hizo una pregunta similar. Viendo que esta parece ser una pregunta que está dando vueltas en la cabeza de personas de muy variados ámbitos, decidí intentar una respuesta. Personalmente, considero que a cualquier persona le puede venir bien saber programar, aún si nunca en su vida va a dedicarse a esto profesionalmente. Qué beneficios tiene saber programar La programación, más allá…
Leer más
¿SQL vs. NoSQL?

¿SQL vs. NoSQL?

Reflexiones
Se escucha mucho últimamente que SQL pasó de moda, que hoy lo cool es usar NoSQL (MongoDB, CouchDB, etc...) pero... ¿es siempre así? Empecemos por entender qué es una base de datos NoSQL (formalmente no estoy muy convencido de que un almacenamiento que no respete las reglas ACID pueda llamarse base de datos, pero bueno... como para no entrar en más de una discusión a la vez, digamos que sí). De lo que estamos hablando es de un medio de almacenamiento no estructurado, comúnmente conocido como base de datos documental. Más allá de las formalidades (los registros de la base de datos relacional se llaman documentos en una base NoSQL, las tablas pasan a ser colecciones, etc..), existen diferencias muy concretas: Los documentos no tienen estructura (Pueden guardar literalmente cualquier cosa) No existen…
Leer más
¿Es conveniente montar tu propio servidor web?

¿Es conveniente montar tu propio servidor web?

Reflexiones
Lo primero que tenés que contestar antes de pensar en esto es si vas a ser capaz de darle soporte (Qué pasa si se cae el Apache en la mitad de la noche por ejemplo). Después está el tema de qué le vas a instalar. ¿Sos un fanático del composer? ¿Necesitás Memcached? ¿APC? ¿Cronjobs? ¿Qué tanto tráfico vas a tener? ¿Te bancás a tus vecinos? Como de costumbre, no existe una respuesta única y universal. Cada alternativa tiene sus ventajas y desventajas. Ventajas de usar un servidor compartido Costo (El abono suele ser más económico, aunque algunas VPS como DigitalOcean tienen planes super interesantes) Soporte técnico incluido (Como siempre, no todos los proveedores te van a dar el mismo nivel de soporte, pero siempre vas a tener algún tipo de soporte…
Leer más
Cuál es el mejor Framework PHP

Cuál es el mejor Framework PHP

Reflexiones
Esto es casi como preguntar ¿a quién querés más? ¿a tu mamá o a tu papá? Como en muchas otras áreas de la tecnología (del desarrollo web más específicamente), la gente tiende a fanatizarse en favor de las herramientas que le resultan más familiares, con lo cual, encontrar opiniones objetivas es ciertamente difícil. No voy a dar muchas vueltas, el framework que a mí más me gusta es Symfony, pero de ninguna forma diría que es "el mejor". Conozco unos cuantos buenos: ZendFramework Laravel Yii También hay algunos que se conocen como micro-frameworks: Silex Tonic En definitiva, la elección siempre será tuya. Lo que puede ayudarte a tomar la decisión es (en este orden): Tamaño de la comunidad de usuarios/desarrolladores Existencia de documentación Finalidad ¿Cuál es tu framework favorito?
Leer más
En qué casos conviene usar un framework PHP

En qué casos conviene usar un framework PHP

Reflexiones
O en otras palabras: ¿Framework sí o framework no? Qué dilema... La respuesta corta es en todos. Vamos con la respuesta larga: Qué es un Framework Existen muchas definiciones diferentes de framework. En el consenso general, se trata de un conjunto de librerías que sirven como base de una aplicación. Por qué usar un Framework PHP Tuve esta discusión bastantes veces con compañeros de trabajo y demás colegas y debo decir que fueron largas horas difícilmente bien invertidas. Admito sin emabrgo (nobleza obliga) que fue hace mucho tiempo... es raro escuchar hoy a alguien sostener la postura opuesta (La discusión hoy pasa por cuál framework elegir). La respuesta más elaborada (por si tenés tiempo y querés leer un poco más) es esta: Salvo que pienses desarrollar un negocio alrededor de un framework…
Leer más
Por qué usar una máquina virtual para proyectos PHP

Por qué usar una máquina virtual para proyectos PHP

Reflexiones
Respuesta rápida: para evitar sorpresas desagradables. Paso a detallar un poco de qué estoy hablando con un par de historias que me pasaron hace unos cuantos años durante el desarrollo de un proyecto personal. Como la mayoría de los desarrolladores que están empezando, tenía instalado en mi computadora (Windows en aquel entonces) el paquete XAMPP y mi forma de trabajo era programar y probar en mi propia computadora y luego, mediante FTP, subir mis cambios al hosting que había contratado con la empresa de un amigo. Un día una de las últimas actualizaciones que había realizado a mi código funcionaba perfectamente en mi casa, pero al subirla a mi hosting las cosas eran un poco diferentes (léase: no andaba nada :p). Hago la historia corta: yo había escrito los nombres…
Leer más