Know your community: Thom Holtquist (skewworks)

Who are you? What do you do outside skewworks?
I am Thom Holtquist, and outside of Skewworks I keep very busy indeed. During the day I work as a Software Architect. When I’m not working at either of those jobs, I’m raising 2 amazing sons, performing sketch comedy and writing stories.

Where are you located?
Aurora, Illinois. A little suburb about 30 minutes outside Chicago.

How did it all start?
Skewworks all got started when my oldest son asked for an Arduino for his birthday. At the time I didn’t know much about it, but it was inexpensive and seemed like a good thing for him. After seeing how much fun he had, well I couldn’t help but give it a go myself. Soon I began an 8 month long project to bring graphics and the ability to load external programs on the Arduino. I called the project Pyxis after a constellation, a favorite naming convention of mine, and the project got so much attention I found I couldn’t stop.

Why did you switch to NETMF and gadgeteer?
I had barely completed Pyxis when a user emailed me asking about the posibility of porting to a FEZ Domino running the .NET Micro Framework. Having come from a .NET background I immediately ordered one up, but found the screen sync just wasn’t good enough to support a port of Pyxis.
I was disappointed at not being able to find a screen that would work for .NET the way I did for Arduino, but I was determined to find something. I got kits from a few other NETMF vendors before finally grabbing a Cobra. The Cobra was fast, powerful and working with it’s LCD was a dream. So I immediately began work on Pyxis 2 and haven’t stopped using NETMF or GHI kit since.
The move to Gadgeteer was, perhaps, the most amazing timing ever. I was a few months in to creating a new version of Pyxis that could handle device drivers with Microsoft announced it’s Gadgeteer format. I even named the new project after it, Gadgetos. Once again GHI was a forerunner, and I now have 2 Hydra and a Cerb40 that I actively develop on.
The Cobra, by the way, sits proudly displayed in a temporary mount I had created while working on a pet project with it.

We see many open source projects, what is your vision of open-source?
Open source is something that I can’t help loving despite its drawbacks. While it can be hard to get any funding for an open source project, and people generally seem to be more critical of open source than they are of commercial work; the payoffs are worth it. It’s so great when someone takes what you started and moves it in a direction you hadn’t even thought of.
To me, the real purpose and vision of open source is its ability to teach, to guide and to help innovation. It took me months to figure out the best way to handle certain things in the Micro Framework world, and now no one else need spend that time banging their heads. They can just grab the code and go “oh, I get it!” If someone wants to implement their own GUI enviroment a few days of reading Pyxis 2 code and they have a basis to start from.
And Pyxis wouldn’t have even been possible if it weren’t for open source. The compiler I wrote to make programs and the virtual CPU that ran them on Arduinos were both based of open source or published college courses.

Tell us a bit about your 100% managed-code operating system?
Pyxis 2 and it’s follow-up Gadgetos are, I think, the most complete environment available for NETMF devices. I developed them because of all the wonderful applications I’ve seen for NETMF, and wanted to run all of them. I don’t want to reprogram, redeploy, and chew up write cycles. I didn’t want to have to copy over control code again and again to do the same thing. So I came up with a way to run other programs on NETMF. And, thankfully, it was a whole lot easier than the Arudino. And since there’s so much power in these devices I could focus on making them look good too!
I’ve come to realize, though, that as impressive as they are there’s just too much code for the average person to jump in and customize it to their liking. That’s why the newest project I’m working on will introduce, what I’m hoping will become, a standard way for launching and managing applications as well as working with 32 bit images.
Even though my new project, Tinkr, is commercial and the result of years of working on this, those portions will be open source,fully documented and complete with examples. Because, I truely believe that if people had small manageable bits of code that allowed them to run other applications, a significant amount of people would use it. And imagine, if it were adopted as a standard. Anything you wrote could instantly be run on anyone elses device. Whether they used a Skewworks GUI, a 3rd party interface, or something they created themselves. As long as it used the standard, the app could be run.
I think that would open a lot of doors for developers.

Pipboy was a big hit in community, tell us more about it.
I have an amazing family. They are so much fun and so supportive. And best of all, they really like to play with these toys too. So a few months ago, I was looking at all the kit I have laying around and said, “we really need to make something with all of this, how about something fun.” My finance immedially chimed in how cool it would be if we could make a Pipboy; which is a device from a game called Fallout that had a map and other player statistics on it. It was retro-futuristic and pretty cool.
Obviously, I had to make it. With Cobra on hand I just needed to order up a few components and we were on our way. Taking a blank board to a project that could send and recieve texts via WiFi, display modified Google Maps and play sounds took amazingly little time.
That’s the beauty of NETMF and GHI hardware. It’s just so easy. In fact, you might say it was “Fast and Eazy”. Puns aside, where else can you add WiFi by simply plugging in a module and adding a single line of code? Nowhere else. GPS was as simple as opening a UART. Everything fell into place very quickly.
The Pipboy is currently on hold, but that’s only because we found a new toy to play with. The CP7’s multi-touch capacitive display begged us to turn it into a tablet. And yes, it will have the Pipboy’s feature too.

What other projects skewworks offer?
A majority of Skewworks’ offerings continue to be open source projects. Pyxis 2 and Gadgetos give you what you need for a complete operating environment. But we also have small projects like a Twitter client, FTP server and several drivers both on our site and GHI’s CodeShare. We’ve even got a free solution for running graphics on low memory devices with PicoMax.
On the commerical side you’ll find Spiral and .NET Clix which are GUI solutions, think Pyxis without all the OS stuff bogging it down and beefier controls.
Our latest offering called Tinkr will arrive soon. It takes the place of .NET Clix for running GUI apps on mid to large NETMF devices while bringing in application and 32 bit image support.

Where do you see skewworks in future?
While Skewworks, in my mind, will always be a GUI powerhouse with substancial open source offerings, I do see some changes coming.
I’d like to see more standards work, and specialized code. I’ve endevored to make all the products as broad as possible to fit as many needs as I can, but there’s definitely need for pinpoint work too.
I’ve been working on a game system for years now. Since before Pyxis 1, actually. This year I created a complete engine and development environment for adventure/puzzle style games. And the response has been great. But I think I’m still missing that magic combination of cost and power. Running GameSlate as it is would cost someone around $380 to make a device, too much for most people to pay.
But as more and more equipment comes out we see them get more powerful and more affordable. I think GameSlate will finally see the light of day in the very near future. In fact, I’m already considering a micro version using the Cerberus or Mountaineer and the Seeed OLED. That way you could have a complete game system for under $200, albeit with a very small screen.
Above all else though, Skewworks will go wherever the community needs.

Where can we find skewworks?
You can find the main site at http://www.skewworks.com. You can also find Skewworks on Facebook (Redirecting...) and on Twitter (https://twitter.com/skewworks).

Do you have any words, comments or advice for the TinyCLR community?
Words first, “Thank you!” TinyCLR is by far the best community I’ve ever had the pleasure of working with. Whether I’m trying to figure out a new bit of code, begging for a new module, browsing examples or just looking for feedback the community is there to answer 24/7. Although, they’re often beat to the punch by an automated system named “Gus”.

On to advice. Keep it up! Especially the new comers. The Micro Framework can be a bit daunting to begin with, and the number of hardware choices are enough to keep me up late at night trying to decide what my next order should be. But keep going. Through upgrades to 4.2 and teasers from Gus. Even if you have to scrap your project a dozen times over. Read the forums, ask questions, and eventually you’re going to have an amazing one of a kind new device, one that you made yourself. That’s an amazing feeling! And when you’re all done the entire community will be awaiting your video so they can pat you on the back too!

Thanks again, to everyone!

4 Likes

Great read. Keep it up, Thom!

Love the Freudian slip! :smiley:

Hey Thom, a face to the name now.

Great idea guys !

Having met him face to face i can tell you that he is a great guy!
Not to mention a awesome coder!!!

1 Like

Thanks, man! :smiley: We’ll have to get together again sometime and compare projects.