Category Archives: Smalltalk

Linux and the Speed of Innovation

Although I have been a Linux person since 1995, I have come to like FreeBSD a lot. Primarily because two of my major systems are based on it. As my firewall I have been using pfSense for a number of years, and for storage it is FreeNAS. And both have never let me down, neither in terms of stability nor regarding their functionality.

Now the company behind FreeNAS (iXsystems) has announced a while ago, that they will move to Linux as the underlying operating system for their future core product. I am not sure I welcome this change that much. I can understand that simply for available know-how iXsystems want to do this switch. Plus the hardware vendor support is obviously broader and the community also does their part in testing. But, with some level of exaggeration,  Linux (not the kernel but adjacent things like systemd) has become kind-of the JavaScript framework of *nix systems. What I mean by that is that I personally perceive the rate at which things are re-done as too high for my liking. Just like every year multiple JavaScript frameworks appear that do the same thing as twenty others, just differently.

While there is merit to improving things, stability is often more important. And stability not only means that things work as expected. But also the rate of change is a factor. If a new framework saves me 20% development time that sounds great. But in the enterprise evolution, and by that investment protection, is typically what gets you the much better ROI. Because the 20% development improvement are more than eaten up by effort in other areas (esp. operations).

Happy New Year!

After a short break over the holidays, I am back and would like to wish my readers a Happy New Year and all the best for 2021. I will do my best to keep the weekly cadence for new posts. In addition, I am currently in the process of planning a number of videos. The topics are not final yet, so please feel free to come forward with topics, which you would like to see covered.

 

New Camera

Although I truly like good photographs, I have never been more than the typical traveler with a small point-and-shoot camera or just a smartphone. The last time that I bought a digital camera was in 2008, just to illustrate this. But for a number of months I have been looking into this now. Initially I had leaned towards getting an older DSLR that had been pretty much high-end when it came out. But size and weight of camera and lenses eventually pulled me away from this idea. So I finally ended up with a Sony Alpha 6400 (amazon.com and amazon.de affiliate links) .

The reason was basically a combination of the technical features and the relatively small size. The latter is pretty important for me, although the camera comes with a grip that is smaller than I would like. But hey, you can’t have it all. In total this camera should help me get started quickly (yes, right now I am using everything in auto) and then grow into truly learning things. Below is one of the first pictures that I took in our garden over the weekend. Expect more to come …

A Techie’s View on Marketing

As a very technical person I have a somewhat unusual view on marketing. I do not buy into the “utterly useless” verdict that some technical folks have on marketing. But I also think that, probably just like us techies, some marketing folks overrate the importance of their domain. And I should probably add here that this post is written with enterprise software as the product category in mind. So naturally, a lot of the details will not match low-price consumer products.

In a nutshell I think that it is marketing’s job to attract (positive) attention of potential buyers. This can happen on several levels, e.g. brand or product marketing, online and print media, etc.  It also often includes special events and being present on trade shows. And last but not least, a relatively recent thing is called developer relations, where hard-core technical people are the specific target audience.

All these activities have the common goal to present a coherent and positive message to the (prospective) customer. The different stakeholders have vastly different demands, because of the perspective they take on the product (in this writing that always means services as well) and their background. So, put simply, they all need a message tailored to their need, which, at the same time, must be consistent with all the other versions for the other target channels.

On a high level that is not such a big deal. But at a closer look the different messages should not only be consistent but also be linked together at the correct points. Imagine a conversation where you just told a VP of logistics why your product really provides the value you claim. If you are then able to elegantly look over to the enterprise architect and explain why the product fits nicely into their overall IT strategy, that is a huge plus. And if you can then even bring the IT operations manager on board, with a side note about nice pre-built integrations with ITIL tools, you have done a really great job.

Some people will probably say that the hypothetical scenario above goes beyond marketing. I would say that it is beyond what a typical marketing department does. But the interesting question is where the content for such a conversation comes from. Is it the marketing department that employs some high-caliber people that are capable to bridge the various gaps? Or is it the sales team that has prepared things as an individual exercise (which often means that it is a one-off)?

The choice will greatly influence at least two critical KPIs. Cost of sales and lead conversion rate. The former is rather obvious, because it is about re-use and efficiency. But, as it is so often, the latter is much more critical because here we talk about effectiveness. Or in other words: It hurts much more if the deal is lost after having spent thousands of Euros or Dollars, than if we had to pay an additional 500 bucks to have an additional presentation be made that secures the deal.

This is in fact one of the things where in my view too many people have a predisposition for the wrong thing. Many will gladly jump onto how something could be done better, cheaper, etc. But relatively few will take a step back and ask whether it is the right thing to do in the first place.

The critical thing is that the various marketing messages are consistent with one another and, much more importantly, with the post-sales reality. Putting “lipstick on a pig” is not good marketing but somewhere between bullshitting and fraud. And the most precious thing in customer relationship is trust. So unless you need a deal to literally survive the next few weeks, you should resist the temptation to screw your customer. Word gets around …

Corona Virus: Careless People

I had not planned to write something on the Corona virus. What meaningful content could I produce that was not out there yet? But the point has come where I need to reflect on a few things for myself. So why not share this …

My overall take is that there is a remarkable number of people out there who combine ignorance (I only believe what I see and/or understand) and lack of compassion (it’s ok as long as I don’t die). Or is it simply selfishness? I mean, how can anyone in their right mind accept the fact that there is a risk of someone else dying, just because he or she “needs” to  party?

When I grew up, my parents (born in the early 1940s) would occasionally talk about things they remembered from their early childhood. E.g. the extreme winter of 1946/47 where it was so cold in the house that water froze in the jar over night. Or how it was common to walk to school for at least 30 minutes one way regardless of the weather. It never frightened me, but in hindsight I guess that it instilled a feeling of being thankful for what my sister and I did not have to endure.

Both my parents had had a happy childhood. Very modest by today’s standards, but with loving parents that were understanding and forgiving. But there had also been rules and all this was passed on to us children (born in the mid-1970s). So my sister and I learned a decent amount of discipline, but there was also a lot of freedom and fun.

In addition we experienced a few setbacks that our parents had carefully selected for learning. During those “exercises” it was always clear to us that nothing catastrophic would come our way. But we learned that life is not always fair, that we do not always get what we want (may we deserve it or not), and that we are not “special”. (We knew that we were special for our parents, though.) All in all this made us somewhat modest, resilient, and compassionate.

What I have often seen in education over the last 15 to 20 years is that parents long to make their children happy all the time. To keep any hardship away from them. This is done with the best of intentions, but it is not the parents’ job. What they need to do is prepare the children for an independent life. Yes, that includes fun, freedom, a safe harbor, etc. But it also requires learning how to deal with rules, frustration, setbacks, and all sorts of challenges.

Most importantly children need to learn that it is not always about them. That they are part of a community (in fact of many communities with a different role in each of them) where it is often necessary to compromise. Personal freedom has its limits where it affects others in a negative way. But how can children develop a sense for this, if they get what they want all the time?

The teenagers that go out and party, risking to infect others who might die as a consequence, are not the ones to blame. Responsible are those who failed to instill the right values and behaviors into them. Yes, that may include the parents. But society as  a whole is to blame as well. And this is where I have hope that at least one positive thing may come out of the Corona crisis (although the price is terrible). That we will start to reflect on what is critical for society as a whole and how to make it part of our lives.

Good luck to all of us!

Understanding the Problem

In recent weeks I have come across a number of readings and videos, which brought forward something that, in hindsight, had been nagging me for a very long time. Unfortunately I cannot provide a list of said material, because it has all happened subconsciously and only just “erupted” a few minutes before I started writing this.

The subject in question is the relevance of understanding a given problem for determining a solution. This sounds totally obvious if not even a bit silly, I admit. How would anyone be able to work on a problem that is not understood? But it becomes less silly if we re-phrase things a little bit.

So far the wording implied a somewhat binary view: Either the problem is understood or not. But in reality very little is truly binary. So instead we could say that the level of understanding of a problem is the primary driver for the outcome of the attempt to solve it. Admittedly, this still sounds pretty obvious.

The next stage in dissecting would be to say that a problem needs to be understood well enough to find a sufficient solution. And here it starts getting interesting, since we basically have an equation with two variables.

The first is about being “sufficient”. Because of resource constraints most problems will be approached with the aim to apply only a “just good enough” solution. In my profession (software engineering) this usually means a quick fix rather than a clean approach with refactoring and all the other good stuff.

What I personally consider more impactful, though, is the “well enough”. Most people I have met so far, do happily go for the first explanation of a problem and consider it a sufficient basis for determining how it should be approached. But in many cases this means only that the symptom has been identified correctly. Neither has the direct cause for the symptom been found, nor the root cause. I see several reasons why people jump onto the “obvious” reason so eagerly rather than to dig in.

  • Different layers: Like in medicine the symptom, the direct cause, the indirect cause(s), and the root cause can be in different “hemispheres”. In business this could be customer churn, caused by bad customer support, caused by a missing link in a process, caused by misalignment of two separate organizational units, caused by personal animosity between their bosses.
  • Motivation and personal objectives: Unless people have a mind that genuinely strives for perfectionism, they will factor in their personal objectives to determine how much energy to put into something. And in most cases this simply means to invest as little effort as possible.
  • Importance not considered high enough: While the personal objectives point above is, at its core, about a selfish decision to optimize personal gain, this is about a perceived objective lack of importance. If I genuinely believe that something is more or less irrelevant, why would I bother (irrespective of personal gain)?
  • Happiness to have found anything: This is basically about impulse control. Rather than exert self-control and think about whether or not there might be other and/or additional aspects, people simply jump onto the first thing that comes their way.
  • Lack of knowledge: The difference to the happiness point is purely the motivation. While the result is the same, the reason here is sheer necessity, since people do not know enough on the subject. So they are just glad to have come up with something at all.

When you follow the line of argument, you will have the fundamental reason why larger organizations so often struggle to even solve the simplest challenges in a proper way. Instead you will mostly see a myriad of changes that are applied, at best, with local optimization in mind. The latter, unfortunately, means that you are almost always moving further away from a global optimum. What good is it for a company if one department improves the financial bottom line of the current quarter at the expense of disgruntled customers that spread the word?

New Notebook

After more than seven years my beloved MacBook Pro 15″ (late 2011) has died the GPU death. Before that I have had at least three replacement motherboards, the first after less than 24 hours of owning the thing. All these replacements were free-of-charge and without any hassle. So no complaints from that end. But given Apple’s abysmal product strategy in recent years, and particularly the butterfly keyboard, it was no option to buy a MacBook again.

To be clear on the keyboard topic: My primary objection against the butterfly keyboard is not its reliability, or lack thereof. For me it is simply a very bad keyboard with its short-travel keys. Yes, I am lucky to own an original IBM Model M and that sets a very high bar. But there are quite a few people I know who share that verdict.

Another factor not in favor of Apple was its pricing strategy and the fact that repair is next to impossible. Why would I want to spend enormous amounts of money (approximately EUR 3.500 for what I want) on a machine that cannot be repaired, upgraded, and is thermally constrained anyway? And quite honestly, with all the systematic product issue that existed for more than a decade, why would I believe this has changed?

I still own a Mac Mini from 2011 but it is months that I last used it. And after a number of years when I was really(!) happy with MacOS, I am finally departing from the latter. Overall, I got the impression that the management folks of Apple are going though the “harvesting” phase, where bean-counters have taken the reign after the founder(s) were gone. The same has happened to Hewlett-Packard, which I have had the privilege to work for many years ago. They, as so many others, had the same problem: People at the helm that do not really understand the business, but just apply methods they learned at business school. And for a number of years that works. Until it does not anymore …

So I ended up in the Windows camp, again. While Linux is my OS of choice on the back-end/server side, it has been failing to convince me for the desktop for the last 24 years. Yes, I started using Linux in 1995. And for special purposes I have used it on the desktop, usually via X11, where it made sense to me. In the 1990s that was technical development as well as authoring papers for university with LaTeX. And while a recent attempt, using KDE Neon, showed great improvements, there are still too many things that simply work better for me in Windows.

As to the actual notebook, I was pointed to the Razer Blade 15 (2018 base model) from various YouTube videos. It is a great machine and I had gotten a pretty good deal on Amazon for it. Everything was great – but the keyboard. The latter is something you can find mentioned in a number of reviews, but I must admit that I had underestimated it greatly. This is really sad, because otherwise it would have been the perfect machine for me. So where did I end up instead as keyboard afficionado?

Yes, a Thinkpad T model. What else! More precisely a Thinkpad T490 with a full-HD display, 16 GB of RAM and a 1 TB SSD. This blog post is actually the first one written on the T490 and the keyboard is an absolute treat. What drove IBM to sell this part of the business to Lenovo? Oh yes, the harvesting phase ;-).