Category Archives: Uncategorized

GUADEC 2016: BoFs

The Birds of a feather sessions at GUADEC was a great opportunity to sit down and get work done. I participated in the engagement team’s BoF which involved lots of brainstorming for GNOME’s 20th birthday. Over the two days we delegated all the different tasks to do and planned what should be done up to and doing the event. Together with Sri I’ll be working on merchandise for the event which among other things could involve beer mugs.

28795698090_35a9a8ea74_kThe engagement team brainstorm in the form of sticky notes and whiteboard doodles. Picture by Jakub Steiner (CC-BY 2.0).

The BoF days were also spent on Polari work. Florian has had lots of code restructuring patches waiting for review. Hopefully they will enable us to land exciting features such as automatic nickserv authentication support soon. A couple of fixes has also landed which might make bouncer users happy.

I spoke with Philip Chimento about GJS and what could be interesting stuff to work on there. There are patches for having GJS snippets in Builder. I’m also hoping to someday see GJS documentation integrated with developer.gnome.org. I couldn’t attend the GJS BoF itself but heard there was lots of interest in it so I’m looking forward to follow any developments here!

On the last BoF day there was an Ambassadors BoF. We are a lot of open source groups around the world and several also have people from the GNOME community involved in them. We discussed how we could distribute marketing materials and how the engagement team could help the GNOME groups around the world. Personally I’d love to see free and open source groups connect more and share their experiences and knowledge. Another suggestion which came up was to make easily transportable newcomer packages which could contain things like stickers, pin buttons and balloons.

I met both old and new faces and GUADEC this year. Now I’m home, batteries once again loaded over the top with energy. Thanks to GNOME Foundation for sponsoring my travel and stay!
sponsored-badge-simple

GUADEC 2016: Core Days

I’m having the opportunity to once again go to GUADEC. I’ve had many great discussions, There’s so many great people to meet here.

Core Day 1: Friday
On the first core day I held a talk with Carlos about the newcomer initiative. Carlos has been involved for three years while I myself have been involved since around fall last year. Newcomers is a rebrand of GNOME Love and aims to be a clear step-by-step guide aiming to get developers introduced to GNOME development. Currently building relies on Jhbuild but im hoping for an even brighter future. Flatpak and GNOME Nightly SDK have the potential to make building gnome applications completely distribution agnostic. Should Nightly not build one day, we can also in large amount of cases fall back to an older version of nightly from a day or two before without this being a problem for the newcomer. If I made you curious you can watch the talk here.

28342074124_2bab4cfd9d_o-binliMe and Carlos giving the newcomers talk. Picture by Bin Li (CC-NC-SA 2.0)

During the evening there was a nice picnic in the evening with GNOME Games, good watermelon and great fun.

Core Day 2 Saturday
Saturday went with attending talks. To mention a few I attended there is Emmanuelle’s GTK: Are we in the future yet? and GNOME Music: State of the union. In the afternoon I also participated in the AGM where me and Carlos gave a brief review of the year working on the newcomer intiative.

Core Day 3 Sunday
On the third day I held a lighting talk about GUADEC’s streaming artwork. I spoke about the difference between SVG and HTML coordinate systems when applying transformations and how you can script and animate transformations using python and CCC’s intro-outro generator.

During the conference I had the opportunity to talk with many contributors. One of the items which I had on my list of interst was the GNOME developer center and what is going to happen there. I was also approached on the topic of which applications could be suitable for the newcomer guide once they get a nice wiki page and newcomer bugs filed against them.

As volunteer for GUADEC I had the chance to work on a lot of artwork. I made streaming artwork for the talk recordings. I also got requested to make artwork for the unconference slots.

16-08-16-guadec-artwork

For this year’s GUADEC T-shirts I created a conference-specific design and a generic design like last year. The conference-specific design was opted for and can be seen below:

28331201703_5188f8b064_zThe red edition of the GUADEC 2016 T-shirt worn by one Benjamin Berg from the local GUADEC team. Picture by Bin Li (CC-NC-SA 2.0)

Big hugs to GNOME Foundation for sponsoring my travel and accomodation. This thanks also goes out to all you donors who enable GNOME Foundation to sponsor contributors like me and events like GUADEC. Stay tuned for a blog post on the BoF days.
sponsored-badge-simple

GUADEC in Karlsruhe Awaits

On Thursday I’m taking a plane to Germany. I’m also accompanied by a friend who’d like to know more about GNOME and get involved in GNOME. Again this year I’m also volunteering – so far I have worked on t-shirts and streaming artwork for GUADEC.

On Friday at 15 in the afternoon I’m going to speak together with Carlos Soriano about the newcomer initiative we have worked on over the past year. Even if you can’t make it to GUADEC, I hear that all talks will be livestreamed, recorded and put on the web. Here’s a pitch:

Since last year GNOME has sported a revamped newcomer experience for developers with the move from GNOME Love to Newcomers (https://wiki.gnome.org/Newcomers/). The talk is a joint talk by Bastian Ilso and Carlos Soriano explaining what’s new and what lies in the future for GNOME’s newcomers guide.

There is also plenty of exciting changes landing in Polari these days. The Polari team has really expanded since last year and I’m looking much forward to meet together at GUADEC to discuss, design and review code.

I plan to be in Karlsruhe from tomorrow evening and will stay in Karlsruhe until Thursday next week. I’d really like to thank GNOME Foundation for sponsoring my trip, I’m sure it is going to be an enjoyable experience.

sponsored-badge-simplebadge-speakingat

The Camp 2016

Last year I was told about an annual event happening in Denmark that I didn’t know of called “The Camp”. Later at GUADEC 2015 I also met Kristen who helps arranging the event and has been doing so for more than 15 years. The Camp is a week long camp where you join together in a remote location of Denmark to hack, listen to talks and have some great food.

29-07-16-thecamp-outside-eatingThe camp holds roughly 50 attendees each year for a week during July. Photo by Poul Erik Thamdrup.

On the first day I held a talk on GNOME and the state of the free desktop. I constructed it in a way that would make it interesting for non-GNOME users too. I wanted to give an insight into how the traditional desktop is influenced by new technology and modalitaties which neccesiates new interaction styles and constraints. There’s not a single answer to how to do that. We have different free desktop environments suited for different use cases. The desktop environments being free enables us to share a lot of underlying technology and collaborate on advancing the free desktop. I put emphasis on that being involved in GNOME therefore often means working across the whole desktop stack which is beneficial for the free desktop as a whole.

bastian-talkMy talk on GNOME held on the first day of the camp. Photo by Mike Mikjaer.

I then presented a timeline explaining the many different technologies which GNOME contributors have contributed to and which play an important role in our desktop stack today. I’m not much familiar with what happened prior to GNOME 3 so I learned a lot in my research prior to the presentation myself. I elaborated a bit more on some of the newer technologies like Continuous, Flatpak and Builder which I think are three really exciting initiatives.

29-07-16-doughEveryone took turns helping making dinner – in this case we’re preparing dough for burgers. Photo by Poul Erik Thamdrup.

There were a lot of the other talks too which were interesting. I met two who played with producing computer graphics in javascript programmatically. A kernel hacker who worked on enabling the kernel to process 100 Gbit connections. A sysadmin who made a videobox for recording frames off your computer at up to 60FPS. The camp is a big mix of lots of interesting people!

29-07-16-jesper-100gbitJesper works as a kernel hacker at Red Hat and is explaining his hardware setup. Photo by Poul Erik Thamdrup.

During the week there was also time to sit down and work on GNOME related activities. I’m volunteering for GUADEC 2016 and have helped creating t-shirts and talk intro graphics using CCC’s intro-outro-generator. The generator takes a python script as input for the animation which you can use to script SVG transforms. I started researching chain transformations in SVG and learned how to use Inkscape’s XML editor to properly set up objects for animation. By the end of the camp I had produced a simple intro, outro and pause overlay for GUADEC which I also held a lighting talk about.

YouTube Preview Image

All talks are available at http://video.thecamp.dk/. Most of them are in Danish except Jesper’s 100Gbit challenge talk which is in English.

IT X: Open Source

In my city we have no local GNOME group or linux user group. I’m trying to shake that up a bit. I helped arrange an event called IT X, happening at Platform 4 which is a local non-profit venue in the center of my local city in Aalborg, Denmark.
2015-11-15Previosly part of an amusement park, now a non-profit venue for local citizens. Picture by Troels Leegaard.

With help from my local IT Union PROSA, we’re trying to create more publicity about open source among IT students. They helped organize what became the first edition of ITX – a monthly talk show event, this time themed Open Source. I was one of four speakers:

  • Lars introduced what open source is about.
  • I introduced GNOME, how and why to get involved.
  • Søren talked about Kodi/XMBC.
  • Mads introduced Aalborg’s local hackerspace Hal9k.

IMG_20160224_190413The event is about to begin – so exciting!

At 7 in the evening we had around 20-30 participants. With me I had brought 10 USB sticks with Fedora 23 and a printout of GNOME’s latest annual report. My talk was about GNOME, how we collaborate together, introduced our community and why contributing is valuable to me.

impress-slidesI used pictures from hackfests to emphasize that GNOME is people (tags were given by permission). Slides/Recording coming up soon!

I felt the audience were generally really intruiged and curious about GNOME! I was promoting a facebook group called “Open Source Aalborg” for those who wanted to know more. This group grew double the size after the event. Furthermore, a handful of people seemed genuinely interested in getting involved and contributing themselves too.

My plan now is to start doing weekly or bi-weekly events on open source, likely in collaboration with the local hackerspace Hal9k. I’ll use the opportunity to have a good time and help people getting started in GNOME. Afterall, we still have some user onboarding issues to fix in GNOME. But I’m really happy to see genuine interest from people in the project – these are partly people who have never even tried Linux before. Maybe you’ll see some more newcomers on IRC – greet them welcome. Let’s see where this is going. :-)

Belgian Vacation

On 26th I finished the semester exams and the day afterwards went on a trip.

It kicked off with me getting around Brussels with guidance from my printscreened map mashups – looking forward to being able to use Amisha’s Print Support in GNOME Maps in the future for this as I have no internet on my phone. :)

Wednesday was spent at the developer experience hackfest, discussing the future of GNOME Developer Center with kat, lasse, afranke, matthieu and fredp. Matthieu demoed his tool hotdoc and ptomato showed off his efforts on getting GJS documentation online. My understanding of where we ended was that there was some consensus so far to try to unify the hand-written docs so they are written in a single language (fx Mallard) and make it play with hotdoc which can integrate that with source code documentation. Hotdoc also allows a lot of cool things such as being able to change the language of the code examples and online editing.

I spent another part of the hackfest on creating CSS style that can make it easier to use our TemplateFancy for applications which want to be newcomer friendly. I partly achieved to create a navigation bar – I’m having some issues finding a non-hacky way of center-aligning the li elements relative to the width of the ul elements though, so I left that effort aside after a while. Beyond that, what remains now is to create CSS classes for title, subtitle and frontpage content.

devx my small laptop in a large room with a dozen hackers. The location was provided by betacowork – they are awesome.

The rest of my productive time went into iterating on some designs for planned features of Polari:

  • IRC commands auto-completion
  • Undoing connection removal (landed)
  • NickServ handling
  • Improvements for changing nicks (landed)
  • Contextual Popovers
  • polari-small-stuff Snippets of small UI mocks I’ve been working on (some of it is still WIP).

    Then FOSDEM happened. Also this year did GNOME have a booth although not as big as in previous years. I had designed merchandise and kat printed it – we had hoodies, t-shirts, mugs, stickers and a demo computer with the latest stable version of GNOME.

    fosdem

    I watched Christian Hergert’s demo of Builder which was quite insightful and something I can recommend you watch when a video appears online. Beyond that I was mainly standing in the booth, selling wear and talking to GNOME users. Some visitors asked how we (the people in the booth) were involved with the project. Some were even interested in contributing, so I showed them our newcomers page. When they appear on IRC, make sure to show them we don’t bite (most of the time)!

    31st January is today and that marks the end of the vacation. Last semester of my bachelor degree starts tomorrow, exciting times ahead.

content apps hackfest day 2

IMG_20151203_125006

Today we were relocated to a bigger space and are now co-located with libreoffice developers’ hackfest.
IMG_20151203_125036

Although not intended, the day mainly ended up landing my status-hiding branch in Polari with help from Florian. The code behind the logic became fairly complex and tangled. To make the code easier to read we expanded chatView’s convenience functions and restructured it to minimize code duplication. Now the two commits has landed in master so we can start iterating on the behavior. One of the plans is for example to be clever about status emission based on frequent or recent people that you have talked to.

untitled

There is also some polish that could be cool to land:

  • Using collapse/expand arrows instead of ellipsis
  • Change the color of a status header on hover to indicate its clickableness
  • better visually indicate the relationship between statusheader and its status messages.
  • Handle various special cases (fx the same user joining/leaving several times)

..I think some of those could definitely make good newcomer bugs. (:

sponsored-badge-simple

content apps hackfest 2015 day 1

Thanks to GNOME I’m attending the content apps hackfest. Today started with some introductionary some discussion on the individual applications, Documents, Books, Videos, Photos and Music. GNOME contributors also attended through hangouts and we managed to cover quite some ground in terms of what the content apps needs and their scope. We are around 13 in total sitting at Medialab, typing away on the keyboards now.

One of the bullets this hackfest is about which I am particularly interested in is how we attract more contributors to the content apps. IMO first step is to make it easy for new developers to start contributing. So I spent the afternoon revamping GNOME Documents’ wiki app page. Photos and Music are also listed as newcomer-friendly apps and would likely need a similar makeover.
Screenshot from 2015-12-02 17-45-20

For tomorrow I want to start looking into what newcomer bugs are filed against the content apps and possibly file more primarily, though.

Outside of the hackfest I have also worked a bit Polari. In the airport I sat down to revamp my status hiding branch which is almost fully working. I was also super pleased to hear that Carlos Garnacho had worked on a tracker miner for Polari’s chat logs which means we hopefully can implement some much-needed search history functionality.

Hugs to GNOME Foundation for sponsoring my trip to here!

sponsored-badge-simple

GNOME’s newcomer guide is improving

Me, Carlos and others has been working on improving the newcomer experience. GNOME is a 15 years old project. Our community conventions and infrastructure which newcomers have to learn all bear signs of this. Over time such project in the size of GNOME build up vast amount of information, historial baggage and complex navigation structure. To me this is all a natural healthy sign of a large project swiftly advancing the Linux desktop.

However, this creates a high barrier of entry for outsiders and ultimately new contributors are necessary to keep GNOME sustainable. The newcomer experience effort aims to simplify the complex navigation, concentrate the information and remove historical baggage. Ideally this effort should spread to every type of contributor, but for now I am focusing on developers.

frontpage

Introducing Newcomers Guide

In the spirit of simplification, the GNOME Love effort have been renamed to the Newcomers effort. The effort does what it says on the tin. All documentation has been moved from /GnomeLove/ to /Newcomers/ on the GNOME wiki and the IRC channel for newcomers is #newcomers. It is also planned that the “gnome-love” tag should change “newcomers”.

Furthermore the GnomeLove documentation has been restructured. Getting started contributing has been divided into 4 steps: Choose a project, Build the project, Solve a task, Send a patch. The simplicity here is very necessary. Human attention space is small and simplicity makes a large project like GNOME less intimidating.

newcomer-friendly-projects

The first step, Choose a project is a revamped page of the previous project/mentor list. This section presents a small list of projects that newcomers can get involved with. It is important to realize that not all GNOME projects are newcomer-friendly, which is very natural. Ideally a project should only be listed here if it is actively maintained. Concretely by “actively maintained” I mean:

  • The project has at least one mentor who help newcomers in #newcomers and the project chatroom.
  • The project’s wiki page is welcoming and presents the information you need.
  • The project’s bug tracker contains newcomer bugs, so newcomers can find tasks easily.
  • The project can is easily buildable.

Currently the section lists 10 projects. The plan is to review the infrastructure of each of these projects and ensure the list is kept concise.

solving-task

After choosing the page, the newcomers are led onto the second step: Building the project. This is our newcomer JHbuild guide. Then the third Step, Solve a task, is a completely new page aiming to describe a general workflow when solving bugs in a GNOME project. The page also introduces the developer tools we use in GNOME.

solving-task

Finally the 4th step, Submit the patch, introduces GNOME’s use of Git and how to submit patches to a bug on GNOME’s bugzilla.

What’s up next

With the 4 described steps above, the core of /Newcomers/ is now in place for the new developer experience. The plan is to actively maintain this core and continue to concentrate its contents.

The next immediate step is to look at external links which the Newcomers guide link to. GNOME Developer Center in particular needs a serious refresh. For now, instead of designing the ideal, I started making practical mockups for revamping GNOME Developer Center, reusing as much existing infrastructure as much as possible.

revampthumb

This seemed plausible to me, but they might not be as easily achievable as I hoped. However Frederic Peters is looking into making library-web which GNOME Developer Center is generated from, Django based.

Another item on my wishlist is the ability to build and develop applications without all the dependency mess. Most newcomers get stuck at step 2, Build the project. My own hope is that XDG-app, an SDK and Builder can help us on the way here. It would also be great if we could spread the effort to cover Documentation, Design, etc but for now I’ll be focusing my own efforts into the developer experience.

Feel free to join the efforts, fx by coordinating with me or csoriano at #newcomers. There’s always newcomers visiting and there’s plenty of external documentation we need to revise. By participating you’re ensuring GNOME’s future.

Post GUADEC

GUADEC 2015 was a lot of fun, from preparation till the conference happening. I gave a lightning talk on my work on Polari, a talk on GNOME’s release videos and a talk at FOSSGBG on my experience getting started in GNOME.

07-14-15 me-behind-release-videosthumbBehind the Release Videos. Picture by Garrett LeSage (CC-BY-SA 4.0)

I felt joy meeting everyone at the conference, at the picnic, at swedish local restaurants, and at the GNOME games. It was also great to meet with Florian and get some code landed in Polari (more on that soon).

07-14-15 felix-lappy-thumbFelix is landing some code. (CC-BY-SA 4.0)

Hugs to Andreas and Fabiana for letting me stay at their place and for being the initiative to make GUADEC happen in Gothenburg. The conference has ignited an even bigger fire in me for contributing to GNOME.