El document de "La Joia de Programar amb Dave Thomas" resumeix la conversa amb Dave Thomas al podcast "Happy Path Programming" sobre diversos aspectes de la programació.
La joia de la programació per a Dave Thomas rau en la realització d'una idea o en lliurar alguna cosa, idealment amb un toc distintiu. La necessitat és el motor principal de la seva exploració en la programació, gaudint de buscar múltiples solucions i trobar la "correcta". Compara la programació amb la feina d'un poeta construint "castells al cel", destacant la capacitat única de la indústria per crear des de zero. També ressalta la resiliència davant la fallada com a característica dels bons programadors, veient-la com una oportunitat d'aprenentatge.
Pel que fa a l'impacte de la Intel·ligència Artificial (IA), es mostra escèptic sobre la idea que reemplaçarà completament els programadors, assenyalant les possibles limitacions actuals en la generació i prova de codi. Subratlla la importància de la flexibilitat i l'exploració contínua per part dels programadors.
Dave Thomas expressa una crítica a la programació orientada a classes i defensa els paradigmes funcionals. Argumenta que la gent practica "programació orientada a classes" en lloc de la veritable programació orientada a objectes. Critica l'ús excessiu de la herència.
Feature | Using Inheritance (extends Vehicle ) |
Using Composition (implements Movable ) |
---|---|---|
Code Structure | Forces everything into a single hierarchy | Each class is independent |
Flexibility | Hard to add new types | Easy to add new vehicles |
Inheritance Problems | Multiple inheritance issues | No inheritance problems |
Readability | Unnecessary properties (e.g., speed for a boat) |
Each class defines only what it needs |
Sobre el Manifest Agile, Dave Thomas considera que la part més valuosa són els quatre valors inicials, que són oberts a la interpretació i representen preferències, no regles. Lamenta com Agile va ser convertit en processos comercials rígids, perdent l'esperit original d'adaptabilitat. Creu que s'hauria de donar als desenvolupadors autonomia i temps per pensar en el seu treball. Critica la tendència a buscar la novetat en tecnologies en lloc de la resolució de problemes reals.
Pel que fa a l'arquitectura de software, proposa un enfocament "agile": començar amb la solució més senzilla possible per obtenir retroalimentació primerenca. Emfatitza la importància de desenvolupar codi aïllat. Sugereix acceptar les decisions dels altres sobre "qüestions religioses".
Finalment, destaca la importància d'entendre les necessitats reals dels clients, distingint entre "vull" i "necessito". Valora un enfocament iteratiu amb entregues primerenques. Qüestiona si la solució sempre és crear software personalitzat. Reflexiona sobre el valor de les interaccions humanes. Menciona l'ús de la IA per refinar preguntes.
En resum, la conversa amb Dave Thomas ofereix una perspectiva reflexiva sobre la programació, emfatitzant la joia, l'exploració, la flexibilitat i la comprensió de les necessitats reals. La seva defensa de la programació funcional i la seva crítica a la programació orientada a classes conviden a la reflexió. La seva perspectiva sobre el Manifest Agile recorda els valors fonamentals d'adaptabilitat.
Cap comentari:
Publica un comentari a l'entrada