The Only SEO Tips You Need

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:

Read on

SEO Is Bullshit but Accessibility Is Good

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.

Read on

Common Sense Versioning

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”.

Read on

Step Away From the Code

As a professional software engineer I had to work hard to master my craft and get to where I am now. It takes a lot of passion to make it to the top (where “the top” is always subjective and subject to change). I have that passion for programming but in recent years it took me over and turned me into a one dimensional being. My identity was wrapped up in my work. It was a boring, fragile existence. I lost sight of who I was as a whole person. I recently turned 30, took a trip to Seattle, and came back with some perspective. So today instead of my usual programming tips or tutorials I want to talk about something equally important and that’s learning to step away from the code, disconnect, and remember who you are. Here’s how I went from a one dimensional person to living a fuller, healthier, more satisfying life.

Read on

Take Over Any Domain in 2 Easy Steps

Want to hijack a domain name? Ever wanted to “hack” Google and point their domain to a porn website or something equally NSFW? Well it turns out it’s super easy. But besides wreaking havoc and setting up practical jokes there’s a useful case for using this information. Today I’ll show you how to host a domain name without having to buy it. All you need is web hosting with a static IP address.

Read on

Staying Current as a Developer

After the collapse of my last startup I took a sort of gap year where I taught full stack development. I always knew that the less you code the faster the industry passes you by. I figured one year wouldn’t hurt. Now I’m working again for a technology company and I can see how fast things have changed in just a year.

Read on

DNS for Beginners or How Do I Connect a Domain to My Website?

Building websites is fun and easy but unfortunately the http://localhost: domain and 127.0.0.1 IP addresses aren’t accessible to the public. So now that the site’s done, you bought a domain, and picked out a web host you need to hook up it all up for the public to see. How does that all work!? Don’t worry, it’s easy. I’ll explain how DNS works and, more importantly, how it’s used to hook domain names up to web hosts so the whole world (except China and North Korea) can see the beautiful sites you’re building.

Read on

Breaking the Rules of the MEAN Stack

If you were learning to program back in the old days then you remember that the LAMP stack was all the rage. Linux, Apache, MySQL, and PHP. Everything you needed to create a great web application. Can you believe that Facebook started out as a simple LAMP stack application? Now that the MEAN stack is all the rage I want to make sure you’re not putting together SPA’s using that stack as prescribed because “that’s how it’s done”. Remember, the one rule trumps all others is that you use the right tool for the job. I’ll explain here what the MEAN stack is, how it’s used, and how to know when to break the rules.

Read on

Getting a Job as a Developer

My students are always asking me how to get a job as a developer. Where I currently work we have a program that’s specifically designed to help guide students through that process. Whether you’re a man or a woman, young or old, there’s a place for you out there right now and our team gives you great advice about resumes and job hunting and how to fill in your LinkedIn profile but nevertheless students are always wanting to know, first hand, how to get a job as a developer from an employed developer’s experience. So here’s the story of how I got job as a software engineer (an upgrade from developer) and how you can too.

Read on

Using Bookshelf With Node.js

Yes, you can and you probably fucking should use a relational database in your Node/Express apps. Most data you come across is relational so I’ll never understand this dogma being preached that if you use Node as your back-end then you have to pair it with MongoDB as your persistence layer (a database). You know, that MEAN stack crap everyone cheers on. Bullshit! It’s utter bullshit and anyone who’s used Node.js whilst actually thinking about their data models can see it. You use the database that best fits your dataset. Sort of like that whole “right tool for the job” idea (which is excellent advice, by the way)? Now let’s get you set up with the Bookshelf ORM and do some relational database modeling. We’ll also talk about integrating this into an Express application.

Read on