So, I've been working on a web app. I've been calling it bucketr, because, well, web-two-point-oh forever.
According to the git log on the repo, I've been working on it since August of last year. I've been meaning to blog about it for a while, but, it turns out that, when I have time, and I can use that time to either work on the thing or write about the thing...I've generally preferred working on the thing. Which has felt cool. But I'm reaching a sort of nice turning point on it, even if only in a vague hand-wavey kind of way, and it feels like a good time to try to start up a series of posts to put down some ideas and lessons learned and other take-aways about the process.
So, first: what is it? Technically, bucketr is a bookmarking app, sort of like a cross between Delicious and Pocket, and it is absolutely in no way revolutionary or even all that original (he says, drenching his post in thick, oozy layers of insecurity and imposter syndrome). I realized somewhere along the line you could probably do the critical bits this app will do using regular old browser bookmarks and folders. But, one, geez, ugh, and two, this app is mine, I'm making it, and because it's mine, maybe I'll make it into a solution that I'll actually use.
Here's what I've identified as my need, my own personal pain point: I've noticed my tendency to throw just about any link that looks interesting out of Twitter or Feedly or pretty much anywhere into Pocket, because it's so easy to do that. That means that my Pocket queue is now like 6000 links long and completely unmanageable and a lot of that stuff isn't really something I'm actually intending to look at in the context of Pocket.
If only I had a way to easily sort that stuff out for the intended purposes: to put essays and articles I'd like to read into (wait for it...) one (...yes...) bucket (...dun-dun!), and skill-building tutorials I'd like to work through into another bucket, and music and videos I'd like to check out into another set of buckets, and so forth and so on, so then I could actually work through some of this content sometime.
In theory, it would be possible to use tagging in Pocket for this purpose, or move everything into a dedicated link-tagging platform like Delicious (or whatever the modern-day equivalent is; yes, I'm showing my web-use age here), but the thing about me and tagging is that I really hate tagging things. I hate typing tags and I hate having to remember what the tags are and I hate training myself to use tags correctly. And because I hate it I don't do it well.
Wouldn't it be cool, though, if I could, like, literally have visual buckets I could just drag stuff into, to sort things out for myself? Hey, there's fifty links in the queue: I'll just pull up a couple buckets, flick the links into them, and move on with my life. And then maybe I can send articles back to Pocket so I can actually read them and set myself up with some nice queues of tools and tutorials I'd like to follow up on. And so on. And on.
As a "designer/developer," the designer side of me ought to now have a bunch of flashy wireframes and demo videos and a splashy Kickstarter page full of concept art that shows how this thing might work someday, but I don't yet, because so far it's been the developer side of me that's been driving the hell out of this project, because that's the other thing this app is: a focused reason to sit down and start figuring out how I might put something like this together, and to fill in some knowledge gaps, and to push myself a bit past anything I've done before, in my code-nerd guise. As much as I know there is to learn from reading other people's code (I'm looking at you, jQuery project that I swear I'm going to get back to, one of these days), I've come to recognize that I really do learn best when I'm getting my hands dirty. And building this thing that I would like to actually use has been a fantastic driver for getting and keeping me focused on doing the building step.
And, well, here I am, a whole bunch of code commits later, with something that still looks and acts like a barely functional demo; and, yet, barely functional is still actually functional, and I'm pretty excited about that. Eventually I'm going to open it up and share it, on the offhand chance that someone else might find it useful or educational, and, yes, I know this thing would move along much more quickly if I was sharing the load and making it more of a collaborative process, but it hasn't really been about that, about getting to done, at least not yet, not so far. It's been about making my own thing that doesn't work and then does work and then maybe works better than it originally did and enjoying the process of getting through those stages.