I am maintaining this list actively.
I work day to day in software engineering where all everyone talks about is AI and it's impact.
### Biases
I am anti-AI when it comes to creative arts, music, entertainment etc.
I am generally middle of the road when it comes to AI use for productivity.
I read AI research papers, test out AI tools, and experiment with coding agents at work to give myself the opportunity of a fair assessment.
## Things AI Agents are contributing to software engineering:
- Generating [[AI Agents are great for tedious programming tasks|trivial and tedious]] code.
- Greatly improving [intellisense](https://code.visualstudio.com/docs/editing/intellisense).
- Maintaining dependencies.
- Maintaining and configuring CI pipelines, automation and bash scripts etc.
- Providing decent human-readable insights into stacktraces that then help me figure out a bug quicker. (Note - not actually fixing the bug itself or figuring it out).
- Saving ~10% of the time it took me to write some non-trivial code by offering me suggestions on what I might want to type next.
- Saving ~30% of my time doing some refactoring.
- Shortcutting documentation and note taking, particularly with incidents.
## Things AI Agents are not solving for software engineering:
- Working well with technical people.
- Working well with non-technical people.
- The inertia of big organisations.
- Co-ordinating and prioritising roadmaps.
- Making the hard decisions of what we work on now versus what we drop.
- Discovering the most valuable solution to a user's problem.
- Discovering the most pragmatic solution to a user's problem.
- Figuring out what "pragmatic solution" means within the context of the tech stack, code, problem space, stakeholder appetite and timelines.
- Innovative and novel approaches to existing solutions.
- Teaching a stakeholder to talk about their problem and not the solution they want.
- Pairing back a fully featured product to it's thinest slice of value.
- Managing the healthy tension between releasing today to create a small amount of value, and releasing next week with a more fully featured product.
- The "shower thinking" and "programmer's dream" divine inspiration.
- The knowledge you have built about the domain you work in.
- Knowing the "gotchas" that aren't described in code, or documented, but are inherent behavioural issues that occur when a new feature is introduced or novel interactions are seen.
## Things AI is doing
- Providing some productivity boosts in the programming portion of a software engineer's job.
- Distracting decision makers from identical value produced through cheaper, quicker, more deterministic, less carbon-intensive means.
- Making a lot of decision makers solution's tool first, not problem first.
## Things AI is not doing
- Being the best technical solution to every user problem.
- Replacing engineers.