DNN is an open source .NET CMS and application development framework that is a member project in the .NET Foundation. As the DNN Ecosystem Manager I am well aware of the benefits that our community reaps from the .NET Foundation. Last year I articulated several of these benefits in a blog titled “5 Reasons Why We’re Glad to be a Part of the .NET Foundation”.
Promoting Open Source & the .NET Foundation at Microsoft Conferences
Not too long after I posted that blog, I got an email that included a call for volunteers to help staff the .NET Open Source booth at Microsoft’s Build Conference. I responded to this call for assistance as I felt it was a great way to give back to the .NET Foundation since we receive so many benefits from it. A few weeks later I found myself at the conference and I was telling the story of DNN’s journey in open source. I spoke with attendees and articulated how the .NET Foundation plays a big role in the DNN Community’s ability to sustain and thrive.
The call for volunteers came again this year and I returned and it was apparent that developers in the .NET ecosystem are more aware that the .NET Foundation exists, but they may or may not know exactly what the foundation does or why they should be a part of it. Now that the .NET Foundation has a board in place it is a great opportunity to continue the messaging of the value the foundation provides.
DNN: A Great Case Study Example for the .NET Foundation
As I engaged with attendees over the past 2 years it became clear that DNN is a great case study example of why the .NET Foundation exists. It’s one thing for someone from Microsoft to explain what the .NET Foundation does and it’s a completely different thing for someone who is a member project of the foundation that represents the “living and breathing” example to be there on-site to convey the value and benefits the .NET Foundation provides. Telling the DNN story to attendees helps them understand a “real life” example of an open source project that’s reaping benefits from the foundation.
I think it’s somewhat of a poetic justice that DNN is the prime example of an open source project in the .NET Foundation given DNN’s history of being one of the earliest, if not the first, open source project in the .NET space.
Developers Love Open Source!
Another trend I noticed was the increased energy, appreciation of, and momentum around the open source movement at Microsoft. We had several people come up and show appreciation for how Microsoft is embracing the open source movement and for the role the .NET Foundation plays in that movement. It’s great to see this energy and it’s neat to help turn the lightbulb on for those who weren’t completely aware of what the .NET foundation is doing to help continue the OSS movement at Microsoft and in the Microsoft ecosystem.
.NET Foundation Panel on MSDN Channel 9 Live-Stream from MS Build 2019
If you’ve never been to Microsoft’s Build conference it is pretty big-time production. That is, everything is live-streamed and you commonly see video crews following people around, interviewing speakers/attendees/thought-leaders, and setup all around the stages for the keynotes. There is also a big stage where the cameras are permanently set-up and interviews and panel discussions take place. This year the stage was set up in a corner of the convention center not too far from our .NET Open Source booth.Sometimes you just end up at the right place at the right time and that is exactly what happened to me on the last day of the conference. There was a session scheduled to discuss the .NET Foundation which was slotted for the last day of the conference in the late afternoon. As things turned out, Jon Galloway, Executive Director of the .NET Foundation, had to leave early which left an open seat on the panel. Beth Massi felt bad for me and so I got to be the Jon Galloway stunt double on the panel. You never know where you’ll end up! The panel was more about the .NET Foundation in a broader sense rather than DNN specific, but it was still fun to represent the DNN Community on the panel.
You can find info from the session on the Channel 9 site and you can check out the replay below:
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.
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!
It has been great for the DNN Community! I got involved right before it became a member of the .NET Foundation and participating in the open source aspect is night and day. It has been really great seeing all the benefits that the .NET Foundation can provide to Open Source and I hope more and more see the value of the .NET Foundation