2016 is still in the beginning stages, and many companies and developers are considering going open source to maintain relevancy. If you’re an open source novice and are thinking of making the leap, it’s important to understand the boundaries and regulations before you get in too deep. Consider the tips below your beginner’s guide to open source:
Consider your first installation a practice run: Think of the first time you install an open source project as a chance to get all the bugs worked out and try different things before you take it live. It’s a good idea to create a throw-away or virtual environment for first-time installations. This way, you can test the software and even start over with no harm done.
Start out safe and isolated: Avoid downloading your new open source package to a server or machine, particularly one that’s connected to a network or that runs other important software and systems. Take time to figure out how your new open source application works and behaves with other running applications before you create dependencies and, thereby, conflicts you can’t reverse.
Use your information resources: Read and understand the regulations before you start. The open source community can be a good resource for getting questions answered, so you don’t need to reinvent the wheel. Spending a little bit of time reading through discussion forums can often provide answers to your questions. After all, chances are others have encountered similar issues.
Manage your code: Ensure that responsible code management is top of mind and that you use a structured approach when building your software being sure to manage licences, copyrights, vulnerabilities and any obligations.
Join the community: Some of the biggest advantages of open source are networking and collaboration. Keep in mind that, in many cases, you’re a novice walking in to an established and experienced community. Enjoy the social aspect of open source, just respect the established members and their boundaries.
As software complexity increases so does its management. The healthcare field is no exception, and by its nature is driven by large amounts of data which require complex IT systems to manage it. Historically, organizations would have purchased platforms to manage these solutions they are expensive and lock users into solutions. Increasingly, organizations are turning to commercial third party code, code brought in from outsourcers and contractors, and open source software (OSS) to accelerate development and reduce costs.
Clearly, there are huge benefits to be gained from this approach but it is not without its risks. Governing the quality, security, licensing and intellectual property (IP) ownership attributes are imperative in avoiding risks and potential downstream costs of using third party software.
The process of managing third party content in a code base can be time-consuming and resource intensive. This highlights a need for a governance program to underpin Open Source initiatives. A study of common practices deployed at software organizations has revealed a pattern consisting of a number of necessary steps. Originally coined as an Open Source Software Adoption Process (OSSAP), this process is equally applicable to any third party software that is deployed and used in a project within any organization. Eight steps are identified in a structured open source adoption process.
1) Establishing a Licensing Policy - identifying acceptable attributes of a third party software, and highlighting remedial actions that should be taken.
2) Software Package Pre-Approval – this is a workflow process that allows technology teams to request open source and other external packages to be approved for use on a certain project.
3) Existing Portfolio Assessment – this establishes a baseline and is performed using automated tools to create a detailed view of the code already present in the software organization.
4) 3rd Party Software Assessment – an inventory of all code delivered to the project by contractors and outsourcing suppliers.
5) Scheduled Software Scan - regular scanning and examination of the project code library.
6) Real Time Library Check-In - optional real-time assessment of code as it is checked into the organization’s Source Control Management (SCM) system.
7) Real Time Automated Scan - optional real-time automated scanner residing on the developer’s workstation.
8) Pre-Shipment Software Assessment – the final build assessment, usually through an automated process tied into the build process.
By adopting an Open Source Software Adoption Process for code management, there is a significant opportunity to advance the caliber of healthcare by applying intelligent software solutions to electronic health records, delivery of consumer health information, and the provision of mobile and virtual health services. Leveraging open source software accelerates the identification and development of healthcare applications, creates a level playing field for all ecosystem communities, and allows the sharing and re-use of efforts across a wide range of healthcare domains and geographies.
Read our white paper for a more in-depth look at the changing eHealth landscape?
Live Writer allows users to write posts offline and publish them later. The application comes equipped with a variety of tools and features—such as, spell check, image manipulation, maps from virtual earth and improved category management. For bloggers, Live Writer has almost everything they could want to craft the perfect blog post and make it a multimedia experience by adding video, audio and visuals. However, users that aren’t satisfied with all of the options that Live Writer offers can write their own, as the app’s code is now open source. The code is available on Github—the open source coding platform where most major projects live—and, going forward, can be developed by the open source community.
This isn’t Microsoft’s first experience using Open Source; as mentioned, Chakra—the heart of the company’s Internet browser, Microsoft Edge—was made open source just recently on Dec. 5, 2015. In an effort to differentiate the non-open source version of Chakra from the new open sourced version, Microsoft has renamed it ChakraCore.
There are a few small differences between Chakra and ChakraCore. Most notably, Chakra has diagnostic APIs that use Microsoft component object model (COM) technology and, hence, are Windows-specific. These won't be in ChakraCore, however. Instead, a new set of diagnostic APIs will be developed and eventually integrated into the full Chakra.
Bigger companies, such as Microsoft, fully understand the benefits that come from making their software products open source. Using open source allows projects to be completed faster and more efficiently, as well as allows for more developers to share their ideas and make changes. The open source community certainly follows a pay-it-forward model. Microsoft, along with other big name brands in the technology space, Google, IBM and Netflix for example, are capitalizing on it.
The result? More innovative software and a chance for everyone to contribute.
Artificial Intelligence (AI)—technology that is adept at identifying images, recognizing spoken words and translating information from one language to another—is the hottest new topic in Silicon Valley. In fact, as of late, both Google and Facebook have found themselves in a race to secure the most brilliant software engineers to continuously improve upon this technology for their own purposes. Specifically, in an attempt to get a leg up on Google, Facebook recently opened sourced its AI software in an effort to draw in top-level developers.
Facebook’s recent software development is in response to Google’s decision to open source its AI software about a month ago. To many, it may seem odd that both tech giants are so willing to part with the secrets of their AI software; however, their decisions are not without reason. By choosing to make their software open source, their pool of available developers now grows by leaps and bounds. In other words, the more developers that choose to rally behind a particular platform, the better that platform can become. In the end, more minds are working in an effort to better the software’s development.
While both companies are striving to make significant change in the AI space thanks to open source, it’s worth noting that the importance of AI is different for Google and Facebook. On one hand, Google utilizes the technology to help recognize the commands a user speaks to its Android smartphones. The technology is also a main driver behind the company’s world-famous search engine, which is at the heart of its empire.
For Facebook, however, AI can help identify faces in photos and assist in choosing the right content for users’ social newsfeeds. While the needs for both companies are different, the race is still on as the amount of developers who are able to work on AI—a very new piece of technology—is few and far between.
What was once seen as a tool to allow developers to bring their innovations and ideas to life is now being used by the biggest names in the tech industry as a way to compete with one another. To say open source is the future of software development would be an understatement, as it is quite clear that that time has come. Open source is surely changing the way that software development is being done.
Apple just recently announced that Swift, its programming language for OS X and iOS developers, which was released last year, would be made open source. Low and behold, the tech giant stood by its promise and, as of December 3rd, 2015, Apple’s Swift language is available for developers to innovatively apply to their own software creations for further enhancement.
The draw in for Swift is that it makes coding itself more simplistic as the language is designed for ease of use. Now, other developers—who aren’t coding for OS x and iOS applications—can take advantage of Apples innovative, general purpose programming language. This is of course, widely advantageous for many developers looking to amplify their own developments.
To access the language, developers should head over to a separate Github page, which was created for Apple’s open source version of Swift. On the page, developers are able to report on bugs they find, answer questions about the language itself and even make small improvements—a big step for Apple. The benefits of open sourcing Swift go beyond pleasing developers who are looking to get their hands on Apple’s programming language. Students in schools, for example, are able to use Swift to teach themselves modern programming concepts and best practices, which is of even greater benefit when you consider that Swift will now be applied to a broader range of software.
Apple’s deep descent into the open source community speaks volumes about how open source is perceived among the top players in the software development field. This positive step forward should prove to be beneficial, as Apple’s open source language will allow developers to apply it to a multitude of different software projects and innovations.
A nonprofit educational program in the UK called 3Dami focuses on teaching 3D animation to teens between the ages of 14 to 18. Tom Haines, Director of the program, feels that education in the UK involves a lot of regurgitation of facts, and that many students benefit and learn better from being able to create their own work in a safe space.
The program that Haines and his students use to create scripts and bring their stories to life is Blender - an open sourced software project that has gained a lot of traction in the 3D animation community. Blender is a free and open source 3D creation suite that supports all aspects of 3D animation—modeling, animation, rigging, rendering, simulation, compositing, and motion tracking. What’s more, the original developers of Blender believe that the public should be empowered to make small and large changes alike to the code base of the program, which will enable/benefit others to customize the software to their liking. Another great aspect of Blender, of course, is that it is free to use. Developers want nothing more than for others to contribute and use the open sourced software for 3D animation, much like how Haines is utilizing the software for his seven-day-a-week class.
While Blender is not the norm in the professional world of 3D animation, its interface is easy to use. For many of Haines’ students, who find it frustrating to switch back over to typically slower commercial tools, this is certainly advantageous. The best part about Haines’ class and Blender, however, is that his students are able to use the software autonomously due to Blender’s easy-to-use interface.
It seems as though more stories that encourage the use of open sourced software, such as this, are emerging in in the news. The convenience and power of open source is undeniable; developers are able to create the software they want, with the features they want, and the result is a program that can be enjoyed by all.
The open source community has made its mark in the realm of software development, with powerhouses such as IBM, Microsoft and Google all using open source to support various software-based initiatives and developments. Another large player, however, has recently emerged as a predominant figure in open source, one that people of all ages (three and up, to be exact) can enjoy: LEGOS.
By utilizing Github, one of the world’s most popular open source platforms, developers can search for different projects, started by different people, in an effort to create transformative new innovations that will have a lasting impact in years to come.
Perhaps surprisingly, the majority of these open sourced projects involve LEGOs. When perusing through Github, developers will find a variety of projects based around LEGOs—for example, a project that allows you to create custom decals (or clothes) for LEGO minifigs (LEGO people). Or, a developer may stumble upon a project that enables him or her to create music, electronically, with a 32x32 inch LEGO plate and 2x2 inch LEGO bricks. The latter of the two involves a little more technology—a webcam, basic coding knowledge, and music software—but nonetheless, it is possible to achieve.
The level of complexity for different projects varies; however, essentially anyone can contribute, which can lead to dynamic innovations such as phone docks, LEGOs with rotating gears and even a LEGO-specific program that enables developers to plan out their next LEGO build.
It’s interesting to draw a comparison between LEGO and open source development. As LEGO provides the base materials for children to bring a number of different ideas to life—a rolling car, a house, an animal—open source equips developers with the tools and instruction needed to start and continue a myriad of potentially transformative innovations. The sky is the limit in both instances; the only thing preventing developers would be their own sense of imagination.
Historians can be a tough bunch to convince when it comes to the idea that certain technology will be more than just a short-term fad. After all, in the minds of historians, “short-term” usually means less than 100 years of existence. However, the Internet is proving to become a long-lasting cultural game-changer in the eyes of historians, as even they are now using open sourced software in order to increase productivity in their jobs.
The open source software, Segrada, can be used by historians to track and record disparate historical data and generate visual graphs that depict and connect information semantically, among many other capabilities. This fairly new solution is still in the early stages of its development; however, the use of open source coding is quickly making the software a widely-accepted tool among the historian community, as developers are able to help this project reach its full potential.
Let’s explore the core benefits of Segrada further...
Track, record and connect disparate data: By nature a historian’s job involves a plethora of research; names, dates, places, events and a great deal of other information must be efficiently sorted through in order to make accurate and informed conclusions, as well as to form relevant ideas and discoveries. To further complicate this process of data collection, this information is oftentimes translated across several languages and has to be pieced together. Segrada allows historians to enter the disparate information they have collected and use it to create nodes, or connecting points between information, which can then be connected based on criteria such as person, place or event. For example: nodes that represent places can be connected to nodes that represent people, showing the user who lived where during what time periods.
Generate visuals and graphs: Graphs can be invaluable for historians looking to review and analyze the fresh new insights they glean from their data processes in a visual format. For example, they can see what famous historical figures may have lived in the same city, town or country at the same time in history (this, of course, is an example in its most basic form). The possibility to connect different aspects of history with more thorough information is what will help historians discover insights they may not have been able to arrive upon otherwise.
Because open source is inherently collaborative—that is, developers across the world can openly and freely contribute to it—ideas that developers have can be easily created and brought to life to make significant impacts in a variety of spaces. It is this open collaboration that encourages and nurtures innovation, enabling these types of new projects to become possible.
One thing is true of this open sourced project: it offers historians unlimited possibilities and enables them to more easily omit manual, lengthy data collection processes so that they can do more of what they love.
The health and social care industry is a highly fragmented and complex industry with medical practitioners, nurses, health professionals, hospitals, clinics, government and non-government agencies all providing health services.
The spectrum of health care providers range from individual clinicians to large entities such as the National Health Service (NHS) in the UK which is the third largest employer in the world today.
The healthcare industry offers a complex and diverse range of facilities and services and is driven by large and varied amounts of data which in turn require varied and complex IT systems to manage this data. Generally, these systems come under the umbrella term of eHealth which general encompasses Electronic Health and Medical Records, telehealth and telemedicine, IT systems and data, mobile health and big data systems used in digital health.
Historically, healthcare organizations have created platforms to manage its data fairly autonomously, both within individual organizations and industry wide. Quite often these systems were procured at significant expense from software vendors who lock them into solutions that restrict innovation, stifle diversity and have little ability to be re-used.
With the emergence of Open Source Software there is a shift to adopt Open Systems, Open Platforms and Open Data to manage eHealth data. These solutions are developed efficiently and without license restriction where the code can be shared and re-used across the industry. These types of initiatives look at creative ways of managing the complexity of the e-health landscape and look to reuse, instead of create solutions that directly impact both patients and clinicians.
In the past, developing software internally was a point of pride for many organizations. Today, the complexity of modern software, coupled with the pressures to release applications, has made delivering projects that rely exclusively on internal code development almost impossible. Increasingly, organizations are turning to commercial third party code, code brought in from outsourcers and contractors, and open source software (OSS) to accelerate development and reduce costs. To maximize efficiency, these organizations need to use either manual or automated code composition analysis tools that can identify vulnerabilities and compliance issues and automatically detect open source and other third party components within their code portfolio.
In 2004, the National Cancer Institute funded an open source project to supply biobanks with organizational storage systems for biological samples like blood and plasma. Funding stopped in 2010; however, information technology company, Krishagni Solutions stepped in, toyed with the software, and then created a successful version of it, called OpenSpecimen, which can organize thousands of biomedical samples by type, age, consent, collection, distribution and request. Although the company has found much success with its product and could easily profit from its sale, the CEO, Srikanth Adiga, swears by the collaborative nature of open source technology and refuses to make his product proprietary.
As a prime example of its benefits, OpenSpecimen has been used in the healthcare industry to great effect. For instance, medical researchers use it to search databases for specific information, such as, let’s say, the health risks of 45- to 55-year-old men with a history of diabetes. The software can sift through data using multiple factors, such as age, disease and gender, to provide specific samples. The software makes sample searching easy and quick, which, in turn, improves workflow within hospitals and research centers.
Krishagni Solutions was able to take the software, originally funded by the National Cancer Institute, and share it with a global marketplace for the good of all takers and their industries. Adiga credits open source for making the software code available for free so that the world can benefit from it.
What’s more, Adiga is still able to profit from the product by providing installation and configuration assistance to those who download OpenSpecimen. In essence, the product is free for all to use, but the extra know-how that some users need is where Krishagni makes its dollars.
Adiga’s mindset is not uncommon in the world of open source software development, as many developers embrace the notion that others can benefit from their work. This idealistic focus continues to fuel innovative and collaborative projects such as OpenSpecimen. To read more about how the healthcare industry is embracing open source, read our recent whitepaper.