As an open source enthusiast and a .NET developer I’ve been watching the transformation of Microsoft happen and it has been great to watch. You see I’m an avid user of DotNetNuke and if you know anything about DNN’s history you know that DNN was one of the earliest, if not the earliest, open source project in the .NET Ecosystem. From 2003 on DNN has been a pioneer in the .NET open source world.
A lot has happened and several trends have come and gone in the Microsoft world since 2003. As an open source project built on Microsoft technology the notion of being open source wasn’t always a popular conversation topic. Being open source wasn’t “cool” and sometimes negative perceptions about open source solutions were visible.
Boy have times changed!
Microsoft is Serious About Open Source… and It’s Not Just Lip Service
One of my college football coaches always said “Your words don’t mean anything, but your actions mean everything.” Actions are a really good sign of what someone really believes.
Microsoft’s strategic shift to embracing and focusing on open source over the past few years has been such a refreshing transition to see, feel, and experience for me and my fellow DNN’ers because of the actions we are seeing.
If we look at the recent and strategic moves Microsoft has made it’s easy to see that Microsoft is indeed serious about open source. If you aren’t convinced that Microsoft is serious about open source or if you are not keeping up, let’s look at some of the actions Microsoft has taken related to open source. And these are just the ones I have observed… I’m sure there is even more evidence out there.
Why It’s a Great Time to Be a .NET Developer
There has never been a better time to be a .NET Developer. Literally everything you need to get started building is online and free to use and even better it’s likely open source. Anybody, anywhere can download code, look at it, enhance it, modify it, and submit it back to the projects if desired. If you can dream it, you can build it and you may build an online team of users and contributors to assist you in the process. Microsoft is literally making it easy to build open source projects via the technologies and resources they are providing. They are removing roadblocks for developers and being 100% transparent.
Consider the following capabilities anybody, anywhere has...
I referenced one of my college football coaches earlier, but he wasn’t the only one to to impart wisdom during my athletic days. My high school coaches had more one-liners than anyone could remember. One line that stuck with me was “If you do the little things, the big things will take care of themselves.” Microsoft is not only doing the big things, but they are also doing the little things that continue to reinforce their seriousness about open source.
We are watching a culture and paradigm shift occur in real-time and it’s awesome. By going “all in” on open source Microsoft is not only winning the hearts of developers, but they are making it easy for developers to get started with their technologies! I think the strategic decision to embrace open source will have a big impact for Microsoft in the long term.
Last week I attended Microsoft’s Build Conference in Seattle. I was helping at the .NET Open Source booth which promoted the .NET Foundation and all things open source. The conference was very nice, and the energy level was high. I had conversations with a wide variety of people during the conference and it is obvious that Microsoft’s strategy of embracing open source is welcomed by developers.
During one of my discussions a gentleman told me that his organization uses open source software (OSS) and he wants to allow his developers to contribute to OSS, but he needed to be able to justify it to his corporate leadership. His organization is a large, global organization so he needed solid and clear reasoning for why contributing to OSS is something his company should support.
He asked me if I knew of any blogs or resources that could provide insight into this topic. I thought about it and while I’m sure there is info somewhere, I wasn’t aware of any specific blogs or content about this subject. I am obviously biased about this topic, but let’s consider some reasons why a business should support OSS… especially if their organization is using OSS-based products.
Before we list out reasons we should first define what “support” means. When business people hear the term “support” they generally think about money, cost, or financial implications. Though, in the open source world it’s not necessarily about money as support can come in many different forms. Of course, the obvious need for any OSS project is code contribution, but there are more ways to contribute than one may initially think. As examples outside of the code, organizations could allow their developers to assist in marketing and promotions of sub-projects, conferences, user groups, GitHub repos, project documentation etc. Developers could also volunteer in any area of the OSS project as well as exchange knowledge online via forums, blogs, StackOverflow, and others. Organizations could also open up their offices for user group meetings, donate swag & door prizes, or sponsor the food at meetings. Any step taken to help move the the OSS project forward is a form of support.
Now that we know that support can come in forms outside of financial contributions let’s get back to the subject. If you are faced with the need to justify supporting open source software to your business leadership here are some thoughts and ideas to consider:
In this blog I’ve summarized my thoughts around why it’s important for organizations to give back, be active in, and support OSS projects and communities. As one considers justifying OSS participation to the business side of an organization much of the conversation will center around educating the business-side on how OSS ecosystems function. Communicating the potential positive benefits will be what’s needed to help bring on a change in perspective or cultural shift within the organization.
In my mind there are only positives to gain from contributing to OSS projects. Your developers will learn more, be empowered, meet new developers of all ages and skillsets, and your organization will be more efficient, and will likely be viewed as a great organization to work for.
If you don’t want to jump in head first then just try this one small thing to get your feet wet - if your developers have “down time” then simply encourage them focus their energies and time to assisting with the OSS project in any area they choose and watch what happens to your company in the months ahead. Be sure to pay attention to job satisfaction levels, quality of incoming new hires, general passion for work, and the perception of your organization among developers in your space.
After all, have you noticed that OSS projects that thrive are the ones with active community support? Who doesn’t want the project they use to not thrive? From my perspective the benefits of contributing to open source software far outweigh the drawbacks of not contributing.
Our crew had a blast last year at DNNWorld 2011 so we eagerly looked forward to this year’s conference all year long. This year DNNWord was moved up a month from November to October which was a welcomed change by me as November is the best part of deer hunting season in South Carolina. As soon as the early-bird registration came out I registered.
To me, DNNWorld is like a combination of a family reunion, a pep rally, and information-loaded-boot-camp. It’s really hard to describe and put into words, you just have to experience it. There are great people to meet, prizes to win, awesome sessions to inspire you and get your creativity flowing, a side-conversation constantly going on via social media, competitions to enter, arrows to shoot at people, good times to be had, and trees to be climbed. It’s fun and I always leave energized about the future. There was no way we’d miss it.
I need to start out by saying that I’ve been inspired to do all this by some great guys in the Charlotte area and they are Dan Thyer, Mike Linnen, and Jay Ziobrowski… thanks for the motivation guys! I am either copying something creative I’ve seen them do or trying to imitate their passion, talent, and drive for Halloween and/or IOT projects. One day I hope to be as sharp and creative as they are.
Halloween & IOT
In 2016 I made a flame throwing pumpkin (copy-catting one of Dan’s inventions) and let’s just say some of the parents weren’t too keen on fire being near their kids and I also didn’t make any fans on the community’s HOA! Though, we all must start somewhere. In 2017 I went the safer route and made the AirGhost which is very similar to this year’s project.
The IOT Clown
This year I have created an IOT Clown. I did some testing and iterating on various ideas and concepts and there’s just no way to get around it… the thrust of compressed air brings a startling surprise and the best part is that it’s safe. We have tons of young kids in our neighborhood and moving a skeleton bone (which I debated in this early prototype) could likely hit someone, cause a toddler to fall, or trip someone up which could potentially lead to a spill on the concrete sidewalk. I don’t want to injure anyone or have some local parents mad at me, so I reverted to the compressed air, but then added a few more movements and changed the medium from a ghost to a clown.
Here’s a quick video of the end-product prototype just to show you where we’re heading… I’m going to dress it up a little more by Halloween, but you’ll get the gist.
Here are the main components I’m using for this project:
Here’s a video “talk-through” of the mechanical parts and power supplies being used.
Let’s Talk About Particle
The Particle platform is awesome! Check out this video of the Particle platform to learn more. I am admittedly a little bit behind all of Particle’s new innovations. I still need to learn about their Mesh and Argon solutions. Even though I’m not 100% up to speed I know you can do tons of creative stuff with the particle platform, their multiple IOT devices, and their integrated IDE. Since I’m using the Particle photon, we’ll start with it.
The Particle photon is a small IOT (internet of things) device that makes it easy to bring real world objects online. Particle makes it easy to setup the device and to connect to Wifi via a mobile app. If you want to know more about initially connecting and getting up and running with Particle they have some of the best documentation I’ve seen check out the doc, tutorials, and guides.
For this project all I really want to do is to move 3 servos… one for the head to spin, one for the head to roll, and one to push the handle on the air compressor. To do that we need to use the components I listed above + Particle’s platform + some code. I’ve listed out the components and just introduced the photon… now let’s look at some code.
Let’s Look at Some Code!
Particle’s platform is awesome, but we need some code to make things happen! I could easily copy and paste code here, but that wouldn’t help you understand the “why” and “how” behind some of the concepts. I hope to help you connect some dots here and as such I’ve cut a video walking through how I’m doing some of this stuff. The video shows code and includes videos of the device in action.
To all you senior devs… yes, the code shown in the video could be much better. I have not refactored anything yet, so the code is not nearly as efficient as it could be. And yes, I showed my handy Particle access token in the video… no worries though, by the time you read this I’ve already recycled it and created a new one.
Here are some relevant links:
So, with some disclaimers down and links shared let’s talk through the code some…
If you take the sum of all the info presented here that is how I’m making this happen!
And We Wait on Halloween!
Halloween is just about a week away at this point. If you have any questions or issues filling the gaps in this high-level tutorial, please reach out and ask your question. I plan on trying to video some of the fun at Halloween and posting any interesting reactions here just below this section… so stay tuned!
The Halloween Video
Check out some of the reactions we got from kids and a few adults!
Great article Clint - exciting times indeed!