Interview with Christian Hergert about Builder, an IDE for GNOME

Christian Hergert have set out to improve the developer experience on GNOME with his new project, Builder. We sit down with him to discuss why we need another IDE, developer tools, missing GNOME apps and more.

 

Q: Who are you, what is Builder, why are you creating it?Christian Hegert
I’m a long time contributor to Free Software. In particular GNOME. I’ve also contributed to projects such as Mono and more recently MongoDB. I’ve been writing software on GNU/Linux for more than half of my life. I’ve never been particularly happy with the status quo.

Over the years I’ve contributed to various project that aspire to improve the developer story on GNU/Linux. Mono and MonoDevelop were a serious attempt to improve things. But those projects don’t really focus on what I care about. What I care about most is GNOME, because the project cares deeply about creating a computing environment that is functional, refined, and beautiful.

After my tenure working on Gtk+ projects at VMware, I knew I needed better tooling. Builder was an idea I had to build a development environment for myself.

Software engineers often create their own tools similar to how woodworkers build tools to do old things better and make new things possible. I wanted something that could take advantage of all the new compiler features and tools available on our platform. I wanted something that was minimal UI because code is the important part. I also wanted a work-flow that didn’t require me to keep switching applications. I want the information that is important contextually available without me having to think about it. At various GNOME hackfests, it became clear that others wanted what I was creating. So this project is something special to me. I’m getting to write software for what I consider my extended family, GNOME.

Q: You quit your job to hack on Builder full time?
I did. One thing I’ve learned in my career is that if you want to make something great, it needs constant focus and dedication. Swapping between work and personal projects just doesn’t result in the quality of project I want to provide our community. That said, if you want to hire me to work on Builder, I’d be happy to have a job again.

Q: Do we really need another IDE when Eclipse, MonoDevelop, Netbeans to name a few are already available on GNOME?
If any of those were what I wanted, I’d be using them. I’m thrilled that others are interested in the same thing I want. A high quality development environment that builds upon our fantastic platform and focuses on building software for our platform.

It seems like Builder is going to be a big application, but it really isn’t. We are reusing a lot of technology that already exists in the GNOME ecosystem. For example: Glade, Gitg, Nemiver, GtkSourceView, Devhelp, autoconf/automake and others. And we want to reuse our technologies. We think they are high quality and deserve to be something better.

Eclipse, MonoDevelop, NetBeans, and others are large plugin based environments that come with more technical debt than benefit. These plugin based designs are why when you run most major IDEs today you don’t even know if it will startup correctly. The number of times I’ve seen exceptions starting Eclipse haunts me.

Troubleshooting, documentation, installation, and testing effort increase with quadratic growth as you add more moving parts. I’d rather not abstract things until we find they are necessary and have solved the problem once. Otherwise, we create unused abstractions that only create headache without solving a real problem.

Additionally, Builder is a major UX effort for developers. This cannot be understated. Simply going into an existing IDE and adding some plugins does not significantly change the UX of the IDE. We want to try to take a completely different approach to how software is built based on our experiences building a swath of Free Software. This (and plugin based design) is the primary reason we are not rebuilding on top of Anjuta. We felt we couldn’t explore with the UX we wanted without harming the existing Anjuta users.

Q: What reaction do you get from people when they hear that you quit your job to hack full-time on Builder?
In general I think it’s positive, it usually results in a conversation about what is important in life.

Q: What apps do you want to see people develop with Builder?
Wow, I can think of a lot of things.

Something to do presentations. I have a lot of talks coming up and want a program to write them that allows me to focus on content and how I say it rather than building slides. Also, I want to be able to change slides over bluetooth or mDNS from my phone. I’m pretty unhappy with libreoffice and small projects like pinpoint aren’t quite enough. I don’t need compatibility with other presentation tools.

I want something like a DLNA aggregator that let’s me search across any media available on any machine connected to my home network. I want to be able to stream it on any TV or computer. My housemates and I all have NAS storage with various DVDs or CDs we’ve ripped or purchased. It would be great if that content could just be played anywhere and “just worked” out of the box.

More generically, everything on the GNOME wiki at https://wiki.gnome.org/Design/Apps/

Q: Some claim the future is all about the Web and Mobile, any comments?
Somebody has to write the web browsers and mobile platforms. And the people that build those platforms get to choose the technology they are built with. Sounds like a great reason to attract developers by building tools that are genuinely fun to use.

Q: You are planning a fundraiser, do you want us to tell us something about it?
I have! You can find the fundraiseron Indiegogo at: https://www.indiegogo.com/projects/builder-an-ide-of-our-gnome/

Q: What else can people do who want to support your effort?
Test code, file bugs, provide constructive criticism based on using it, write use cases, help design specs, write code, documentation. I also need someone who can help manage the more administrative tasks like roadmaps, specs, bug triage, and release management. There is a lot of code to write and I need to focus.

Q: Anything else you want to add?
I hope you have as much fun using Builder as I’m having creating it!

Thanks for taking time talking with us. We wish Christian the best of luck with the fundraiser* and continued efforts in developing Builder.

*The fundraiser has reached its original goal, you can now help the campaign reach stretch goals.

Written by Oliver Propst
Photo by Jakub Steiner

Pitivi launches GNOME-hosted fundraising campaign

GNOME is pleased to announce that it is hosting a fundraising campaign for Pitivi. Their fundraising page launched today, with a video explaining the campaign (which was made with Pitivi). As they say in their announcement:

Free and Open Source video editing is something that can help make the world a better place, as it gives people all around the world one more tool to express themselves creatively, fight oppression, create happiness and spread love.

GNOME provides the infrastructure for the campaign and donations are considered charitable in the United States to the extent of applicable law. You can donate to the campaign here.

Interview with Gavin Ferris, GNOME Privacy Campaign Donor

GNOME recently raised $20,000 to fund security and privacy enhancements to our software. We are extremely excited by this, and want to thank everyone who contributed.

One person who we are especially grateful to is Gavin Ferris, who was a particularly generous contributor to the fund raising campaign. We recently spoke to Gavin about his reasons for donating to GNOME.

gavinferris

How long have you been using GNOME, Gavin?

About 6 years ago, I began dual-booting my Windows laptops with Ubuntu, so I first started using GNOME 2 then. I stuck with Ubuntu until about nine months ago, when the whole shopping lens and “We have root” thing made me uneasy about the direction Canonical was heading. I tried a few other distros at that point, and selected Gentoo; now all my development boxes run it with GNU/Linux and Gnome 3.6.3, other than a few headless servers running a stock Debian install.

We’re really interested to hear about why you chose to donate to GNOME. Why donate now?

For community-based, open-source development to work smoothly, a number of key frameworks have to exist. The ‘desktop’ GUI (and supporting ecosystem) is, of course, [one] such key framework. It’s vital that a vendor- and distro-independent offering is available in this space which provides: a) a great (i.e., modern and feature-rich) experience to the user, and b) a supportive, structured development platform for the programmer; and I think GNOME fills both roles well…

I believe those of us who can afford to contribute financially—and who value using free and open-source software on a daily basis—should be willing to do so. Also, seen through the, ahem, prism of recent news, GNOME’s privacy campaign is timely and its philosophy refreshing. Hence my decision to donate.

Do you have a favorite thing about GNOME?

The shell extensions architecture is cool, and I think it has finessed many of the usability criticisms originally levelled at GNOME 3, without making the overall system too fragmented.

What would you like to see in GNOME in the future?

Two things spring to mind (bear in mind I’m on 3.6.3 – but having read the reviews I think these are still relevant for 3.8):

First, I think it’d be great to offer the user a clear choice about what data gets transmitted by installed software components, across the network and between each other, in a way that is easy to use and proactive. … such a feature would be an important differentiator unique selling proposition for GNOME. I’m hopeful the proposed privacy enhancements will provide at least some of this functionality.

Second, I think a major issue with GNOME is its lack of an integrated “software-centre” application properly linked into the Activities-view search… I guess this is really kind of a convoluted upvote for GNOME Software 🙂

Those are the main things I’d like to see in GNOME. But the main thing I’d like to see GNOME in are my phone and tablet! Hey, if Ubuntu can do it…

Thanks Gavin!

Once again we’d like to thank Gavin for his generous donation, as well as taking the time to speak to us.

GNOME raises $20,000 to enhance security and privacy

Last weekend the GNOME project reached its goal of raising $20,000 to help make our software even more secure and privacy aware. We are hugely excited by this, and would like to say a big thank you to everyone who donated.

The GNOME project is passionate about protecting our user’s privacy and security, and every dollar of the money raised through this campaign will be channeled into development activities.

Just like with our previous campaign, which raised money to make GNOME more accessible, the GNOME Foundation will be allocating the funds raised through a bidding process. Anyone can apply will their proposals for how to enhance GNOME security and privacy. Areas that we are interested in pursuing include:

  • application containment
  • enhanced disk encryption support
  • Tor integration
  • user control over diagnostic reporting features
  • robust VPN routing
  • application integration with system-wide privacy settings
  • controls for how GNOME devices are identified on local networks
  • anti-phishing features for Web, the GNOME browser

Details of the bidding process will be announced as soon as possible, so watch this space. Thanks again to everyone who donated!

GNOME Accessibility bid selected

The GNOME Foundation Board is happy to announce that following the Call for Bids for GNOME Accessibility Work, Igalia, a Spanish company, was selected to perform the work.

We received a great bid from Igalia with a detailed analysis of the current state of document accessibility within GNOME and a comprehensive plan to achieve the expected results. It was reviewed by a committee of volunteers who are active in GNOME’s accessibility work but who were not affiliated with any submitted proposal. The committee, composed of David Bolter, Mike Gorse, Juanjo Marín, Joseph Scheuhammer and John Walicki, made their recommendation to the Foundation’s Board of Directors which then voted to accept the bid (with the interested director recusing herself from all relevant discussion). The full bid has been published on the GNOME wiki.

“It was an honor to participate in the volunteer committee and collaborate with this group of top-notch accessibility professionals. We all agree that Igalia presented an excellent bid and we are confident that they have the knowledge and experience to successfully address accessibility support for pdfs,” said Juanjo Marín, a member of the GNOME accessibility team and Branch IT Manager for the Junta de Andalucía in the Culture and Sports Department in Cadiz, Spain.

Alejandro Piñeiro Iglesias, Carlos García Campos and Joanmarie Diggs will be the main developers working on the project. They are experienced developers in all the technologies and components involved, like Poppler, Evince, ATK, AT-SPI2 and Orca, which guarantees that GNOME Documents and Evince will get the accessibility support that many GNOME users are waiting for.

The GNOME Foundation Board would like to thank all the Friends of GNOME accessibility campaign donors and the Mozilla Corporation for funding this work.

GNOME_Foundation      mozilla-foundation

Call for Bids for GNOME Accessibility Work!

Following our fund raising campaign through Friends of GNOME, and with the help of Mozilla, the GNOME Foundation is looking for developers to enhance the accessibility of documents within GNOME.

Knowledge of the GNOME development process will be required to carry out the work.

The tasks should be set out in each of the bids, with the goal of enabling accessibility of documents such as PDFs, word processing documents, and HTML content.

The non-exhaustive list of modules and software projects that could be involved in enhancing accessibility for GNOME is as follows:

  • poppler (PDF rendering library)
  • libxps (XPS rendering library)
  • evince (PDF and XPS reader for GNOME)
  • WebKitGTK (HTML rendering library used in Web, Yelp, and Evolution amongst others)
  • GNOME Documents (document viewer for local and remote documents in GNOME)

The money available for the project is $30,000 ($10,000 from the Mozilla Corporation, $20,000 from our Friends of GNOME campaign). The bid selection will be made by a group including professional consultants with GNOME-related experience and GNOME Foundation Board members.

Bids should include:

  • a list of specific tasks to be achieved and the list of components impacted
  • details of your research into what level of accessibility the targeted end-user modules have.
  • a time line and schedule for the whole project
  • references to previous GNOME or accessibility related work.

Note that the goal of the GNOME Foundation for this project is upstream acceptance of the various modifications made during the project.

Please send your proposals to karen AT gnome DOT org with the subject line ”A11y of Documents Bid” by March 15, 2013.

Help GNOME to collect information on keyboard layouts

GNOME needs your help to make its software available to all! GNOME is used on computers all over the world, in countries that use different languages and sometimes even alphabets. We offer everyone the opportunity to have a localized version of GNOME 3, and to use the appropriated keyboard layouts for their country and language. This is made possible by a database which is used to identify which layouts will be interesting to users depending on their country and language. Unfortunately, this database has a lot of gaps.

That’s where you come in. By supplying the information we need, you can help us to predict which keyboard layouts are relevant to a user.

Helping with this task is easy: check out the wiki page and find any keyboard layouts that you use. Then fill in the code for your country and language. If you are new to wikis, we have instructions that will help you get started.

Helping us collect this information is a really quick and easy way to participate in GNOME and to improve the GNOME 3 user experience.

Help make GNOME safer than ever!

GNOME was founded with the goal of promoting software freedom. We remain committed to the empowerment of our users, and are always looking for ways to improve our software. We want people to be safe, in control, and enriched by the software they use. The GNOME community was inspired by the keynote delivered by Jacob Appelbaum on the topic of privacy at this years’ GUADEC and was reminded of our mission. To this end, GNOME is working on a new campaign focused on privacy. Through this campaign, we aim to enhance GNOME 3 so that it offers one of the most secure computing environments available.

Proceeds from the privacy fundraising campaign will be used to fund development efforts such as:

  • application containment
  • enhanced disk encryption support
  • Tor integration
  • user control over diagnostic reporting features
  • robust VPN routing
  • application integration with system-wide privacy settings
  • controls for how GNOME devices are identified on local networks
  • anti-phishing features for Web, GNOME’s web browser
  • Donate today to help make GNOME safer than ever!

Help GNOME reach its accessibility fundraising goal!

We’re closing in on our goal of $20,000 for our accessibility campaign. If you haven’t already, take a look at the testimonial by Diego Sánchez that we’ve been lucky to include. As Diego says, GNOME 3 has really helped him: “I’m happy because I can now use the computer in my classroom without any assistance.” Our accessibility team‘s work has made a big difference in many people’s lives, but we still have a long way to go. Help us make our goal and donate now via our Friends of GNOME program!

This work is licensed under a Attribution-NonCommercial-ShareAlike 3.0.