Cómo superar la sensación de que la codificación es mágica.

Es posible que deba investigar un poco para comprender todos los pasos que se llevan a cabo cuando ejecuta la secuencia de comandos y todo el trabajo realizado por otros para que esto sea posible. Pero es difícil decir cuántos detalles necesitarás para superar este sentimiento.

No sé Python, pero examinemos algo simple como una página web escrita en HTML.

Cuando creo una página, uso HTML para formatear la estructura e incluir mi contenido dentro del código. HTML es un lenguaje de marcado que todos acordamos usar para este propósito.

Después de crear la página, la subo a un servidor web. Eso ejecuta un software como el servidor HTTP Apache que almacena y presenta mi contenido para que pueda ser leído por un navegador web. Cuando miro la página en Firefox, Chrome u otro navegador, veo el contenido de la página con el formato que especificé en mi código.

Algunos equipos de programadores escribieron el software del navegador para que pudiera “traducir” mi código y presentarlo como páginas formateadas en la Web. El servidor lo preparó de tal manera que el navegador pudiera interpretarlo.

Eso es una simplificación excesiva, pero todavía puedo dividirla en varios pasos. Cada paso involucró a alguien escribiendo un código para hacer que algo sucediera, o alguien construyendo hardware para que ese código se ejecute.

Puede que no conozca todos los detalles involucrados, pero sé que, al igual que manipulo HTML y CSS en la parte delantera, otras personas han trabajado con el código, eso es lo que saben, para hacer que las cosas funcionen en otras partes del proceso. Soy parte de un proceso que involucra a muchas personas. Los resultados de sus esfuerzos colectivos permiten que la página web funcione.

También podríamos usar el ejemplo de hornear pan. Si combino la harina, el azúcar, la sal, la levadura y el agua de la manera correcta, amasar, dejar que se levante y hornear, terminaré con un pan delicioso. Eso puede parecer bastante mágico. Pero si conocemos la levadura, nos damos cuenta de que le damos azúcar a la levadura para que produzca dióxido de carbono, lo que da como resultado burbujas que crean la textura abierta del pan. Solo necesito saber un poco de la ciencia para entender que es ciencia y no magia.

Te recomiendo que aprendas lenguaje ensamblador, debe haber muchos emuladores por ahí. Búsqueda rápida encontró esto: yasp. No lo he intentado, pero esto o cualquier otro lo ayudará a comprender las muchas capas de las instrucciones que se envían al CPU, al mover las cosas en la memoria, al almacenar en registros lo que hacen los compiladores e intérpretes para que todo se sienta como magia. Es de una manera y no de muchas otras maneras. Es un esfuerzo de innumerables ingenieros que han invertido innumerables horas para hacerlo parecer.

Deja de decirte que la codificación es mágica. Con pensamientos repetidos como ese a su debido tiempo, BANG tu cerebro ya no cree que la codificación sea mágica.

Al cerebro se le puede decir cualquier cosa. ¡Haz que funcione para ti o un comercial de televisión te dirá qué hacer!

Tu amigo en salud,

Micro

Nunca he codificado ni conozco ningún lenguaje de codificación, pero realmente me pregunto esto muchas veces. Realmente no puedo entender cómo interactúan el software y el hardware. Intenté buscar lo mismo pero surgieron muchos términos técnicos que perdí las conexiones. Aún así, siento que debe haber una explicación fácil de entender, así que sigo con tu pregunta para ver si alguien realmente puede explicarlo en un lenguaje sencillo.

Un libro que alguien sugirió para esto (pero nunca lo leí) –

Código – El lenguaje oculto del hardware y software de la computadora.

Encontré una buena respuesta en Quora en el mismo; por favor, compruebe: la respuesta de Shubhojit Chattopadhyay a ¿Cómo funcionan las computadoras como lo hacen? ¿Cuándo se convierte la electricidad en lógica ejecutable y cómo?