How do we make domain decisions when coding software?

via GIPHY

I stumbled on an interesting discussion over at hacker news about when you have to make a decision in code outside of your domain of expertise.

This is a super interesting topic to me. As the world is more and more powered by computers and algorithms, this seemingly obscure philisophical corner of computing begins to affect us all.

Join 35,000 others and follow Sean Hull on twitter @hullsean.

While many programmers are familiar with the experience of stumbling upon an edge case which wasn’t covered in the spec. The truth is you can’t go back and block on every single tiny detail.

Some of the bigger ones can trigger further discussion, but were it not for Falsehoods programmers believe about X the software would never go out the door.

Here’s some more food for thought…

1. Falsehoods programmers believe about names

o They won’t be a *bad* word. Whose bad? i’m not sure.
o All people have names.
o We only have to work with names from English.
o Names are ordered in a sensible manner.
o A name won’t have to change later.

You get the picture. As you start working with the minutae around names, you realize there is a lot of assumptions. Even when you weed out the big ones, there are still small assumptions.

Ultimately, you can’t get to the bottom. There will always be some assumptions, and as software evolves, changes will be required to match the real world. Living systems grow. Software systems must receive *updates*.

Read: What happened when I offered advice outside my pay grade?

2. Falsehoods programmers believe about selling products

o each product has a price
o each product has one price
o each product is one unit
o two decimal places is enough for all currencies
o all currencies have a unicode symbol

There are many more. The point is once you start digging, everything gets fuzzy. Products can be in stock and not in the warehouse. Single product can have multiple prices. It goes on and on!

Read: What did Matt Ranney discover scaling Uber to 1000 microservices?

3. Falsehoods programmers believe about addresses

o two districts will not have the same number
o postal codes will agree across jurisdictions
o a fixed number of characters will work for every address
o roads have names
o buildings are not numbered zero

Addresses are *really* messy. I remember being surprised when I moved to brooklyn. Streeteasy & Google put me in different neighborhoods. I asked my lawyer why this was. He said DOB and the post office use different databases. And google further samples from one or the other.

Never the twain shall meet!

Related: Can humility help you in your career?

Get more. Grab our exclusive monthly Scalable Startups. We share tips and special content. Our latest Why I don’t work with recruiters

What does the failure of Flatiron School mean for coding bootcamps?

via GIPHY

If you missed the news, New York’s AG announced a settlement with Flatiron School over operating without a license and false advertising.

The news of the coding bootcamp failure splashed all over hacker news a couple of days ago.

Join 37,000 others and follow Sean Hull on twitter @hullsean.

With the explosion of coding bootcamps in recent years, it speaks volumes, as demand for coding & software skills continues to outpace supply. What’s more the starting salaries aren’t bad either.

But how will this affect coding bootcamps going forward?

Would you like a helping of beaurocracy?

Part of the ruling was regarding licensed teachers…

“In order to obtain a SED license, a non-degree granting career school must meet a number of criteria, including using an approved curriculum and employing a licensed director and teachers.”

One thing that sets coding bootcamps apart is that they train their own teachers. And they also use their own curricula. And while protecting consumers is certainly a worthwhile goal, the ruling means bootcamps will have to navigate government bureaucracy for approval. Some have pointed out that the process can be slow & full of red tape. Which is sort of counter to the whole agile startup private industry philosophy. We’ll see!

Also: Is Amazon too big to fail?

$75k after 3 months?

One of the claims their marketing made was that many students were making $75k after a few months of study. The ruling underscored this as particularly misleading. more here

As anyone who has studied computer science knows, there’s a lot of foundational concepts in logic, mathematics & problem solving, which you don’t develop overnight. Hopefully this ruling with hammer home the idea, that it takes a little bit more time folks!

Read: Is AWS too complex for small dev teams? The growing demand for Cloud SRE

Does it please the crown?

One of the comments on hacker news asks “Does it please the crown?”. By slapping these guys on the wrist, the barrier to entry will be higher. Going forward, they will have to pass more hurdles & government beaurocracy.

One of the things that sets coding schools apart is that they can train their own teachers & build their own syllabus. We’ll see if these new hurdles slow things down or not.

Related: How to build an operational datastore on Amazon Redshift with S3

Billion dollar Google bet

Almost as if to provide a counterpoint, timely knews comes out of the google camp. They have commited to $1 billion in grants to train workers.

It seems demand for coding skills will be strong for the foreseeable future.

Related: How to build an operational datastore on Amazon Redshift with S3

Get more. Grab our exclusive monthly Scalable Startups. We share tips and special content. Our latest Why I don’t work with recruiters

Some irresistible reading for March – outages, code, databases, legacy & hiring

via GIPHY

I decided this week to write a different type of blog post. Because some of my favorite newsletters are lists of articles on topics of the day.

Join 32,000 others and follow Sean Hull on twitter @hullsean.

Here’s what I’m reading right now.

1. On Outages

While everyone is scrambling to figure out why part of the internet went down … wait is S3 is part of the internet, really? While I’m figuring out if it is a service of Amazon, or if Amazon is so big that Amazon *is* the internet now…

Let’s look at s3 architectural flaws in depth.

Meanwhile Gitlab had an outage too in which they *gasp* lost data. Seriously? An outage is one thing, losing data though. Hmmm…

And this article is brilliant on so many levels. No least because Matthew knows that “post truth” is a trending topic now, and uses it his title. So here we go, AWS Service status truth in a post truth world. Wow!

And meanwhile the Atlantic tries to track down where exactly are those Amazon datacenters?

Also: Is Amazon too big to fail?

2. On Code

Project wise I’m fiddling around with a few fun things.

Take a look at Guy Geerling’s Ansible on a Mac playbooks. Nice!

And meanwhile a very nice deep dive on Amazon Lambda serverless best practices.

Brandur Leach explains how to build awesome APIs aka ones that are robust & idempotent

Meanwhile Frans Rosen explains how to 0wn slack. And no you don’t want this. ๐Ÿ™‚

Related: 5 surprising features in Amazon’s serverless Lambda offering

3. On Hiring & Talent

Are you a rock star dev or a digital nomad? Take a look at the 12 best international cities to live in for software devs.

And if you’re wondering who’s hiring? Well just about everyone!

Devs are you blogging? You should be.

Looking to learn or teach… check out codementor.

Also: why did dev & ops used to be separate job roles?

4. On Legacy Systems

I loved Drew Bell’s story of stumbling into home ownership, attempting to fix a doorbell, and falling down a familiar rabbit hole. With parallels to legacy software systems… aka any older then oh say five years?

Ian Bogost ruminates why nothing works anymore… and I don’t think an hour goes by where I don’t ask myself the same question!

Also: Are we fast approaching cloud-mageddon?

5. On Databases

If you grew up on the virtual world of the cloud, you may have never touched hardware besides your own laptop. Developing in this world may completely remove us from understanding those pesky underlying physical layers. Yes indeed folks containers do run in “virtual” machines, but those themselves are running on metal, somewhere down the stack.

With that let’s not forget that No, databases are not for containers… but a healthy reminder ain’t bad..

Meanwhile Larry’s mothership is sinking…(hint: Oracle) Does anybody really care? Now’s the time to revisit Mike Wilson’s classic The difference between god and Larry Ellison.

Read: Are SQL Databases Dead?

Get more. Grab our exclusive monthly Scalable Startups. We share tips and special content. Our latest Why I don’t work with recruiters

Do we need computer science for all?

I was recently digging through AVC, Fred Wilson’s blog. These days it’s where I get most of my tech news. ๐Ÿ™‚ I ran into this AVC Post on Obama’s Computer Science for All initiative. I hadn’t been paying attention to these weekly addresses.

Join 32,000 others and follow Sean Hull on twitter @hullsean.

It’s exciting to see this reach the national stage. Theres’s been a shortage of computer science graduates since the 90’s. In fact it’s only grown.

Computer Science for All

Here’s the full address. It’s short & worth watching.

Also: 5 core pieces of the Amazon cloud to get your project off the ground

Code is everywhere

The president points out that it’s not just at trendy startups & silicon valley that you see code anymore. Car mechanics, nurses & everyone in the new economy touches code. It isn’t an optional skill anymore but rather a basic one.

Related: 5 tech challenges I’m thinking about today

1M unfilled computer science jobs by 2020!

This is an incredible figure. That’s not the number of jobs, but rather the number we’ll be short! That’s right we’ll need a million more graduates than we’ll have.

The Bureau of Labor Statistics says that by 2020, there’ll be 1 million more jobs in computer-science and related fields than students graduating for them.

While disruption affects a lot of other industries, in high tech skills, the demand is actually exploding!

Read: Is Data your dirty little secret?

Digital divide

Sometimes called a “digital skills gap” or “digital divide”, attention to this problem is sorely needed. Want more? Check out Girls who code or any of the many courses offered at General Assembly or a coding meetup group near you.

Also: Is Amazon too big to fail?

Get more. Grab our exclusive monthly Scalable Startups. We share tips and special content. Our latest Why I don’t work with recruiters