Intended Audience—Indie no-code developers, digital marketers and other non-tech professionals working in tech

I made a resolution for 2024 to learn Ruby on Rails, a controversial web development framework famous for maximising developer productivity. In the business of building and growing products, I wanted to be a self-taught developer

Sketch inspired by Henrik Kniberg's presentation on cursor.sh

The goal behind my trite, cliched new-year resolution was to get to a point where I could build apps in a weekend. I have been day-dreaming about a state where—I get a shower-thought, I write code, and in 2-3 hours, I have a production-grade software that’s ready to roll. An end goal of shower-thought driven software engineering was my final objective.

After a brief affair with no-code apps where I tried to achieve this agility (Bubble, Softr, Glide, Framer), I realized that most of these apps were platform-dependent. You couldn’t export your code. You had more lock-ins, and lesser customisations. It was this meme all over again:

I realized that hard-coding was the only way. So I dived deep into Ruby on Rails this year. And to ingest and digest it as much as I can, I’ve been racing past the Learn Enough tutorials by Michael Hartl for the last two months. I also ended up binge watching screencasts from Ryan Kulp’s Founder Hacker course for an added perspective. The first red-pill moment was when I built my first ruby script to solve my own scratch on making wikipedia imports into Obsidian easier, I started gaining more technical sophistication to make quick things and ship it for myself.

My progress in hacking my way around, learning about enough coding to be dangerous, and also racing through different steps of the web development (Git, IDEs, HTML, TypescriptCSS, JS, Ruby, Ruby on Rails) would have not been possible without asking the most stupidest of my questions to ChatGPT as a newbie, amateur, rookie developer.

From the Founder Hacker course, where Ryan Kulp builds a Ruby on Rails app live on Youtube

I’ve found bugs in the code, copied the error without understanding into ChatGPT and then again back to the IDE to make changes and see if it works. And I’ve realised that the barrier for designers to code and bring their designs to life is getting narrower over time. You’re literally ‘spellcasting’ to get your code out, by just chatting with the LLM. 

From tl;draw to Diagram and Galileo AI, we’re seeing instances where prototypes are being built at the speed of the ‘mouth’. Every type of programming becomes a conversational design piece – text to text, text to video, text to code, text to game, text to UI, text to 3D prints, etc.

Over time, I’ve realised that I am not actually learning Ruby on Rails. I’m learning a way to ask around and figure out in plain English. I’m building stuff by prompting. To name a few:

  • A simple web UI
  • A telegram chat for meal planning
  • Ruby on Rails UI components adapted to TailwindCSS

LLMs are the closest thing in the real world to magic, and prompts are the magic spells. Just like spelling wingardium leviosa, you’re typing carefully curated prompts. We’re seeing examples such as Promptbase where prompts are secret magic-spells being traded on the marketplaces. (I'd earlier shipped Prompt Hero to ride on this wave)

PromptBase | Prompt Marketplace: Midjourney, ChatGPT, DALL·E, Stable Diffusion & more.
Search 100,000+ quality AI prompts from top prompt engineers. Produce better outputs, save on time & API costs, sell your own prompts.

With the rise of LLM-backed coding assistants, I’m not even copy+pasting into ChatGPT questions anymore. LLMs are being tightly integrated into the codebases through these coding assistants. I’ve been recently using cursor.sh, an AI-native IDE. They can now read, explain code, document code, write code, autocomplete it, diagnose issues, and even perform arbitrary IDE tasks. Everything is pretty cool, right?

In the final stage of developer productivity, AI-native IDEs seem to be the direction where the world is heading. English is the hot new programming language, and I’ve been coding in English using these AI-native IDEs. 

We’re now seeing a new breed of design engineers, who could both design and ship code at the same time, improving the production cycle between building and shipping software.

It somehow seems like a great time for anyone, be it an architect, product manager, roadside cartoonist, sociologist, to be a design-engineer first. If all we need is english to code and build products, then who is stopping us? 

Everyone can now do shower-thought driven software engineering if all that’s needed is crafting good prompts.

Update: Devin enters the chat.
📫
The internet is best when strangers meet. Write to me at hey[at]shreyasprakash[dot]com