Viernes Los delirios de un programador

Hola Habr! A veces, diferentes pensamientos comienzan a vagar en la cabeza. Grabé algo. Resultó algo así como una historia. No juzgues estrictamente, es solo una fantasía.

imagen

Extraños bailes


Viernes despues del trabajo. Estoy en un club nocturno Invitó a una chica con un nombre agradable Alla, y bailamos con una composición bastante agradable.

"Entonces, ¿con quién trabajas, Michael?"

Esta pregunta siempre surge en el curso de la comunicación, a veces antes, a veces más tarde. Y siempre dudo qué decir. Porque si digo que soy programador, la relación terminará rápidamente.

Y no es que las chicas traten mal a los programadores. Todo es exactamente lo contrario, especialmente recientemente. Las nueces financieras comenzaron a apretarse y el dinero fácil comenzó a desaparecer gradualmente de la economía. Para las chicas quedó claro que en TI son ingeniosas, confiables, no están muy limitadas por problemas materiales y, por lo tanto, no son hombres codiciosos.

Generalmente no se trata de programadores, sino específicamente de mí.

Así es como va.

Soy programador.
- ¿Programador? - Los ojos de Alla bien abiertos. - Dime, esto es probablemente tan interesante. No entiendo nada en las computadoras.

Antigua como la recepción mundial, sobre la que escribió Carnegie, está sinceramente interesada y hablando con el interlocutor. Las chicas lo usan de buena gana. Por supuesto, funciona, y en contra de mi voluntad, doy un paso más hacia una noche solitaria.

- ¿Qué piensas Alla, cuántas computadoras están trabajando en esta sala ahora?

Alla mira a su alrededor, su mirada se detiene en la computadora portátil del DJ.
- Bueno, un DJ.
- No tomaste en cuenta algo. Vamos a contar Hay alrededor de un centenar de personas en esta sala ahora. Todos tienen un teléfono celular. En un teléfono moderno, por regla general, hay 4-8 núcleos informáticos principales, 2-3 núcleos auxiliares, otro procesador para bluetooth y Wi-Fi, otro procesador sirve un módulo celular, dos procesadores criptográficos en dos tarjetas SIM, lo más probable es que haya un coprocesador para música, bueno, uno o dos para algunas funciones desconocidas. Total: un promedio de aproximadamente 15 procesadores por teléfono. Y la persona todavía tiene varias tarjetas bancarias, cada una con un procesador de cifrado, un brazalete de ejercicio o un reloj, y hay un par de núcleos, nuevamente el mismo bluetooth, auriculares inalámbricos ... Bueno, un total de 25 procesadores por persona es un número bastante honesto. Total obtenemos 25 * 100 - 2500 procesadores.
- Wow

Alla está intrigada. Aquí me detendría y transferiría la conversación en una dirección diferente. Pero ya sufrí.
"Pero eso no es todo". Todas estas luces coloridas alrededor están hechas por equipos de iluminación. En cada dispositivo de iluminación inteligente, al menos un procesador más dos o tres procesadores en el control de la luz, otros 20 procesadores en adelante. El sonido tampoco puede funcionar sin procesamiento digital: ecualizadores, amplificadores y 10 más. En la pared cuelga un par de televisores, otra docena de núcleos. Bueno, no te olvides de la sofisticada computadora portátil para DJ: creo que podemos agregar más 15 núcleos ...

Y aún más en el mismo espíritu ... Conocer a Alla se está moviendo hacia el inevitable final. Como regla, todavía logro decir que los programas para estos procesadores contienen millones de líneas de código. Que cada uno de estos procesadores ejecuta estos programas a una velocidad promedio de un millón a mil millones de operaciones por segundo. Que todos los procesadores están conectados por canales de alta velocidad y en un instante cada uno intercambia información entre sí, lo que equivale a una buena biblioteca.

Luego digo que los microprocesadores son los únicos amigos y ayudantes de una persona, con la posible excepción de un perro y un caballo. Alla finalmente concluye por sí misma que estoy loca y, bajo una excusa plausible, desaparece de mi vida.

No estoy loco Soy un programador que intenta ser sincero.

¿Por qué soy programador?


Me gustó desde la infancia. Y ni siquiera pensé que podrías convertirte en otra persona. No hubo experiencias dolorosas sobre vocación, preferencias profesionales, carrera futura y posibles ganancias. Era como si una corriente invisible me levantara suavemente y fuera cómoda. Este flujo fue tan amplio que el movimiento casi no se sintió, aunque ahora está claro que gracias a él superé una enorme distancia académica, que por sí sola no se pudo dominar.

Solo ahora estás comenzando a comprender aproximadamente el origen de esta extraña corriente. Justo en ese momento, la civilización estaba dando un gran giro. Quizás el más importante de su historia.

Más recientemente, la humanidad se entusiasmó con el espacio. Mi padre se convirtió en ingeniero de aviación. Todos los ojos estaban fijos en el cielo. Todos captaron las señales de los satélites y las sonrisas de los astronautas. Lunokhods, vuelos de sondas a Venus y Marte. La nebulosa de Andrómeda Efremov. Nubes magallánicas de Lem.

Y de repente algo sucedió. El mismo Lem escribe a Cyberiad. Todos hablan de inteligencia artificial, robots. Un hombre de repente dejó de mirar al cielo y comenzó a conectarse consigo mismo a través de canales gigabit. De la nada, un nuevo cosmos interno comenzó a aparecer, absorbiendo recursos humanos y, lo más importante, cautivando mentes y corazones. Este cosmos resultó ser no menos. Y lo más importante, era mucho más asequible. Era un espacio personal para todos.

Hay una razón más. Todos los adolescentes son instintivamente atraídos al poder. Todos tienen su propia comprensión de la fuerza, por lo que alguien va a la sección de karate, alguien va a las pandillas callejeras, alguien compra una motocicleta.

Sentí que el poder real está oculto en TI. Al presionar los botones en el orden correcto y mirar cuidadosamente los puntos en el monitor, TODO se puede cambiar.

Sobre el poder


Por lo general, sentía el poder de TI inconscientemente, pero hubo un momento en que lo sentí clara, clara e inequívoca. Esto sucedió cuando compré el primer reproductor de MP3.

En nuestra juventud, escuchamos a Tsoi. Lo escuchamos con entusiasmo, siempre y en todas partes. En su mayor parte, se trataba de grabaciones en cinta. Las grabadoras soviéticas masticaron sin piedad y borraron la cinta magnética. Nos copiamos unos de otros, de bobinas, de otras cintas, de donde pudimos. No había otra manera. Como cuidadosamente no guarda la película, con cada reproducción, la voz de Tsoi empeoraba cada vez más.

Y ahora, muchos años después, descargué el archivo a un reproductor de MP3 y Choi sonó en una calidad con la que solo podíamos soñar antes. Y lo más importante: con el tiempo, esta grabación digital no podría ser peor NUNCA. Este pensamiento cruzó por mi mente desde los primeros acordes que escuché. Sopló algo eterno.

Las ideas de la inmortalidad digital tienen más de un día de antigüedad. Y los problemas que enfrenta la ciencia en este camino también están bastante marcados. Es necesario tener un poder de cómputo salvaje incluso para los estándares actuales. Es necesario resolver los problemas de autoconciencia, eros, motivación, libre albedrío. No hay que tropezar con las paradojas de la clonación y la sala china. Todo esto es increíblemente difícil, casi imposible. Pero hay mucho en juego, increíblemente alto.

Mientras que TI todavía está coqueteando con la medicina y la biología. Hay una competencia falsa, que hará que la vida de una persona sea más larga y feliz. Mientras que la medicina es líder. Implantes, prótesis, células madre, hormonas, farmacología. Se gastan miles de millones en todo esto. TI voluntariamente pone un hombro y sirve. Pero después de la digitalización exitosa de la mente, todos estos bosques ridículos para el castillo de cristal de la conciencia desaparecerán en un instante. Farmacias, hospitales, moteles y laboratorios desaparecerán. Al igual que después de la llegada de los reproductores de MP3, la cinta y el vinilo han desaparecido en masa.

Y Choi nunca morirá de nuevo.

Sobre la fundacion


TI tiene poder, pero la TI en sí misma no cuelga en el aire. Se basa en la base de la ciencia. Creo que las únicas personas ante quienes los programadores deberían arrodillarse humildemente son matemáticos y físicos. Estos son tipos realmente reales. Se rompen en la realidad y luchan por los secretos de la naturaleza, no por la vida sino por la muerte.

:) Pero nosotros, protegidos de manera confiable de los peligros de esta batalla por el muro de nuestra propia ignorancia colosal, solo podemos adivinar qué tipo de corte está sucediendo allí. Podemos adivinar desde instalaciones militares como túneles de anillo de varios kilómetros y tanques subterráneos de mil toneladas. De acuerdo con extrañas fórmulas sangrientas, a veces volando desde detrás de una cerca, y similar a los hechizos antiguos. Y en libros de no ficción escritos claramente apedreados en minutos de una breve tregua.

Entonces, en uno de estos libros leí que resulta que cada vez más físicos se están alejando de la interpretación de Copenhague de la mecánica cuántica, utilizando el concepto del colapso de la función de onda. Y acepta la llamada interpretación de Everett, lo que implica la aparición de universos paralelos. Para la persona promedio, esto significa lo siguiente.

Por ejemplo, te gustan tanto Galya como Zina. Y no puede elegir con quién vivir la vida. De acuerdo con las últimas tendencias físicas, no necesita desesperarse. Y tienes que colarte en el laboratorio más cercano y, en absoluto secreto, al amparo de la noche, hacer el experimento clásico de pasar un electrón a través de dos rendijas allí. Al mismo tiempo, de pie frente al retrato de Schrödinger, preste el juramento terrible de que si el electrón pasa a través de la ranura A, le hará una oferta a Gale, y si a través de la ranura B, a Zine. Según los últimos supuestos científicos, esto es lo que sucederá. En el momento del experimento, el Universo se dividirá y en uno de ellos registrará el paso de un electrón a través de la ranura A y, en consecuencia, vivirá una vida con Galya. En otro universo, registras el paso de un electrón a través del hueco B y vives una vida con Zina.

Además, no será encarcelado por poligamia, ya que la policía, el tribunal y la oficina del fiscal también se dividirán y no notarán nada.

De todo esto, cualquiera puede tener un techo. Pero no con los programadores. Debido a que el programador ve en esto el principio de funcionamiento de la función habitual del sistema fork (), que se realiza en su computadora 10,000 veces al día. Además, ahora se ha puesto de moda bifurcar cualquier cosa, desde códigos fuente hasta clústeres. No te gusta algo. Dijiste crack-pex-forc. Y ya vives en tu propio universo personal. Y haz lo que quieras allí.

Estimados matemáticos y físicos. No nos menosprecies. Quizás somos uno de los pocos que realmente te entiendo. Que sea un poco a su manera, pero igual de profundo. Y con la misma admiración por el gran misterio.

Sobre la comprensión


Los programadores son generalmente personas inteligentes. Y pueden entender casi todo. Incluso las cosas más extrañas.

La naturaleza de las personas es incomprensible. Al principio inventan cosas inexistentes por aburrimiento. Luego, con un esfuerzo gigantesco e increíble de la mente, se obliga a creer en la realidad de estas cosas inexistentes. Luego, manifestando los milagros del heroísmo viven según las leyes de estos mundos extraños.

Casi siempre, estas alucinaciones son colectivas. Para apoyar la ilusión, las personas se reúnen para festivales, renovaciones, conferencias, juegos de rol y otras reuniones. En estas condiciones, la mente finalmente se rinde, acepta las reglas del juego y capta el zumbido de nuevos acertijos y paradojas lógicas.

Los programadores son generalmente las mismas personas y, por lo tanto, se comportan exactamente igual, con una pequeña excepción. No necesitamos hacer estos esfuerzos titánicos para la imaginación, la visualización y la fe en lo que está sucediendo. Todo el mal que solo puede aparecer en la imaginación de las personas realmente existe en los sistemas de software. Y además, no solo existe, sino que también presta servicio comunitario. Es difícil encontrar un concepto que los programadores no utilicen como metáfora para crear código de programa.

Ángeles, demonios, átomos, objetivos, amos, esclavos, amos, magos, colas, listas, hadas, escritores, lectores, semáforos, guardianes, constructores, destructores, constructores, destructores, fábricas, mundos, generadores, iteradores, conjuntos de estructuras, estructuras de matriz, punteros inteligentes, punteros estúpidos, recolectores de basura, recolectores de basura, puertos, puntos de conexión, hilos, hilos, padres, hijos, eventos, suscriptores de estos eventos, directorios, decoradores, controladores, modelos, analizadores, formularios, arañas, oyentes, patrones, codificadores, decodificadores, codificadores, decodificadores, cerraduras, llaves, abiertas, cerradas, divididas, señales, ruidos, trozos, tapas finales, sustitutos, sustitutos, ...

Esto se llama programación orientada a objetos.

Sobre buen software


En general, soy fanático de OOP. De alguna manera sucedió que cuando comencé a programar era el enfoque más avanzado. Ahora me aseguran constantemente que es mucho mejor volcar todo el estado del programa en un gran cadáver inmutable y luego burlarse de él con la ayuda de funciones puras. Algo me impide creer que este es el mejor enfoque. Al menos para sistemas bastante complejos. Aunque tal vez solo estoy envejeciendo, y estas personas tienen razón. Porque obtienen cosas realmente hermosas.

Cuando habla de calidad en TI, llega a la conclusión de que no se trata de plataformas, tecnologías y lenguajes de programación. Se trata de personas. Y el hecho de que todas las cosas grandes y bellas se hacen solas y en silencio, y todo lo feo y podrido se obtiene como resultado de la votación y el consenso.

Cuando veo un producto bueno y confiable, detrás de él siempre veo la imagen de una sola persona, pero apoyando la causa con todo mi corazón. Puede ser un programador, ingeniero, científico, gerente o incluso el jefe y propietario de la empresa. Por la noche, no puede quedarse dormido de ninguna manera, pensando en la solución más efectiva y hermosa para el problema. Luego, cansado de pensamientos, se duerme ansioso, pero después de un tiempo salta de la cama y escribe algo en un pedazo de papel. Y entonces aparece una idea que cambia el mundo.

Entonces surgió el lenguaje Pascal, cuando Wirth y su asistente escribieron el compilador Pascal EN EL MISMO PASCAL y HANDS aplicó la fuente del compilador a sí mismo. Aquí hay una historia verdaderamente mística, como la de Munchausen, que se tiró del pelo del pantano.

O la historia del lenguaje Java, que cambió para siempre el panorama de la programación, luego asumió todo el horror del desarrollo empresarial y aún lleva todo esto con honor. Comenzó con el hecho de que varios ingenieros de Sun fueron llevados a una pluma con estúpidas soluciones técnicas y organizativas.

Se pueden encontrar buenos ejemplos en el software de aplicación y en los gadgets que le dan una sensación de belleza y fiabilidad. Tuve un Nokia-E51 por algún tiempo. No diré nada más, quién sabe, él lo entenderá. Me quito el sombrero ante aquellos que no dormían por la noche e hicieron esto bien.

Sobre mal software


Cuando veo un producto malo, defectuoso e incómodo, a veces me parece Junior, dando los primeros pasos en la programación real, y tal vez no me inspire la idea de que todo necesita ser probado. A veces, un gerente de producto novato, cuyo primer panqueque sale grumoso debido a la falta de experiencia. Estas son todas situaciones normales. Pero mucho más a menudo aparece una imagen completamente diferente para el ojo interno.

Parece que todavía no es una figura financiera vieja pero cansada que, para algunas deudas, consiguió una compañía de TI. Las cosas en esta empresa de una manera y otra, ni temblorosas ni rodadas. Y ahora se sienta en un restaurante de élite, escoge un palillo de dientes con implantes y lentamente piensa: ¿es posible extraer un par de cientos de miles de dólares de esta pobre potra o aún cambiarlo por una participación en una cadena de hipermercados? Decide tomar el control y envía una carta desde su teléfono inteligente, con una orden para aumentar las ganancias, reducir los costos y todo eso.

Los gerentes de esta compañía se presentan, dividiendo heroica y simultáneamente prosaicamente un presupuesto con fugas, presionando simultáneamente entre sí lo que ya sucedió o se supone que es responsabilidad.

En general, los ingenieros buenos y talentosos parecen estar, pero muy cansados ​​de los plazos y los recados sin sentido de nadie.

Hay tantas de estas personas que se funden en una masa gris sin rostro que pasa a la velocidad de un avión. Pero si quiero, puedo detener esta película loca en cualquier fotograma, mirar a los ojos de todos y preguntar ... Qué preguntar, no lo sé. ¿Y quién soy yo para preguntar?

Después de todo, soy uno de ellos.

¿Dejar de programar?


Pero incluso a veces se encuentran en condiciones muy incómodas, los programadores no abandonan la programación. Por lo tanto, además de la depresión empresarial, hay ALGO. Y esto es ALGO que no cambiarán por nada.

Mis amigos a menudo ofrecen relajarse en la naturaleza e invitan a cazar o pescar. ¿Cómo puedo reírme, pero siguen insistiendo?

- Vamos, Michael, eso es genial. Después de atrapar las primeras picas, no serás arrastrado lejos de la caña de pescar. ¡Simplemente no entiendes qué es la emoción de la caza!

Solo lo entiendo. NO ENTIENDEN lo que sucede casi todos los días en la pantalla de mi computadora.

Encontrar un error en un programa se siente como cazar una bestia. Pero solo mucho más interesante. La diferencia es que la búsqueda de una bestia electrónica va en el espacio de los estados, y es mucho más grande que un bosque ordinario. Incluso un kilobyte de memoria puede producir un espacio mayor que el número de átomos en el universo. Y el programa puede contener hasta varios millones de líneas. Solo ahorra que el cerebro humano tenga aproximadamente el mismo espacio de estados. Convergen en la batalla: el cerebro y el código del programa, y ​​quién ganará, nunca se sabe.

Pero el cerebro no está solo, tiene aliados. El primer aliado son las herramientas. Programas que lo ayudan a investigar, depurar y descifrar otros programas. El arsenal de cazadores electrónicos lo tiene todo. Y trampas donde el juego imprudente puede llegar. Y los radares que recorren el espacio de los estados en busca de presas. Y un tamiz fino a través del cual puedes tamizar cada grano de arena en el bosque electrónico. Y un cronómetro que mide cuánto tiempo y qué bestia gasta sin fuerza. Y un pionero que verá incluso las pistas más débiles en los campos de la memoria electrónica. Y una bandada de galgos virtuales, arrinconando el error.

El segundo aliado son las reglas que todos los programadores están obligados a seguir, incluso los hackers más maliciosos. Puede crear una mina que no funcione de acuerdo con las reglas, lo que engañará incluso al zapador más experimentado, pero entonces hay una alta probabilidad de explotar en usted mismo. Todo sigue las reglas y siempre, de lo contrario no puedes sobrevivir en este complejo mundo. Esto es ridículo, pero incluso hay reglas para cifrar información, y no solo reglas, sino estándares, ¡y todos los siguen!

No hace falta decir que un mar de adrenalina y no electrónico, pero el verdadero aparece en la sangre de un cazador. Superas un error y lo arrinconas. Luego corrige un par de caracteres y el programa funciona correctamente. Código malicioso destruido. El error que ha afectado a las personas durante tanto tiempo se ha solucionado. Este es un sentido incomparable de victoria ... Es una alegría real, pura e interminable ...

Tarde sin Alla


Soñando y sonriendo al vacío, me tropiezo en los escalones de la escalera. Detrás de los delirios, el camino desde el club nocturno parecía muy corto. El porche huele a humedad. Entro en el apartamento y me siento en el bordillo del pasillo. Es una pena que no haya pasado nada con Alla. Me gustó ella Pero tal vez la volvamos a ver.

Por alguna razón, de repente se puso triste. La locura en el trabajo en su desarrollo regular adquirió otra altura, cuya existencia muchos ni siquiera sospechaban. Y recientemente, con dinero, de alguna manera no es muy. ¿Se puede dejar todo, comenzar a vender ventanas de plástico y vivir sin estas preocupaciones?

Glance cae sobre la computadora, que es ligeramente visible a través de la puerta. No espera tal traición. El infierno !!! Mientras tenga suficiente dinero para un pedazo de pan y un sorbo de vino, y mi computadora para electricidad y una actualización, esta magia continuará.

Me siento en una silla y tomo un par de sorbos de la botella. Presiono el botón de encendido. El calor se propaga por mis venas y pulsa a través de los autobuses de la computadora. Ahora estamos con la computadora, una. En alumnos ligeramente ampliados, se reflejan los mensajes del cargador del sistema. Vamos !!!

Y caigo en un espacio personal sin fin ...

(continuará)

Source: https://habr.com/ru/post/es425421/


All Articles