Personal Software

Personal Software
Apple ][ with disk drives, Wikimedia Commons

I wrote my first significant piece of software back in 1979.  I had done some trivial things before that, but at that time, only cassette tape storage was available to me. Coding, saving, and iterating on software was painful – reading and writing to the cassette was slow and error-prone.  The Apple ][ disk drives launched in 1978 with a whopping 114K of storage on each side made it feasible to work on a larger, more durable project.

Oddly, the Apple disk drives motivated my work in the first place.  Most Apple ][ games required the presence of the original release floppy disk to operate as a form of copy protection – a copy of the disk would not work, the loader on the disk could detect if it was the original disk or not through a variety of methods.  And floppy disks were fragile and prone to failure.  And so you would end up with a game that wouldn’t boot because it couldn’t read the original floppy correctly.  Grr.

So I wrote a disk hex reader and editor.   It would read the floppy disk track by track, sector by sector, and dump the hex contents on the screen, and allow you to change any hex value and rewrite the floppy.   I used this to patch out the pre-loader and launch the game.  

As I recall, the program was only moderately successful, working on only a title or two with primitive copy protection.  As the market for commercial software grew, copy protection schemes became increasingly sophisticated, and I know I didn’t capture all this complexity in my program — I certainly never implemented half- and quarter-track reading, for instance.  

This code was only for me; I never intended to share or publish it. It was just for my personal use, and it scratched an itch I had.  

Software development was pretty straightforward back then. The scope and scale of the projects I undertook were small, and even the commercial software was pretty simple; the software market was still pretty small. Software development became more complex after 1979 as the scope and scale exploded.  And the organizations to build and deliver software became large and complex.  And the target markets became much larger and more complex.

Now we are having a great reset of software development and the software business. We are seeing massive transformation at the enterprise "top end" of the market — large systems written by professionals are becoming more token-intensive and less human-intensive, and we are reading daily about large shifts in employment, massive capital raises, boardroom drama, etc. This end of the market gets all the press.

But I get more excited about the personal side of software development, the "bottom" of the market. It is now far easier to write one-off personal apps for exactly your needs and your needs alone.    David Pierce on “the personal software revolution”: 

I have two theories about AI code:

- It’s mostly going to make professional developers more productive, not replace them

- It’s going to make it easy for all the rest of us to make apps that work exactly the way we want, and that is going to RULE

Boris Cherny's recent interview on software development echoes these points (or Pierce is echoing him), expecting an explosion in the number of people creating software solutions:

I don't think we're going to call them engineers. But if we talk about people writing code or using agents to write code, I think there will be 100 times more of them than there are today.

I feel a parallel to Feynman's "There's Plenty of Room at the Bottom", the most exciting and durable change is how AI is empowering individuals to create a large number of innovative and highly personal solutions.

Shorts:

The explosion in software productivity is going to create some interesting problems.  Here is a guy who needed a .edu email domain, and so he just mocked up an entire university web presence in no time at all.   How will we distinguish legitimate sites from high-quality mock sites that may be created for nefarious purposes?


Claude Code wired up to make it super easy to create Apple Shortcuts.  I use shortcuts every day, they are very personal software, and now they are going to be far easier to write.


The explosion in personal expression and personal software is not independent of the data center explosion: Thank God For Data Centers: These Gigavillains Are Bringing So Many Technologies Down the Learning Curve:

This is true for obvious things like GPUs, inference chips, and DRAM, but it’s also true for companies that you wouldn’t typically associate with AI data centers, like supersonic turbines, enhanced geothermal, modular construction, high-voltage direct current grids, solid-state transformers, silicon photonics, optical fiber, lasers, batteries, and nuclear.

Many of these technologies have the potential to be better and cheaper than the incumbent technologies they aim to replace, but they have been too expensive and unproven to compete. With backlogs in all of the traditional inputs to Data Centers, however, developers are willing to pay up for new technologies that can deliver fast, which gives them the opportunity to scale up and cost down.

And a not unrelated point: The case for clean energy abundance: It’s a good idea — and strikingly different from conventional environmentalism.

Subscribe to Tech Can Be Better

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe