Archive for February, 2012
Procrastinating the Future
Frequent BMOW readers have doubtless noticed the lack of project progress lately. I could claim I’ve been trapped under a piece of heavy furniture, but the truth is I’ve been procrastinating while trying to set a new course for my professional future. That’s a fancy way of saying I’m busy looking for a job. But I can’t post an update here without at least some topical content, so here are the two editor’s choice blue ribbons that BMOW won at the 2009 Bay Area Maker Faire. O’Reilly Media just sent them yesterday, and posted a complete list of winning projects, even though the event was almost three years ago. Their “to do” backlog must be as long as mine!
Despite the contents of the BMOW web site, I’ve never had a professional job in electronics or computer hardware. My career has been in software development, with most of it working in the video game industry in engineering leadership and management roles. Most recently I was involved with the launch of RIFT, a sprawling fantasy MMO game that took five years to develop. I was one of the first employees, and I led the engineering team that developed all the client, server, tools, and other technologies from the ground up. It was an incredible experience, and the game has raked in money since its launch, but I’ll never again run a project whose development lasts half a decade.
For the past several months I’ve had no job, by choice. This has been hard on my finances, but it’s provided me an opportunity to consider lots of interesting and unconventional ideas for the future.
Make BMOW a career.
My first instinct was to turn the BMOW projects into a self-financing operation, creating a micro-business from the sales of project hardware and advertising revenue from the web site’s content. You’re probably already familiar with many such operations, like Evil Mad Science, Dangerous Prototypes, and Modern Device. I may still give this a shot, but my guess is that BMOW projects are best off remaining as a hobby. I’d hate to be forced to make all my projects “useful” in a commercial sense. I doubt there’s much market for hand-made 8-bit computers, for example, even if designed as an educational kit for nerds. And I don’t like the idea of filling the web site with a bunch of advertising crap.
Find an electronics job.
If turning BMOW into a business isn’t the answer, then maybe an engineering job at a hardware or electronics company is a better solution. The San Francisco Bay Area is a pretty good place to find such companies, after all. I looked into the options in this space, but came away disappointed. Without an electrical engineering degree or any past professional experience working in electronics, I would have to argue my qualifications based solely on my hobby project experience. Some companies might consider that favorably, but most would not. And even if I could land an EE job, a hands-on hardware engineer role would be something of a step backwards on the career ladder for me. Better would be a technical management job at a company making hardware or software/hardware products, but I don’t think anyone would hire me to do that without past domain-specific professional experience.
Continue on the software or gaming path.
The most obvious route is to continue on my current path, and seek an interesting technical leadership role at a game developer or web-based business. In fact this is what I’ll most likely end up doing. I’m very fortunate that there are many good options for me in this area, and I have plenty of personal contacts at local companies, so it’s more a question of finding the best fit than of finding any job at all. My LinkedIn profile says I’m seeking opportunities that combine technical leadership with wider product development and business responsibilities. Translation: a software technology-oriented role that isn’t exclusively about engineering, but more about the whole product. If you’re in the San Francisco Bay Area and have any leads to share about such positions, let me know.
Bootstrap a software business.
Another option I’ve considered is building a niche software product by myself, and turning it into a small business. With low development costs (primarily just the cost of my own time), the business wouldn’t need a tremendous amount of revenue in order to be successful. I have a few ideas in particular involving casual strategy games for kids, and I may pursue one of these even while I continue to examine my other career options. Bootstrapping isn’t my preference, though. I prefer working with teams to working alone, and the quality level I could expect to hit would certainly be lower for a solo project than for something developed by a team of experienced developers. I’m also acutely aware that having a couple of game concepts doesn’t constitute a meaningful business plan.
Launch an investment-backed startup.
The startup company concept is deeply embedded in Silicon Valley’s culture, yet it was only recently that I began seriously considering it myself. Having now been an early employee (non-founder) at three startups, and having lots of friends and colleagues who’ve done it successfully themselves, I’ve slowly realized that successful founders are just smart, motivated people not very different from myself. I have a few friends at venture capital and investment banking firms to whom I could bring ideas, and many more well-placed friends-of-friends I could meet with an introduction. From a practical standpoint, then, getting my foot in the door of the startup dating game wouldn’t be difficult. Investment backing would enable hiring an experienced team to build a high-quality product, and would also bring referrals to potential cofounders with the operations, financial, and marketing skills that I lack. What’s missing is a compelling product idea, and perhaps another cofounder or two with a complementary background to my own. I’ll be working on both of those needs over the next few weeks.
Been there, done that?
Why am I analyzing my professional future here, as if it were an interesting circuit to debug? My reasons are selfish: I’m hoping for your advice. Have you been in a similar situation with your own career? Ever tried to turn a hobby into a vocation? Ever bootstrapped a product, or launched or startup? How did it go, and what did you learn from the experience?
Read 6 comments and join the conversation
Floppy Emu, Large and In Charge
After months of procrastination, I finally assembled the Floppy Emu board and began work on the firmware modifications this week. So far, so good! Despite being out of practice with soldering, the assembly went smoothly, and the board checked out fine electrically. The firmware has now been partially converted to the new microcontroller and pin arrangement, and I’m able to read the SD card and write to the LCD screen without problems.
For those who may have missed the earlier progress updates, Floppy Emu is a floppy disk drive emulator for classic Macintosh computers like the Mac Plus. It plugs into the Mac’s DB-19 port, and behaves exactly like an external Sony 3.5″ disk drive would, so no special system software or other modifications are required. Floppy disk images are stored on a standard SD memory card, and a microcontroller (Atmel ATEMGA1284P) and CPLD (Xilinx XC9572XL) are used to read/write the floppy data. The data is converted into the GCR-encoded serial pulse stream that the Mac expects, exactly like the signal from a magnetic read head flying across a track on a real floppy disk.
The Floppy Emu prototype was constructed on a breadboard, using whatever parts were on hand. The prototype demonstrated 100% successful read emulation of an 800K floppy disk, and partially successful write emulation, depending on the type of write operation and the specific SD memory card used. The new Floppy Emu board shown here uses a more powerful microcontroller and different type of CPLD, and combines everything onto a single custom-made circuit board that fits right into the back of the Mac at the external floppy port. Power is provided by the Mac too, so there’s nothing to do but connect it and go.
These photos show how small the Floppy Emu board is: about 1.75 inches wide and 4.5 inches long, including the DB-19 connector. The SD memory card extends an additional 0.5 inch beyond the end of the board. A roll of Scotch tape is also shown as a size reference. The Floppy Emu board is purple, but in most of the photos you’ll also see an LCD display on a red daughterboard. The LCD daughterboard is socketed, and can be connected and disconnected as needed. It’s the same Nokia 5110 LCD board sold by SparkFun and other several other vendors.
Thanks to its small size, the board fits nicely at the rear of the Mac, right between the mouse and the SCSI connector (or mouse and serial port on older Macs without SCSI).
In addition to plugging straight into the external DB-19 floppy port, Floppy Emu can also be connected using a rectangular 20-pin IDC connector. This is the same connector found on the Mac motherboard, so a standard IDC cable can be used to connect Floppy Emu internally instead of at the external floppy connector. A DB-19 to IDC-20 adapter cable can also be used, such as the Apple II cable from IEC shown below. The cable enables Floppy Emu to connect to the external floppy port at the Mac’s rear, but positioned in the front of the Mac where it’s easier to use.
Everything is looking good so far. The next step is to program the CPLD, so communication with the Mac can be performed. The Floppy Emu board has a Xilinx JTAG connector at the upper-right of the LCD daughterboard, but it’s not populated and I’m hoping not to use it. Instead, my plan is save the CPLD configuration file on the SD memory card, and then use the microcontroller to configure the CPLD using a bit-bang JTAG method described in Xilinx app note XAPP058. Once that’s done, the final step will be to use the more powerful microcontroller on this board (as compared with the prototype) to experiment with new write emulation methods, and hopefully achieve 100% success for emulated floppy disk writes as well as reads.
Read 17 comments and join the conversation