I’ve been heads down working on a small, simple software app that is super simple but potentially pretty useful to individuals working within companies with more than a handful of employees. I’m finally getting close to finishing the first release.
I mentioned the idea to a friend one day last fall and he said “Yes! You should do it!” so I suspended work on the other side project I was working on and jumped right on it, since it would be super quick. I’d get it out there and be back to work on my other side project. Funny how that works.
The initial proof of concept was done in a couple days – you could get the idea of how it would work, but it was just a fake out. All that was left was to make it real. Simple, right? I kept at it for two weeks, then left for a three week trip, which brought progress to a halt. Once I got back from the trip, it was the holiday season and I needed to focus on billable work in December to make up for being gone. Finally in January I picked it back up. What initially seemed like something that could be done in a month has stretched into a few, but it’s so close.
The app is actually a game, which is my first foray into building something intended to be “played” – to be fun and challenging. Designing a game is super interesting, it’s almost like playing a game in itself, and eventually once you’ve built enough of it, you are indeed playing the game. Implementing game mechanics like scoring points, playing rounds, and thinking about how to make something fun and challenging vs. efficient and useful is super enlightening. The best part is that this app sits in the middle – it’s fun, but also useful and repeated play gives you real value in your actual life.
2012 was a big year, packed with travel, new business ventures, new experiences, and challenges along the way. I certainly didn’t stand still long.
In January I gave myself a 30 day challenge to eat healthier. It was tough, but fun being forced to think and do things differently. Making an arbitrary rule and sticking to it can highlight your patterns and break you out of well-worn grooves.
That was good preparation for February, when I would really need discipline. I set up Olio Apps and started working for myself again, splitting time between consulting and product development.
In March, O and I travelled to Hawaii, where we lived and worked remotely for a month. It was awesome to be in the warm sun and skip some of the cold and gray back home.
In April I travelled to Scottsdale Arizona for JSConf, which was full of brilliant people and ideas. Scottsdale was quite pleasant, but super dry. Your skin needs moisturizer in the south west, or you will rapidly turn to dust.
Late April through May we headed out again, this time living and working near the beach in St. Pete, Florida. It was great to spend some decent time with family and friends in the area I grew up, versus the momentary visits I generally have back home for holidays.
June was spent back in Portland, when the weather starts to get consistently nice again and all the fair weather cyclists come out for group rides and Pedalpalooza. I also spent part of the time preparing the two talks I gave at a technical conference.
In July I made up another silly month long challenge for myself, to write on this blog once a day, and run every other day. This time a friend decided to join me and proposed making a bet with actual money on the line if either of us failed. I accepted. We both managed to finish without losing the dough. Committing to blog every day is tough. Some days I’ll admit I had to just pull something out of my ass in order to win the bet. Doing a project or challenge like that is way more fun with a friend. Suddenly you’re accountable, pushing each other, and watching how the other is doing, instead of just talking yourself into it.
August found us white water rafting down the Rogue River and camping among the giant, ancient trees in the Redwood forest of California. So glad I got a chance to see them and hope to get back there again sometime soon.
September took us to Atlanta and the northern reaches of Georgia for my cousin’s wedding. This was the second wedding on my father’s side in the last couple years, and each time it’s like a big family reunion, because everyone lives so spread out now that rarely is everyone in one place. It was awesome to get to see everyone again.
In October, O surprised me with a weekend trip to Florida for my birthday, so we could attend my good friend’s annual haunted house / halloween blowout. It’s been happening nearly every year since I’ve moved to Portland and I finally got to go. It was terrifyingly amazing.
In November, I went to another tech conference, this time in Denver Colorado to attend my forth RubyConf, with my friends at The Clymb. After that I was back for a couple days before we took off to explore Japan and South Korea for 3 weeks.
In December, after all the travel we decided to stay put in Portland and enjoy being home for Christmas and New Years.
I successfully got a consulting business off the ground last year. I’ve done this before in ’05-’07 with Electro Interactive, so getting started again was fairly familiar. Once up and running, it was pretty much on autopilot, just finding clients and working diligently. I initially loaded up on client projects, but quickly decided that more than 3-4 is too much to juggle. I need to keep it simple if I expect to launch products in 2013. I’ve whittled it down to two active client projects at any one time. More is possible if full time consulting was the plan, but my end goal is to use consulting to bootstrap a product-focused business, so I’ve tried to hold consulting down to 50% of the time. Lately I’ve been doing more to make up for time off, and I plan to cut it back a bit.
I wanted to do more public speaking last year. I gave two talks at Open Source Bridge, an annual conference held in Portland. One talk was an intro to web development with Clojure, a language I started learning earlier in the year, and the other on building developer platforms, and my experiences while helping to do that at Jive Software. Presentations are hard to quantify in terms of a pay off – it takes a lot of preparation time, and a fair amount of stress, but it’s worth pushing yourself. It was great to have two of my proposals accepted, though in the future, I’ll only give one talk per conference. Better to keep it simple, focus on less things and do them better.
Travel was obviously part of the plan last year, and I think we knocked that one well out of the park. I also visited two new countries this past fall, fulfilling an ongoing goal to explore the rest of the world. Travel reminds you of the open possibilities beyond the microcosm of your everyday life and breaks you out of your routine.
Top of the agenda for this year is launching projects initially started in 2012, both business-wise and creatively. There are a couple product ideas I intend to get launched by Q1. I plan to complete and release atleast one album with one of the musical projects I’m a part of. I plan to write here at a more regular cadence, either monthly or bi-monthly. In 2013 we haven’t made solid plans yet, but we may travel further and for longer stretches of time. The overall goal to simplify and focus more time on less things is paramount.
Happy new year and good luck with your own goals and plans for 2013.
Comments Off on 2012 Review
I read the book “So Good They Can’t Ignore You” by Cal Newport. It’s a quick read and I recommend it. A little repetitive (before this book the guy wrote books on how to study, he repeats things so you’ll remember it). The key ideas are – blindly following your passion is bad advice – especially if you don’t know what your doing and are going to make a big switch to something you fantasize about but know little, and instead you should focus on the hard work of building the marketable / valuable skills in your field, aka “Career Capital”.
There were two other key takeaways for me. 1 – “deliberate practice” – putting in time getting better at the basics in whatever field you are in. Professional musicians and athletes are awesome at this. Knowledge workers not so much. 2 – the “adjacent possible” – which is what is waiting around the corner to be discovered once you’ve gotten to the edge of existing knowledge in your field. Once you get to that point, making the jump to that next discovery is easier. I’ve been trying to put in more time doing deliberate practice, building out my ideas and reading.
Comments Off on Deliberate Practice
Today and tomorrow we’re going camping at Jedediah Smith Redwoods State Park. Since I may be out of network range I’m posting this early. This will be the last post of the July blog-every-day challenge. In August I’m going to back off and try posting 2-3 times a week. Hopefully a bit more developed and longer form. Writing every day has been tough at times, and not always up to my own standards, but was certainly good for me to get into a regular habit.
I also managed to run 13 times so far this month, for a total of 33.56 miles. Definitely a record! I’m going to try to get atleast one more in today or tomorrow.
Comments Off on End of July
Why does every company have their own ad-hoc, rolled together development workflow? I’m talking about the infrastructure around source control, testing, continuous integration if it exists, and the process of releasing to production. Every company has their own approach. Often it’s something that is added in later, after pain has been felt and lessons have been learned. The only companies who seem to have this standardized are consulting companies who work on many projects for many clients, and this is because they get to continually start over and refine their process with each new project.
Isn’t this something that should be productized? Lots of companies have built products around the individual pieces of the puzzle: Github, Atlassian, Pivotal Tracker. That’s not a bad thing, having the ability to swap out various components of the system as needed.
You can’t dictate a full end to end process for a company or a team. Thats part of what (currently) makes a company unique. But you could at least have a template (or multiple?) – maybe its open source or maybe its a product, but instead of rolling your own when you started a new company or project, you run a command (a la “rails new blah”) and you get a running app, checked into git, running in continuous integration, deployed online, wired up to project communication tools etc.
Comments Off on Standardizing Dev Workflow
One of my goals for the remainder of 2012 is to get a few modest “products” out the door. In August, my personal challenge is to build and launch a video screencast tutorial site that I’ve had sitting on the back burner for years now. The goal is to get the site and the first few videos up and available by the end of the month.
Comments Off on August
When I was younger living in suburban Florida, I dreamed of moving to a big city, where there’s always something to do, 24 hours a day.
About five years ago I came to Portland, and decided to move there. It had both a bigger, urban vibe to it, while retaining a small town feel. Another cool thing is it’s proximity to beautiful country. Portland isn’t that big and it’s the biggest city in the state. Most of the rest of the state is country.
Every time I go to the country I feel refreshed. The wide open space, the quiet, and the nature. I can see myself living in the country, for atleast part of the year. Some of my favorite memories of childhood were the two weeks I spent on a lake in the woods of central Maine every summer.
I think it’s all part of the progression towards simplifying life. Less is more!
I continued to work on the minimal theme a bit last night after the post. I decided to experiment with web fonts, and found a serif font that is quite a bit nicer to my eyes than Times New Roman – Merriweather by Eben Sorkin. So the template now looks like this. I’ve got it to the point now where I’m happy with the way it looks. It looks good on mobile devices too.
Next up is converting this sucker to WordPress. I helped my girlfriend do the same thing a few months ago, but it’s been a while so I needed to dig up the resources again. I remember we used this tutorial last time, so I’m just using it again.
Next I exported all the content from my existing site. On the local version, I installed and ran the importer plugin, and bam, all of my content was loaded. WordPress is great in that so much of this infrastructure is already built. So far, this is easy.
Now it’s on to creating the theme “structure”. First step is about the structure of the main HTML file itself. Not much to do there. I already have an HTML file the way I want it. Moving to the next step, theme template and directory structure. I’m starting as minimal as possible, and the static template is already built, so I just have one HTML file, some CSS, and Twitter Bootstrap assets. I just copied index.html to index.php, and moved on from there tweaking it.
It’s nearly good enough to go live, but it still needs some tweaks. In the meantime, thanks to being hacked, I may just move to a static site generator. EDIT: It’s live!
Comments Off on Converting HTML to WordPress Themes
Spent more time on the new blog template tonight. I’m basically going for the look of the Instapaper iPad app, but without all that Instapaper. Newest version is here.
The great thing about minimalism is it’s pretty easy to do. Just keep it simple. I added margins between paragraphs, headers and line height so the text can breathe a little. Converted the text to serif fonts, which is a departure for me. I’ll try it for a while.
The next step is converting it from static HTML to a WordPress template. I’m looking forward to getting this live.
So I’ve attended a few local tech meetups over the last couple weeks, and watched a handful of talks. Some of them are brilliant. Much respect to anyone who takes the time to prepare, practice, and get up in front of a group to talk about anything.
If you’ve never given a talk, and you’re watching one, you might not be cognizant of the speaker’s presentation style. At least beyond whether you’re paying attention, being entertained and enjoying it. You also become acutely aware if you’re bored and your brain has checked out and moved onto other things.
I’ve given a handful of tech talks. Once you’ve done this, and practiced your talk, you become much more aware of style, pacing, and flow, when watching others. I’m not as good as I’d like to be, but I’m at least aware of the gap between my taste and my work. Just like writing or music or anything else, the only way to get better at it is to do a LOT of it. Ten thousand hours. Go ahead, I’ll wait. In the meantime, I’ve taken some notes to myself on how to improve. This mostly applies to tech talks.
Use color on slides. Generic black and white slides are generic. Built in themes are boring. Don’t use them.
Use big text. I can’t read your tiny text and I don’t want to squint. Make it bigger.
Use less text. Make one point per slide. No extraneous stuff. Just the point.
Use non typical examples. In the web development world, typical examples are blogs and todo lists. Don’t use those. My brain and those around me will check out and think about beer and bikes instead. Use beer lists, bike map trackers, something, anything but blogs and todo lists.
Use the firehose. Be fast paced. Use complex terminology and reference deep math concepts. Or some other field of endeavor that we don’t already know about. Assume your audience is smart and keep up. We probably sped read your slides before you started speaking. Get to the point and be quick about it.
Explain individual lines in a vast sea of monochromatic code. Don’t throw up a full screen of black and white code and walk through what each line does. Show me a slide with only that line of code. In huge text. Syntax highlight the part you’re talking about.
Explain the history of the Internet. Unless that’s the main subject of your talk. Again, know your audience. And by now, everyone knows the history of the internet. Never speak of it again!
Explain the history and progression of Web apps. Same as above. Then AJAX came along. Yep. Move along.
Again, this is a note to me, not a knock on anyone else, as I’ve been guilty of these myself, and I’ve seen others make the same mistakes, and it’s hard to watch. But it’s also very easy to arm chair quarterback, so I’ll shut up. Speaking is hard!