@kaifulee Jeannette Wing, who co-developed the Liskov Substitution Principle. Leader in formal methods research. Head of @SCSatCMU 2004-2007 and 2010-2012.
When I started Akita, we had an office and people loved coming in.
In 2020, I pivoted almost my entire team. A big part of it: finding people who worked well remotely.
What I learned about remote vs in-office: they require VERY different cultures. You can't just flip a switch!
🧵/
Before 2020, I had my biases about offices.
To me, the office was an essential character in every story of innovation. I believed that every early-stage startup needed to be colocated to make it.
How else could you build trust? How else did the magic happen?
2/
Then the pandemic hit. I was early to tell my team to stop coming to the office.
As first, my belief in offices became a self-fulfilling prophecy.
We tried to collaborate. We tried to socialize. Nothing was the same; nothing was working. I parted ways with a lot of my team.
3/
When ChatGPT came out, I was excited about the ability to prototype with AI. Everyone now has an ML team at their fingertips!
What I underestimated: how much ChatGPT is a *UI* prototyping tool.
Quick thread about how our team prototyped 4+ new capabilities in < 1 week. 1/
At Akita, we’re building the fastest time-to-value monitoring solution, helping teams get set up to find and fix any API-related issues in under 30 minutes.
We do this by passively watching and analyzing API traffic. This means we’ve got a ton of data about our users’ APIs. 2/
As we’ve been building out our product, a major bottleneck was doing something productive with all the API data we collect.
Before ChatGPT, every new capability required building a new analysis in the backend AND new frontend support. This was a lot of work per capability! 3/
Today, software is more like a rainforest rather than a planned garden. Code bases are more complex than ever before; the rise of SaaS and APIs means prod is the only source of truth.
But dev tools haven’t caught up.
Dev tools need a ChatGPT makeover. Here’s what I mean.
1/
Software engineering used to be about writing self-contained code.
Today, most software engineering is about making assumptions about how the mess of reality works, trying your best to code against that, seeing how things shook out, and repeating until it all works.
2/
But while software engineering has become more like archeology or biology than engineering, most dev tools don’t help with that part.
Dev tools continue to focus on what is traditionally considered software development: writing code, reading code, and running tests.
3/
I was @AdeetiU's guest at an MIT alumni event focused on MIT EECS's initiative to increase gender representation among grad students.
Afterward, we talked about how intimidating was to be a young woman in a male-dominated field.
In case it helps others, here's what helped me.
@AdeetiU There's a lot of advice for women not to get talked over, to get a seat at a table, etc.
What was most helpful for me was to realize that a lot of gender differences are cultural differences. They're often not personal and they're often not consciously discriminatory.
A book I found really helpful for navigating predominantly male environments was Georgetown sociolinguist Deborah Tannen's book /Talking From 9 to 5: Men and Women at Work/.
It helped me pick up a few patterns that helped me more easily establish rapport and get listened to.
Upon popular request: skincare products as developer tools, a thread.
Starting with CeraVe Facial Moisturizing Lotion with SPF as a linter. One of the highest-leverage, lowest-cost things you could invest in. Prevents headaches and slows down aging.
People often think you need to do heavyweight static analysis for code correctness, when simple static type-checking can go a long way.
Similarly, you usually don't need a harsh heavy-duty cleanser; a lightweight oil one is enough.
Next: Simple Cleansing Oil as TypeScript.
In both skincare and in dev tools, you should make your products work for you as much as possible.
A good way to do this: invest in a good night cream the same way you invest in a good automated testing framework.