Awhile back I wrote The Forty-Year Programmer. You can think of it as my declaration of programming as art, not business. It’s about taking your time and getting good gradually over many years, which works great for art, but often badly for your career.
Today I want to talk about the differences between programming-as-art and programming-as-business.
Caitlin Quinn recently started learning programming, via The Odin Project, to help her communication with software developers on her projects. She and I talk about what The Odin Project does well, what you’ll need to do for yourself, how you can tell if you’re doing it right and more.
In the age of using internet sites for important things – communication, say, or banking – we’ve grown status pages, to let companies know whether their service is currently working.
In fact, a lot of companies started growing external status pages, so other people could tell you whether their site was working. That’s a lot of what let status pages happen at all. If you don’t provide it, somebody else will.
Why is it so bad for somebody else to provide that? What’s different about a company’s official status page?
As I write this there’s an ugly Discord outage which is barely acknowledged on their status page, so it’s a great time for me to talk about that.
Tech companies are recent. They also tend to die quickly. If you wanted your tech company to last awhile, how would you do it?
That’s one of those “selling yourself short” questions. If you wanted your company to last awhile, how would you do it? Tech companies don’t last long.
Let’s talk about what counts as “long” and why modern-style companies die much, much faster.
The oldest companies in the world have a few things in common, but the big one is being about their mission, most commonly supporting their family. Why? Well, companies constantly set short-term targets. You have to balance the short term against the long term, and companies are terrible at that. One trick to avoid that is to stop working for Q3 profitability and start working for your children and your grandchildren.
This is a scathing indictment of companies, if you want to do anything long-term.
In fact, even tech companies recognise this and try to work against it. That’s how obvious it is.
I can talk about keeping software working and why we care and theorise all I like. But normally people have something decent working on the ground long before the theorists catch up. What’s working on the ground? How do we currently keep software working?
I’m writing this with an eye toward individual software developers keeping things working by themselves, which says a few things about methods and budget. So let’s look!
We use many methods, with many tradeoffs. And we all use a mixture of them.
Sometimes folks will tell you to think about your value proposition –
what actual benefit you bring to the table – as a software developer.
That could be to negotiate your salary,
interviews or promotions. It could be as a freelancer or consultant.
It could also just be a way to let you get included in a really cool
project (“hey, I can help you out!”)
So what’s your value proposition? What do you actually bring to the table?
A fellow recently asked me for advice about running a Ruby workshop. And folks, I had forgotten I knew so much about it before he asked!
Before Rebuilding Rails had a video class, I had written a lot of the material for Rebuilding Rails workshops that I gave at Southeast Ruby and at Railsconf. I...
I’m mentoring a very pleasant fellow who would like to get his Ruby resume in order and get hired in Rails. He asked me, “how important is a presence on social media, just to find a role?”
Here’s roughly what I told him.
With your tech stack, you’ll want a specialty — in his case, Rails. But you...
Subscribe to get free ebook chapters and an emailed coding class now, plus videos and articles a few times a month.
Why this specific newsletter? You want to be an expert. Expertise comes from learning the fundamentals, deeply. And that comes from the best kind of practice.
I write with that in mind. I won't waste your time.
(Yes, I also sell things. They're good, but I'm fine if you don't buy them.)