I've tried all (46 😵💫) AI Coding Agents & IDEs
[Factory, Cursor, Heyboss, Windsurf, Emergent, Wrapifai, Copilot, Lovable, Bolt, v0, Replit, MarsX, Canva, Devin, Github Spark, IDX, Stitch & more]
The most complete list ever made (with demos & notes):
The best way to organise software development is to do it in small teams of people. If you are building big software, you may need many small teams, and then it still won’t work if these teams need to coordinate their work all the time.
Agency > Intelligence
I had this intuitively wrong for decades, I think due to a pervasive cultural veneration of intelligence, various entertainment/media, obsession with IQ etc. Agency is significantly more powerful and significantly more scarce. Are you hiring for agency? Are we educating for agency? Are you acting as if you had 10X agency?
Grok explanation is ~close:
“Agency, as a personality trait, refers to an individual's capacity to take initiative, make decisions, and exert control over their actions and environment. It’s about being proactive rather than reactive—someone with high agency doesn’t just let life happen to them; they shape it. Think of it as a blend of self-efficacy, determination, and a sense of ownership over one’s path.
People with strong agency tend to set goals and pursue them with confidence, even in the face of obstacles. They’re the type to say, “I’ll figure it out,” and then actually do it. On the flip side, someone low in agency might feel more like a passenger in their own life, waiting for external forces—like luck, other people, or circumstances—to dictate what happens next.
It’s not quite the same as assertiveness or ambition, though it can overlap. Agency is quieter, more internal—it’s the belief that you *can* act, paired with the will to follow through. Psychologists often tie it to concepts like locus of control: high-agency folks lean toward an internal locus, feeling they steer their fate, while low-agency folks might lean external, seeing life as something that happens *to* them.”
We have to take the LLMs to school.
When you open any textbook, you'll see three major types of information:
1. Background information / exposition. The meat of the textbook that explains concepts. As you attend over it, your brain is training on that data. This is equivalent to pretraining, where the model is reading the internet and accumulating background knowledge.
2. Worked problems with solutions. These are concrete examples of how an expert solves problems. They are demonstrations to be imitated. This is equivalent to supervised finetuning, where the model is finetuning on "ideal responses" for an Assistant, written by humans.
3. Practice problems. These are prompts to the student, usually without the solution, but always with the final answer. There are usually many, many of these at the end of each chapter. They are prompting the student to learn by trial & error - they have to try a bunch of stuff to get to the right answer. This is equivalent to reinforcement learning.
We've subjected LLMs to a ton of 1 and 2, but 3 is a nascent, emerging frontier. When we're creating datasets for LLMs, it's no different from writing textbooks for them, with these 3 types of data. They have to read, and they have to practice.
“Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.”
- Eric S. Raymond.
"[Many] computing pioneers, the ones who programmed the first digital computers, were women. And for decades, the number of women in computer science was growing. But in 1984, something changed. The number of women in computer science… plunged."
https://t.co/9qJwo2qk4I
Whenever you push a button and the light doesn’t come on there are 3 options:
• The button is broken
• The light is broken
• You didn’t actually push the button
I used to recommend this myself, but if everybody on the team is capable of taking on the Scrum Master role, why have one at all? That's just rote by-the-book Scrum for the sake of Scrum. I see no actual benefit. If you don't need an SM, you don't need an SM.
Continuous Integration means little, or no branching. Instead we continuously make small changes to Trunk (Master). If branches exist at all, they are tiny and short-lived - for a day at most.
Get my CI Top Tips here:
https://t.co/Ag7tcRas0q
You don't need to spend $10,000s to learn computer programming.
Harvard University is providing free computer science courses
Topics included
- Computer Science
- Data structures & Algorithms
- Software Engineering
- Web Development (JavaScript, HTML, CSS, SQL, Python)
Link 🧵
OKRs are meant only for empowered teams that are given problems to solve, not solutions to build.
Combining it with feature-oriented roadmaps is like trying to light a fire underwater. You kill the idea.
#agile#productmanagement