So you’re running an EC2 instance on AWS and you need to install an SSL certificate served up by Nginx. Normally this is a straightforward process but this time you get a strange key mismatch error. The other day I had this happen to me and I’m by no means new to installing SSL certificates. If you’re running Nginx or even Apache and it’s complaining about some sort of key mismatch error this is what will fix it.
If I had a nickel for every time a developer came to me with a startup idea I’d be a rich man. It happens so often that I feel compelled to tell you right now that your idea probably sucks and your company is most likely going to fail. And that’s if it even gets off the ground. I’m not just trash talking here. I’ve seen it, I’ve done it, and I’m seeing others make the same mistakes. If you want to avoid the default outcome for your precious startup – which is failure – then stop networking, life hacking, and hustling for just a second and read some real advice from a regular person on not just why you’re going to fail but possibly how to avoid it. Oh, you’re not a regular person you say? Well thinking you’re somehow special is problem number one. For the everyone else willing to put their special snowflake egos aside for a moment, let’s go over how to not suck and fail.
If you’re looking for a job then technology is a great choice right now. As our lives become more reliant on computers and, more specifically, the web, jobs supporting this technology and the infrastructure that runs it will continue to be in demand while jobs that used to be done by humans will be done by computers. So it’s not surprising that code schools have popped up in just about every major city across the US and abroad. Having taught at one of these code schools I know the curriculum and have made some real positive relationships with my students. Eventually the question of cost vs. return on investment comes up. So are code schools (whether online, part-time onsite, or full-time onsite) worth the money? The answer depends on your goals. If you’re trying to figure out if enrolling is worth it for you then maybe this will help you decide.
Microservices are not new nor are they the hottest technique on the block anymore and that’s why now is a great time to learn about them. They’re tried and true. They’ve been tested and perfected over time by developers far smarter than me or you. Let’s talk about microservices. What they are, when they’re useful, how you can use them, and maybe some pitfalls you might want to avoid.
Last year around this time I was teaching web development to novices who could squeak by and pass a Codecademy course on HTML and CSS. We took those novices and turned them into competent full-stack web developers. We tried to get every one of those students a job. There were offers that came directly to the boot camp from hiring managers all the time but many of my old students ended up being contacted by recruiters after they graduated with little success and much frustration. I myself have used recruiters to find work before and I know why developers are, to put it nicely, annoyed by them.
If you’re a frequent visitor then you know I write about what I’m working on and lately it’s been all about web accessibility and WCAG compliance. So maybe you have a client and they want or need to be WCAG compliant to satisfy their legal department, bragging rights, or just because it’s the right thing to do. Well, this is how you do it. Some sites are easier than others but whether you’re developing single page apps, hybrid apps, or plain old static sites it’s not as hard as you might think. Here is how to make your site accessible and WCAG compliant regardless of its complexity.
So I previously said SEO is bullshit. I still believe that but only to the extent that professional SEO’s are mostly bullshit artists and it’s hard to find a real pro. Regardless here are some tips that I’ve personally seen work for others and myself (going from a brand new site to 10,000 visitors a day) within a few months. Here is what I’ve learned distilled into a listicle:
SEO (Search Engine Optimization) is such bullshit. There are so many snake oil salesmen out there selling SEO to unsuspecting businesses and those poor customers have no idea that they’re buying a big fat bag of bullshit. Alright, so let me tone that down a bit. SEO – as in fundamental on and off-page optimizations and accessibility – is a good and helpful thing for everyone. What’s bullshit are the shortcuts and “tips” that get irrelevant pages ranked higher than other lesser known pages that have better content. Let’s talk about what’s bad about SEO, when it’s helpful, and the truth about how to rank highly in search results. There’s an endless amount of talk online about how to get a top ranking in Google but there are very few no-nonsense, middle of the road articles that give you the truth about SEO and how to get your site to rank highly in Google search results.
If you browse GitHub issues on popular projects long enough you’ll find a healthy argument about versioning eventually. A few years ago the topic got so hot that someone posted detailed rules for software version numbering called Semantic Versioning. A few years later someone else came up with a pretty good system they called Monotonic Versioning. Whenever I init a new npm module it always defaults my version to 1.0.0. That got me thinking about the silliness of some of these arguments over how to properly assign version numbers to your code so I decided I’d throw my (very small, humble, and insignificant) hat into the ring and come up with a common sense versioning system that I’m calling “Common Versioning”.