Ayer me entregaron este reconocimiento en el DC de FCEyN/UBA @ComputacionUBA
Hace más de 25 años que soy docente, ni yo lo podía creer!
¿Por qué lo hago? Porque creo en mi país, quiero una Argentina mejor y se que la única manera de lograrlo es con educación de calidad
Gracias!
My project has 39,205 lines of code, and Cursor can't answer questions about it.
Cursor's context seems to be capped at around 10,000 tokens. Unfortunately, this is not enough for any decent-sized project.
If you have a large codebase, check out @augmentcode. This thing is faaaast!
I'm currently using their Visual Studio Code plugin, but you can also use them on JetBrains, Neovim, and even Vim.
(I'm a Neovim fan, but Copilot's implementation for Neovim is nowhere as good as Augment Code.)
Augment Code was gracious enough to sponsor this post.
After you install their extension and run it for the first time, it will index your entire codebase. This is why it can answer questions as fast as it does, regardless of the size of your codebase.
Augment Code supports chat and completions like every other AI coding assistant, but its killer feature is "Next Edit."
When you make a change, two things happen:
1. The model analyzes the change to determine the ripple effects across your *entire* codebase.
2. The model suggests everything you need to update to ensure everything works correctly.
This is pretty wild!
El martes cumplí un sueño y me junte con el más grande de todos, Alan Kay.
Como siempre, hablamos de todo, es sin duda uno de los grandes pensadores de nuestra época.
¡Gracias Alan!
Conceptual compression in @nextjs.
We're moving to a world in frontend where you don't have to think about "three letter acronyms". Just fast or slow.
✅ await getData()
✅ "use cache" lifetimes
❌ SSR
❌ SSG
❌ ISG
❌ ISR
❌ DSG
❌ ESR
❌ Edge runtime
Even "PPR" (Partial Prerendering) is just a thing that's automatically there, like CXX compilers doing constant folding.
If you're an expert that's optimizing (perf & cost), you still get devtools view of what's getting inlined statically vs computed and streamed on-demand, but most users will just enjoy a simpler world 🫡
Some engineering principles I live by:
✓ Make it work, make it right, make it fast
✓ Progressive disclosure of complexity
✓ Minimize the number of concepts & modes
✓ Most 'flukes' aren't… your tech just sucks
✓ Feedback must be given to users instantly
✓ Maximize user exposure hours
✓ Demo your software frequently to fresh eyes
✓ Sweat every word of product copy you render
✓ You're never done working on performance
✓ You're never done. Software ages like milk, not wine
✓ Visualizing traces of time is the best way to optimize it
✓ Ship frequently and strive to build in public
✓ Errors must have globally unique codes & hyperlinks
✓ Red is not enough to signal "error" (8% of men have red-green color blindness)
Functional programming, object programming, and structured programming are all just techniques to aid the organization of code. In any project of moderate size all three will be necessary. The three are synergistic. Together they are better than when kept separate.
@VaughnVernon So, there is a preference to generate value object for you? Like, one over the other? (For instance: Encourage to use Closed over semi-closed design technique)
@HernanWilkinson@unclebobmartin I learn most of my OOP concept from @HernanWilkinson many years ago, and also read many times your book Bob, I would like to highly recommend you bob to check what Hernan did with London vs Chicaco and Buenos Aires
@unclebobmartin that also breaks encapsulation, as do Document and Subscription.
We analyzed that code in a webinar where we presented an alternative solution.
Here is the repo with our solution: https://t.co/qn8DUBbjRV
and these are the statistics comparing the three solutions: 3/n
@unclebobmartin mutable objects all the way, things called "use cases", etc, in short abstractions that do not represent anything... clearly you do not understand what modeling is and the importance of the mapping between what you understand of a problem and how to represent it.
@unclebobmartin It's funny that someone who talks about PRINCIPLES when they are not and combines them to get the word SOLID, complains that others do marketing 🤷♂️
But you are honest in saying that you never understood it, we can see that in your designs where you use anemic classes, 1/n
I've never liked the idea that OOP is a modeling technique. The phrase "model the world in objects" has never made much sense to me. The early OO books that showed pictures of airplanes and sailboats were laughably naive. I always viewed that as marketing doublespeak.
OOP is a partitioning and decoupling discipline. Nothing more. Nothing less.
For those who didn't hear, I'm releasing a TypeScript book!
16 chapters, from setting up your IDE to understanding generics. Everything you need to ship a TS application FAST.
Oh yeah, and it's going to be free online.