Clint Patterson's Blog

rss

Read the thoughts and musings of a cultured redneck here


Why Businesses Should Contribute to Open Source Software
Specify Alternate Text

The huge MS Build banner at Microsoft Build 2018

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.

I Want My Developers to Contribute to OSS… but

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.

MSFT Loves OSS on a TV at Microsoft Build 2018

Why Should Businesses Support Open Source Projects?

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:

  • New Features: If a business need arises within your organization that doesn’t currently exist within the software, having the capability and knowledge of how to make contributions to add those features is a great way to give back to open source projects and communities. In the DNN ecosystem we recently saw this happen with the contribution of PolyDeploy by Cantarus. They needed the software to do something that it wasn’t so they built it out and contributed it back as open source to the DNN Community. As a business you can shape the future roadmaps and feature sets of OSS projects by having your employees involved.

  • Locate Talented Developers: Attending and speaking at conferences and meetups is a great way to connect with developers of all levels. Connecting with talent in these locations is a great way to find potential new hires for your organization. Perhaps one could tell their company’s HR department that supporting OSS is a form of recruiting. After all, do you know who some of the top OSS user group meeting sponsors are… recruiting agencies!

  • Brand Promotion: Being actively involved with open source projects helps promote your organization as one that supports OSS which enhances brand reputation and increases the reach and awareness of your organization among developers.

  • Snowball Effect: Actively maintaining and contributing to OSS projects helps show activity around project(s), creates energy and momentum, encourages others to get involved, and extends the longevity of the solution by helping shape perceptions of interest levels of the project.

  • Take and Give: If your organization is using OSS then you are already standing on the shoulders and contributions of others. Every time I use DNN I am well aware that I am achieving things through the software that I could never have done alone. Along with helping extend the project’s lifetime, giving back to the community who has freely provided functionality that your organization uses is the “feel good” thing to do. You freely take and use the software, why not give back with the same frequency?

  • Opportunity Cost: Let’s consider the opposite perspective for a moment. What would it ultimately cost your organization if you don’t give back to an OSS project that you are using? That is, if you’re running on OSS software and the project loses momentum, developers abandon the project, and then it stagnates… what would the cost be to your organization for having to switch solutions or maintain it on your own moving forward? These costs come in man hours, sometimes they come in paid license costs, and time spent learning/training your developers on new solutions. Would the “cost” of contributing along the way and continuing to make the solution better be less than the cost of the solution ceasing to exist?

  • Free Cross-Training & Knowledge Exchange: Once your developers get involved in OSS projects and communities they will inevitably meet other devs who are well-trained in the technology. These seasoned devs are great developers to learn from. Your company will likely become better simply by exposing your team to other developers in the OSS projects space. I learn new things every week and month at user groups, in forums, Slack channels, conferences, etc.

  • Increase Efficiency: How long does it take your developers to solve issues within open source software? If your developers are active in OSS projects and communities their networks will be filled with subject matter experts who can assist in resolving issues. This easy-access network of experts essentially allows developers to leverage the knowledge and experience of an ecosystem, which is very powerful. Instead of Googling and searching for answers developers now can tap the minds and experience of people very close to the information they seek. And who doesn’t like efficiency in the business world?

  • Developer Mentors: In my experience it’s easier to find mentors around OSS projects. Generally speaking, developers involved with OSS projects are some of the most giving and generous people you will meet… it’s just the nature of the open source environment. When senior developers see motivated and passionate younger developers entering their communities they enjoy connecting to ensure new members are onboarded correctly and aware of all available resources. Would an organization benefit from their employees learning from more senior developers and finding mentors who can help them do their jobs better?

  • Creative Outlets for Developers: Sometimes developers who have been around a while get mentally drained or tired of working on the same projects. These individuals are great examples of how allowing developers to work on OSS projects can serve as a creative outlet and break up the monotony of constantly working within the same “box”. Have a developer who likes to feel challenged and learn new things… let them contribute to an OSS project and you’ll likely keep them around longer.

In Sum

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.


5 Things I Learned at Microsoft’s Build Conference
Specify Alternate Text

Last week I attended Microsoft’s Build Conference in Seattle. It was my first time attending so I was excited and didn’t know what to expect. It didn’t take long to realize that Microsoft puts on a top-notch event. From DJ’s playing music during the waiting line, to the constantly available live-stream piped everywhere throughout the event, to “cuddle-corner” where attendees could pet animals and relax, to the awesome expo, and non-stop new features and functionality being rolled out one could easily be impressed.

It was indeed a great event and I’d like to share a few things I learned from having attended the conference. These items will be more high-level and conceptual things I noticed versus down-in-the-weeds technology specific items.

1. You Better Embrace the Cloud!

Azure signs at Microsoft Build 2018

As attendees listened to live-streamed sessions and keynotes the word cloud and “Azure” was prevalent throughout. I spent a lot of time in the expo hall of the event and I must have walked around it 6 or 7 times looking and booths and talking with Microsoft staff. Each booth has a navy-blue sign with white letters at the top indicating the technology being demonstrated at the booth. It was very eye-opening how many of the booths started with the word “Azure”. Sure, Azure has been out for a while now and that’s nothing new. I’m just communicating that walking around the expo and listening to sessions and keynotes it is crystal clear that Azure is a major component of many Microsoft technologies.

Take Home Point: If you are reading this and are hesitant to embrace Azure, you should re-think your position, or you’ll soon be left in the dust.

2. Microsoft is Investing More in IOT

Azure Sphere at Microsoft Build 2018

At the event Microsoft released “Sphere” which is a solution for creating highly-secure connected microcontrollers (IOT devices). And you guessed it… they connect to Azure! Many of the highly attended sessions and one of the most highly-trafficked booths all centered around Sphere.

As an IOT hobbyist I spent some time at the Sphere booth asking all kinds of questions about the Sphere Development Kits. I think the devices will be high-powered and offer a lot of functionality, but right now the price-point seems high in comparison to competitor solutions and the device that was being demo’d only connects to wi-fi currently. I imagine in the future they will connect to cellular via a SIM as well. One could argue that the increase in cost is the tradeoff for security as Microsoft touted how secure these devices are.

While micro-controller devices were being demo’d it’s important to note that Microsoft is not making the micro-controllers, rather they are working with established vendors in the industry to do so. Microsoft is collaborating in the design of the devices and helping align them with their IOT strategy for the future.

Take Home Point: Microsoft is continuing to invest in IOT, is linking devices to Azure, and is promoting the security of their IOT solution.

3. Machine Learning (ML) and Artificial Intelligence (AI) Everywhere

ML & AI at Microsoft Build 2018

Another common thread throughout the event were the words “ML” and “AI”. You could hear this being presented in several sessions, keynotes, and there were booths discussing and demoing these topics as well…. and it makes sense. If your overall strategy is the cloud (Azure) and now IOT devices are easily connected to the cloud and sending tons of data to the cloud, then what will you do with all the data? The answer: you will learn from it and use it to make better decisions and become predictive.

An example demo showed a DJI drone flying over the top of a building looking at HVAC pipes analyzing them for inconsistencies or anomalies. Within seconds the drone was able to pick out the pipe that had the issue and show it to the audience in real-time. One can easily see the benefits of equipping the drone with AI capabilities.

But it doesn’t stop there… Microsoft is making it easy for developers to tie into their ML and AI capabilities in Azure. If you’ve got data stored in Azure, chances are leveraging the ML/AI capabilities offered to you by Microsoft could help your organization.

Take Home Point: Don’t write “ML” and “AI” off as just buzzwords. If you are using Azure then you may be surprised at how ML and AI can already help you. Give it a look!

4. Renewed Energy in the Microsoft Space

Embracing OSS has created new energy at Microsoft Build 2018

One thing that also stuck out to me at the conference was the energy and level of enthusiasm of attendees and exhibitors. And I’m not just talking about Microsoft fan-boys. There were a lot of non-Microsoft developers at the event which was interesting and served as proof to me that Microsoft is on the right track strategically speaking.

As of late Microsoft has been heavily promoting open source and being open in general. From the open-sourcing of many of their .NET Technologies, to embracing non-Microsoft technologies (think running Linux in Azure) Microsoft is earning the respect of developers. But this stuff doesn’t just happen by luck. Microsoft has taken a different strategic stance and it is paying off… you could easily “feel” it while at the conference.

Take Home Point: This ain’t your granddaddy’s Microsoft!

5. Build is Awesome!

Attendees watch a demo at Microsoft Build 2018

I’m glad I went to Microsoft Build. I’ve been to several conferences over the years (including South by Southwest) and Build was by far my favorite. Yes, the content was great, but the conference experience extended beyond the content of the sessions and was woven all throughout all touch points of the event.

Everything was well-planned, organized, and first class from what I could tell. The registration process went smoothly, swag was everywhere, food and drinks were easily available, “Flow” of the expo was easy and open, the venue was great, several hotels were close by, the new technologies and content was awesome, and the Microsoftees were friendly. I didn’t see any attendees who had issues connecting to the internet or complaining about the typical things you’d see at conferences. All the details seemed to have been handled.

After all, where else could you hear about the latest and greatest technologies, pet dogs/rabbits/miniature horses, get free massages, meet the leaders of Microsoft, and have bottomless refreshments and snacks all in the same room?

Take Home Point: If you haven’t been to Build, you should go. It’s a great event.


Clint Patterson

I also blog on other sites...

And contribute to OSS Documentation...

See my pics on UnSplash