I really like Sumana Harihareswara’s post on 'From “sit still” to “scratch your own itch”' because she shares great tips for people who don’t feel like they have big ideas of their own. I’ve been learning more and more about building things based on my own ideas. I often hear from people who struggle with coming up with ideas and who don’t feel like they fit in, or who are waiting for that one great idea before they go ahead and explore their dreams. There are lots of ways to get started even without that clear spark, though, and it’s great to read about some things you can pay attention to.
Here are Sumana’s tips and how I can relate to them from my own life:
If you’ve ever told yourself, “But I don’t have any good ideas!”, you may want to check out Sumana’s blog post:
Helping people learn is so much fun. I loved teaching introductory computer science. Even though sometimes it was frustrating, it was such a thrill getting people to those "aha!" moments. I speed-read, so it's easier for me to skim through Google results and documentation to spot just the right function. I've made lots of mistakes, so it's easier for me to debug things than it is for people who are starting out. Sometimes all people need is a nudge in the right direction, a snippet of sample code, and then they're off. I get such a kick out of it. It's high-leverage - a little help can go a long way.
Problem decomposition is a key skill: breaking a challenge down into small, motivating steps, identifying the things you need to figure out first so that you can build on top of them. It’s hard when you’re new, and easier when you’ve solved lots of similar problems. I want to get super-good at this, which probably means doing this with more breadth and depth so that we have more building blocks to play with.
I'm figuring out what I like. I like one-on-one sessions and co-working chats more than group tutoring or teaching a class. I don't mind looking at someone's screen using Skype. I'm not an expert, but we can learn together, and I've been told that my enthusiasm is infectious.
What could this look like, if I folded this into my experimental life? Maybe it starts with informal coworking in a shared space, helping people while hanging out and doing my own work. (I might have a "Do Not Disturb" / "Open for Helping with ..." sort of sign on my laptop.) I'm planning to join HackLab.to in March, after my current consulting gig winds up. (I hope the weather will be nicer by then!) More formally, people might book hour-long sessions in a cafe, coworking space, or library, like the way tutors meet with students. I'd get paid in cash (pay-what-you-can) and/or barter. I could offer virtual help, too - e-mail? Skype?
So there’s this idea of code coaching, for those questions that you can't ask on Stack Overflow or on mailing lists, and for learning not just a specific thing but also the process of learning it. Shall we give it a try? I'm open to inquiries about Emacs Lisp, PHP, Ruby, Rails, JQuery, Excel functions and reporting tools, AutoHotkey, Bash scripting, and other things people might want to learn.
I'm a little anxious about the impostor syndrome, but I should just get over that. I confess up front: I'm not an expert in any of these frameworks, especially since most of them move faster than I can learn. <laugh> (You won't believe the kinds of things people are building with Emacs Lisp these days!) I'm always going to be looking things up, because I switch between languages and don't have all the syntax in my brain. I sometimes have to look up how to do basic control structures like a for loop. And I'll tell you if I don't have the foggiest idea how to solve something, but at least I can show you how I'd look for it.
This sort of mentoring is an expected part of teamwork. Who's done this as an independent? Are there things I should watch out for? Will it hopelessly fragment my brain?
Who's interested in exploring this with me? How would you value it, and how do we test whether it's worth it for you and me? Jan/Feb's busy with consulting, but maybe we'll see what this looks like in March, or we'll do low-key coaching for starters...
I’ve resolved to send more paper letters. I also have an odd mix of stamps that I want to use up: some with Canada Post’s permanent postage, and various denominations throughout the years. There are different rates for domestic, US, and international letter mail. Naturally, I want to optimize my stamp use so that I use the minimum number of stamps and avoid exceeding the required stamp rate.
Some examples for the $1.80 international rate:
Next question: Has someone built a stamp optimizer that lets you keep track of your stamp inventory, maybe through bookmarkable parameters? It would be neat to be able to not have to enter in your particular mix of stamps each time. That might be overengineering this, though.
Who knows, I may sit down one day and code this just for fun. It totally fits the profile of the programming competitions we used to do in high school and university.