Why Do People Use My App?

“The learning and knowledge that we have is, at the most, but little compared with that of which we are ignorant.” 
– Plato
Just in case Plato is a little bit more refined than what you’re used to:

“Nobody will never ever really know, because the more you know, the more you know that you don’t know shit.”
– MF DOOM
It’s weird to realize and publicly admit that I have no idea why people use the app I spend most of my time working on.

Yes, I know what it says on the marketing site and pricing page. I know what features we have. I can tell you how many clients we have and how many of our client’s clients use our service.

Knowing all that doesn’t help me answer the most important question I need to know as someone who makes a living making software:

Why Do People Use My App?

Continue reading Why Do People Use My App?

Do It For The Dummies

I’m a dummy. I have so much to learn and an embarrassingly high number of things I’ve forgotten.

I’ve estimated it’ll take 10 minutes to do something and I’m still at it 3 hours later.

I’ve started tasks with confidence only to realize you need the manual to do finish what you started.

There’s nothing wrong with being a dummy. It doesn’t mean I don’t know anything; simply means the fields I know almost nothing about far number the ones I excel in.

das-bus1

Most people are dummies. Nobody has the time to master every subject and get real life experience in all of them.

Keep this in mind when you’re making things for people because chances are the person is a dummy. They don’t know a lot and they’ll often forget the little they knew a while ago. It’s not their fault. They’re too busy trying to be better parents, partners or people in general.

People you care about, work with, are married to or gave birth to are dummies. Lets make the world a better place for them. Do it for the dummies.

Most Important Slackbot to Install

While I’ve known about Slackbots for almost as long as I’ve used the service, they’ve mostly fallen into the “nice to have but not mission-critical” category.

Do I really need to spam the rest of the team every time a commit or pull request comes through? Do I need to know when an item has been checked off on trello if it wasn’t blocking my progress? Will I never get tired of DJ Khaled’s quotes randomly inserted into my conversations?

The answer’s almost always no, and as a result I’ve never really given Slackbots serious thought. Not until I discovered the bot I couldn’t live without.

Slackbot - forever happy :)

Continue reading Most Important Slackbot to Install

One Weird Trick to Debug WordPress Quickly

Have you ever needed to build a new feature or fix some bugs for a WordPress site? Chances are the code you need to work with is way too complicated to understand quickly.

wtf-code

You can use a combination of  var_dump()  and  wp_die()  to do some basic introspection, but that’s really just a snapshot of a moment in the code.

What you need to understand to fix the bug is to know where the application execution started, what was triggered and how you ended up at a certain point. What you need is a trace.

Continue reading One Weird Trick to Debug WordPress Quickly

Make Code Great Again

There’s very little code that’s completely independent of other code. A simple “hello world” in your favorite language relies on the code powering your language. As your objective gets more complex, you start relying on more and more code to get things done. Your code depends on other code, which depends on other code, which … you get the idea.

An unfortunate side-effect of code dependency is yours inherits the flaws of other code it relies on. As a result, your code sucks because the code it relies on sucks.

Instead of getting on a soapbox about poor code, since we’ve written and released our fair share of it, lets focus on how you can make code great again.

Continue reading Make Code Great Again

Laptop Failure Playbook

screen-repair

Something in my laptop died a few days ago. I’m hoping it’s a simple change and it’s back to its (very) old self. Thank God I was able to get my hands on an alternate machine to use in the interim.

While the scary prospect of not having a machine to work from was avoided, I had to go from a fresh installation of Windows 7 to something that resembled my work environment. No easy feat since this particular machine is a culmination of software and configurations from the last six years.

Continue reading Laptop Failure Playbook

CJS-Task 0.0.8 Release

The JavaScript ecosystem encourages creating and using small utility functions and libraries.

While this encourages code reuse and interoperability, you’re left with the responsibility of writing glue code to marshal oft misaligned paradigms to accomplish your objective.

CJS-Task was created with the desire to bring simplicity by acting as a high-quality glue between all the pieces you’ll use.

How? A few tricks.

Continue reading CJS-Task 0.0.8 Release

The First 419 Guy was an American Child

One day, however, a new sort of ad appeared in the pages of several dailies: an appeal from a certain Prince Bil Morrison.

The prince was of noble birth and hailed from the far reaches of Nigeria. All he wanted was some American pen pals.

So moving was the wording of the ad that the papers had published his mailing address free of charge. Should not the poor prince find some good old American correspondents?

Continue reading The First 419 Guy was an American Child