El día en que ejecuté Rails por primera vez, cambié de ser alguien que escribe código a ser alguien que 'crea sitios web'
Cuando aprendes a programar,
hay un pensamiento que ronda tu mente.
"Algún día yo también...
¿podré crear realmente una página web?"
El momento en que algo creado por mi código aparece en la pantalla.
Alguien accede a mi URL,
y en algún lugar del mundo ven lo que he creado.
Esto no es solo una habilidad técnica,
es una experiencia casi existencialmente impactante.
Y Rails es la herramienta que hace que esa primera experiencia
sea la más rápida, dramática y emocionante.
El mundo que se abre con una sola línea de comando 'rails new'
Cuando abres Rails por primera vez,
ingresas esta línea.
rails new myfirstapp
Al presionar Enter,
se crean una enorme cantidad de archivos en la terminal.
Carpetas, rutas, modelos, controladores, vistas...
Era solo una línea de comando,
pero de repente, dentro de tu computadora,
se crea un pequeño universo.
Hace unos segundos no había nada,
y ahora ha nacido la semilla de un servicio web.
En ese momento lo entiendes.
"Ah... Así es como se construye la base de un servicio web."
rails server: el comienzo de la vida en movimiento en la web
El siguiente paso siempre es tan simple.
rails server
Y abres el navegador e ingresas a la siguiente dirección.
http://localhost:3000
Allí está tu
primera página web.
No tiene diseño,
no tiene ninguna funcionalidad, pero
la pantalla que dice "Conectado"
te dice.
"Ahora eres alguien que puede crear sitios web."
No hay nadie que, al ver esto por primera vez,
no sienta que su corazón late.
El Ruby que has aprendido hasta ahora se convierte en el 'lenguaje de la web' en Rails
Con Ruby has aprendido
métodos, clases, bucles, condiciones, módulos.
Al principio, quizás te preguntaste "¿Dónde usaré esto?"
Pero en Rails, todo esto
crea un organismo vivo llamado servicio web.
URL → Controlador
Controlador → Acción (método)
Acción → Llamada al modelo (clase)
Modelo → Datos de la base de datos
Vista → Mostrar resultados en HTML
Una página web
se construye con los conceptos que has aprendido hasta ahora.
Así que Rails dice.
"Todo lo que has aprendido hasta ahora
solo extiéndelo a la web."
En ese momento, el lector se da cuenta.
"Ah... No hice estrellas, bucles anidados, clases
solo por diversión.
Esto es lo que realmente se convierte en web."
Scaffold: la magia de ver tu propio mundo creado frente a tus ojos
Una de las razones especiales de Rails es
que te da la experiencia de crear grandes funcionalidades en solo unos segundos.
Por ejemplo, digamos que quieres crear una función para administrar publicaciones de blog.
En Rails, simplemente dices esto.
rails generate scaffold Post title:string body:text
rails db:migrate
Y luego vuelves a ingresar a esta dirección en el navegador:
http://localhost:3000/posts
Y te sorprendes.
Página de lista de publicaciones
Formulario de creación de publicaciones
Página de visualización de publicaciones
Página de edición de publicaciones
Función de eliminación de publicaciones
Creación de tabla de base de datos
Configuración de enrutamiento
Estructura completa de MVC
Todo esto
se completa en 30 segundos.
En ese momento te detienes y piensas.
"Espera... ¿Acabo de crear un servicio de blog?"
Sí.
Correcto.
Realmente lo hiciste.
Con solo 4 líneas de comando.
Y desde ese momento,
ya no eres solo "alguien que aprende a desarrollar",
sino que eres "alguien que puede crear la web".
Rails enseña la web como enseñar a conducir un automóvil
Cuando aprendes a conducir por primera vez,
no necesitas saber toda la estructura interna del motor.
Girar el volante
Presionar el freno
Pisar el acelerador
Es todo lo que necesitas saber
para que el auto se mueva en la dirección que deseas.
Rails es igual.
Manejo de solicitudes de URL
Almacenamiento en la base de datos
Visualización en pantalla
Funciones CRUD
Una vez que aprendes estos conceptos básicos,
el servicio web comienza a moverse.
Y si en el futuro necesitas,
puedes desarmar el motor, comprender la estructura profunda y ajustar el rendimiento.
Pero en el momento de iniciación, experimentar el movimiento es mucho más importante.
Rails te brinda esta sensación más rápido que nadie.
El hecho de que estés probando Rails ahora es una experiencia en la que todo el mundo de la web se despliega en tus manos
¿Cuál es la mayor motivación para alguien que está aprendiendo a codificar?
Es muy simple.
"Lo que he creado aparece en la pantalla."
No hay experiencia que cambie a una persona tanto como esta.
Una persona que solo estaba aprendiendo la sintaxis
se convierte en alguien que ha creado algo
que puede mostrar con sus propias manos a alguien más.
Esa emoción es casi como la creación artística.
Al aprender Rails, no eres solo un simple desarrollador. Eres alguien que crea la web.
Rails te lleva rápidamente
al centro del mundo de la web.
URL
Datos
Pantalla
Entrada de usuario
Almacenamiento
Edición
Eliminación
Control de flujo
Diseño
Todo esto
comienza a verse como una sola estructura interconectada.
Alguien que no sabía nada,
al ingresar los comandos rails new, rails server, scaffold
comienza a crear su propio servicio web.
Ese no es el momento de aprender tecnología,
sino el momento de comenzar a crear un mundo.
Y has dado el primer paso en ese proceso creativo.