Through the magic of cross domain AJAX and HabitRPG’s API, the page
renders all of your recent daily habit activity. Green is good, red
is bad, light gray is a day off, and dark gray is missing from the database.
There’s a demo account if you’re not a HabitRPG user.
Check it out
and let me know what you think.
I’ve tracked various habits and metrics about myself since 2009 in a
spreadsheet. Perfect example of using a hack to get started rather than
fretting over a system and procrastinating, but I started to yearn for a
bit more flexibility and automation.
Don’t judge me for tracking my flossing activity. Did you floss every day
this week? Do judge me for not exercising. My barbell is four feet away,
and I have endless miles of sidewalk to run on. There is no excuse.
I looked up open source solutions to the problem because I want to be
in control of my data. I don’t want it on my phone or in the cloud
with no backup or export functionality. That’s what pushed me into
the spreadsheet in the first place.
HabitRPG was near the top of the list, but
the links were to a hosted app and a Kickstarter campaign, so I assumed
it was proprietary. It is not. It’s an open business that has code
and business direction discussions out in public on github.
There’s a lot of love in the air for that old, end-of-life, product.
There’s also a lot of love for Raymond walking through the debugging
and patching process. It takes a lot of knowledge and skill to
patch a compiled software program without any special access to the
source code, and the article is worth a read if you’re into that sort
of activity.
But I’m not really interested in all that. At least not today.
I want to talk about what you do before your morning coffee. See,
down at the bottom of Raymond’s post there’s a little section called
“Bonus chatter”, and at the bottom of “Bonus chatter” we get this gem:
Specifically, I said, “I feel like Jeff, who does this sort of thing
before his morning coffee.”
Jeff corrected me. “If this was something I used to do before coffee,
that probably meant I was up all night. Persistence >= talent.”
Persistence >= talent. That is the passage to note. Nobody is
born with an innate talent for software development. Or writing. Or
painting. Or auto body restoration. It takes persistence.
I’m going to admit something about myself that I’m not sure I’m happy
about. I’m quick to judge IT folks who say they want to be programmers.
A quick tangent: I love the idea of running and finishing a marathon.
Sounds exhilarating.
I hate the idea of training for a marathon. I’d much rather code, or
cook, or build than run 5+ days a week for months at a time. I’m at
peace with this. I don’t tend to divulge my love of the idea of
marathon running much since I know I won’t put forth the effort to
actually do it.
Point an IT guy or gal at well written and tested material, and they
should be programming in very little time. Basic stuff at first,
sure, but everyone starts there. Most often, though, their true
desire to be a programmer without learning to program shines through.
Programming. It’s not hard. But it’s not easy, either. It’s easy to
sit down one day to learn how to program, but you won’t get far. It’s
hard to do that every single day for months at a time.
If you need help learning how to program, or clean a carburetor, or
ice a cake, or anything else, find a potential mentor and bring your
work with you. It gives the mentor something to work with, and it
shows your dedication to the topic. Partial credit isn’t some relic
of math classes long forgotten. It still works to your benefit. Show
your work and get partial credit. Show no work for no credit. Be
persistent and succeed.