Home Blog Page 587

Why Using Open Source Software Helps Companies Stay Flexible and Innovate

Companies that use Open Source Software (OSS) find that it offers the most flexibility of any third-party software alternative. You are, for example, never locked into a vendor, their costs, their buying structures, or their re-distribution terms. Open Source enables vendor independence.

In addition, using OSS speeds development, lowers costs, and keeps companies on the cutting edge of technology by facilitating innovation. Open source communities provide a low-cost medium for incubation and testing of new capabilities. While open source ecosystems direct ownership and accountability back to the development teams.

All of this adds up to a competitive advantage for organizations that use OSS.

Previously in this series, we’ve discussed why OSS is faster and more cost effective. This time we’ll cover why open source software is also more flexible and supports innovation.

Why Is Open Source Software More Flexible?

Open Source offers the most flexibility of any third-party software alternative. Here’s why:

● Vendor independence — as mentioned above,  you are never locked into a vendor.

● No contractual limits on deployment — OSS often has very liberal terms attached to it for deployment, so you have the greatest possible flexibility on platforms, numbers of users, number of processors, or any other scaling factor that could impact the price of proprietary software.

● Source code allows customization — Because you’re in possession the source code, you may also customize OSS to meet your needs. And if your customizations are of value to others, the community may support your modifications in future releases.

● Open source communities encourage and facilitate customization — making it easier to extend the solution for particular use cases or to integrate with other products.

● Ongoing collaborative community support and maintenance – healthy Open Source communities provide ongoing support and encourage input and suggestions for improvements.

How Does Open Source Software Support Innovation?

OSS was originally conceived as a way to facilitate development and innovation through collaboration. The open source approach has proven so effective for innovation, that many leading edge software technologies are driven by open source communities. For example:

● The Internet has been developed primarily as a large collection of individual, but related, open source projects.

● Software development tool innovation and integration is largely an open source domain.

● The incredible rate of innovation in the mobile communications space is only possible through OSS. Although Android is the primary example, even proprietary platforms like Apple’s iOS are largely built from open source components, like BSD Unix.

● Like the rest of the Internet, social media software has emerged from and grown through open source.

● The arena of scientific computing and massively parallel computing are almost exclusively open source domains.

Many open source communities exhibit rapid evolution that can be harnessed through participation to speed your company’s or your organization’s innovative processes. The open source ethos of bottom-up meritocracy directs ownership and accountability back to development teams. One of the best ways to introduce a new software idea, test new capabilities, and grow an active user base is through an open source community.

And finally, the innovation that open source enables is not just in the technical arena. The lack of contractual constraints in open source licensing allows for creative new uses, new distribution schemes, flexible and creative packaging and pricing approaches, and other forms of business and market innovation.

In today’s rapidly evolving markets, companies that consistently innovate, most quickly, at the least cost, will win. NOT USING open source software may place your organization at a disadvantage.

However, there are some operational challenges that companies must face when they embrace the open source development revolution. We’ll cover some of these challenges next week and then finish up the series with an overview of some of the legal risks involved with poorly managed OSS.

Open source software management

Read more:

What Is Open Source Software?

Using Open Source Software to Speed Development and Gain Business Advantage

6 Reasons Why Open Source Software Lowers Development Costs

Establishing a Clean Software Baseline for Open Source License Compliance

One of a company’s first challenges when starting an open source compliance program is to find exactly which open source software is already in use and under which licenses it is available.

This initial auditing process is often described as establishing a clean compliance baseline for your product or software portfolio. This is an intensive activity over a period of time that can extend for months, depending on how soon you started the compliance activities in parallel to the development activities.

Below are some recommendations, based on The Linux Foundation’s e-book Open Source Compliance in the Enterprise, for some of the best ways to achieve initial license compliance.

4 Activities to Establish Baseline Compliance

Organizations achieve initial compliance through the following activities:

• Early submission and review of open source usage requests.

• Continuous automated source code inspection based on a predefined interval of time for all source code.

• Continual source code scans, including code received from third-party software providers, to intercept source code that was checked into the code base without a corresponding compliance ticket. Such source code scans can be scheduled to run on a monthly basis, for instance.

• Enforced design and architectural review, in addition to code inspections, to analyze the interactions between open source, proprietary code, and third party software components. Such reviews are mandatory only when a given interaction may invoke license compliance obligations.

Compliance on Future Revisions

If a company fails to establish baseline compliance, it is almost guaranteed that future revisions of the same product (or other products built using the initial baseline) will suffer from compliance issues. To guard against such scenarios, companies should consider establishing other elements of a complete open source management program, including the following:

• Offer simple but enforced policies and lightweight processes.

• Include compliance checkpoints as part of the software development process as it moves from concept into shipping

a product or software stack. Ideally, with every development milestone, you can incorporate a corresponding compliance milestone, ensuring that all software components used in the build have parallel and approved compliance tickets.

• Ensure availability of a dedicated compliance team.

• Utilize tools and automation to support efficient processing of compliance tickets.

There are several challenges in maintaining open source compliance, similar to those faced when establishing baseline compliance. In fact, many of the steps are identical, but on a smaller, incremental scale. We’ll cover recommendations for maintaining compliance in the next article in this series.

Open source compliance

Read the other articles in this series:

The 7 Elements of an Open Source Management Program: Strategy and Process

The 7 Elements of an Open Source Management Program: Teams and Tools

How and Why to do Open Source Compliance Training at Your Company

Basic Rules to Streamline Open Source Compliance For Software Development

How to Raise Awareness of Your Company’s Open Source License Compliance

Win Tickets to Open Networking Summit!

SDxCentral is sponsoring a raffle for tickets to Open Networking Summit — the industry’s premier open networking and orchestration event, which highlights open source initiatives and innovation.

In this registration raffle, four winners will receive a complimentary pass to attend Open Networking Summit 2017, April 3-6 in Santa Clara, California.

Enter now for your chance to attend the conference and hear from networking visionaries, including:

  • Martin Casado – Andreessen Horowitz

  • Amin Vahdat – Google

  • Justin Dustzadeh – Visa

  • Sandra Rivera – Intel

  • And many more

The raffle ends on March 19 at 11:59pm Pacific Time.

From dotCloud to Docker

Have you heard about dotCloud? If you haven’t, I’m going to give you a hint: it is a PAAS company. Another hint: eventually, dotCloud open-sourced their container engine. That container engine became Docker.

This is a quasi-archeological account of some of the early design decisions of dotCloud, some of which have shaped how Docker is today (and how it is not). “How is this relevant to my interests?” you ask. If you are not using containers, and not planning to, ever, then this article will not be very useful to you. Otherwise, I hope that you can learn a lot from our past successes and failures. At the very least, you will understand why Docker was built this way.

Read more at Taos

What Drives Linux Guru Wim Coekaerts? Have Fun, Build Things People Will Use

When Wim Coekaerts is solving problems and building things, he’s happy. When he’s not, he’s not.

In his long career, he’s found joy working on early database appliances, and later guiding Oracle’s effort to make Linux, the open source operating system he’d played with since his school days in Belgium, its OS of record. Now, “Linux has become the operating system of the cloud,” Coekearts says, so he sees lots more fun on the horizon.

Read more at Forbes

Call for Speakers: DevNet Create, May 23-24, 2017 in San Francisco

Do you love to code? Are you a trailblazer in secure app development, IoT or bot app development? Want to share your microservices or container success story? If so, DevNet Create wants you as a speaker at its first annual event May 23-24, 2017, in San Francisco.

DevNet Create is an event sponsored by Cisco that brings together a community of application developers, infrastructure and DevOps engineers, and IT pros who want to define and build modern applications on a programmable infrastructure.

Interested in speaking? Simply visit https://www.papercall.io/devnetcreate2017 by March 23, 2017 to submit your original topic or demo.

Below are some topic ideas to get you started—but don’t just stick to the list. They are looking for creative approaches, interesting ideas, and thoughtful what-ifs. So get to submitting and we’ll see you in San Francisco!

•            How to Design and Build APIs

•            Where Apps meet Infrastructure

•            Where Infrastructure Meets Apps

•            Software Defined Networking

•            Cloud Native, Containers, and Microservices

•            Bots, Chat, APIs and Enterprise Collaboration

•            IoT & Edge Computing

•            Security for Apps and Infrastructure

•            Industry & Vertical Solutions

•            Multimedia, AR/VR, Next Generation Interfaces

•            Analytics & AI

•            UX & Design

Why WebAssembly Is a Game Changer for the Web 

WebAssembly is a new type of code that can be run in modern web browsers — it is a low-level assembly-like language with a compact binary format that runs with near-native performance and provides languages such as C/C++ with a compilation target so that they can run on the web. It is also designed to run alongside JavaScript, allowing both to work together.

In a nutshell

WebAssembly has huge implications for the web platform — it will provide a way to run code written in multiple languages on the web at near native speed, with client apps running on the web that previously couldn’t have done so.

Read more at Mozilla Developer Network

How to Remaster Enterprise Architecture for a Cloud-Native World

You’ll find negative stereotypes for most jobs. “Ambulance-chasing lawyer.”  “Greedy banker.” “Corrupt politician.” One that hits close to home for me? “Ivory tower architect.” You know the type. Focused on pristine diagrams and IT standards instead of real-life concerns. When I was an IT architect, I tried to buck that stereotype. But unfortunately, it’s a reality within many companies and slowing down their required evolution. That doesn’t have to be the case. How can enterprise architects champion the org changes needed to compete with the cloud-natives? Let’s talk about it.

Look at what we ask for from enterprise architects today. I pulled these from public job postings:

Read more at Pivotal

How To Be a Successful DevOps Engineer

DevOps taking the center stage in the software industry, the job role ‘DevOps Engineer’ is buzzing around and today, I have some thoughts that can guide you to become a great DevOps engineer.

What is a DevOps?

The term Devops was coined as a combination of DEVelopers and OPerationS. According to Wikipedia:

DevOps is a term used to refer to a set of practices that emphasize the collaboration and communication of both software developers and information technology (IT) professionals while automating the process of software delivery and infrastructure changes. It aims at establishing a culture and environment where building, testing, and releasing software can happen rapidly, frequently, and more reliably.

Digital transformation is happening in every sector today and if you don’t adapt yourself to the changing technology advancements, your business is likely to die in the coming years. Automation being the key, every company nowadays wants to get rid of repetitive tasks and automate them as much as possible to increase the productivity. Here is where DevOps comes into the picture and however it is derived from the agile and lean tech aspects but still it’s new in the software industry today. 

With the increasing usage of tools and platforms like Docker, AWS, Puppet, GitHub etc the companies can easily leverage automation and succeed their way.

What is a DevOps Engineer?
A major part of adopting DevOps is to create a better working relationship between development and operations teams. Some suggestions to do this include setting the teams together, involving them in each other’s processes and workflows, and even creating one cross-functional team that does everything. In all these methods, Dev is still Dev and Ops is still Ops. 

The term DevOps Engineer tries to blur this divide between Dev and Ops altogether and suggests that the best approach is to hire engineers who can be excellent coders as well as handle all the Ops functions. In short, a DevOps engineer can be a developer who can think with an Operations mindset and has the following skillset:

  • Familiarity and experience with a variety of Ops and Automation tools 
  • Great at writing scripts
  • Comfortable with dealing with frequent testing and incremental releases
  • Understanding of Ops challenges and how they can be addressed during design and development
  • Soft skills for better collaboration across the team

How can you be a great DevOps Engineer?

The key to being a great DevOps Engineer is to focus on the following:

  • Know the basic concepts on DevOps and get into the mindset of automating almost everything
  • Know about the different DevOps tools like AWS, GitHub, Puppet, Docker, Chef, New Relic, Ansible, Shippable, JIRA, Slack etc
  • Org-wide Ops mindset: 

    There are many common Ops pitfalls that developers need to consider while designing software. Reminding developers of these during design and development will go a long way in avoiding these altogether rather than running into issues and then fixing them.  

    Try to standardize this process by creating a checklist that is part of a template for design reviews.

  • End to end collaboration and helping others solve the issues 

  • You should be a scripting guru: Bash, Powershell, Perl, Ruby, JavaScript, Python – you name it. They must be able to write code to automate repeatable processes.

Factors to measure DevOps success

  • Deployment frequency
  • Lead time for code changes
  • Roll back rate
  • Usage of automation tools for CI/CD
  • Test automation
  • Meeting business goals
  • Faster time to market
  • Customer satisfaction %

This is all about DevOps and how to be good at it. 

Understanding the Economics of OpenStack

As anyone involved with managing an OpenStack deployment quickly learns, cost savings and elimination of time-consuming tasks are among the biggest benefits that the cloud platform provides. However, leaders at many OpenStack-focused organizations, including Canonical, believe that the business technology arena is under such tremendous pressure to keep up as Software-as-a-Service, containers, and cloud platforms proliferate, that the true economics of OpenStack are misunderstood. Simply put, a lot of people involved with OpenStack don’t fully understand what they can get out of the platform and the ecosystem of tools surrounding it.

Mark Baker, OpenStack Product Manager at Canonical, provides useful background on all of this  in a recent essay:

“Over the past decade, IT Directors turned to public cloud providers like AWS (Amazon Web Services), Microsoft Azure, and GPC (Google Public Cloud) as a way to offset much of the CAPEX (capital expenses) of deploying hardware and software by moving it to the cloud.  They wanted to consume applications as services and offset most of the costs to OPEX (Operating Expenses).  Initially, public cloud delivered on the CAPEX to OPEX promise. Moor Insights & Strategy analysts [point to] upwards of 45 percent in capital reductions in some cases, but organizations needing to deploy solutions at scale found themselves locked into a single cloud provider, fluctuating pricing models, and a rigid scale-up model that inhibits the organization’s ability to get the most out of their legacy hardware and software investments. Forward thinking IT directors realized they must disaggregate (put into units) their current data center environments to support scale-out. Consequently, OpenStack was introduced as a public cloud alternative for enterprises wishing to manage their IT operations as a cost-effective private or hybrid cloud environment.”

As Baker notes, it can be very challenging with OpenStack to determine where the exact year-over-year operating costs and benefits of managing the platform reach parity, not just with public cloud alternatives, but with their software licensing and critical infrastructure investments. “In a typical multi-year OpenStack deployment, labor makes up 25% of the overall costs, hardware maintenance and software license fees combined are around 20%, while hardware depreciation, networking, storage, and engineering combine to make-up the remainder,” Baker notes.

Indeed, the economic tradeoffs between public cloud solutions  and platforms like OpenStack are complicated enough that many enterprises are running both types of solutions. As Forrester Research reports in a detailed brief on OpenStack economics, 82 percent of OpenStack deployments exist in parallel to other cloud platforms.

So what are some best practices for organizations that want to better understand the economics of an OpenStack deployment? Here are key thoughts from Forrester and Canonical on managing OpenStack efficiently and understanding its benefits:

Canonical: The only way to fully benefit from OpenStack is by adopting a new model for deploying and managing IT Operations… Building a private cloud infrastructure on OpenStack, is an example of the big software challenge. Significant complexity exists in the design, configuration, and deployment of all production ready OpenStack private cloud projects. While the upfront costs are negligible, the true costs are in the ongoing operations; upgrading and patching of the deployment can be expensive.

Forrester: Identify a self-contained project or area of the business. Begin with a pilot project, and use this to build familiarity with OpenStack and any partners with whom you might be working. OpenStack users have stated that working with OpenStack requires significant training in the first six months, especially if you don’t have seasoned OpenStack veterans. Ensure that the pilot — and OpenStack — have a senior champion within the business, such as the chief technology officer. How are other aspects of organizational IT currently managed, and does the rationale behind those historic deployment decisions also apply here? Figure out the right level of vendor support, given your team and your organization’s strategies.

Canonical also offers a free ebook, that breaks down the economics of OpenStack in easily understood ways.

“It is important to keep in mind that OpenStack is not a destination, but rather a part of the scale-out journey to becoming cloud native,” said Canonical’s Baker. “CIOs know they must have cloud as part of their overall strategy. From a long-term perspective OpenStack will remain the key driver and enabler for hybrid cloud adoption. However, IT organizations will continue to struggle with service and applications integration while working to keep their operational costs from rising too much.”

In addition to the ebook from Canonical on OpenStack economics, The OpenStack Foundation has a free online webinar on the topic.

Learn more about trends in open source cloud computing and see the full list of the top open source cloud computing projects. Download The Linux Foundation’s Guide to the Open Cloud report today!