Fyne
Fyne times ahead
So, you want a cross-platform app that can be deployed on mobile, desktop and the web, do you? Andrew Williams might have a toolkit that can make your life a little easier…
Andrew Williams CEO of Fyne Labs.
Developing software to run across Linux distros is bad enough, but Andrew Williams, CEO of Fyne Labs (https://fynelabs.com), is making software easier to run across operating systems, devices and the web. We sat down with him and chatted about Go, Java, Linux on phones and his passion for developing desktops and an entire Fyne distro (https://fyshos.com)…
Linux Format
Do you want to introduce yourself in your own words? Who are you and what is your current role?
Andrew Williams
I’m a software engineer by training. I studied computer science and got a job developing software that lasted about four years before I realised that actually I wanted to build something that was in my head rather than working nine to five for the man!
I got sucked into startups along with some co-founders I’d met in the open source community and that led me forward on a career path I’ve chased ever since – doing startups, early stage companies and open source developments since 2007.
Now I’m the CEO of Fyne Labs, where we’re building products that help anybody get started with app development. At the same time, I lead the Fyne open source community, which is the lower-level developer tools that are necessary for such a project to succeed, and that’s been going nearly seven years.
LXF
You could almost start calling it a mature project…
AW
I would love to absolutely and it feels that in many ways, but at the same time, it gets compared to more established projects and so therefore the ones that are older are more mature, so it’s hard to call it mature so subjectively.
When I started on the project, somebody who knows this space really well said it’s going to take you at least 10 years to build something that really matters in this space and I can see what they meant.
LXF
So, what is the project?
AW
Fyne
is a toolkit for building graphical applications that will work on all different devices. It is built on top of Go in a way that is aiming to be best-practice software engineering. Creating something that’s going to deliver a high-quality experience for users.
It brings the benefit of delivering something over the web, like the universality of it, but also the benefits of a native application – something that’s going to be installed through a store and run super-fast on your hardware, and feels like it’s been crafted for the device that you’re currently running on.
LXF
If you go back seven years when you were starting this, what were the limitations and issues?
AW
If you look at the landscape when I started the project, there was software that had the ambition to help folk build across all platforms, but it was largely built on legacy technologies.
It was created on something that’s no longer really best practice. I don’t want to say not fit for purpose, more that those existing projects brought with them a lot of legacy. They were largely built on top of C or C-like languages that had the types of decisions that were made years ago when the landscape was very different. They weren’t built to connect to the internet, there’s no concept of a string, never mind Unicode characters.