How Software Engineering Teaching and the Legal Department Collide

Any non-trivial university has a legal department, often several (at least one for matters of teaching and one for matters of fundraising). The legal department concerned with teaching has to protect the university from lawsuits by students. By extension, this department protects students from professors who ask too much of them. Often, there may be good reasons for this. Sometimes it gets in the way of effective teaching.

Continue reading “How Software Engineering Teaching and the Legal Department Collide”

Inverted Research Funding

Most people believe that scientists first perform basic (“fundamental”) research and then perform applied research. Basic research delivers the fundamental insights that then get detailed and refined as they hit reality in applied research. Along with this comes the request that basic research funding should be provided by the country (because few companies would ever pay for it) before industry kicks in and supports applied research. Nothing could be further from the situation in my engineering process research.

Continue reading “Inverted Research Funding”

Why Open Source is Good for Your Economy (FOSSC19 Recap)

It is no secret that software is everywhere. No traditional product has remained untouched, whether the product is being produced using software or whether software is an integral part of it. As part of this wave of digitization, established vendors from outside the software industry need to avoid that someone else will reap all the profits from their products. That someone else would be software companies that supply needed components. In particular software platforms can have such network effects that their providers can reach a monopoly position so that dependent vendors who need the platform will face a diminishing profit margin.

Continue reading “Why Open Source is Good for Your Economy (FOSSC19 Recap)”

Free-to-Use, Unless You Are a Cloud Provider (The New Strategy?)

On the heels of my talk about the current licensing challenges to single-vendor open source firms, I want to discuss the resulting strategy for vendors selling to developers.

Single-vendor open source firms go to market by providing software they developed to the world under an open source license. The goal is to create a large non-paying user base, from which customers are acquired using a variety of incentives. One type of single-vendor open source projects are application component projects like MongoDB (a NoSQL database) or Confluent Platform (a stream processing platform based on Apache Kafka). It is these types of companies which ran into licensing problems.

Continue reading “Free-to-Use, Unless You Are a Cloud Provider (The New Strategy?)”

Why Now? And Who? The Struggle Over Single-Vendor / Open-Core Licensing

In yesterday’s talk I reviewed the current licensing struggle of single-vendor open source firms. Single-vendor open source firms go to market by providing software they developed for free, under an open source license, while also offering a commercially licensed version of this software, possibly with extensions and services that customers may want to pay for. Because of the open source version of this software, large cloud vendors can compete with the original vendor for running this software as a service. They did this so well that some single-vendor firms decided to change their future licensing to a proprietary license to stall the competition, irking the open source community and creating a backlash on many sides.

Continue reading “Why Now? And Who? The Struggle Over Single-Vendor / Open-Core Licensing”

The Importance of Product Management

Another role or function that is often confusing to Germany high-tech companies is product management. Startups tend to get it right these days, but large organizations often remain unfazed by a lack of strong product management.

A product manager is responsible for defining the product innovation and associated business plan (strategic product management) as well as working out features to a level of detail (technical product management) so that they can be passed on to engineering. As the saying goes,

A product manager is responsible for building the right product, while an engineering manager is responsible for building the product right.

Continue reading “The Importance of Product Management”

CTO vs. VP of Engineering

In tech companies, startups and large companies alike, of the many roles you need to define, two seem to be particularly confusing to German startups: The CTO and the VP of Engineering role. Many German startups I’ve seen simply have a person titled CTO who does both (and sometimes neither). These two roles are very different! They require different skill sets and while temporarily one person may be able to fill both shoes, longer term they are better filled by two different people. In more detail:

Continue reading “CTO vs. VP of Engineering”

Escalating Levels of Complexity in Inner Source Projects

Yesterday, I discussed what makes a good pilot project in inner source. The main thrust of the suggestion was not to start with a big bang but rather to choose a relevant but not too large project. This begs the question of complexity of projects, specifically viewed from an inner source perspective. How should you escalate and grow your ambition for inner source projects? I see a 1 + 3 structure of levels.

Continue reading “Escalating Levels of Complexity in Inner Source Projects”