68 comments

[ 3.9 ms ] story [ 150 ms ] thread
I'm not entirely sure what this is, but those screenshots do the absolute opposite of selling it.
I had to find their Vision page to understand what they were promoting. The landing page quite possibly could be missing the opportunity to inform (and sell) people on their ideas.
To save other people the trouble:

The "fyne" framework is a Go UI toolkit, in a similar vein to Qt or GTK. It leverages Go's cross-compilation to compile for various architectures, and has built in utilities for publishing for the iOS/Android app stores.

This appears to be a desktop environment based on the UI toolkit.

*Disclaimer: Interpretation based on 5 minutes of skimming docs

Thank you, that actually sounds kinda interesting. Very much not sold on the look of it though.
Yeah, personally I think it looks terrible. Like just aesthetically it’s ugly. Purely personal taste though, and I beat no ill will toward the folks behind Fyne. I liked into using it to build a Go desktop app once upon a time, and was just so strongly turned off by Fyne’s look that I just lost all passion for building that project itself entirely. Never even got it off the ground.

Which is totally my fault, for sure, not theirs in the slightest. It’s just…that ugly.

Unnecessarily negative, do you also kick puppies on the way home?

I looked and it is decent, but needs polish. Which it will get unless broken people keep shitting on it.

Interesting, so this could be a cross platform desktop environment?
Yup :) For any platform that would allow 3rd party software to run the desktop we could do that. Sadly many block out non-OS software from doing so. But as cross-platform software it can be developed on different OSes as a single window app which makes it easier to code on the move.
I’m curious what UX design experience this team has.

The battery indicator (non-interactive) looks almost identical to the controls for display brightness and volume (interactive).

The screenshots remind me of things like ctwm and fvwm from the mid/late 90's.
But with more colour and readable fonts ;)
Points for being a cross-platform Go-based UI toolkit.

But as a desktop environment, the design is far behind Apple, Gnome-shell, MS, even KDE.

Weird this young project isn't as polished huge, mature and widely used projects.
More like there's obviously no designers on the team.

There's plenty of tech out there to build on. Ideas to build on. No Web toolkit is going to look like a website from 20 years ago... This is dead in the water unless they can show something that looks like it was made in 2021.

"It's shit" is not constructive feedback. As the parent commenter said, this is a relatively UI toolkit, and this desktop environment implementation is even younger. It takes time and effort to tweak things and there's no need to be hostile to new efforts. Especially when you consider that Qt, Windows, GNOME etc all have had years and years to tweak their design, and have also been redesigned.
The feedback is, 'do some proper UI design, because it really, really needs it'. That's constructive, as I read it, and very relevant.
I didn't say it's shit. The underlying technology is probably pretty nice, the fact it's done in Go and multi-platform is nice.

But they need to take some styling inspiration from, well, 2021. Even their icons on their website look old. That's a deal breaker for many. Why would you choose this over say, Flutter, when Flutter is also cross-platform and there's an obvious way to style Flutter apps? There's examples of good-looking Flutter apps...

But the website is not the toolkit. Yes the marketing needs work, but I would not judge the style of a toolkit based on it's homepage. The icons and design are based on Material Design which is really quite modern.

Why choose Fyne over Flutter? Mostly because it offers clear, easy to understand APIs instead of a glorified web UI. You pick Test Driven Development or Refresh Driven Design - people generally prefer one or the other ;)

It’s all gone downhill since Windows 2000, NeXt, Amiga.
> More like there's obviously no designers on the team.

Given what we've seen from modern "designers", I'm actually going to count that as a positive.

That's fine, but the top-most headline on the page says:

YOUR BEAUTIFUL NEW OPEN SOURCE DESKTOP

You're just doing yourself a disservice if you market yourself like that and can't deliver.

Be the change you wish to see in the world.

AFAIK, fyne is primarily a one man operation; I'm sure andrew would appreciate the help

We are really lucky to have lots of contributions - over 90 people have donated some amount of time. Also there have been nearly 10 core contributors who have put so much time and effort in. I am hugely indebted to them all. We rely on contributions and welcome every single new person to the team. We can mentor people new to Go or Fyne as well, if that helps.
I hate to be that guy, but the first caption under the Themes section should read: "The standard theme in its dark look."

Having the apostrophe in "its" makes it read "in it is dark look"

(Joke)

“Yew duz dem der graymur guud!” - Cletus the Yokel

“U like Ugg. Ugg make good words!” - Ugg the Caveman

Came here to say this, including the "I hate to be that guy" part!
If you have a helpful comment make it. If not, well no need for a disclaimer.
I've always felt that OS/2's Workplace Shell was a lost opportunity. Other than NextStep, are there other desktop environments that can do similar things?
I guess NeWS [0] is a likely candidate, as Mesa/Cedar[1] as well.

Many of these ideas also kind of exist in Windows, with COM/OLE/.NET/Powershell, or GNOME/KDE, although not in consistent way.

I always felt SOM was much better than COM, it even had metaclasses as concept.

[0] - https://en.wikipedia.org/wiki/NeWS [1] - https://www.youtube.com/watch?v=z_dt7NG38V4

Oh wow - I've never heard of NeWS before. That sounds like it was 20 years ahead of it's time and all the ideas had to be reinvented in Javascript to succeed. Thanks for the links.
Have you seen SerenityOS? https://serenityos.org/

"A graphical Unix-like operating system for desktop computers!

SerenityOS is a love letter to '90s user interfaces with a custom Unix-like core. It flatters with sincerity by stealing beautiful ideas from various other systems.

Roughly speaking, the goal is a marriage between the aesthetic of late-1990s productivity software and the power-user accessibility of late-2000s *nix.

This is a system by us, for us, based on the things we like."

Boots in a VM currently, but it has attracted a good community and people are working on getting it booting on hardware. It's been featured on HN several times: https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...

That looks like they've embraced the bad part of old operating systems (the aesthetics) and ignored the cool parts (everything is an object that you can communicate with).

Modern Windows with Powershell and COM does a better job IMHO.

I don't see the point of FyneDesk; I'm sure that a clever person could reproduce this environment with FVWM.
Yeah, but then it wouldn't be with Go.
point being? this Go brigading is annoying
Any language that helps to reduce C's status quo is welcomed, Go, Checked C or whatever.

One piece at a time.

Yeah. Fyne picked Go because it is a great language for building a GUI - not because we were Go developers. Fyne existed before the founders knew any Go :)

Mostly coding window managers and desktop environment in C/C++ is so painful that you can see why it stagnated 20 years ago...

Is that really a problem with C/C++ or an issue with the X Window System?
Personally I think both. Yes the X11 APIs are horrible to work with - but decent code can abstract that away so the app APIs are sane. Doing that was easy with Go, but doing the same with C seems to end up passing around `void*` everywhere, so type safety (and a good coding experience) goes out the window.
So if I understood it correctly this is a toolkit for building both desktop and app GUIs? It's a cool product, but someone needs to rework the design, both in terms of UI and UX. I think it will be a hard sell otherwise.
I'm not sure how much of a 'reimagining' or 'fresh look' this is when you really get going, but judging from the home page the novel feature seems to be... dialogue backgrounds that run into buttons?
Yeah so much of the fresh look is a technical aspect at the moment - like being able to develop it on any OS, or the simplicity of the module system. Once we have some more time developing we will be able to get the fresh look better surfaced. Lots of plans!
I would pay good money if someone figured out a way to get this thing to run on top of windows, while allowing me to run all my Windows programs anyway.

I assume this just isn't possible, but it would be so great. I ultimately love windows, but I definitely do miss the customization options Linux gives you.

Being a Fyne app it is technically possible. In fact we often develop features of FyneDesk on macOS computers. The big challenge is how we replace the windows graphical shell across the desktop - it is probably possible, but the good money required may be quite large :(.
I use the customization options in Linux to make my desktop look exactly like Windows 97. Try that in Windows 10!
(comment deleted)
Obligatory xkcd https://xkcd.com/927/

The inconsistent desktop environment problem is admittedly annoying, but creating another standard seems like a step backwards.

No new standards here thankfully, it is attempting to work with the existing ones - but with a new implementation in a sane programming language.
I think that requiring all your desktop apps to be rewritten is go is going to be a big ask - equivalent toolkits like KDE/QT have gone out of their way to provide multiple language bindings, or to just support X-apps natively
Like all frameworks, which are barebones libraries wrapped in opinionated organization, KDE/QT can be a lot when you need a simple UI.

I’ve used Nuklear to make simple, portable, UIs: https://github.com/Immediate-Mode-UI/Nuklear

Everything has trade offs; I might need to come up with my own way of handling some bit of state, but my projects aren’t big enough to need the software equivalent of a Costco.

Nuklear's lack of accessibility support and poor internationalization support are a real bummer, I ended up transitioning away from it :/
At Fyne we believe that the Go language is just so much easier to build with that following its idioms is a really positive thing. Language bridges and library ports can make it harder to develop. Of course you don't have to rebuild your apps, Qt and KDE and EFL apps will all work just fine inside a FyneDesk setup as we follow FDO specs etc.
This looks like a neat and worthwhile project, but it could do without the hyped marketing. You sold me with "reimagined desktop" and then gave me a screenshot of what looks to be a pretty typical, conventional desktop operating system. That's not a bad thing, but it's just not the reimagining I was sold on. Bit of a letdown for an otherwise interesting project!
We are reimagining slowly. Sadly there are certain basic things that are required, which is what had to be built out first. The current images were just 0.2 so there is a long way to go!
“FyneDesk is an easy to use Linux/Unix desktop environment following material design. It is build using the Fyne toolkit and is designed to be easy to use as well as easy to develop.”

From their repo.

The Fyne toolkit (cross-platform GUI in Go) itself has been called "the easie[s]t native cross platform UI toolkit I ever use[d]"¹.

"It is designed to build applications that run on desktop and mobile devices with a single codebase." https://github.com/fyne-io/fyne#widget-demo

The project has almost 30 issues tagged for Hacktoberfest! https://github.com/fyne-io/fyne/issues?q=is%3Aissue+is%3Aope...

¹ https://news.ycombinator.com/item?id=22291150#22292145

--

Related HN discussions:

Fyne: Native Mobile UX in Go https://news.ycombinator.com/item?id=22291150 113 points|2 years ago|21 comments

Fyne: Cross-Platform GUI in Go Based on Material Design https://news.ycombinator.com/item?id=19478079 360 points|3 years ago|92 comments

Why do all open source desktop environments have to be so ugly?
Turns out design is hard and expensive.
Meh I think they just don't care. I've been building a desktop environment and installing dozens of existing ones (open source and otherwise) in VMs to examine crucial components.

It's appalling how the simplest UI/UX items are broken in most of them. It's stuff that's certainly no harder than the technical stuff that these talented people do otherwise, when you look at the issues and complex bugs reported on Github/Launchpad. But they can't be arsed to put a caps-lock warning on the login screen or have a blinking cursor in their text-field, really basic stuff.

As a result I've paused the project and am designing a list of UI/UX specifications for basic desktop environment software. For open-source projects to be friendly to users all we have to do is get the developers to put the editor down and not skip the first step, it's not complicated it's just not a fun technical challenge.

I think some people just simply do not notice the little things. and I think those people tend to work on open source UI toolkits.
> or have a blinking cursor in their text-field, really basic stuff.

Yay, Fyne text entry has a blinking cursor :). Seriously though it would be amazing to get your input on the FyneDesk project. We take every suggestion seriously and really appreciate PRs too!

As you can probably guess they are mostly built by engineers. The Fyne project has been lucky to get generous sponsors and the money has just about made it possible for us to pay designers. So that is what we will do. Expect great improvements. And if you would like to be involved, every little helps! http://github.com/sponsors/fyne-io
Oh man there is a 0.3 release right around the corner which has so many new features added. We should post again when some more of the "fresh look" aspects are clearer :)
Don’t let dumb comments like the grandparent dissuade you.