Made Manifesto

III. Open Source, Open Attitude

May 16, 2017

Wherever possible, Made favours open-source platforms and open standards for development and delivery.

That’s not to say that there is no place for proprietary technology. Sometimes a singular vision for product can be diluted by collaboration, and perhaps that’s historically been best exemplified by Apple’s products. Software targeted at virtual, commercial markets, such as ticketing, might be best served by proprietary tech. But when it comes to the plumbing of the Internet, we think open source won the argument some time ago.

With open source development stacks, the barrier to entry for ‘kicking the tyres’ is low

When considered from a budgeting perspective, the most obvious difference is the sticker price. It might take more than a little digging to find what the proprietary price is, and often it’s eye-watering compared to the $0 open source equivalent. But to focus on that number exclusively is naive. Open source is not always as user-friendly and the total cost of ownership, which includes installation and maintenance, needs to be considered.

The real advantage to open source is that you can be part of the development conversation. Maybe that’s getting your must-have feature onto a product backlog. Or maybe you need to be involved in getting a bug fixed in a Slack channel at 3AM when you’re trying to mitigate packet-loss on a network somewhere. Whilst IT departments might prefer the peace of mind of an enterprise support contract, that’s really just insurance. We find open source communities to be more responsive and creative. Thriving open source communities want to make the Internet a better place for users and for developers.

When you work with open source development stacks, the barrier to entry for ‘kicking the tyres’ is low. You don’t need to handover credit card details; you don’t need to evaluate cost benefit; you don’t even need to fill in a corporate enquiry form to get up and running. GitHub is the default medium for getting stuck-in. This encourages developers to consider their options for solving the development problems of the day. When you’re tied into a proprietary development stack you look to that vendor to solve all of your problems. When all you have is a hammer, every problem starts to look like a nail. You become cut off from development and architecture patterns used by the developer community at large. A kind of vendor-centric Stockholm Syndrome kicks in.

Issues of scale are at the heart of open source projects that power Internet infrastructure

Another key advantage to open source, and one closer to the heart of our clients’ concerns, is that it’s more likely to scale. That’s because issues of scale are at the heart of open source projects that power Internet infrastructure. Whilst IIS is a fine web server, and .Net is a fine software framework, Microsoft’s target market is corporate IT departments. Its defaults are set up for corporate Intranets - steady, medium levels of traffic. In contrast, the websites of our clients are characterised by moderate traffic interspersed with extreme traffic levels, with no warmup period. You won’t find a huge amount of accessible knowledge about scaling the Microsoft stack from a casual Google search, because it’s not a problem most of those developers are facing. It’s not that the stack can’t scale, it’s that it’s not really in the culture.

Whilst it’s possible to run proprietary operating systems on top of Amazon Web Services, it goes against the grain, because the lingua franca of cloud technologies are the open-source stacks. You will find it much easier to adopt the patterns of AWS if you’re using some variant of the trusty LAMP stack.

Under its new management, Microsoft is becoming increasingly developer friendly, and has steadily adopted some of the practices of open source. At the same time, an increased usage of software as a service, and microservice architectures has led the OS community to be less zealous in its pursuit of GPL licensing across the board. So the picture is moving. ‘Openness’ might increasingly be about a willingness to document and publish APIs, rather than distributing source code per se. Either way, we prefer to use tech that’s open.

Required Reading

  • CentOS a community-driven free software effort focused on delivering a robust open source ecosystem.
  • Nginx helps you deliver your sites and apps with performance, reliability, and scale. 
  • SilverStripe is the intuitive content management system and flexible framework loved by editors and developers alike.
  • Varnish a web application accelerator also known as a caching HTTP reverse proxy.
  • Symfony The standard foundation on which the best PHP applications are built. 
  • AngularJS an open-source front-end web application framework.
  • React a JavaScript library for building user interfaces.

Next month: Agile, Delivery, Robust Governance