Handmade Network»Blog

[Article] NASA notices Handmade Dev

As we all know, NASA retired the shuttle, and so Kennedy has been transforming into a commercial spaceport, partnering with private space companies to lease the land, "rent" launch pads, and provide launch operations support. The workforce model has been updated too, allowing us civil servants to shift around different jobs (that we prove we're qualified for) rather than being tied to a specific role. These recent endeavors have changed the face of NASA here on Florida. The organization and its day-to-day operations is not the only thing transforming—buildings and launch pads are getting their share of facelifts, and that includes our main headquarters building. Let’s have a look at the one we have right now:


Fig. 1 - Current Kennedy HQ

As you can see, old bricks are not the future, and the architects knew this. After apparently watching some good scifi movies, a new concept for the central building emerged.


Fig. 2 - Picture I took of the new HQ design

And I am happy to say the building is already in construction, and badged individuals visiting the center may see its progress:


Fig. 3 - Picture of new HQ in construction, taken from inside the old HQ building looking through the window.

Peachy. Now, how does this tie in with developers, handmade dev, or anything with this site? Surprisingly, the man leading the design & construction of these new buildings is not only a fan of Handmade Hero, but follows Handmade Dev and the site very closely. His name is Scott Hunt, and Andrew and I had the pleasure of meeting this humble individual for lunch last Friday. During said lunch, Scott gave us a brief history of his time at NASA and it was fascinating. Hopefully he can give us a better background on a post of his own one day, but he is a mechanical engineer who has taken advantage of the opportunities presented to him, always looking out for the hard challenges. Starting as a co-op in 2003 or 2004 at around 17, he went from a student to a lead engineer—designing our most important buildings—at 29 years old (under 30 omg). In his spare time, he has programmed feature-rich game engines and has gotten fairly far with them, but he always felt at the back of his mind that he might be “doing something wrong” whenever his code wouldn’t meet some criteria prescribed by idioms or the patterns provided in books. Like so many of us, that sense of inadequacy quickly dissipated after seeing Casey Muratori’s blog posts or following Jon Blow’s musings. And of course once Handmade Hero started, and Handmade Network springing up a year later, he feels immense satisfaction again with his hobby programming and reading up on like-minded developer's thoughts.


Fig. 4 – From right-to-left: A full-time NASA engineer, a co-op student, and a promising intern.

After a tour of his office (and the selfie with the new HQ building in the back), the three of us discussed the value of caring about your work. Scott lamented the influx of young STEM people taking their jobs for granted, and not having a burning desire to accomplish tasks the right way, and figuring out what that right way means in context. But Scott saw hope in Andrew, who has shown to be a hard-working intern, and he saw hope in me (I hope? He hasn’t seen any of my streams yet), and most of all Scott saw hope in the handmade community. Let that sink in, please? It is you guys creating these projects, you guys caring about the best possible way to do things, you guys posting well-thought-out technical posts, you guys being unafraid to ask all the burning questions in your heart on these forums that’s beginning to attract the attention of seemingly unlikely allies. Scott has offered his time and support to the degree that he is able to in order to advance our mission.

Let’s make Scott proud, shall we?

-Abner
Scott Hunt,
Abner / Andrew, you hit the nail on the head!

Casey's development mentality and delivery of learning through the handmade hero series has really inspired me to delve back into programming after hitting rut after rut of being unproductive due to internal pressure to solve my code structure, class definition, or ensure I'm inline with effective modern C++. Now those ruts weren't the fault of anyone but my own and the obsessive need as an engineer to do things "correctly" or per the best engineering way as I defined internally by the many C++ OOP articles and books I've read throughout the years as a hobbyist.

Taking a step back and looking at the Handmade Dev. movement. It is clear Casey, John, Jeff and the many other great developers' common sense approach but niche in general practice philosophy has rang true with many people across the world who value things that just work and have a little heart behind it. It's an amazing problem space when you dig into the current state of software and it's a space that significantly spans into more than just the everyday development of games, web, and the software to make them so. I've had the privilege to discuss the concerns of current college level CS and computer engineering degrees with students and the jading of the career path. This jadedness caused by the forced high level Java classes, "best practice" coding courses, so forth and so on. Unfortunately this may cause the world a significant loss in talent at a time when developers who understand the building blocks of a processor, operating system, embedded system, and proper UX are needed the most.

You've heard many describe the current issues with text editors, debuggers, operating systems, etc. Unfortunately in my world of facility design and construction we also aren't free from the grasp of poorly designed hardware and software for embedded systems. Why is it the case that I need 6+ different software tools (that can't talk to each other and constantly crash) to get a heating, ventilating and air conditioning system running and communicating with a head-end? And this problem isn't just a rare case from one manufacturer; they are all this error-prone and a complete bear to get working. One tool to map all the device IDs to a database, one tool to make the interactive screens, one tool to plug into and program a variable air terminal controller, one tool to provide the system a scheduler, one tool to log alarms, and the list goes on and on...

We can't blindly call these easy issues to tackle and while it's a long road to utopia, you won't create change without momentum. In its short time being around, it's clear this community has the power to really create that momentum. I'm excited to be a very small part of this handmade community and I'm hoping in the years to come I'll have something positive of my own to contribute to that momentum. In the meantime I'm happy to sit here, be amazed, learn from and soak up all the awesome projects starting in the spirit of making things just work. Thank you for being an open community that foster's a sense of learning to help inspire others. Keep up the charge!

-Scott