HN user

idobai

7 karma

https://www.accountkiller.com/removal-requested

Posts0
Comments37
View on HN
No posts found.

Free/libre OSS won the battle for the server, lost the battle for the desktop

I don't think it lost the battle on desktop - if you don't rely on platform(or interest)-specific software like the adobe/microsoft suites and some 3A games then you'll be more than fine on the linux desktop.

If you're into safety than you should probably go with a functional programming language with low-cost abstractions. Rust isn't an expressive language, its only benefit compared to other general purpose languages is its memory management.

Thankfully there is a spectrum of software available, so other people's choices and preferences (whether proprietary or not) aren't forced on everyone.

The software architectures - mostly the ones close to the users - of the business and education sectors are almost full with proprietary software which tends(and tries hard) to be incompatible with alternatives, especially with FOSS. The mentality of the regular user is to use what he/she has been taught to use - freedom has been presented as too "geeky"(catch phrases like "if you're different it doesn't mean you're useful"). The educational ministries literally sold those people to brands. It might sound quite disutopic but it can get worse.

Windows10 is already recording every keystroke/data of yours - what's the difference here? Also, Canonical's snappy packages can kinda solve this problem.

Fonts still look like crap (Ubuntu is an exception)

You can change|install fonts on linux.

and even with patches there are still problems with Java, old GTK libs, etc

What kind of problems?

but I have tried Linux on the desktop and it is still lacking.

Can you tell us what do you miss?

By "outrage" I've meant canonical has developed it because they didn't like gnome shell(they like the innovation-thing).

For productivity, Unity beats any Gnome 3 setup I've tried so far.

Unity has problems with multiple monitors, consumes more RAM and CPU and is also hard to customize.

And we're still not talking about the maintenance/security nightmare that is the Gnome 3 plugin system.

But we should talk about it if we're here...

Linux desktops seem to have peaked with GNOME 2.x. I'm not even sure what's going on with Unity.

Gnome 2.x is a dead-end - it was buggy and ugly. Gnome 3.x is far better. Unity is just another canonical-outrage.

I've used GNOME previously, which was too memory-hungry and often too unresponsive to use.

Maybe you should buy a dev computer instead. Gnome consumes far less memory than the average DE. I always try every DE at every release and as far as I've experienced gnome-shell and cinnamon are the best at customization/plugins/performance.

Edit:

I'd move to Windows in a jiffy. Its desktop works flawlessly on my PC.

I'm currently at work and I've a windows and an ubuntu on virtualbox - gnome-shell is pretty smooth while windows appends the "Not responding" text to every window's title, the search in the menu is much slower than it should be and the apps are often frozen - it is far from "flawless" for me.

Also, OpenBSD, DragonflyBSD, and FreeBSD can all be used as server or desktops without much fiddling. Their installers are better than anything in the Linux world. You can have one up and running with a nice wm, browser, etc, in 15 minutes.

When I wanted to try FreeBSD the installation failed multiple times and after the first success I couldn't install a DE for hours. I've also had problems with the package manager because I couldn't install anything before doing something with some configuration files. OpenBSD is the same category but at least it doesn't failed at installation as much.

What exactly do you play i wonder, sure there are some games, some 1st party games from Valve come out to Linux, some 2K titles will get a Linux release on steam 3 years down the line (and usually be somewhat broken), and there are some indie games.

You need to do some research.

But please let's not portray Linux as a viable gaming OS.

I'm playing on steam+linux for years and I don't really miss anything. There are 1-2 games I'm running on wine+steam but all the others are on linux.

But please let's not portray Windows as a viable OS.

So no the Linux gaming market is still pitiful it's not much better than it was 5 or even 10 years ago with Wine if anything it's worse since DX11/12 games pretty much do not run on Wine.

It's MUCH better than 5 years ago.

On the indie side things are much better so if you are only a very casual gamer or really like some old school stuff you'll have things to play, if you want to play AAA titles Linux isn't where you find it.

Those "AAA games" used to be casual, over-hyped walking simulators...

So which other DE on GNU/Linux does provide the same tooling and platform abstractions as KDevelop/Qt Creator do?

Same or similar? It doesn't matter what they provide because I'd go with ScalaFX(http://www.scalafx.org/) + IntelliJ or Vala|Genie + Vala IDE. Mono is also an option if you're into it.

but it is stuck in C + POSIX as technology stack in what concerns developer experience.

Yes, GTK isn't the newest but it isn't hard at all to develop apps with Vala/Genie(https://wiki.gnome.org/Projects/Vala/GTKSample , https://wiki.gnome.org/Projects/Genie/GtkGuiTutorial ?)

Vala is still not there and I don't believe in JavaScript for native UIs.

What do you mean? Vala is almost the defacto standard language for ubuntu/gnome apps.

KDE is the only environment that can match in terms of tooling and UX, yet it is lacking some serious love nowadays.

KDE? Seriously? It's one of the worst DEs on linux. Any DE which isn't based on gnome is just cheap nowadays.

No garbage collection, so no GC performance hiccups.

Swift has ARC(https://en.wikipedia.org/wiki/Automatic_Reference_Counting) which is a GC strategy. And I don't think it can compete with the performance of the JVM's G1 (currently).

I wonder whether Java will get displaced by Swift on the server at some point. Anyone want to place bets?

I'd bet on Scala(http://scala-lang.org/) which has far more benefits compared to Swift - OOP+FP, higher kinds, typeclasses, implicits, (hygienic) macros etc. dotty(https://github.com/lampepfl/dotty) will have union- and intersection types with other useful stuff. There is a JS backend(https://www.scala-js.org/) and there'll be an LLVM(https://github.com/scala-native/scala-native) backend too.

This comment is patronizing and implies that liking Go makes someone a "junior varsity" programmer, or ignorant of alternative programming models.

Because that's the truth and that was intentional at its design.

I'm well-versed in half a dozen other languages, many of which include generics.

It depends in which languages.

Elixir's novelty, the pipe operator, is a fantastic approach to working with state in a functional manner. Instead of running readlines(fopen(user_input(), "r")).uppercase().split(), try the more readable user_input |> fopen("r") |> readlines |> uppercase |> split.

The pipe operator isn't Elixir's "novelty". Also, why is it better than the '.' syntax:

fromFile(userInput).getLines.map(_.toUpperCase)

Do you get code completion for it as in an oop-ish language?

Shouldn't they support c an c++ over rust ?Shouldn't they support c#, coffeescript and go before scala or ruby ?

c/c++ are legacy. c# is an m$ thing, coffeescript and go are beginner languages. scala and ruby are used in production.

All the latter programming languager are more mature, more used than the supported languages.

I wouldn't call c#/coffeescript/go more "mature" than scala. And popularism is unrelated to the topic.

In some other languages strings are always immutable, and mutating them requires creating a copy.

Those languages used to introduce mutable wrappers and not a "to_string()" method.

they reference memory that no code "owns", as in-place mutation of the executable would be unsafe.

Is that similar to the dynamics of uniqueness types?