I just watched this video of the $25 Raspberry Pi beta board (via jwatt):

It reminded me of something I wish I could go out and buy right now. I want something the size of my Jambox but instead of an audio receiver and speakers inside, I want a tiny computer that is doing a number of things for me.

The first thing I’d want it to do is back-up files from our computers and then push them (delayed) to the cloud when I am at work or sleeping.

The second would be a web server I could use to develop apps for. I have these app ideas that I want to live in my house rather than on a server someplace I have to maintain. Things like address books and calendaring between my wife and I. Stuff I want to own, not depend on some outside service.

Don’t you want to buy that little box? I sure do.

Since I’m asking, another thing I want is an iPod Touch with everything it currently has PLUS a 3g data connection. I basically want my iPhone without a phone. Who needs to carry around a phone? (More on this later, maybe today).

Two helpful links arrived through Twitter after posting. First @wezm points me to some existing off the shelf boards and @pfibiger points out these are called “plug computers” and gives me a great link to start learning more about them.


Vim: revisited is such a good introduction to getting started with Vim. I wish I would have read it before I started my NoVimBer project.

Not using too many plugins was pretty much my undoing. The point he makes about the Janus distribution is spot-on. If I had to do it again I might no have switched to Vico so quickly.


Yesterday Berg announced two products, The Little Printer and Berg Cloud. Everyone was pretty excited about this little printer. It’s so damn cute!

Hello Little Printer, available 2012 from BERG on Vimeo.

But the really cool thing here is Berg Cloud. Well, potentially cool, since we’ve just seen video of it. But together they make me, a developer and lover of small, cute things, really excited. So excited that I checked out the price of thermal printers and found out they are staggeringly expensive.

But then I remembered I already own a thermal printer. A cheap one that prints labels. So I researched a little more and figured out how one could have their own thermal printer to hack away on:

  1. Buy a Dymo LabelWriter.
  2. Buy this continuous thermal paper.
  3. Use the Dymo JavaScript SDK.

Not as cute as the Little Printer, but appears to do the printing part of the equation. Mine prints pretty detailed stamps, so I think it should handle graphics like the ones that were in the demo. I haven’t gotten my hands on the continuous thermal paper yet, so I can’t say if the SDK will give as much control over printing, but it seems like a fun project if you’re looking for one.


After almost a whole month of using MacVim, I think I can safely say I’m a convert. Whenever I felt I was getting really good with it, I’d switch over to SublimeText and realize I was still much better at moving text around and editing whole blocks of code inside of a GUI editor.

Today after editing some code, I flipped over to SublimeText to realize I wasn’t working any faster, and in fact missed some of the quick delete commands like dt" or D I was so used to with Vim.

It actually took a bit longer than I thought it would take. Luckily anything you want to do you can find fairly quickly with Google and StackOverflow. Many times I thought, “It sure would be nice if I could do x with a vi command” and sure enough I’d type into Google “vi how to x” and there would be quite a few results explaining how to do it.

The other nice thing that happened is when I do work on config files on my servers I am now EXTREMELY good at it. Before this month I’d “sudo vi” an important config file and at some point “:q!” because I’d hit the wrong key. Now it feels so comfortable I think it’s made me a better admin.

One thing happened I wasn’t expecting on my road to Vim: I am not actually using Vim. Instead I’m using something called Vico which has many vi key-bindings but an entirely new codebase.

Vico

You can also import tmBundles and tmThemes if there’s something from Textmate you want:

bundles

MacVim always felt like a half-step toward OS X (requiring the Janus distribution and a fork with a file browser to fill in the holes) where Vico is solidly an OS X app. For example, searching with ack brings up a nice window reminiscent of Textmate:

searching

But the most important thing is that it supports so much existing vi key-bindings that it doesn’t take long to go from (Mac)Vim to Vico. The only thing holding me back was the price: $39.99, but as the trial version was expiring I realized I wanted to use Vico past the trial date so I just bought it.

(Thanks to kob for pointing Vico out to me when I first started this project.)


After a couple days of using MacVim and not exactly liking NERDTree, I installed this fork that provides a very nice Mac-like file browser.

MacVim Alloy Branch

I also found out about an OS X application called Vico that attempts to merge the goodness of vim with the look and feel of a typical Cocoa application. It looks very nice, but also $40 so I am going to wait until I’m good with vim before giving the 15-day trial a spin.

Overall I’d say I’m back up to normal productivity, and it feels like every hour I spend with it I discover a new way to to do something.


Some friends were talking about National Novel Writing Month and since I don’t have an idea for a novel but felt like trying to accomplish something in November, I decided to switch my text editor to vim. Specifically MacVim which I think is an important distinction I’ll explain below.

Now, I learned vi back in college in 199ksjdfl and I use it regularly on servers because pico without an actual GUI to click on locations is cumbersome and most of what I need to do when editing server files is delete whole lines or replace a value or add a new line.

Since I already had a basic grasp of vi and people seemed to think they were more productive with vim, I figured it might be time to see if it would work for me.

Starting out I think I had three concerns:

  • I use file tabs and the file browser in my current editor Textmate a lot. So much that I didn’t think switching to vim would be able to address that given what I knew about vim.
  • I love my current theme Vibrant Ink, which I wasn’t ready to part with.
  • It’s confusing. And not in a way that I thought’t I’d never get it, but more in that I didn’t want to give up a week of learning to become only a bit more productive. I’m in the middle of a big project for a client and I didn’t want to be billing them for my slowness.

So last week I did some poking around and it turns out there’s something called ‘vimtutor’ already installed on OS X. I started it up and discovered I knew a lot more than I realized. If you’re on a Mac and have about a half hour you should try vimtutor right now. If you know a bit about vim already it will be a breeze. When I finished I knew I could keep going with learning vim so I did some more reading.

The next two things to really convince me I could do it was:

  1. Finding out there was a Macintosh specific version of vim called MacVim that is a self-contained, windowed Cocoa application. This is good because there are some key-bindings in place that you are probably used to that don’t exist in standard vim. Hitting ⌘s in MacVim will actually save your file. You can use your mouse to select text and holding shift + moving your cursor around will select text.
  2. Installing a vim distribution called Janus that installs a whole mess of plugins and tools that make transitioning to vim much easier. There’s a file browser (like in Textmate) and it even comes standard with the Vibrant Ink theme (type :color vibrantink) or set it up in your new .vimrclocal file by adding “color vibrantink” without the quotes. There are a lot of themes.

After this, I read these blog posts:

And then I wrote this blog post you’re reading now in my shiny new compiled version of MacVim.


Back when I was younger there used to be this big debate about the meaning of the word “hacking”. In the News it was always used to describe unsavory acts of theft, vandalism, and destruction. Hackers (the nice kind) invented new words to help them sort the hacker from the malicious hack like “crackers” or “script kiddies” but I don’t think it was until the Maker-scene and Linus Torvalds and countless open source hackers took the word back and permanently gave it the definition it deserved.

Of all the books with the word “hackers” in it, the good one, aptly titled Hackers, did an excellent job at describing the early days of computing, all the way back to the Homebrew Computer Club and into the explosion and excess of the 80’s.

It is what I think of when I think of hackers. People who sit down to solve a problem or invent something for the joy of figuring it out or making it better for others. If they’re lucky, the thing they made gets used by other people. And if they’re really lucky they get a chance to create for a large and grateful audience.

I think I made about 10 in total.

When I was in college I made red boxes. Not a lot of them, but enough to keep my friends happy dialing home or around the country for free from pay phones. A descendent of the blue box the red box became popular when the former no longer worked on home telephone lines. As a kid in college (Berkeley no less) I wasn’t exactly hurting for money to call home. I was privileged enough (like my classmates) to have grants, loans, and parents willing to pay for us to attend a very good college so the $5 or $10 in phone calls a month wasn’t exactly breaking us.

And to be honest, who calls their parents that often?

The fun thing about red boxes was making them. Handing a newly soldered dialer to a friend (for a modest fee) was an amazing feeling. Here is a thing I made*, you can go use it as much as you want for whatever you want. I even scratched my business name into the back of them as I wrapped them back up in their boxes and plastic I was so proud.

I think my desire to make and share things with people who don’t have the ability to solder or code or install Apache was born in that dorm room. I ship code because it is tremendously satisfying to give people things that they can use. I am addicted to the feedback and especially the knowledge that I got it right. It makes me feel good.

And to be clear: you don’t have to necessarily know how to install Apache or solder a chip. All you need is a desire to make something be a way that it should or can be. And if you want to do it for a large audience you need to understand them and what they want. I spend a lot of time thinking about these things. “What do people want?” “How should this be better?”

My favorite people make tools for people. Not just make tools, but make them with the intention of others using and enjoying those tools. I appreciate something done well and it fuels my own ambition to do good work. I was very sad to hear about Steve Jobs passing away not because I love my Apple computers or worship my phone, but because I felt that we shared the same feelings about making things better for people.

That’s all I’m trying to do.

* Red boxes were usually Radio Shack tone dialers with a modification that passed the impulses through a crystal (soldered on the outside). The switch you see in my red box above allowed you to flip back to regular tone dialing if you needed it.


I wrote a little jQuery plugin that does a Twitter search for the URL you are looking at and inserts the tweet and some links to favor, reply, or retweet that tweet.

Twitter Search results are only valid for 6-9 days so the blue box you see below will probably disappear within a week. You should maybe try it out. :)

Source code here: https://github.com/torrez/sixpence


Merlin talking at IDEO. This is a really good talk. I hadn't seen it before.

Most people in the position of offering people advice seem to gravitate towards prolonging people's need for that advice. It's fascinating to see someone realize that and struggle with what it is he's found himself the king of.

I was a huge fan of Merlin's site when he first launched it. I read the GTD book and noticed the more I developed my own homebrew system, the less I need these types of sites in my newsreader. Now everything goes into Taskpaper, and I just work my way down through the day. Stuff spills over, whatever.

I also tweak it every now and then. Recently I started marking everything in my inbox as read. It's no longer a todo list of unmarked/bold email that switches state when I happen to glance at it. If it's in my inbox it's unread. Works for me, probably won't for you.


Too damn easy to open a padlock with a beer can.