Influential Moments in Computing

During my life, many remarkable things have happened. Numerous software technologies and services that we take for granted today were invented. Some of them are not really that old, given how important they are today, some even became part of our language. The way we live today has changed substantially over the last 40 years due to software and technology. While many influential moments look like incremental steps, there were also absolutely disruptive changes.

YANG Versioning Update

In a previous blog post (which I wrote about three years ago), I wrote about the consequences of adding version numbers to the YANG naming scheme. The take away message was that doing so has major consequences also for the protocols that are used to manipulate YANG defined data. Meanwhile, a concrete proposal has appeared to change the YANG versioning rules and to introduce semantic version numbers. Hence it is a good time to look at this topic again.

Interface and Zone Names

Network interfaces are identified by a numeric interface index or an interface name. The definition of interface indexes and names goes back to the early days of SNMP, see for example RFC 1066 (published in 1988). In the late 1990s, a scoped address architecture was introduced by RFC 2373 (published in 1998), and with it came zone indexes and zone names, both were introduced in RFC 4007 (published in 2005).

Gift Cards Dialogue with a Scammer

The following email exchange took please end of March 2021 between me and someone who claimed to be be one of my bosses. (The name appearing below is a pseudonym in order to avoid any confusion with real persons.) Date: Tue, 30 Mar 2021 01:42:01 -0700 From: David Gammas <> To: Juergen Schoenwaelder <> Subject: I need a help, email me back asap Regards, Prof. Dr. David Gammas Dean Sent from Iphone The email looked a bit odd to me (no subject line, email coming from an unknown @gmail.

Networking History

There are several attempts to record the history of networking or more specifically the Internet. One of these efforts is run by Russ White, who is conducting interviews with people that have contributed to the networking history.

Programming Languages

People often have strong opinions about programming languages and so do I. Well, perhaps a bit less strong than others. Yesterday I took a moment to reflect about the things I liked and disliked through my journey with different languages. I started to write things down, and I decided to share my notes. This likely has little value for anyone, do not expect any deep insights here. BASIC (late 1970s) I first touched what we call a “computer” these days in the late 70s.

When everything is a table...

It is perhaps a side effect of getting older that I spent more and more time on administrative issues and as a consequence I interact more frequently with people working in administrative offices. The more I get to see how they work, the more I am realizing how strange computer scientists are. One of the first rules they seem to learn in business administration is that everything can be made to fit into a two-dimensional table.

YANG Versioning

Introduction The YANG data modeling language [RFC7950] and the associated protocols NETCONF [RFC6241] and RESTCONF [RFC8040] use a naming scheme that essentially consists of tuples of the form (module, path). The tuple (ietf-system, /system/contact) is an example uniquely identifying the leaf /system/contact in the YANG data tree of the module ietf-system. (The module may be identified by the module name or a module namespace but since there is 1:1 mapping between the two, the difference is not relevant for the discussion here and we simply use the module name.

Surveillance Capitalism

While reading Geoff Huston’s excellent article “DNS Privacy and the IETF” (Internet Protocol Journal 22(5), July 2019), I came across the term ‘surveillance capitalism’, coined by Shoshana Zuboff (Harvard Business School in Cambridge).

Cybersecurity Crisis

The software crisis in the late 1960 and early 1970s was driven by the challenge of creating useful and efficient computer programs in a planned engineering process, that is in a well defined amount of time and with predictable costs. Software engineering has evolved as a discipline since then and we have far better tools and techniques in place today for a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software.