Why I’m Learning PHP in 2019!

Maybe This Is Wrong, But I’ll Learn About Validating Ideas.

Victor Ofoegbu
4 min readApr 26, 2019

Background.

I’m a product designer and I’m developing a process for testing and experimenting with product ideas. I don’t see myself applying for engineering roles, so if you hope to, most of the advice here won’t apply to you.

Photo by Francisco Gonzalez on Unsplash (How I felt when I came to this realization)

I’ve done a lot of stuff that ended on my hard drive. At a time in my career, this was okay. Moving forward, being a product designer who knows only about design is bad for me. I want to encroach to other parts of the product; engineering, marketing, branding, etc with the goal of getting an overview of the end to end process of making stuff. I thought of choosing an engineering stack for my experiments. Here’s my thought process…

Simplicity.

Seriously, Why do people like complexity? When I turned to the internet for advice about choosing a stack, I got replies from a lot of people who’ve consumed blog posts about how Youtube and Netflix use NodeJs. These people would tell me not to use PHP because of speed, security and blah blah.

But why not JavaScript? You could do everything with JavaScript; backend, frontend, mobile, everything!

I went the MongoDB, Express, React and NodeJs (MERN) way. It took me 2 months to put up the product. Nobody used it. This was crazy because it was supposed to be an experiment. I had to run MongoDB on Atlas, use Linode for Nodejs. Together, they were up to $15 monthly. It was simply crazy and time-consuming.

I thought about what experiments would mean for me moving forward, and PHP turns out to be the best option (LAMP). Most of the experiments would require 2 .html files and a few backend logic. Most of them would fail, I don’t want to get attached to anything. In plain English, I want to easiest way to set up a server (I can drag and drop files on cPanel) and test an idea on a weekend.

Besides PHP hosting is cheap and I could purchase a plan that allows unlimited hosting of projects. Super game changing😂.

I DON’T WANT TO BUILD THE NEXT FACEBOOK!

Most product people follow decisions of large scale companies who face different problems. The problem with this approach is that it takes away time from doing the important things (Talking to customers & execution).

I only want to build apps that’ll serve hundreds of people monthly for the next few years. It won’t need high throughput, it won’t serve millions of users (90% of apps won’t), consumers don’t even care if you used JamStack or Webflow. So why should I try to optimize a system that doesn’t work?

Speed won’t help me validate ideas.

What’s the need of having a blazing site if no one uses it? If someone is saying PHP is slow, they don’t use it and it’s more likely they haven’t looked into the awesome work done on PHP7.

Premature optimization is the root of all evil. — Donald Knuth.

The real world engineer wants a product that matches their engineering taste from day one (Which for the most part, is complex).

…A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over with a simple working system. — John Gall

If all these happen eventually, everything can be rewritten. I think they call this the just in time method. A lot can be learned by starting simple and doing things only when needed.

Engineering not equals Value.

Hundreds of sites will be slower than Wikipedia and still get millions of paying customers. If engineering is valuable to you, it might not be as important to your customer. Customers won’t ask how you did it, just take their money and do it well. It’s easy to get lost in all the awesome stuff on the engineering side. Remember, you’re not solving an engineering problem. It’s a people problem.

It doesn’t really matter.

But seriously, does it matter how I get my first users? For the first year of building anything, the simple things will work well; lists, docs, etc. Only a few percentages of ideas will move to the point where they’ll need to “spawn multiple child processes”. The larger percent won’t take off the ground, and engineering will be the least multiplier of value.

…What you learn is as tangible as the product itself, but much more valuable because that’s your future. — Johny Ive.

If the most important things are what I learn about a group of people or markets, then for me, it’s more important than engineering or design.

This is a letter to myself in the future and if you resonated with it, then we share a lot in common. You should stick around for awesome stuff I document every Friday.

Prev

Next.

  • PWAs are the best things to happen to the internet.
  • My affair with Typography.
  • History can help us live twice.

--

--

Victor Ofoegbu

Product-Focused Software Engineer. Learning to design & build digital experiences