Archive for software trends

My Retirement Message to All of You

Tom Petrocelli

Well, best to rip off the band-aid.

I’m retiring at the end of the year. That’s right, on January 1, 2021 I will be officially and joyfully retired from the IT industry. No more conferences, papers, designs, or coding unless I want to. Truth be told, I’m still pretty young to retire. Some blame has to be laid at the feet of the pandemic. Being in the “trend” industry also sometimes makes you aware of negatives changes coming up. The pandemic is driving some of those including tighter budgets. This will just make everything harder.  Many aspects of my job that I like, especially going to tech conferences, will be gone for a while or maybe forever.

I can’t blame it all on the pandemic though. Some of it is just demographics. Ours is a youthful industry with a median age of roughly mid to early 40’s. To be honest, I’m getting tired of being the oldest, or one of the oldest people in the room. It’s not as if I’m personally treated as an old person. In fact, I’m mostly treated as younger than I am which means a certain comfort making “old man” jokes around me. No one thinks that I will take offense at the ageism, I suppose. It’s not really “offense” as much as it’s irritation.

There will be a good number of things I will miss. I really love technology and love being among people who love it as much as I do. What I will miss the most is the people I’ve come to know throughout the years. It’s a bit sad that I can’t say goodbye in  person to most of them. I will especially miss the team here at Amalgam Insights. Working with Hyoun, Lisa, and everyone else has been a joy. Thanks for that you all.

My career has spanned a bit over 36 years (which may surprise some of you… I hope) and changes rarely experienced in any industry. When I started fresh from college in 1984, personal computers were new, and the majority of computing was still on the mainframes my Dad operated. No one could even imagine walking around with orders of magnitude more computing power in our pockets. So much has changed.

If you will indulge me, I would like to present a little parting analysis. Here is “What has changed during my career”.

  1. When I started mainframes were still the dominant form of computing. Now they are the dinosaur form of computing. Devices of all kinds wander the IT landscape, but personal computers and servers still dominate the business world. How long before we realize that cyberpunk goal of computers embedded in our heads? Sooner than I would like.
  2. At the beginning of my career, the most common way to access a remote computer was a 300 baud modem. Serial lines that terminals deployed to speak to the mainframes and minicomputers of the times were also that speed. The bandwidth of those devices was roughly 0.03 Mbps. Now, a home connection to an ISP is 20 – 50 Mps or more and a corporate desktop can expect 1 Gbs connections. That’s more than 33 times what was common in the 80s.
  3. Data storage has gotten incredibly cheap compared to the 1980s. The first 10M hard drive I purchased for a $5000 PC cost almost US$ 1000.00 in 1985 dollars. For 1/10 of that price I can now order a 4T HD (and have it delivered the next day.) Adjusted for inflation that $1000 HD cost ~$2500 in 2020 dollars. That’s 25 times what the modern 4T drive costs.
  4. Along with mainframes, monolithic software has disappeared from the back end. Instead, client-server computing has given way to n-Tier as the main software platform. Not for long though. Distributed computing is in the process of taking off. It’s funny. At the beginning of my career I wrote code for distributed systems, which was an oddity back then. Now, after more than 30 years it’s becoming the norm. Kind of like AI.
  5. Speaking of AI, artificial intelligence was little more than science fiction. Even impressive AI was more about functions like handwriting recognition, which was created at my alma mater, the University at Buffalo, for the post office. Nothing like we see today. We are still, thankfully, decades or maybe centuries from real machine cognition. I’ll probably be dead before we mere humans need to bow to our robot overlords.
  6. When I began my career, it was very male and white. My first manager was a woman and we had two other women software engineers in our group. This was as weird as a pink polka dotted rhinoceros walking through the break room. Now, the IT industry is… still very male and white. There are more women, people with disabilities, and people of color than there was then but not quite the progress I had hoped for.
  7. IBM was, at that time, the dominant player in the computer industry. Companies such as Oracle and Cisco were just getting started, Microsoft was still basically a garage operation, and Intel was mostly making calculator chips. Now, IBM struggles to stay alive, Cisco, Oracle, Intel, and Microsoft are the established players in the industry and Amazon, an online store, is at the top of the most important trend in computing in the last 20 years, cloud computing. So many companies have come and gone, I don’t even bother to keep track.
  8. In the 1980s, the computer industry was almost entirely American, with a few European and Japanese companies in the market. Now, it’s still mostly American but for the first time since the dawn of the computer age, there is a serious contender: China. I don’t think they will dominate the industry the way the US has, but they will be a clear and powerful number two in the years to come. The EU is also showing many signs of innovation in the software industry.
  9. At the start of my career, you still needed paper encyclopedias. Within 10 years, you could get vast amounts of knowledge on CD’s. Today, all the world’s data is available at our fingertips. I doubt young people today can even imagine what it was like before the Internet gave us access to vast amounts of data in an instant. To them, it would be like living in a world where state of the art data storage is a clay tablet with cuneiform writing on it.
  10. What we wore to work has changed dramatically. When I started my career, we were expected to wear business dress. That was a jacket and tie with dress slacks for men, and a dress or power suit for women. In the 90s that shifted to business casual. Polo shirts and khakis filled up our closets. Before the pandemic, casual became proper office attire with t-shirts and jeans acceptable. At the start of my career, dressing like that at work could get you fired. Post pandemic, pajamas and sweatpants seem to be the new norm, unless you are on a Zoom call. Even so, pants are becoming optional.
  11. Office communications has also changed dramatically. For eons the way to communicated to co-workers was “the memo.” You wrote a note in long hand on paper and handed it to a secretary who typed it up. If there was more than one person, the secretary would duplicate it with a Xerox machine and place it in everyone’s mailboxes. You had to check your mailbox everyday to make sure that you didn’t have any memos. It was slow and the secretaries knew everyone’s business. We still have vestiges of this old system in our email systems. CC stands for carbon copy which was a way of duplicating a memo. In some companies, everyone on the “To:” list received a fresh typed copy while the CC list received a copy that used carbon paper and a duplicating machine. As much as you all might hate email, it is so much better (and faster) than the old ways of communicating.
  12. When I started my first job, I became the second member of my immediate family that was in the IT industry. My Dad was an operations manager in IBM shops. Today, there are still two members of our immediate family that are computer geeks. My son is also a software developer. He will have to carry the torch for the Petrocelli computer clan. No pressure though…
  13. Remote work? Ha! Yeah no. Not until the 90s and even then, it was supplementary to my go to the office job. I did work out of my house during one of my start ups but I was only 10 minutes from my partner. My first truly remote job was in 2000 and it was very hard to do. This was before residential broadband and smartphones. Now, it’s so easy to do with lots of bandwidth to my house, cheap networking, Slack, and cloud services to make it easy to stay connected. Unfortunately, not everyone has this infrastructure nor the technical knowhow to deal with network issues. We’ve come a long way but not far enough as many of you have recently discovered.

So, goodbye my audience, my coworkers, and especially my friends. Hopefully, the universe will conspire to have us meet again. In the meantime, it’s time for me to devote more time to charity, ministry, and just plain fun. What can I say? It’s been an amazing ride. See ya!

Open Usage Commons is Just Wrong

I have to admit, that’s I’ve been brooding about this for two days now. Yesterday, July 9, 2020, Google announced the creation of the Open Usage Commons organization. On the surface, the OUC (pronounced “uc”? Ooc?) seems like just another one of the many not-for-profits formed to assist an open source community to develop and license software created by many companies together. They announced three projects would be part of OUC, Istio, Angular, and Gerrit. So far pretty normal for moving open core to real open source with independent governance.

Except it’s not. What seemed redundant at best is much more nefarious. The OUC (oh you cee? It’s a bad name…) only holds the trademarks of these open source projects. The copyrights and potentially patents are held elsewhere. It’s like owning a car but someone else owns the paint. Why would anyone want this?

To get to why this is so odd, we need to talk about intellectual property. There are three main types of intellectual property (IP) in the US system, trademarks, copyrights, and patents. All three are meant to protect a different form of intellectual output or ‘art”. A software product may be protected by a patent but it’s not that common. Patents need to be unique inventions and are typically physical products. There is a type of patent, a process patent, that applies to some software, but it is not how the majority of software is protected. This has been an ongoing issue with software for 30+ years. Patents don’t’ really work for software.

Copyrights protect artistic works such as art and writing. Software is typically protected by copyrights since it is an ephemeral “written” work. The ability to use a copyrighted work, including open source software, is controlled by licenses. In fact, what differentiates open source from proprietary software is the license, which grants the right to use and modify the software for free as long as you follow the license. A typical component of an open source license is the requirement to submit changes made to the software to the community to see if they can benefit everyone.

Finally, trademark protections are for the outward identification of an entity or product within a domain. Logos, names, graphics that identify something, these are trademarks. This blog is protected by copyright, as a written work, and the site name and logos via trademarks.

Software as a product is protected primarily by copyrights and trademarks. The code is protected by copyright and the name and accompanying identifying graphics via trademarks.

Now this is where things get weird. The OUC (Oh oo cay? I really hate the name…) exists to manage only the trademarks of open source projects. This means that the copyrights for Istio, Gerrit, and Angular are held by some other organization or company, and the trademarks by OUC (I’ve run out of jokes about the name.) Separating the IP into multiple organizations, and hence multiple licenses, seems confusing at best. This is like financial derivatives where mortgage interest and principle are stripped apart from each other and sold separately. We remember how well that worked in the 2000s.

At worst, this is a way to control who can actually use open source software without actually saying so publicly. You may have the right to use and productize software such as Istio, as Red Hat, Rancher, and others have done, but not be given the rights to use the name without a second license. That has two effects. First it requires separate licenses and hence negotiations for different parts of the total IP. The open source license will give the licensee rights to the copyright but the OUC can refuse the trademark license.  Second, it creates a situation where license may not always agree and could hinder the ability to market the software. You could then have your open source ducks in a row but be stuck in negotiations with OUG. While all of that is possible, that’s not even the worst part. What’s worse is that it allows Google through the OUC to claim independent governance for the projects when it’s really only the trademarks.

Istio is a prime example of this problem. The cloud native community has, for some time, been expecting that the Istio software would be given to the CNCF, just like Kubernetes.  The fact that this hasn’t happened yet has been a drag on Istio’s adoption and called into question it’s future viability. Needless to say, the cloud native community is perplexed and annoyed by this move. CNCF is very much capable of managing both the copyrights and trademarks of Istio, along with the project itself. Even if the copyrights for Istio eventually end up with the CNCF or Apache Software Foundation or some other established foundation, the OUG will have the trademarks. That means two licenses for anyone trying to productize Istio, something CNCF can accomplish with one. At best, it’s needless complexity.

So, here’s my advice to the communities that have been working on these projects. If at all possible, immediately fork the software into another project and join an established not-for-profit. If that’s not possible then abandon it. Vendors will have to create new distributions. While that’s lousy, it’s worse to be a part of something as suspicious and with such a monumentally bad name as OUC. You know, maybe the name is code for Owned Universally by Corporations.