I leave your arguments there. They are mostly fabricated based on false claims and assumptions while I back everything by numbers and facts from different sources in my footnotes.
Itâs not only about licensing fees. They are basically no factor if you buy âreusedâ software. For our American friends: Here in EU software is just a good, which of course can be reselled again. So big companies resell their volume licenses and then they are split up and sold separately. For instance a Windows 2019 Datacenter Edition Server costs something around 80,- EUR and a Win10 Enterprise 20,- EUR. You get a 10 User or Device CAL for 99,- EUR (here a link, just the first one from google, there are many more) . Basically we always laugh about the prices Microsoft Partners make. For years the prices in the 2nd market are shrinking, another indirect indication, how more and more companies phasing out their msft volume licences, at least here in Europe.
The main cost factors behind Microsoft centric AD infrastructures are others. They simply need more ressources in terms of hardware, storage and memory, more maintenance and 3rd party products. We name them âfat clientsâ or âfat serversâ. In strong contrast in the linux area less hardware, less energy consumption and maintenance is needed for the same results.
I am replacing these âfatâ clients and servers everywhere for many years in small and medium companies and writing articles about this in Heise and elsewhere:
Exactly, thatâs why my company is currently still mainly an âAzure-shopâ, but that doesnât prevent me from having my own opinion and being able to think clearly, especially since the recent massive price increases by MS, the climate policy requirements, the geopolitical situation and general security and compliance concerns have already led to a rethink in some areas - despite the clever but intrusive MS lock-in policy, as already reflected in Tomaâs success story .
Yes, exactly. The âwalled gardenâ strategy just wasnât viable anymore, not for many years now. And in offering a cloud service like Azure, naturally they would make it more Microsoft-centric by default, but they cannot hold out on Linux, Java or anything else. They even offer managed Postgres instances.
They also embraced open source in a way that was once unthinkable. They are actually a leading sponsor of open source projects. Nearly all of .NET is open source. You can browse the source of any .NET class or method online.
I would actually not think of MSFT first when it comes to targeting different platforms with UIs where you want substantially a common codebase. That is just not the world I live in, or am particularly interested in even.
But when you mostly develop installable apps for mobile and desktop, itâs easy to forget that much of the development world has zero interest in those targets anyway. If you have a solid technological foundation like .NET and one or more good abstractions for building web apps (ASP.NET Core or Blazor / WASM, the former mature, the latter, less so) then you cover most of what most devs actually need, you generate enthusiasm and platform loyalty.
So it doesnât surprise me that MAUI wasnât a first priority, but at the same time, with their massive resources and expertise (donât forget they are a major supplier of macOS apps via Office and have been in that space for decades) I would imagine within a year or two it would be on a parity with the Java options. If I am still not retired by then, I may even need it.
In fairness I have some minor need even now. I need to knock out a dashboard app, something that for security reasons is better as a desktop app, it will be one of those fire-and-forget efforts that virtually wonât need updating once written, and it would be ânice to haveâ if it could multi-target, but realistically, a WIndows version is all weâd ever need and in a pinch we could maintain a Windows seat for operations to run it even if we went to, say, all Linux servers.
There is also the admin app I knocked out as my first and only Xojo effort, which I mostly regret. But I was able to, with relatively small effort (even if more than I thought necessary) port it to Windows and use it there, and itâs another one of those things that will not need a lot of maintenance or new features over time. The places where the abstraction leaks a bit, I can live with.
MSFT, annoyingly at times, had a saying, âshipping is a feature, tooâ. But there is some truth to it. If I can bring this product to go public in 6 months and get by okay with these support apps, and there are not fundamental technical limitations on my core objectives, then who am I to insist that my client reinvent themselves to suit some technological ideal?
Neither ASP.NET not even .NET by self has the experience and the reliability, sustainability and technology vaadin framework has. And that is much more reliable than the msft frameworks. There is no question. Writing the Webportal in Java language makes things really less complex. And for this you can use even Windows servers but also the entire Linux world.
The best part of it is that with Hilla framework you will have a javascript framework fitting to the entire vaadin concept. If you want you can write your UI in Java and that entirely. You can write the complete project in Java. Paying Customers of vaadin corporation have also a visual UI designer coming with the commercial package of Vaadin. While Vaadin is open source there are a few commercial components and the visual designer.
Writing in that environment saves a lot of time instead using asp.net. And yes, I won many bets about that.
You have a strong need to be right and so in making un-nuanced statements like this, undermine your credibility. Although I suspect you also use âreliableâ in a rather different way than I do, and that may be part of it.
.NET has been around for 21 years and it can hardly be called âunreliableâ in some generalized sense. It is rock solid in my experience. I only remember one time I bumped into an issue with the framework itself, back around 2012 or so, and I just debugged into the framework itself and found that they had forgotten to un-comment something they had commented out for test purposes. I had a workaround right away, I reported it and it was fixed within a week (unlike some vendors I know of, who shall remain nameless, lol).
Apart from that one isolated instance I have always traced 100% of issues back to myself, and that is something I have control over.
Note that I am not making the vague counterclaim that Java is less âreliableâ. Itâs quite solid, by all accounts. It just isnât so much better for my use case that I have a business reason to change. âBetterâ for me would be some combination of raw performance on the sort of hot paths I care about, less bugs, and a better abstraction overall. From what Iâve seen, itâs a bit stronger in some areas, a bit weaker in others (we had generics before Java had them, for instance, and I think primitive value types are a bit more coherently designed at least for my taste). But itâs a mature, viable platform and no one would have to hold a gun to my head to make me work on it â despite all the undeserved fear and loathing around Java (just as specious as the fear and loathing around .NET).
It has to do with the movement of the platform. Nobody knows how long your code can be compiled. 3 years Maintenance are the normal. That would be for me too less. And I have that cases around.
And no, I donât have to be right. The point is: there is no way to get needed sustainability for a one man show. Thatâs one thing Java can do better. The next: there is not really show stopping bug in Java and if: it will be fixed immediately.
These two things have literally nothing to do with each other. Code I wrote in 2005 still compiles / works. If everything turned into a pumpkin at the 3 year mark the platform wouldnât be viable. Fortunately that is not the case at all.
I have seen security issues addressed back several versions. They donât promise it but if they had an actual vulnerability in a runtime thatâs sitting on millions of user machines, itâs not like they are going to (or would be allowed to) ignore it, either.
In practice it is not some abrupt cutoff, but that youâre progressively more and more on your own after 3 years, but Iâve never actually had an actual problem, much less a show-stopper. At my prior clientâs, they were stuck in âkeep the lights onâ mode since 2019 on old framework 4.7.2 and everything ran just fine, and passed annual outside security audits, too, despite it being about 4.5 years out now.
Microsoft has a tendency to want to push people along and discourage them from hanging back several versions â and I donât blame them â but they are also realists. So this long vs short term support window is kind of a red herring to make people feel insecure about having the mindset of NEVER upgrading, which people shouldnât.
More specifically there are examples of technologies MSFT sunsets ⊠I have complained before about .NET Remoting as an example of one of 3 about-faces on RPC stacks over the years, but, it was supported explicitly for at least 10 years after they abandoned it, both in terms of bugs and security fixes, and AFAIK itâs still present and works even now. So there are specific commitments within the framework, not just the framework itself.
when ever a framework is deprecated and will not be actualized anymore I would not use it anymore. That is the nice part on Java. while it has this feature of long term supported Versions the maintenance of programs if very comfortable for me.
I can understand that you, while focussed on MS Dotnet Platform, will not do anything or maybe only a bit with Java and it is not my target to tell you you you should, That is anyhow not my target. Use what you can say you are familiar and comfortable with. But have a look on the ecosystem and on the language itself. Nothing else I say. Maybe they never leave the customers without Update. But, this Discussion will never end. We have a good Source Control with Java and I guess also with MS Dotnet.
But speaking about sustainability and reliability MS has no chance for two decades old applications that they possibly will run on new platforms. Java has.
VB6 runtimes spring to mind
interestingly, I have Apple a bit more in mind than Microsoft. Apple was in MacOS often quite rude in phasing out technologies, sometimes without replacements or bridges. Compared with Microsoft, Windows is more a prehistoric museum full of ancient programs and technologies⊠wanna take a trip to 50 years of old stuff in every current Windows?
Lets start with the printer drivers, pretty untouched since 1998 not only on client side but on server side aswell (Printnightmare, need I to say more?)
Letâs continue with screensaver settings, even with CRT monitor illustration. How long we donât use CRTs? For 20 years?
Lets go back in time to 1995. The Microsoft MMC and esp. the Windows Helping System is pretty untouched since then:
Going back to Windows 3.x or NT 3.x you will find several apps from those time in every default windows installation, pretty untouched even the UI:
The 80ies are calling here:
and even the 70ies with CP/M style filenames like CON or COM1 or PRT. Did you know that one technique to avoid any Defender and AntiVirus Alert is to name your malware in CP/M fashion?
And you really want to argue that Windows is a modern and robust piece of software?
And I did not mention all the quirks in good old cmd.exe e.g. with non-functional enviroment %COMSPEC% variables, side-loading any malware with ease:
Absolutely Apple was / is much ore aggressive about removing / discontinuing / deprecating technologies
VB6 runtimes is simply a great example of MS making things work long after they are deprecated
Contrary to the superficial conclusion that everything just shuts off at year 3
[yawn] yeah I know, WinDoze is total crap, macOS and/or Linux are all sweetness and light. Despite that Windows still dominates the market after decades of use and abuse, itâs a terrible and unusable house of cards that is going to collapse at any moment.
Look, I admire the simplicity of Linux; as Dennis Ritchie famously said âUNIX is simple and coherent, but it takes a genius (or at any rate, a programmer) to understand and appreciate its simplicity.â
And therein is the crux of the matter. Simplicity, usability, stability are in the eye of the beholder, and that is only partly and relatively narrowly inclusive of developers. Businesses may or may not be gradually drifting away from windows and into the arms of the web / macOS / IOS / Android / Linux, but it is simply THERE, like it or not, and doing its usual âembrace and extendâ routine with all those other technologies and platforms anyway. And as such it presents opportunities. If you want to bypass those opportunities so as not to offend your tender sensibilities â or rail against it because you like shouting into the night â who am I to object.
I went through my own version of this in the 90s when Dave Fulton sold Fox Software to MSFT. I did not prefer the direction things were going in and MSFTâs failure to embrace and extend FoxPro but rather to nuke it. But I decided, if people want to pay me twice as much to be half as productive, why should I complain? And I have laughed all the way to the bank ever since.
But you do you.
Well many years I thought exactly the same⊠but you know, life is too short for this crap. Money is not everything. And I am happy to be in a position, to freely choose my projects and customers.
exactly, but safety is and I think security is what is kind of getting lost in the discussion here, but in 2023 it should be the basic ingredient of good ethical business practice and it trumps the fact that classic cars without ABS, seat belts and airbags will still get you from A to B.
That has almost never been the case with MS in my experience
Xojo
Money may not be the be all and end all of things
Having âenoughâ, which is different for each person, is the key
I keep my per hour rate where I do because it keeps me busy enough & able to live well enough
Could I raise it a lot ? Sure
But then I might not be as busy and that would not be good
Everyone has to decide what their âenoughâ is
Stating this and telling Microsoft is more simple to use makes my day. Linux is another world. It runs and thatâs it. Id does not need any engineer. Only MS people tending to tell such bullshit. It ma be for you so while you have no Idea about and you donât want to get used to it. okay. we have many linux servers outside and all of our Devices are also Linux Webservers. I would never even consider to use windows. While it is shit.
Iâd disagree
It needs updates & patches & fixes like any other OS
It experiences CVES
- Ubuntuâs list https://ubuntu.com/security/cves
- Linux CVEâs https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=linux
it has a huge number of devs using it and fixing it but its not perfect either
Simpler to deploy as a server than Windows ? Iâd agree
Reliable ? definitely (hence why google AWS etc use it)
But perfect ? no