Write Once, Run Everywhere
Was the selling point of Java, but if you have ever used the language, or ever worked on a cross platform software your reaction is probably “yeah, sure.” It turns out building cross platform applications is quite a challenge, of which numerous blog posts have been written. This post is not about cross platform challenges, but rather about sharing my personal impressions on the social aspect, how I see Windows, Linux and OSX users after writing and maintaining a cross platform software: Wasabi Wallet.
Wasabi is a privacy oriented Bitcoin wallet and we have very limited information on our customers. However we upload our releases to GitHub, thus we have some statistics on what kind of users are downloading our software through somsubhra.
Our latest release was downloaded on Windows 1,485 times, the Linux release 879 times and our OSX release 765 times. (What does Git log when the sofware is downloaded with Tor Browser?) One interesting thing we noticed from the website that Linux users took over OSX users only after we released the
.deb package, which is a more convenient way to install our software to Debian/Ubuntu based systems, but that is outside the scope of this article.
Windows Users — “Newbies”
Windows users are silent majority. They don’t have much issues, when they have it is about some very basic stuff. Although this can be frustrating at times. Luckily Microsoft, just like Apple makes sure things are compatible and work the same way across their operating systems, so things don’t often go wrong with these platforms. However when they do, they report it in an unclear way and later on often don’t care to follow up on it when we have more questions and would need further information in order to debug their specific issues. They also don’t tend to talk about our software on social media much. This is strange, because again, they are the majority. Or they are just afraid of Windows-shaming? Nevertheless, they don’t create maintenance overhead, they don’t have unreasonable requests, and they don’t try to force the newest hypes upon us all the time, they just want to get shit done and I can appreciate that. Overall I am quite happy having them around.
OSX Users — “Fanboys”
OSX users are the best. They are just as inexperienced as our Windows users, but they care to follow up and assisting us until their issues are resolved. Unfortunately they are not as precise and technically competent in helping us with the debugging, but they are trying and I can really appreciate that. What I like about them, despite being the smallest group, OSX users are extremely active on social media, which is a huge plus, especially that we did not do any marketing whatsoever since our release half a year ago. Having said so many great things about them, the only thing I don’t like is OSX, but that is another story.
Linux Users — “High Maintenance”
Linux users are the best and the worst at the same time. They are the best, because they are the most likely to contribute with valuable and real work to our open source project, but they are the worst, because as all junior cross platform developer has to quickly and painfully realize: there is no such a thing as Linux. There’s Debian, there’s Ubuntu, there’s Fedora, there’s Arch, there’s… And they NEVER work the same way. Even worse: various releases of the same distribution often fail in this matter, too. Unfortunately for us (fortunately for the specific distros) Linux users have great pride in their distribution and they are willing to go to extremes to make sure Wasabi will properly work on their preferred distros. And I often got myself working days (sometimes even weeks) to fix something on a distro that I knew less than 10 people will use anyway. Even though it’s a pain, I am also grateful for them, because that’s how you end up building a rock stable software, which is hugely beneficial in the long term. What’s also great about Linux users is that they know their shit. They can report bugs and they can sometimes even figure out what’s wrong all by themselves, so all we have to do is to write some code to fix it.
Their social media presence is somewhat mixed. They are very active, but sometimes they are too active. Quite often I encounter “Linux terrorists” who want to convince me to “stop supporting OSX and Windows, because Apple and Microsoft are evil”, to “rewrite the software in not C#, because Microsoft is evil” and to “support this new, cool, cypherpunk thing or concept that nobody have and will ever use” and they are very persistent.
Overall Linux users are high maintenance, but they are also quite helpful. What I appreciate the most is that they often help us answer questions on social media. They don’t only have questions, they often have answers, too, which elevates the level of the conversation. They seem to know their shit.
You may have noticed that this was a subjective post and most likely some of my impressions are misguided and don’t even reflect the general user base of the OS, so take this post with a grain of salt.
In summary there are significant behavioral differences between all these user groups and it can be either a pain to handle or an opportunity to build a well-rounded and balanced software, it is up to the developer what he brings out of this.