Abundant software, uncertain economics

Will software remain valuable? Will software development remain a valuable trade? What about software companies? These questions often get muddled up. Here is my attempt at looking at them separately.

There has been a lot of speculation about the future of software development and knowledge work recently. I have been a software developer for 10+ years and ran a venture-backed SaaS startup for 4+ years that got acquired. Naturally, I am trying to make sense of it all.

The craft of software scoping

AI has made software significantly faster to build but human judgment remains critical. Here are some principles that helped me go from vague problem statements to precise solutions, often with limited resources and plenty of ambiguity (aka startups).

As an engineer or a product lead, you have been asked:

Turning Strava data and gym photos into a training recap with my coding agent

Strava’s metrics alone couldn’t tell the story of my training, because important context lived in photos of my gym’s whiteboard. Here’s how I combined Strava data with a coding agent’s vision layer to build a half-year-in-review infographic.

This has been a good year so far with respect to my workouts and running routine. That’s why I wanted a nice half-year-in-review infographic. That’s all.

Debugging in the age of agents

Coding agents can hand you a confident, detailed, and wrong explanation backed by persuasive evidence. The craft of debugging - building hypotheses, gathering evidence, and knowing a system’s internals - matters as much as ever.

A junior engineer once asked me how I had pinpointed possible causes for a bug introduced by code changes I hadn’t worked on. I was surprised by this question at first and didn’t immediately have a great answer. The best I could come up with was that this ability was developed with practice, pattern recognition and awareness of involved systems.

Four years a founder - Time

Learnings and anecdotes from four years as a startup founder - timing matters, accept the past and good things take time.

Note: This is part of a series of blog posts which are descriptive rather than prescriptive. Don’t consider them as advice.

Lessons from building an AI feature that works - chunking and summarization

Lessons from creating a successful LLM-based feature for breaking down and summarizing user interviews, emphasizing how we nailed it by focusing on context, user feedback, and the right balance of AI and user experience.

It’s been over a year since my team at Looppanel shipped our first LLM-powered feature. We have added more such capabilities since then but the first one taught us some lessons that are worth sharing.

Brief lessons from using LLM APIs in production

Lessons that can help you when using large language models (LLMs) in a software production environment

One day, I will write a nuanced post about using large language models in production. It will be better than all the nuanced posts published so far about using large language models in production. Until then, here are some brief lessons learnt from building and operating LLM APIs in a production environment for the last 6 months.

Beyond Utility - The Role of User Experience in Enterprise Software

Frameworks to think about role of user experience when creating enterprise software

During the first 2-3 years of my career, I used to think that enterprise software can get by with average UX (user experience). I don’t believe that anymore. It depends a lot on the type of work the end-user does. The extent of involvement of managers and executives also plays a part.

Understanding the state of natural language technology through a project-first approach

Blueprint to understand recent advances in natural language technology in a hands-on manner. Topics covered include transformers, language models (BERT, GPT-2), evaluation benchmarks, and conversational interfaces/chatbots.

In early June 2020, I decided to learn about the current state of NLP and correspondingly, role of (narrow) AI. My usual approach to understanding a topic is bottom-up. Understand the fundamentals thoroughly before starting out with a project. Constrained by time and inspired by a pedagogy promoted by the likes of Fast AI, I decided to go project-first instead.

Pagination