Overengineering

The problem here should be rather obvious.

    /**
     * strips underscores.
     *
     * @param $value
     *
     * @return mixed
     */
    private function stripUnderscores($value)
    {
        if (preg_match('/_/', $value)) {
            return str_replace('_', '', $value);
        }

        return false;
    }

Granted, nixing the preg_match() isn't really going to make a big difference in performance, but still this is a microcosm of making your code more complex than it needs to be to the point where it is detrimental at some level all while adding zero benefit.

Read more →

IAM Roles Save Lives

Well, maybe not lives, but hey clickbait headlines are all the rage. Kids these days, right?

Anyway, once upon a time I was talking to someone else in the industry who had a little "Oops" go down the day before. The conversation went something like this.

Other Guy: So, we had someone get ahold of our AWS keys and rack up some charges.

Me: Oh, geez, how did that happen?

Other Guy: Well, the customer we were working with made their GitHub repo that was supposed to be private into a public repo so the AWS keys were made public.

And hit the brakes. Full stop. I realized here that there's a lesson here that can make a lot of peoples' lives better. No, it's not a lesson about better training people who have access to repos. This is a lesson that deserves a line break and some emphasis.

AWS KEYS DO NOT BELONG IN YOUR CODE UNDER ANY CIRCUMSTANCE

Read more →

This Site Can Handle 450 Requests/Sec

Ok, ok, ok - that's only exciting under certain circumstances. Yes, this is just a static site generated by Jekyll. There is nothing transactional. There is no database. But, there is an important fact, and that fact is this site costs about $0.15/month to run no matter how much traffic might slam it.

Read more →

Farewell WordPress

I need to see other content platforms. It's not you. It's me. I've just moved on. It's better this way.

For those familliar with this site (all five of you) you know this site used to talk about WordPress, run on WordPress, link to WordPress plugins I built, maybe even praise WordPress or something.

Well, none of that is happening anymore. I've moved on to a point both personally and professionally where:

  1. WordPress has become overkill for a personal site.
  2. Writing and managing WordPress plugins is no longer enjoyable.
  3. The security issues and low code quality of WordPress prevent me from offering praise.
  4. I have things that I think are more interesting to talk about with whatever limited time I spend on my personal site.

So here we are. Since I'm starting clean, I didn't bother bringing any of WordPress' baggage (a.k.a. old posts) with me.

If you were looking for any of the previous chatter about Magento, you're not going to find any of that either.

Read more →