Jeremy Bennett


Case study: Building a profitable open source business

This post is part of the OSSG series “the role of open source in the UK”, where we collect and publish statements from companies and individuals in the UK regarding their experience with Open Source Software. We welcome any submission to this series. If you are interested, please send an email to Dr Julian Kunkel.

Embecosm's activity over the years

by Dr Jeremy Bennett, Chief Executive, Embecosm

Open source is central to the work of Embecosm, and over more than a decade we have built up a very successful business. In this post I’ll explain how we did it.

About the company

Embecosm Limited was established in 2008, initially to provide free and open source modelling and debug services to system-on-chip designers.  It very quickly became clear that chip designers wanted more than just debug. The company expanded to cover development of the entire free and open source compiler tool chain. More recently we have broadened our expertise to cover operating system development, bringing up open source operating systems of all sorts.

This is Embecosm’s business today, providing open source software development services in our specialist fields.  Much of our business is in the embedded space and very often pre-silicon, hence our continued expertise in modelling. We use everything from high-level functional models through instruction set simulators, cycle accurate models based on Verilog and VHDL, through to EDA event driven simulation.

With bases in the UK and Germany, Embecosm is now the world’s largest independent general open source compiler tool chain developer. We are not the only player in this area, CodePlay in Edinburgh specialise in OpenCL compilers, while AdaCore in France specialises in open source Ada compilers. Siemens in Germany also has a department offering compiler development services.

The business model

Embecosm follows a purely service business model. Customers pay for our engineering expertise to develop their compilers, models and operating systems.  These are all inherently very difficult areas of software engineering, very much the rocket science end of the discipline.  This is core to our business model―it is invariably more cost effective for customers to use our services than to attempt to recruit and manage an in-house team. 

We are not a body shop. We supply a team to solve the problem, bringing in specialists at different times. Early on we probably want assembler and modeling specialists, later on the compiler team get to work, then we need the documentation and training specialists to complete the project.

The scarcity of the skills we offer is critical to driving our business.  The fact that the software is always freely available is important (see “The risk factor” below), but doesn’t allow the customer to solve the problem on their own.

The risk factor

The value of free and open source software to the customer is in the reduction of risk. It costs as much to use Embecosm to develop/maintain a compiler tool chain as it does to buy in a proprietary tool chain.  However unlike the proprietary tool chain, you are not locked in to one supplier. If you wish you can drop Embecosm and use another tool chain supplier with no problem.

Indeed the ability to walk away from Embecosm at any time, is a key reason that customers stay with us. It is a value of free and open source software that is often overlooked, but in a business context can be the most important.

Building profitability

A service business relies on reputation.  This is the case even more for free and open source software, with its basis in open communities. The first three years of Embecosm were not profitable, and mostly spent writing application notes explaining to people how to do all the things we do and talking about these things at conferences. These application notes on integrating GDB, building fast Verilator models, porting Newlib and so on, remain standards for the industry.

But showing people how to do the work themselves, ended up driving business to us. Reading our application notes allowed managers to see how difficult the problem was and that Embecosm had the skills to solve these problems.  It makes the buying decision to use Embecosm services much easier.

We remain completely open with all we do and contribute widely to free and open source projects. Almost every customer asks us to train up in-house staff, which we are happy to do. It provides us with advocates inside the customer who understand our work, and can act as “translators” to others in the customer, allowing us to provide a better solution.  Their experience invariably leads to growing confidence in Embecosm’s skills and a strong bond between customer and supplier engineering teams, which helps both.

We are also unashamed that our skills are valuable. My staff are highly qualified and highly paid, reflecting the extreme scarcity of the abilities we need.  Our charges to customers reflect the value we deliver.

In once case a customer had a team of 10 generalist engineers in India trying to develop a GCC tool chain for 5 years.  Customers continued to complain about the poor quality of the tool chain and eventually we were called in.  By then standard regression testing was flagging over 130 internal compiler errors.  All were fixed by one Embecosm engineer in one month and we then spent a year training up the team in India with the specialist skills they needed to maintain the tool chain.

So we may look expensive by the hour, but when you consider what we deliver in that hour, we suddenly seem very good value.  This is a general principle of business, whether open source or not.  The higher value the services you can provide, the more profitable you will be.

Conclusions

Free and open source businesses can be very profitable, particularly operating in areas where skills are scarce.  Ongoing engagement with the wider community is essential to building reputation, trust and ultimately more business.

Dr Jeremy Bennett is Chief Executive of Embecosm (www.embecosm.com), specializing in the development of free and open source compiler tool chains, operating systems and processor models.  He is author of the standard textbook “Introduction to Compiling Techniques” (McGraw-Hill 1990, 1995, 2003) and holds a MA and PhD in Computer Science from Cambridge University. Since 2017 he has served as Chair of the BCS Open Source Specialist Group.


Inaugural London RISC-V Meetup – July 2019

At this evening meeting in London on Monday 22 July we have three talks with speakers looking at open source in the RISC-V Ecosystems. This is our fifth meeting since 2014 on the subject of RISC-V, but the first to be held jointly with the RISC-V Foundation as part of their global meetup program

This is a joint meeting with the UK Open Source Hardware User Group.

Full details, including how to register are on the events page.


Makerspaces – June 2019

At this evening meeting in London on Thursday 20 June we have two talks, with a total of five speakers looking at makerspace.  We last looked at this topic in April 2015, and in the intervening time the maker movement has evolved often, but not always, for the better.

This is a joint meeting with the UK Open Source Hardware User Group.

Dr Jenny Molloy, Tony Naggs and Anne-Pia Marty of Biomakespace Cambridge will talk on setting up and running a maker space for interdisciplinary work covering both technology and natural science.

Dr Laura James, co-founder of Cambridge Makerspace and Adrian McEwen, founder of DoES Liverpool will provide a critical review of maker spaces and their role in wider society.

Full details, including how to register are on the events page.


Women in Open Source – May 2019

At this evening meeting in London on Thursday 16 May we’ll be welcoming three women, all of whom are pursuing a career in open source.  This is a joint meeting with BCS Women and the UK Open Source Hardware User Group.

Rain Ashford of Goldsmiths University will talk about Prototyping wearables with open source

Pietra F T Madio, a sixth form student at Brockenhurst College will talk about Starting out in open source

Prof Cornelia Boldyreff of the University of Greenwich, past Chair of the BCS OSSG and BCS Council member will talk about A more inclusive way of looking at open source projects.

For full details, including how to register are on the events page.


Open Source FPGA Hardware and Tooling Past, Present and Future – March 2019

In this meeting, held on 21 March 2019 at BCS London, we heard from two speakers on the state of open source FPGA technology.

Once upon a time we could only use proprietary tools and development boards supplied by FPGA vendors, This all changed in 2016 with the advent of the IceStorm opensource toolchain combined with open Hardware like the myStorm board. With the 2nd generation of tools and hardware sophisticated FPGA features are opening exciting avenues for ‘Opensource all the way down’, we hope to provide an update and crystal ball on where some of this could be leading to.

Tools: past to present

David Shah looks at where we have come from with the IceStorm toochain, and looks at how this has devloped recently and expanded Ice40 Lattice support to include new lower power, lower cost, reduced pincount FPGAs to inlcude their Ultra & Ultra Plus range.

Hardware: past to present

Alan Wood talks about the journey through the early history of OpenSource FPGA open hardware from IcoBoard through myStorm too recent UltraPlus offerings recently made available.

Tools: present to future

Icestorm was aimed at a narrow family of Ice40 FPGAS, the new Symbiflow family of tools expands the opensource tooling exponetially. David Shah takes a look at NextPNR which lies at the heart of the toolset and deals with specific FPGA family functionality, in particular he concentrates on the Lattice ECP5 family support he has developed with Project Trellis as part of NextPNR and the recent 1.0 version supporting this new family and high end FPGA features.

Hardware: present to future

What comes next for opensource FPGA hardware, after the success of tinyFPGA and myStorm we are begining to see ECP5 opensource hardware emerging first with Radiona’s ULX3S and being followed up by offerings from both tinyFPGA and myStorm dev board stables, with new hardware comes new features building on NextPNRs tooling like DSP, SerDES IO Gearing and DDR memory etc, Alanplots the course for these new powerfull opesource development boards…

Demos

Time permitting we can show some of what’s possible with the new tools in a brave new ‘Opensource all the way down’ world.

David Shah, @fpga_dave, is a engineer at Symbiotic EDA and a Electronic and Information Engineering student at Imperial College London. He entered the world of open source FPGAs by extending Project Icestorm, the iCE40 bitstream documentation project, to include the newer iCE40 UltraPlus FPGAs. As well developing Project Trellis, he has been involved in the development of a new open source FPGA place-and-route tool, nextpnr.

Alan Wood, @folknology, has been working with parallel distributed programming for several decades. His recent work includes smart grids, 3D printers, robotics, automation, biotec diagnostics and designing FPGA devboards. His current research is focused on machine learning for embedded automation using FPGAs. He is a long term advocate of open source communities, a moderator (aka Folknology) for xCORE, the co-founder of myStorm open hardware FPGA community, as well as a co-founder of Surrey and Hampshire Makerspace.


Open Source Security – February 2019

Our second meeting of the year is an evening on the theme of security and hosted by Cheltenham and Gloucester BCS at the University of Gloucester. We have two talks

  • SCARV: a side-channel hardened RISC-V platform by Dr Daniel Page of the University of Bristol.
  • Open source tools and processes for secure IoT development by Dr Jeremy Bennett of Embecosm.

Full details can be found on the events page.

The evening is free to the attend. For those who cannot be present, the talks will be recorded, but we regret that on this occasion we are unable to offer live streaming.


Open Source Fortran – 15 November 2018

At this evening meeting in Manchester, we’ll be welcoming two experts in open source Fortran compilation.  This is a joint meeting with the BCS Fortran Specialist Group hosted by BCS Manchester Regional Group at MMU Business School  from 6-8pm.

We will have three talks:

  • A Tour of the Flang Fortran Compiler.  Kiran Chandramohn, Arm
  • gfortran – the gnu gcc fortran compiler.  Paul Thomas, Glyme Consultancy Limited

Full details and registration on the event page