My Top Three Trends for Open Source in 2019 (2/3)

Trend #2 for 2019 in my book is making single-vendor open source, also known as the open core model a.k.a. neo-proprietary open source, work in the world of cloud computing. In this model, a software vendor goes to market using an intellectual property strategy that combines open sourcing of the product with an aggressive copyleft license. This approach nudges potential customers to moving from the free version to a paid-for proprietary version. In 2018, it visibly broke down when industry consensus emerged that cloud providers aren’t affected by copyleft licenses. Software vendors are now working on licenses that close this (so perceived) loophole. Thankfully, the Open Source Initiative remains the main arbiter of what constitutes a valid open source license. While some scoff at this business model, I think it is an important part of the overall open source community as it is the main way to channel venture capital into the creation of open source components.

Continue reading “My Top Three Trends for Open Source in 2019 (2/3)”

My Top Three Trends for Open Source in 2019 (1/3)

Trend #1 that took root in 2018 and will continue in 2019 is the clean-up of the open source supply chain. According to some lawyers, there is little legally valid software left, mostly because of unclear copyright and licenses of open source code in products and components. To clean up this mess, all open source code that makes it into products needs to be labeled and tracked correctly along the supply chain, so that the final product has a chance of being license-compliant. The OpenChain and related projects of the Linux Foundation are trying to do this. This mess is less plastic (pardon the pun) than the garbage pile in the pacific and on our beaches, but probably equally big.

Continue reading “My Top Three Trends for Open Source in 2019 (1/3)”

How my Ph.D. Students Work With Supporting Students (Hint: Not Scrum)

As mentioned in a previous blog post, my Ph.D. students are often experienced software developers who take on the role of a chief programmer in the development of the software system supporting their research. In this work, at any point in time, each of my Ph.D. students is typically supported by 2-7 Bachelor and Master students who contribute to the system under development. Taking a long-term perspective, my Ph.D. students develop quality software rather than throw-away prototypes.

The chief programmer idea is key to making such work successful. While I usually conceive and direct the research, the size of my group has led me to let my Ph.D. students take care of any actual development themselves. (Usually…) In this role, as the chief programmer, they become the central point of coordination and integration of engineering work. In academia, this is a necessity, because an engineering dissertation is typically a multi-year project, while final thesis students, the main source of junior programmers supporting the chief engineer, are only around for six months. Thus, the chief programmer becomes the central technical hub and provider of sustained knowledge of the system under development.

Continue reading “How my Ph.D. Students Work With Supporting Students (Hint: Not Scrum)”

Chief Programmer Teams Alive And Well in Academia

According to Wikipedia, “a chief programmer team is a programming team organized in a star around a “chief” role, granted to the software engineer who understands the system’s intentions the best. Other team members get supporting roles.” Amusingly, this set-up is alive and well in academia, and for good reason. At least my research group is using it and it works well for us.

Continue reading “Chief Programmer Teams Alive And Well in Academia”

Upcoming Industry Talk on Scaled Agile to Support the “Digital Transformation” in the Financial Services Industry by Munir Mahrufi and Sahar Khaksar of Deloitte Consulting GmbH

We will host an industry talk on “Scaling Scrum” in AMOS, our agile methods course. The talk is free and open to the public.

  • by: Munir Mahrufi and Sahar Khaksar, Deloitte Consulting GmbH
  • about: Scaled Agile to Support the “Digital Transformation” in the Financial Services Industry
  • on: January 31st, 2019, 10:15 Uhr
  • at: IAV DigiLab, Hallerstr. 6, 1. OG, Berlin (Charlottenburg)
  • as part of: AMOS speaker series

Continue reading “Upcoming Industry Talk on Scaled Agile to Support the “Digital Transformation” in the Financial Services Industry by Munir Mahrufi and Sahar Khaksar of Deloitte Consulting GmbH”

Upcoming Industry Talk on Building Evolutionary Architectures by Patrick Kua of N26 GmbH

We will host an industry talk on “Building Evolutionary Architectures” in AMOS, our agile methods course. The talk is free and open to the public.

  • by: Patrick Kua, N26 GmbH
  • about: Building Evolutionary Architectures
  • on: January 24th, 2019, 10:15 Uhr
  • at: IAV DigiLab, Hallerstr. 6, 1. OG, Berlin (Charlottenburg)
  • as part of: AMOS speaker series

Continue reading “Upcoming Industry Talk on Building Evolutionary Architectures by Patrick Kua of N26 GmbH”

Upcoming Industry Talk on Introducing Continuous Delivery to the SAP Ecosystem by Benjamin Heilbrunn of SAP SE

We will host an industry talk on “Introducing Continuous Delivery to the SAP Ecosystem” in AMOS, our agile methods course. The talk is free and open to the public.

  • by: Benjamin Heilbrunn, SAP SE
  • about: Introducing Continuous Delivery to the SAP Ecosystem
  • on: December 20th, 2018, 10:15 Uhr
  • at: IAV DigiLab, Hallerstr. 6, 1. OG, Berlin (Charlottenburg)
  • as part of: AMOS speaker series

Continue reading “Upcoming Industry Talk on Introducing Continuous Delivery to the SAP Ecosystem by Benjamin Heilbrunn of SAP SE”

Upcoming Industry Talk on Design Thinking and Agile by Vivekanand Jayakrishnan and Franziska Konnopka of Zalando SE

We will host an industry talk on “Design Thinking and Agile” in AMOS, our agile methods course. The talk is free and open to the public.

  • by: Vivekanand Jayakrishnan and Franziska Konnopka, Zalando SE
  • about: Design Thinking and Agile
  • on: December 13th, 2018, 10:15 Uhr
  • at: IAV DigiLab, Hallerstr. 6, 1. OG, Berlin (Charlottenburg)
  • as part of: AMOS speaker series

Continue reading “Upcoming Industry Talk on Design Thinking and Agile by Vivekanand Jayakrishnan and Franziska Konnopka of Zalando SE”

Scrum’s Product Vision vs. Project Mission

As noted previously, Scrum uses the term product to mean artifact. This is fine, as long as the user of Scrum is a software vendor, developing a product for a market. It is confusing, however, if the user is a consulting firm, performing a custom project for a client. If you are a consulting firm, you are not delivering a product, and every time you hear product, you need to think artifact.

The confusion is worst when we talk about a product vision. As always, there are many competing definitions and confused ones at that, but we can safely assume that a product vision is at least a particular type of vision. About a vision, by definition, we know that it is time-less. It describes an abstract future state that we want to achieve, but never actually can reach. As such, a vision serves as a guiding north star for the decisions we make about on-going work. IBM’s vision is (shortened) “client success”, SAP’s is “improved economy”, etc. Any number of management books expound on what a vision is so you can read more there.

Continue reading “Scrum’s Product Vision vs. Project Mission”

How Project vs. Product Confuses Agile Methods Terminology

In a previous blog post I noted how the terms project and product are being confused in open source. However, it is agile methods, specifically Scrum, where it gets really bad. To recap: A project is a human undertaking to create an artifact. A project, by definition, has a start date and an end date. A product, in contrast, is an artifact (not an undertaking) that is born but typically has no planned end date. Most vendors, selling products to a market, hope they can do this forever.

Continue reading “How Project vs. Product Confuses Agile Methods Terminology”