HNHacker News
TopNewBestAskShowJobs

andydotxyz

112 karma · joined January 14, 2019

submissionscomments
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
It depends on your definition. It installs and runs as native with the speed expected because it is compiled for the platform. It does not use the OS UI components for forms/buttons, but many built-in apps don’t even do that now so the definition is kindof changing I feel.
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
Yes, we have actually considered AccessKit in our discussions :)
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
We test on rPi4 but you will need X or Wayland to boot the graphics driver and run your fullscreen app at this time.
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
I guess most figure it is easier than creating their own design language as that is tremendously difficult (for engineers ;) ). Most figure if it is good enough for Android (and simile enough to Win10 and much modern iOS) it’s probably good enough for us.
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
GitHub says Fyne has 120 contributors… and Fyne Labs is working to get substantial investment to secure the future like Google has done for Flutter or Facebook for react native.
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
This is dynamically linked to all those libraries which must be installed. One of the points above is how small can you be without those dependencies. All Fyne apps need is a working graphics driver capable of OpenGL spec from 2011.
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
Fyne manages to be below 10MB for a stand-alone application. A future release where we add more complete language support might have to be 12.5MB entry point sadly, but it’s still small by modern app standards.
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
Or doesn’t use OS components on any platform. Having a theme that makes them look similar is at best uncanny valley and at worst a huge waste of time for toolkit and developers. Every OS version update tweaks the design I’m an attempt to look new or unique - try to do that across the 5 or more desktop and 3 mobile OS UIs that it supports and you’ll see how every year it would be a full time job just adapting to those trends.
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
Yea this is a big gap. It is planned but the task is huge. Once we have sufficient sponsorship or financial support in place you can be assured it will come.
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
Once the project moves to push bindings I think you can see it’s admitting the language they picked is no longer fit for purpose :). Go comes to the rescue here and Fyne is idiomatic Go so learning it is trivial!
andydotxyz··on Fyne, a cross-platform GUI toolkit written in Go
Yeah just install the latest helper (`go install fyne.io/fyne/v2/cmd/fyne@latest`) and run “fyne serve”. Your Fyne app will load in a browser via WASM or GopherJS (depending on browser).
andydotxyz··on Build a GUI app in 7 mins from start to store (Lightning talk)
Looks like HN strips the start point https://www.youtube.com/watch?v=XnPHI6cCL7E&t=9748s
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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.
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
> 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!

andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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...

andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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!
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
No new standards here thankfully, it is attempting to work with the existing ones - but with a new implementation in a sane programming language.
andydotxyz··on FyneDesk, a fresh look at what it means to be a 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.
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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.
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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 ;)

andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
But with more colour and readable fonts ;)
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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.
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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 :(.
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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!
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
Thanks, fixed :)
andydotxyz··on FyneDesk, a fresh look at what it means to be a desktop environment
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 :)
andydotxyz··on Fyne: Cross-Platform GUI in Go Based on Material Design
We’ve tried to share the aims of the project in the wiki[1].

Basically having seen the revolution in usability, software design and raised expectations on mobile it was frustrating that desktop had stagnated. Having a toolkit that was slim, easy to learn, cross platform and sweet looking seemed like a worthwhile challenge :).

1: https://github.com/fyne-io/fyne/wiki/Vision

andydotxyz··on Fyne: Cross-Platform GUI in Go Based on Material Design
That’s a fair point. Maybe this should have been 0.1. I can’t rmemeber how the version number got decided...
andydotxyz··on Fyne: Cross-Platform GUI in Go Based on Material Design
I’m sorry for the frustration. I agree that these things should not be put off indefinitely. If we are able to get the project to a place where there is some commercial support then it gets much more likely that we could make this happen.

Every project has to start somewhere and as you can tell from this comment page there are many groups of users who feel we have not met their expectations...

← PreviousPage 2 of 3Next →