Red Echo

January 30, 2015

PCBmodE is a PCB design tool built sort of like a programming language. Instead of laying out a board graphically, you write a JSON description, which PCBmodE then compiles into an SVG. You can preview and even edit the layout in Inkscape, then use PCBmodE again to generate Gerber/Excellon files you can send to the fab house.

This seems like it could be a clever end-run around the complexity and generally proprietary nature of EDA tools. Using Inkscape as a viewer/graphical editor instead of writing a whole new CAD app is a great idea.

January 28, 2015

Now that I’m back in Linux for daily development work, I’ve switched to Lindi as my full-time editor. It’s not perfect, but it’s good enough to get my work done, and it is just so satisfying to use an editor whose design is tailored precisely to my own taste that forgiving the occasional hiccup comes easily.

January 22, 2015

I’m near the end of my second week at Coverity, and I feel pretty happy about the way things have gone so far. I have yet to commit any new code, but I feel like I’m ramping up reasonably well and will begin making useful contributions soon. I have a nice dev environment set up, my coworkers are friendly and intelligent, and the office has a great view of Mount Rainier whenever weather allows. I think this is going to be good.

January 15, 2015

gnome-terminal describes itself as $TERM="xterm" even though it is capable of displaying more than 8 colors. You can fix this by pasting this code into ~/.bashrc:

if [ -n "$DISPLAY" -a "$TERM" == "xterm" ]; then
export TERM=xterm-256color
fi

Verify that the fix worked by doing source ~/.bashrc, then tput colors; it should print 256.

January 14, 2015

Helpful illustrated explanation of an electric bicycle conversion. Lots of details and discussion of the reasons for each design decision.

January 10, 2015

The little book about OS development, by Erik Helin and Adam Renberg, dated May 2012. 76 pages, straightforward and practical.

January 5, 2015

This is a bar made from half of an old M113 APC.

Some day, I will own a tank*.

*an APC would be sufficiently tank-like to satisfy this life goal

December 4, 2014

I am single once again

I just heard from my lawyer: fourteen months after Ava and I broke up, our divorce is finally over.

WOOT! Such a relief.

November 22, 2014

Jakouageha


This 42″ giclee print of Echo Chernik’s “Jakouageha” is signed by the artist and numbered “1/1″. There are 50 of the 36″ prints and 20 of the 48″ version, but this is the only 42″ print of Jakouageha that was ever made. I have had it on layaway for most of a year, with a little poster version of the image standing in for it in the meantime. I’m very happy to have this beautiful piece of art over my mantel, first thing you see when you walk in the front door.

November 20, 2014

Lindi screen shot

November 19, 2014

Lindi

A moment of inspiration hit just after I finished up with Mylio and had some time to act on it. I’ve had this idea brewing in the back of my head for three or four years now, and the whole thing came flying out in a nearly non-stop rush. I’m sure I’ll be tweaking it for months to come but it feels pretty good to have built a usable tool in just a couple of weeks.

I’ve posted the code on github:
Lindi, an editor shell for software development

I smashed a directory browser, a pico-inspired text editor, and a simple shell console together inside a terminal-mode window manager to create a kind of lightweight IDE where the current working directory plays the role of the project file.

The immediate problem was that I want to work on a project which has to be compiled on a Mac using Xcode, but I don’t want to be stuck at my desk all the time, and my laptop is a Thinkpad running Ubuntu. I considered VNC, but it’s hilariously insecure, tunneling it over SSL looks like a nuisance, and anyway Xcode feels cramped on the Thinkpad’s 1024×768 screen. In a classic fit of programmer laziness I decided that spending a couple of weeks building a new tool was the easiest solution.

Result: I can ssh into my Mac, run Lindi, and drive everything from a single xterm. Yay!

Lindi is unapologetically idiosyncratic and not at all configurable. Tabs are 4 columns wide, text files are 80, and control-C means “copy”, not “cancel”. The world is awash in editors, and everyone has their favorite; I just thought it’d be nice to build my own, tailored to the way I like to work.

It’s up on github now, though, and I’ll probably post a link on reddit or hackernews once I’ve knocked some more of the rough edges off; I’m curious whether anyone else happens to share my particular taste.

I’d call it maybe 75% baked, but it has enough that I’ve been using it to edit its own code. Long term plans: make the directory browser git/svn aware, beef up the console until it can run lldb/gdb, add syntax highlighting, use syntax highlighting to do project-wide identifier lookup.

November 3, 2014

Introducing Mylio

The software product I spent the last two years on has just shipped:

Mylio is Here.
The next generation photo management system is now available.
All of your photos. All of your devices. Always protected.

The press release has this fun little remark:

“We recognized a growing need for photographers and consumers to protect, access and share all their photos everywhere they go and on every device they own,” explains David Vaskevitch, CEO of MyLO, creators of Mylio. “We formed a unique team of world-class software developers, designers and photographers to build a solution that satisfies this need and allows people to enjoy their photos again.”

People seem to like it.

November 2, 2014

idea: connect a Beaglebone Black single-board Linux computer to a SM5100B GSM radio module mounted on an evaluation board.

This device runs a VPN relay (using your home internet connection as uplink) and a server which relays GSM audio and SMS messages.

Next, delete the SMS and voice-call apps on your phone, replacing them with some yet-to-be-determined app designed to work through the relay server above.

Configure your phone’s internet connection to use a VPN, routing all data traffic – which now includes all voice and SMS traffic – through the relay box at home.

This allows you to run a firewall on the relay box which can whitelist or blacklist anything you want. Worried that your apps are phoning home behind your back? Block ‘em. You could have different firewall rule sets, like “allow nothing”, “allow email only”, “allow email and these web sites”, “allow everything but block known malware sites”, etc.

Further idea: take the SIM out of your phone, put it in the relay box, and cancel your data plan. Buy a prepaid SIM with cash and put it in your phone. Now people who know your phone number and have the ability to track phones can see that your phone is sitting at your house, 24/7, but unless they know about your prepaid SIM, they can’t track your physical location. Bonus: travelling internationally? All your web sites continue to think you’re logging in from home, and you don’t have to worry about geo-restrictions.

October 28, 2014

Terminals are weird: quirks of the ways control and alt keys are represented in a standard unix style terminal.

I bought a used Thinkpad to replace my long-lived but now-dead netbook, and while it’s a much better machine in relative terms, it’s still kind of a weenie compared to the Mac on my desk. It’ll be a fine coding/email/browsing device, but I have this fantasy of remoting in to the Mac, using the Thinkpad as a dumb terminal, so I can also drive Xcode from afar. I’ve set my desk up to be as comfortable a coding station as I can manage, but there are many other places I’d like to be as well…

My question for the interwebs: is it possible to set up a VNC server on a Mac such that there is no way to log in with a password, that authentication is only possible through some pre-set key pair? I know that one can do this sort of thing with Git but I am hazy on the details. I imagine that I would generate a file, copy it onto the laptop via USB stick, set some configuration somewhere, open the relevant port on my home router, and then control my desktop machine without worrying that it is protected by something so flimsy as a password.

October 27, 2014

Fully armed and operational battle station

October 10, 2014

Now that its metacarpal bone contains a couple of screws, my thumb appears to have developed the ability to detect changes in barometric pressure. Cool! I am a human weather station!

Okay, to be honest it’s annoying and it kind of hurts, but if it’s the worst I have to deal with as a long-term consequence of last year’s motorcycle crash then I think I am OK with that.

October 2, 2014

October 1, 2014

September 29, 2014

One fire pit to rule them all.

Thorough and clever analysis of Python interop resulting in an API for asychronous I/O managed across multiple cores.

September 28, 2014

It’s funny to watch my creative outlets shift back and forth over time, since the activities themselves are about as conscious and intentional as they could be, and yet the overall course of the river seems to meander through loops I can only see in retrospect.

I did a ton of sewing last spring, but I haven’t touched a machine in months. The middle of the summer was all about organizing Floodland, which went off really well, but exhausted me. Since then I’ve been cruising through a more than usually quiet and solitary mode, spending most of my free time deep in the guts of some really enjoyable compiler hacking.

Now the weather is turning, I seem to have a resurging interest in connecting with my friends, and I’m thinking about starting up weekly Rock Star Thursday Dinners. Perhaps this also has something to do with the changing of the seasons and the approaching dark months, but I’m feeling a spark of interest in some lighting projects that have been neglected during this bright summer.

September 27, 2014

Delightful. By Mark Morford:
Burning Man is so very wrong

Here’s what you need to know about Burning Man in this fine year of our unchecked chaos, 2014: Nothing.

I mean, just forget everything, all right? Whatever you’re heard, read, seen, rumored, teased, whispered, Facebooked, Instagrammed, linked to, thought about or had muttered in your general direction in an Uber fever dream anytime in the past month. Year. Decade.

Because it’s almost certainly wrong. Delightfully, hatefully, stupidly, shamelessly, deliberately, resentfully, innocently or even inadvertently, it doesn’t matter – there’s almost nothing the slightest bit accurate in what the modern media has said recently about the famed art/camping/dance/survival festival – now in its 28th year – happening right now out in the Nevada desert.

September 25, 2014

Ready for Rain:
Why Seattleites Crave the End of Summer

It’s not simply the arrival of rain, but the transition to a different environment and way of life. The drear has a certain dark beauty; a low-contrast softness. There’s no need to squint or close the blinds. Even the sound of the rain on our house is music to my ears, a lullaby.

MailInABox: a script for setting up your own mail server on an Ubuntu 14.04 machine.

September 24, 2014

First half of roof over back porch

Well that wasn’t hard! Took just a little over an hour to nail four of the five panels up. Just a simple project really, since the frame was already there, but it’ll be nice to keep the porch dry and available for outdoor meals during the rainy months.

September 16, 2014

note to self: this cheap subwoofer unit looks useful for that Rover project

September 8, 2014

Charles Stross’ essay about his support for Scottish independence illustrates a view of geopolitics which seems entirely sensible, and which accords with my feelings about Cascadian independence.

My feeling is that we’d be better served by a group of much smaller nations working in a loose confederation or treaty structure. Their job should be to handle local issues (yes, this is localism) while compartmentalizing failure modes: the failure modes of a gigantic imperial power are almost always far worse than those of a smaller nation (compare the disintegration of the Soviet Union with that of Czecheslovakia). Rather than large monolithic states run by people at the top who are so remote from their constituents that they set policy to please lobbyists rather than their electors, I’d prefer to see treaty organizations like NATO and the EU emerging at consensus after discussions among numerous smaller stakeholder entities, where representatives are actually accountable to their electors. (Call me a utopian, if you will.)

September 6, 2014

Cascadia from space.

August 5, 2014

We did it and it was awesome

Here is a note I sent to the Floodland mailing list, thanking everyone who helped make it happen. No sense rewriting it when it sums my feelings up pretty clearly:

I have yet to start unpacking my car, but I’ve had a shower, a good night’s sleep in my own bed, and just now I’ve had a chance to upload some pictures:

Floodland 2014 on Flickr

I don’t know how to describe the experience I had this weekend without gushing. Not only did you all pick up the Floodland vision and run with it, but you took it off in a bunch of other directions I’d never expected, and you did it all with a smooth, comfortable competence that left me feeling like I shouldn’t have spent quite so much energy worrying about the details.

But I wasn’t just watching the kind of well-oiled machine that a close-knit crew can become: while many of us have worked on each other’s projects before, one of the big reasons for creating a new event is to welcome new people in, giving them a platform to explore their own ideas and develop their own skills along with us old-timers. I was happy to see good friends at Floodland but I was also glad that I got to make some new friends too.

We had beautiful weather, and even the little bursts of rain were welcome; we had the most consistently gorgeous sunsets I can ever remember seeing; we had lovely spaces to relax and to dance, we had art and costumes and performances and fire. It was all there. Everywhere you could see the potential hanging in the air, and everyone I talked to expressed enthusiasm about coming back and doing it again next year.

If all we accomplished was a proof-of-concept camping trip, that’d have still been success: but we went far beyond that and actually threw ourselves a full-on burn event. Thank you for all the energy you put into this, the good attitudes and adaptable creativity you brought to the various obstacles we encountered. Thank you for trusting me when I came to you with this crazy plan in the first place, and thank you for the honest, thoughtful, enthusiastic feedback so many of you shared as we all started to imagine what next year’s festival can be.

Next Page »