Insights

Software is Abstracting the World

Software is Abstracting the World

Almost a decade ago, Marc Andreessen penned the famous “Why Software is Eating the World” essay which was amazingly prescient. His arguments on why every company needs to be a software company becomes even more evident in our post-COVID-19 reality where companies like Amazon, UberEats and DoorDash are now considered essential services.

While I was mapping out the concepts around building software, I noticed a recurring theme across the world of bits and bytes. Almost everything is an abstraction of something else and this I believe, is the reason why software is bound to permeate across every aspect of our lives.

Don't just deliver features, develop capabilities

Don't just deliver features, develop capabilities

As a software engineer you should be no stranger to the word feature. You may be part of a feature team working on a user feature in your feature branch implementing a feature toggle, wondering what went wrong in the feature prioritization meeting that lead to this feature creep.

Features aren’t bad and they are in fact the primary way for a product to deliver value and benefits to the user. But features shouldn’t be the only lens you use when developing your product. By shifting your approach from delivering features to developing capabilities, you’ll be able to unlock a lot more from your sprints.

So what is a capability? I consider capability as the fundamental building blocks that makes up a feature. A feature may require a few different capabilities from your product to function. The same set of capabilities could also be packaged as different features to different users.

Don’t upscale your life, upgrade it instead

Don’t upscale your life, upgrade it instead

All of us aspire for a better life. And since you only get one shot at it so why not make it count. Given the opportunity, most of us would want our lives to be more purposeful and meaningful.

But in our capitalist and materialistic society, a lot of us fall into the trap of upscaling our lives instead of upgrading it. Rather than living better, we are living larger and that isn’t always better.

Entrepreneurship is a skill, not a job title

Entrepreneurship is a skill, not a job title

When I was younger, most of my friends including myself aspired to be doctors, lawyers and teachers when we grow up. Those were the only professions we knew then so it made sense that’s what we wanted to be.

If you pose the same question to kids today, a lot of them would want to be entrepreneurs and be their own boss. They want to start businesses and change the world for the better.

Some would argue that entrepreneurs are different than small business owners. Both of them start businesses and companies but an entrepreneur disrupt industries and aims for exponential growth.

War on our wallets

War on our wallets

What does the shipping container and the internet have in common? 

The shipping container made it possible to move goods around the world ushering the start of globalisation. Then the internet came along and enabled the free flow of information for the masses.

Together, they brought on the greatest threat to our wallets in human history. e-Commerce. 

Veges over pills

Veges over pills

In Ancient China, medicine and doctors played a very different role. Instead of paying for the cure, the Chinese paid the doctor to keep them healthy. They adopted a more preventive approach compared to modern medicine.

Doctors are paid only if their patients remain healthy. It’s like a monthly retainer that’s paused when their patients fell sick and resumed once they are healthy again. 

Even though everyone agrees that prevention is better than the cure, not many have the discipline and conviction to follow through. It’s just much easier to passively ignore the problem and fix it later, rather than actively trying to prevent it.

To game or not to game

To game or not to game

Back in high school, I managed to convince my dad to buy me a modem. The main reason I wanted it was to be able to play Command & Conquer together with my friends.

Gaming has been a big part of my life since my first computer. When I’m not learning how to code, I’m usually playing computer games. 

Most people including my parents view computer gaming as a form of entertainment. It’s similar to watching a movie or attending a concert. It’s what people do to have a good time. They are also great at dealing with stress.

The most important skill to learn in life

The most important skill to learn in life

The most common gripe about the education system is how bad it is at equipping our next generation with the necessary skills to survive in the workplace. 

It is common to see graduates, having spent more than a decade in school and college, lacking the know-how to manage their own finances. This is worrying as student debt continue to rise and youths are filling for bankruptcy on a daily basis.

But what’s even more important than being financial savvy, is the skill to manage your time wisely and effectively. Unlike personal wealth which may vary for each individual, all of us have the same amount of time to manage every single day.