As a software engineer, I spend around 80% of my "coding time" testing what I wrote. Even pro coders can't just type code and expect it to work (a rare moment of zen when programming occurs when something, usually a small change, works on the first try). Coding is an iterative process; even if you have a Quality Assurance (QA) team, engineers will always spend time testing before handing it off to them.
Serverless architectures have been trending the past few years, and many people see them as the future of backend infrastructure. Let’s talk about WTF serverless means and why your engineers might be talking about it. (Psst… I recommend reading my article on tech stacks before proceeding with this article.) A bit of history To understand … Continue reading WTF is Serverless?
You've probably heard your engineers talking about git, Github, or source control. It may have been in the context of "let me pull the latest changes from git" or "Github is down; let's go grab a beer." So wtf is git? To set the stage, let's start with an analogy. Let's say you're working on … Continue reading WTF is git?
Net neutrality has been in the news a lot lately, and for good reason. Your engineers might be making a stink about it, but it's hard to know if this is one of the alarms that will actually affect you or your business. You have probably heard everything from "this is end of the Internet" … Continue reading WTF is Net Neutrality?
If you don't live and breathe tech, you probably don't realize how much time is spent preventing and fixing bugs versus the amount of time spent building new features. Junior engineers may also not realize this, which is one reason that engineers are bad at estimation. In my experience, first-time entrepreneurs without an engineering background … Continue reading Why is everything broken?
Estimating engineering tasks is hard. It's a skill that can be improved with practice, but even experienced engineers are often way off base. Let's look at some of the reasons why and discuss some options for dealing with this inevitability in your company. The requirements were not fully spec'ed This is probably the most common … Continue reading Why are engineers so bad at estimation?
Software engineers place a lot of emphasis on code performance. There is often tension between non-engineers who want more time to be spent on building new features and engineers who want to spend time on improving performance. The app seems perfectly fast to you. So why do engineers care so much about shaving a few … Continue reading Why does my engineer care so much about a few milliseconds?
NoSQL is a popular buzzword these days. Let’s demystify it and discuss why your engineer might be talking about using a NoSQL database. WTF is SQL? As you may have guessed, the inspiration for the grammatically questionable name "NoSQL" is SQL. SQL was the state of the art class of databases from the 1980's until … Continue reading WTF is NoSQL?
So you want to build a mobile app. Maybe your product is mobile-first, or maybe you have an existing website and want to supplement it with a native app. This is a big decision, since switching between native and hybrid apps down the road means starting over. So how do you decide, especially in the … Continue reading I want to build an app! Should it be native or hybrid?
Some of the disagreements I've had with non-engineers in my career stem from an assumption that because someone else is doing it, we can do it too. While this sounds logical, it is not always realistic. Why not? They own the data As discussed in my last post about APIs, companies have proprietary data that … Continue reading Facebook does it. Why can’t we?