How to Select Open Source Components (Diomidis Spinellis, IEEE Computer Column)

I’m happy to report that the fifth article in the new Open Source Expanded column of IEEE Computer has been published.

TitleHow to select open source components
KeywordsOpen Source Software, Licenses, Documentation, Computer Bugs, Software Project Management
AuthorsDiomidis Spinellis, Athens University of Economy and Business
PublicationComputer vol. 52, no. 12 (December 2019), pp. 103-106

Abstract:

With millions of open source projects available on forges such as GitHub, it may be difficult to select those that best match your requirements. Examining each project’s product and development process can help you confidently select the open source projects required for your work.

As always, the article is freely available (local copy).

Also, check out the full list of articles.

Upcoming Industry Talk on Enabling Digital Transformation via Scaling Agile in the Financial Industry by Munir Mahrufi and Liang Que of Deloitte Consulting GmbH

We will host an industry talk on “Enabling Digital Transformation via Scaling Agile in the Financial Industry” in AMOS, our agile methods course. The talk is free and open to the public.

  • by: Munir Mahrufi and Liang Que, Deloitte Consulting GmbH
  • about: Enabling Digital Transformation in the Financial Industry
  • on: December 5th, 2019, 08:30 Uhr
  • at: TU Berlin, HFT TA 441 (Lehrstuhl Schieferdecker, Einsteinufer 25)
  • as part of: AMOS speaker series
Continue reading “Upcoming Industry Talk on Enabling Digital Transformation via Scaling Agile in the Financial Industry by Munir Mahrufi and Liang Que of Deloitte Consulting GmbH”

Enabling Open Innovation with Open Data using the JValue Open Data Service

Today I gave my JValue Open Data Service talk at USM (University of Sciences, Malaysia, at Penang). I am grateful for the opportunity and the recording.

Abstract: Open data has the potential to create significant practical value for its users through open innovation. Yet, to realize this value, we need an open ecosystem, next to open data, that allows app developers to create that value. In this talk I present my view of this open ecosystem of open data and how it should be structured. I then present the JValue Open Data Service (ODS), an open source software under development at my research group, that provides a key piece of this ecosystem. The goal of the JValue ODS project is to enable open innovation through app developers.

Continue reading “Enabling Open Innovation with Open Data using the JValue Open Data Service”

Why Self-Enlightened Contribution to Open Source Projects is Difficult

Self-enlightened contributions to open source projects are (code) contributions that come about because a company chooses to contribute. The opposite is forced open sourcing, which typically happens when a reciprocal license like the GPLv2 forces a company to lay open some source code.

Self-enlightened contribution is hard!

Continue reading “Why Self-Enlightened Contribution to Open Source Projects is Difficult”

Do You Need a Macbook to Learn to Code? (Coding vs. Systems Building)

Someone on Twitter asked this question and people loved to weigh in. Most answered: “No, just get an old $200 laptop.” While not wrong, this answer misses the point. Coding, here, apparently means reading and writing code. For that, indeed, any cheap computer will do. However, being able to read and write code does not mean you will be able to build and ship systems, which is what customers pay for.

Continue reading “Do You Need a Macbook to Learn to Code? (Coding vs. Systems Building)”

Why Software Engineering is Not Like Assembly Line Work

The other day I ran into one of the oldest software engineering tropes in the book: That software engineering should be more like work in a factory, and that developers are best equated to assembly line workers who put together a software product by assembling components to a specification. I wasn’t sure whether I should be amused or irritated. In any case, this nonsensical idea has long been debunked by Peter Naur, before it even took roots in later work by others. In Naur’s words, programming is (best viewed as) theory building, and this gets to the heart of the matter.

Continue reading “Why Software Engineering is Not Like Assembly Line Work”

Agile Methods and the Magic Triangle

In software engineering, the magic triangle is a well-known concept to illustrate the relationship between scope, time, and cost of a software development project. Of the three (scope, time, cost), pick two, and the third will magically follow. (It is determined by the other two.) Scope means features (or delivered functionality), time means duration or deadline, and cost typically means number of developers or, more abstractly, available labor.

Continue reading “Agile Methods and the Magic Triangle”

Open Source Expanded (New Column)

Open Source Expanded is the name of a new column (open-ended article series) that I’m editing for IEEE Computer Magazine. Expect a new article on open source and how it is changing the world every two months!

The first article on the innovations of open source was just published, kicking of the column. I could not negotiate an open license, however, all articles will be free to read and download.

Continue reading “Open Source Expanded (New Column)”