Fewer pipettes: Reflections on a web dev learning AI
Tags: ai, webdev
Published: 2023-05-04 20:14:26

I’ve spent the past few weeks digging deep into AI. It’s not the ChatGPTs and bots that I’m interested in – it’s understanding how the technology works and what it takes for the rest of us to integrate machine learning into our products.

We’ve been told for decades that AI was coming and it feels like, now, real progress is being made at unprecedented speeds. It’s a firehose of development, updates, information. It’s exciting, but also overwhelming. It feels like a new wave of tech has been bubbling and active for years and it finally burst open, breaking through to the masses.

But it’s not the headlines about how AI will make my day-to-day life easier that excites me. For me, it’s the potential for dev tools to make it easier for coders to use AI that’s raised my eyebrows. But I don’t want to just use AI, I want to really understand it, break it down, respect the fundamentals. Right now, the headlines are too full of buzzwords that we pretend to understand.

So I started on a journey of exploration. I figured with a solid background in web dev, the leap wouldn’t be too big. I was sure much of my skill set would carry over, would apply, and AI would be another branch on the tech tree, stemming from the same trunk, rooted in the same land. But this is not the same tree. It’s barely the same forest.

It feels like just a happy coincidence that both web dev and machine learning require coding skills – that both necessitate speaking to computers to get anything done, but it feels like that’s where the similarities end.

I always loved how user-facing web dev was. I make a screen, you see a screen. I make a button, you push a button. I make a form, you fill it out. AI is hidden, abstracted. My work is between me and the machine. I thought that would bother me, but there’s an intimacy in building this way that’s actually comforting. It feels almost safer to not have everything you do feel so exposed to the user. It’s just you and the code. At least at first, until you surface the results to your users. But I’m not there yet. I’ve got time.

But it’s not just the exposure that feels so different, it’s the experience of building. Building web apps always felt like creating a journey. You type in a url, it takes you to a page. You take that page in, you press a button, and you’re transported to a whole new place. It’s your job as the dev to figure out all the stops and activities along the way, but you’re crafting an experience, an adventure. Machine learning feels nothing like that. It doesn’t feel like building. It feels like being in a lab.

In a past life, I was a biochemistry research fellow. My team had a goal within an area we understood and we were using our knowledge to try to create something new. In our case, it was a new way to detect DNA. We had all these ideas of how we thought it could work, all these things we wanted to try to see if we could detect that DNA faster and with more certainty. We would experiment, fail, adjust, and try again. 

We spent months running experiments to take a step forward, other times, a big one back. We’d come up for air, look around at the developments that were happening to see if we could integrate new techniques to what we were doing. Sometimes we could. Most times, we had to work with what we knew and get more creative. It was tons of quiet iteration, having little to show along the way until a breakthrough had happened, a big step taken.

Building my little toy models have felt a lot like that -- trying, failing, adjusting, trying again -- tons of little iterations to get my tiny hot dog detector to detect a hot dog with a bit more certainty. 

I didn’t expect to relive my days in the lab, to be taken back to a time where it took a lot to do a little, but how good that little would feel. It’s a completely different paradigm, trying to get a model to make a good prediction. It feels like nothing from my coding background.

I wonder how my feelings on the two fields will develop, change over time, as I get deeper into the AI world. I wonder if, once I move into building something designed for someone else, some of that adventure creation will come into play, will apply. Until then, I’m happy to be back in my lab, with fewer pipettes and more screens, lost in a sea of quiet experiments.