<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>gnome on /home/csoriano</title>
    <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/tags/gnome/</link>
    <description>Recent content in gnome on /home/csoriano</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <managingEditor>csoriano@gnome.org (Carlos Soriano)</managingEditor>
    <webMaster>csoriano@gnome.org (Carlos Soriano)</webMaster>
    <copyright>CC BY 4.0 - Copyright © 2018 Carlos Soriano</copyright>
    <lastBuildDate>Mon, 27 May 2019 00:00:00 +0000</lastBuildDate>
    
        <atom:link href="https://csoriano.pages.gitlab.gnome.org/csoriano-blog/tags/gnome/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>Why you can and should apply for the board</title>
      <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2019-05-27-why-you-can-and-should-apply-for-the-board/</link>
      <pubDate>Mon, 27 May 2019 00:00:00 +0000</pubDate>
      <author>csoriano@gnome.org (Carlos Soriano)</author>
      <guid>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2019-05-27-why-you-can-and-should-apply-for-the-board/</guid>
      <description>

&lt;p&gt;It&amp;rsquo;s GNOME board elections time!&lt;/p&gt;

&lt;p&gt;Community members can apply to become GNOME Foundation directors, and the process is quite easy, it’s just about sending an email to two mailing lists. We can improve on the number of participation though, and having a good amount of applicants is important for having a healthy foundation - the more applicants there are, the more likely that different views, skills and working areas are represented.&lt;/p&gt;

&lt;p&gt;I believe one of the big factors of not having high participation in elections is the lack of knowledge of what the board does and how much of a commitment it is. Because of that, we question whether we are ready for taking on the position. While minutes published by the board are an excellent tool (and I really need to thank Phillip and Federico here), minutes usually don&amp;rsquo;t tell the whole story.&lt;/p&gt;

&lt;p&gt;In light of recent discussions on foundation list, I realized we also didn&amp;rsquo;t explain yet how the work of the board has changed to a more strategic position, and what that entails.&lt;/p&gt;

&lt;p&gt;So let me try to improve that, and explain why you should apply and why you definitely can apply.&lt;/p&gt;

&lt;h1 id=&#34;how-does-the-work-of-the-board-look-nowadays&#34;&gt;How does the work of the board look nowadays?&lt;/h1&gt;

&lt;p&gt;For the purpose of understanding what kind of work we do, let me split them in two types. Work that is about execution, and work that is about strategy.&lt;/p&gt;

&lt;p&gt;Examples of execution based tasks are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sending an email to a certain committee.&lt;/li&gt;
&lt;li&gt;Moving this wiki page to this other wiki page.&lt;/li&gt;
&lt;li&gt;Cleaning up minutes.&lt;/li&gt;
&lt;li&gt;Approving/declining small budget stuff such as stickers, release dinners, hackfests snacks, etc.&lt;/li&gt;
&lt;li&gt;Approving/declining big budget stuff such as GUADEC, GNOME Asia, services (CI, map titles, etc.), hardware, etc.&lt;/li&gt;
&lt;li&gt;Approving/declining legal things such as trademarks usage.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Examples of strategic tasks are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Defining a policy for travel sponsorship.&lt;/li&gt;
&lt;li&gt;Defining what GNOME software is.&lt;/li&gt;
&lt;li&gt;Defining committee responsibilities.&lt;/li&gt;
&lt;li&gt;Defining yearly goals.&lt;/li&gt;
&lt;li&gt;Defining trademarks and its usage.&lt;/li&gt;
&lt;li&gt;Defining budget spending policy for small events.&lt;/li&gt;
&lt;li&gt;Defining events bidding process.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can already see that strategic tasks are usually done to support execution based tasks. However, execution based tasks are what actually delivers, and without them strategic tasks don’t have much use. Execution based tasks are about doing, strategic tasks are about thinking and creating.&lt;/p&gt;

&lt;p&gt;The difference between those is quite significant, execution based tasks take around 1-2 weeks to complete, are quite independent of other people and have clear steps to do them. Strategic tasks take between 6 months and 2 years long to complete, they are dependent on other people, involving several discussions in various meetings and emails, they are quite more complex and usually involve different areas such as community, legal, market knowledge, etc. Most of the times you learn about them while you go, so while you gain significant experience on those areas, the ramp up to work on strategic tasks takes a while.&lt;/p&gt;

&lt;p&gt;Historically, the board has been mostly execution based. The reason is that execution based tasks needs to be done no matter what. So what happened is that strategic tasks were delayed, or never done, in order to keeps things running. I would say the balance was around 90%-10% for execution based and strategic tasks respectively.&lt;/p&gt;

&lt;p&gt;This last year that has changed significantly. The staff of the foundation is doing the heavy lifting on the execution based tasks, so now the job left for the board is mostly strategic. The balance has flipped to a 10%-90% split of execution based and strategic tasks. This is already implemented, there is almost nothing left to hand off to the staff nowadays.&lt;/p&gt;

&lt;p&gt;The board tasks over the last ~6 months have been focused on those that are usually up to a board to do, most of them cannot be done by the staff due to legal or general charity guidance, such as setting the compensation for the ED or setting the goals for the foundation.&lt;/p&gt;

&lt;h1 id=&#34;why-can-you-apply&#34;&gt;Why can you apply?&lt;/h1&gt;

&lt;p&gt;Alright, so you think you have some motivation to be on the board. But maybe reading the candidacy emails or the section I wrote before makes you think that the tasks are too complex, or that the commitment to be on the board might be too big for you. Well, I want to debunk this here.&lt;/p&gt;

&lt;p&gt;One particularity of the board is that everyone takes on things they want to take on. And no more than that. There isn&amp;rsquo;t a “you didn&amp;rsquo;t do anything for a month, you should do this other task” kind of situations. Some of us simply provide opinions here and there, either because we don&amp;rsquo;t have time, or don&amp;rsquo;t have the knowledge, or don&amp;rsquo;t have the energy or interest on learning that knowledge.&lt;/p&gt;

&lt;p&gt;And that is okay, specially if you don&amp;rsquo;t have experience on dealing with the tasks mentioned in the previously, the rest of the board and the staff are aware of that, it&amp;rsquo;s expected that you will help where you can. We are volunteers after all, and sometimes an opinion or a question is the most helpful thing we can do.&lt;/p&gt;

&lt;p&gt;There are only a few things that are required: Being open to learn, a bit of proactivity, attending 1h weekly meetings, attending GUADEC, and lastly, some time and willingness to take on some work (1-2h per week, some weeks much more, some weeks none at all).&lt;/p&gt;

&lt;p&gt;Some areas may not be interesting for you, but some others may. Once you are in the board, take the initiative to volunteer on those that you feel are of interest to you and what you will do will be already useful.&lt;/p&gt;

&lt;h1 id=&#34;why-should-you-apply&#34;&gt;Why should you apply?&lt;/h1&gt;

&lt;p&gt;You have some motivation to be on the board, but what&amp;rsquo;s really in there for you? What do you get from it? For me, there are two
big benefits.&lt;/p&gt;

&lt;p&gt;One is leading the community and having an impact on the direction of the project. If you are reading this, most probably you care about the project and the community behind it. This is usually the biggest motivation, and having a way to impact the project with your ideas is certainly a good feeling. Being on the board will give you the insight necessary to move forward with your high impact ideas, will open the doors to external entities that will help you drive those initiatives in a much easier way, and will give you certain skills that will make them most likely to succeed.&lt;/p&gt;

&lt;p&gt;The second one is personal and career development. Personally speaking, I gained knowledge about handling changes that have impact for over (most probably) 100 people, negotiating deals with companies, handling legal issues and concerns, manage personal conflicts, hiring process and salaries, and in general, management and leadership.&lt;/p&gt;

&lt;p&gt;In regards of soft skills, I can say that some opportunities on the board are around the level of Principal or Senior Principal Engineer, with the advantage that you take only on the things you feel comfortable with while allowing you to get out of the comfort zone with the support of the rest of the board and staff.&lt;/p&gt;

&lt;h1 id=&#34;is-there-any-downside&#34;&gt;Is there any downside?&lt;/h1&gt;

&lt;p&gt;I hope what I said so far has motivated you enough to apply, you can see there are quite a few advantages both personally and for the community for you to go ahead and apply.&lt;/p&gt;

&lt;p&gt;So is there any downside? Honestly, I think there is only one. Fear of rejection.&lt;/p&gt;

&lt;p&gt;I applied for first time to the board about 4 years ago. I got 5 first position votes out of 100. Well&amp;hellip; honestly, this had an impact on me. I thought the community simply didn&amp;rsquo;t want me, and that&amp;rsquo;s all about it. I decided to not apply again.&lt;/p&gt;

&lt;p&gt;Despite that, here I am, last year I got quite a few of those first position votes for myself.&lt;/p&gt;

&lt;p&gt;The key is to not take it personally, this can happen for multiple reasons that are not specific to you as a person.&lt;/p&gt;

&lt;p&gt;Maybe you proposed an initiative in your candidacy email and it was too early to make it happen, maybe simply you were a visionary. Or maybe members didn’t know you enough, or you lacked some experience in coordinating initiatives.&lt;/p&gt;

&lt;p&gt;Good thing is, these can be improved quite easily. You can take the lead on small tasks that involve several contributors, you will get the experience of leading those initiatives and members will get to know you. Maybe simply go over 3.34 items and ask about their status and who can help move them forward? Or just improve Meson build along different modules? Maybe help with an existing initiative such as newcomers or Flatpak? How about coordinating an announcement with the engagement team? Or coordinating the release notes?&lt;/p&gt;

&lt;p&gt;Owning tasks that go across different projects is a good way get elected the next time.&lt;/p&gt;

&lt;h1 id=&#34;apply-today&#34;&gt;Apply today&lt;/h1&gt;

&lt;p&gt;I think I speak for the whole board when I say that we are glad to answer any questions about what working for the board entails, so feel free to simply informally contact any of us on IRC or email and we will answer any questions as our individual availability permits.&lt;/p&gt;

&lt;p&gt;Now is your turn, apply, apply and apply.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Thanks Nuritzi and Rob for going through the document.&lt;/em&gt;&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Desktop Icons New Maintainer &amp; Release</title>
      <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2019-05-03-desktop-icons-maintainer/</link>
      <pubDate>Fri, 03 May 2019 00:00:00 +0000</pubDate>
      <author>csoriano@gnome.org (Carlos Soriano)</author>
      <guid>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2019-05-03-desktop-icons-maintainer/</guid>
      <description>

&lt;p&gt;Desktop icons just had a new release! Plenty of good things went in:&lt;/p&gt;

&lt;p&gt;Sergio fixed the &amp;ldquo;Open in Terminal&amp;rdquo; menu item not opening in the desktop folder,
and also made the files appear from top to bottom, left to right, that more users were used to.
Also, we discovered that the settings panel wasn&amp;rsquo;t getting translated, so Sergio fixed it too and now all
translations are in place.&lt;/p&gt;

&lt;p&gt;We had another developer contributing too, Andrea Azzarone. Andrea fixed the rubberband
going over windows, quite a nice touch. Also added a way to group consecutive rubberbands with
&lt;ctrl&gt; and &lt;shift&gt;, which is definitively useful!&lt;/p&gt;

&lt;p&gt;You can grab the new version in &lt;a href=&#34;https://gitlab.gnome.org/World/ShellExtensions/desktop-icons/tags/19.01.3&#34;&gt;tarball format&lt;/a&gt;
 or in &lt;a href=&#34;https://extensions.gnome.org/extension/1465/desktop-icons/&#34;&gt;extensions.gnome.org&lt;/a&gt;.&lt;/p&gt;

&lt;h1 id=&#34;a-new-maintainer&#34;&gt;A new Maintainer&lt;/h1&gt;

&lt;p&gt;And I have good news&amp;hellip; Sergio has just being apointed as co-maintainer of the project!&lt;/p&gt;

&lt;p&gt;Sergio has been working on the project constantly, with a high sense of responsability, for more than
9 months. In fact, I have been struggling to catch up with all the work he has been doing.
Whenever I reviewed a merge request, another two were opened :-)&lt;/p&gt;

&lt;p&gt;Sergio deserves the maintainer position, having more decision making responsabilities and to take over
 important tasks in the project.&lt;/p&gt;

&lt;p&gt;Congrats Sergio!&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>DrupalCon</title>
      <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2019-04-18-drupalcon/</link>
      <pubDate>Fri, 19 Apr 2019 00:00:00 +0000</pubDate>
      <author>csoriano@gnome.org (Carlos Soriano)</author>
      <guid>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2019-04-18-drupalcon/</guid>
      <description>

&lt;p&gt;Last week I attended &lt;a href=&#34;https://events.drupal.org/seattle2019&#34;&gt;DrupalCon&lt;/a&gt; in the
lovely city of Seattle invited by Tim, the executive director of Drupal.&lt;/p&gt;

&lt;p&gt;Our plan was to have a panel discussion about the tooling we use in FOSS
organization such as GNOME, Debian, Drupal, etc. Specially since we recently transitioned
to GitLab. The panel discussion was between Tim himself, Alex Wirt from Debian,
Eliran Mesika and Tina Sturgis from GitLab and me. We were &lt;a href=&#34;https://events.drupal.org/seattle2019/builder&#34;&gt;5 out of 9 featured
speakers&lt;/a&gt;!&lt;/p&gt;

&lt;h1 id=&#34;seattle&#34;&gt;Seattle&lt;/h1&gt;

&lt;p&gt;I took some days before the conference to adjust to the timezone, and to take
the oportunity and visit Seattle, my second time in US. Visited all the nice
public spaces like the &lt;a href=&#34;https://en.wikipedia.org/wiki/Space_Needle&#34;&gt;Space Needle&lt;/a&gt;,
 the &lt;a href=&#34;https://www.chihulygardenandglass.com&#34;&gt;Chihuly Garden and Glass&lt;/a&gt;, Science museum
and the &lt;a href=&#34;https://en.wikipedia.org/wiki/Museum_of_Pop_Culture&#34;&gt;Museum of Pop Culture&lt;/a&gt;
 where I had the oportunity to play guitar
for longer time than I want to admit.&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/drupalcon2019/chihuly.jpg#center&#34; alt=&#34;Chihuly&#34; /&gt;
Chihuly Garden and Glass&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/drupalcon2019/needle.jpg#center&#34; alt=&#34;Space Needle&#34; /&gt;
Me and the rainy wather seen from the Space Needle&lt;/p&gt;

&lt;p&gt;Also let me tell you, the coffee in &lt;a href=&#34;https://www.starbucksreserve.com/en-us/locations/seattle&#34;&gt;Starbucks Reserve&lt;/a&gt; is much better than regular
Starbucks! However, nothing as good as &lt;a href=&#34;https://storyville.com/&#34;&gt;StoryVille Cafe&lt;/a&gt;; they even gave me a mug
as a gift.&lt;/p&gt;

&lt;h1 id=&#34;drupalcon&#34;&gt;DrupalCon&lt;/h1&gt;

&lt;p&gt;After getting used to the timezone and regained energies from visiting all
Seattle, it was time to go to DrupalCon. It was hosted in the Washington
State Convention Center, quite a big venue with a proportionaly attendance of
3500 people.&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/drupalcon2019/drupalcon.jpg#center&#34; alt=&#34;drupalcon&#34; /&gt;&lt;/p&gt;

&lt;p&gt;Attendees were quite nice,
I got quite a few small chats just walking around looking for talks to attend. That was appreciated,
specially for someone like me that knew noone and didn&amp;rsquo;t have much of an idea
about any of the products discussed there.&lt;/p&gt;

&lt;p&gt;I attended a few talks about project management, community management, etc. and
realized they face similar issues that we have to deal with. For example, how to organize
a big community and drive new initiatives, how to empower and encourage people
to work on the things that matter most for the project, etc.&lt;/p&gt;

&lt;p&gt;Also, since Drupal is moving to a more enterprise model, questions such as
&amp;ldquo;How do we keep free software ideals strong in our community?&amp;rdquo; and
&amp;ldquo;How do we keep community as strong as enterprise/company
contributions?&amp;rdquo; were raised too.&lt;/p&gt;

&lt;p&gt;Only thing I would have hoped to have was a central communication channel were I could just jump in and
ask or propose to do things around. Their IRC was not very active, which was
surprising given the number of attendees. This is something that works for us at
GUADEC with the GNOME Telegram group.&lt;/p&gt;

&lt;h1 id=&#34;the-breakfast-and-panel-discussion&#34;&gt;The breakfast and panel discussion&lt;/h1&gt;

&lt;p&gt;The day for the talk arrived, and after preparing it quite well (we
started its preparation almost a year ago!) we had a nice breakfast where all of us
finally met in person.&lt;/p&gt;

&lt;p&gt;These informal chats have a lot of value to me, we discussed the challenges and
goals of Drupal for the future. Similar with GitLab, we discussed the future direction
of the company and project and its FOSS values and how open they are with their
strategy, specially as they get closer to their IPO.&lt;/p&gt;

&lt;p&gt;The panel discussion went quite well, but the attendance was pretty low, most
likely because it was at 9:00 the day after the DrupalCon parties&amp;hellip; hard to get
people in. Even then, we discussed with the Matthew Tift, a Drupal contributor in
 the &amp;ldquo;newcomers&amp;rdquo; field, for ways to improve community contribution. I also discussed with
Tina the marketing strategy in FOSS organizations that are community contributor
driven like GNOME, and ways to improve that for GNOME and GitLab.&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/drupalcon2019/badge.jpg#center&#34; alt=&#34;badge&#34; /&gt;&lt;/p&gt;

&lt;p&gt;The main point for Drupal was that historically they have been a collaboration island, in oposstion
of GNOME that we have been a collaboration
hub for most of the Linux desktop projects. Tim wants Drupal to improve this situation and
find ways to collaborate more with us, specially once I mentioned we were the
creators of Outreachy. Given that their main goal for this year is inclusivity
and diversity, GNOME being the creators of Outreachy gives us a great respect and trust on
driving such initiatives.&lt;/p&gt;

&lt;p&gt;In general, my main message for the conference was about GNOME being not only a
desktop product, but also a place of inovation for FOSS projects and initiatives, and a place
where key people in the FOSS world have learn their skills while being driven by a community
rooted in FOSS values. GNOME goes beyond GNOME itself, and I hope this message got
 delivered!&lt;/p&gt;

&lt;h1 id=&#34;we-should-do-more-of-this&#34;&gt;We should do more of this!&lt;/h1&gt;

&lt;p&gt;It was great to attend a conference for a product we don&amp;rsquo;t have much in common,
we have many ways to collaborate that are not only about software, and organizations
like Drupal and GitLab are great partners in where we want to go and what we
want to do. I think, we at GNOME should do this more often, take these oportunities
to meet fellow FOSS projects and find more ways where we can intersect and collaborate.&lt;/p&gt;

&lt;p&gt;Lastly, huge thanks to Tim and Drupal and Eliran, Tina and GitLab for sponsoring
my trip, and to Red Hat for giving me the time to go there. It was great to see
you all, I&amp;rsquo;m looking forward to more oportunities like these 🍻&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/drupalcon2019/logos.png#center&#34; alt=&#34;logos&#34; /&gt;&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Issue handling automation for GNOME</title>
      <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2019-01-07-issue-handling-automation/</link>
      <pubDate>Mon, 07 Jan 2019 00:00:00 +0000</pubDate>
      <author>csoriano@gnome.org (Carlos Soriano)</author>
      <guid>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2019-01-07-issue-handling-automation/</guid>
      <description>

&lt;p&gt;I remember some time ago discussing with someone from GNOME how important is to make a good
issue report, the conclusion came along the lines of &amp;ldquo;I have 10 seconds to read
per issue, if the issue is not well done it&amp;rsquo;s most likely I won&amp;rsquo;t have time to
read it&amp;rdquo;. It&amp;rsquo;s true most of us are focused on doing actual code, after all it&amp;rsquo;s
what most of us enjoy and/or what we are paid for. So bug handling always takes
a quite back place on our priorities.&lt;/p&gt;

&lt;p&gt;On the other hand, the management of issues is neccessary for a healthy project,
specially if you are using it for planification, prioritization, feedback
gatherer and interaction with other developers or teams. In general, a set
of open issues that is representative, updated and properly reported helps the project
progress and build a community around.&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/issue_automation/bot-cut.png#center&#34; alt=&#34;bot&#34; /&gt;&lt;/p&gt;

&lt;h1 id=&#34;handling-issues-automatically&#34;&gt;Handling issues automatically&lt;/h1&gt;

&lt;p&gt;There are a set of tasks that are quite repetitive, such as closing issues that
were left with the &amp;ldquo;need information&amp;rdquo; label. Or old feature requests. Or crashes
that were reported years ago with an old version of the software&amp;hellip;&lt;/p&gt;

&lt;p&gt;This is something I really wanted to get done with, so I&amp;rsquo;ve been working in the
past weeks to make a set up where repetitive tasks are automated by a GitLab CI
&amp;ldquo;bot&amp;rdquo;, and this is what I&amp;rsquo;m gonna share with you today!&lt;/p&gt;

&lt;p&gt;The tool that performs the task is used by GitLab CE itself for their own
issue triage automation and it&amp;rsquo;s called
&lt;a href=&#34;https://gitlab.com/gitlab-org/gitlab-triage&#34;&gt;gitlab-triage&lt;/a&gt;. This tool takes
a set of rules and process them with a CI job, then you can set to be run
periodically in schedules.&lt;/p&gt;

&lt;p&gt;So let&amp;rsquo;s take a look how to make a simple set up.&lt;/p&gt;

&lt;h1 id=&#34;basic-set-up&#34;&gt;Basic set up&lt;/h1&gt;

&lt;p&gt;First, you need to set up a CI job that will run the tool. For that, in your CI
file add:&lt;/p&gt;

&lt;pre&gt;&lt;code class=&#34;language-yaml&#34;&gt;triage:
  image: ruby:2.4
  stage: triage
  script:
    - gem install gitlab-triage
    - gitlab-triage --token $TRIAGE_BOT_TOKEN --project-id $CI_PROJECT_PATH --host-url https://gitlab.gnome.org
  only:
    - schedules
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;And add a &amp;ldquo;triage&amp;rdquo; stage to the file stages. This will install a ruby docker
image, install the gitlab-triage program and then run it on &lt;a href=&#34;https://docs.gitlab.com/ee/api/pipeline_schedules.html&#34;&gt;schedules&lt;/a&gt;.
Note the variable &lt;code&gt;$TRIAGE_BOT_TOKEN&lt;/code&gt;, this is the API token of the account you
want to use for perform the actions. You can use your account, a new account, or
the bot I created for GNOME. Feel free to ask me the token for your use. Also, make
sure the project has a schedule that the triage can run on.&lt;/p&gt;

&lt;p&gt;Now, what it should run tho? That&amp;rsquo;s where the policies file enters the game.&lt;/p&gt;

&lt;h1 id=&#34;the-policies&#34;&gt;The policies&lt;/h1&gt;

&lt;p&gt;gitlab-triage will process a file called &lt;code&gt;.triage-policies.yml&lt;/code&gt; on the root of your
project. This file defines with what rules and what the bot should do. You can
make conditions based on labels, dates, etc. Feel free to take a look at the
&lt;a href=&#34;https://gitlab.com/gitlab-org/gitlab-triage/blob/master/README.md&#34;&gt;gitlab-triage documentation&lt;/a&gt;,
it&amp;rsquo;s quite extense and helpful.&lt;/p&gt;

&lt;p&gt;For now, let&amp;rsquo;s write our first rule. And we are going with the less controversial
one, closing issues that were marked as need information.&lt;/p&gt;

&lt;h3 id=&#34;close-issues-that-need-information-and-weren-t-updated&#34;&gt;Close issues that need information and weren&amp;rsquo;t updated&lt;/h3&gt;

&lt;p&gt;When a bug needs information to be properly triaged, we mark issues with the
&amp;ldquo;need information&amp;rdquo; label. After some time, if nobody provides the information the bug
should be closed. At GNOME Bugzilla we were closing these bugs after 6 weeks, with a &lt;a href=&#34;https://wiki.gnome.org/Bugsquad/TriageGuide/StockResponses&#34;&gt;stock answer&lt;/a&gt;
.&lt;/p&gt;

&lt;p&gt;How can we write this so it&amp;rsquo;s done by the gitlab-triage bot? We just create
a new rule in the policy file, in this way:&lt;/p&gt;

&lt;pre&gt;&lt;code class=&#34;language-yaml&#34;&gt; resource_rules:
  issues:
    rules:
     - name: Close issues that need information and weren&#39;t updated 
        conditions:
          date:
            attribute: updated_at
            condition: older_than
            interval_type: weeks
            interval: 6
          state: opened
          labels:
            - 2. Needs Information 
        actions:
          status: close
          labels:
            - 15. Auto Updated
          comment: |
            Closing this issue as no further information or feedback has been provided.

            Please feel free to reopen this issue if you can provide the information or feedback.

            Thanks for your help!

            ---

            This is an automatic message. If you have suggestions to improve this automatic action feel free to add a comment on https://gitlab.gnome.org/GNOME/nautilus/issues/715
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Quite simple. We set up the conditions that an issue must match in order
to be processed under &amp;ldquo;conditions&amp;rdquo;, then we set the actions we want to do to
those issues in the &amp;ldquo;actions&amp;rdquo; section.&lt;/p&gt;

&lt;p&gt;In this case, if an issue was last updated more than 6 weeks ago, it&amp;rsquo;s in the opened state, and
has the label &amp;ldquo;2. Needs Information&amp;rdquo; it will close the issue, set the label
&amp;ldquo;15. Auto Updated&amp;rdquo; and comment the stock response. Note that we set a label to
know that it was autoupdated by a bot, so in case something goes wrong we can query
those issues and perform other actions on them.&lt;/p&gt;

&lt;p&gt;You can see an example result &lt;a href=&#34;https://gitlab.gnome.org/GNOME/nautilus/issues/749#note_395818&#34;&gt;here&lt;/a&gt;, it looks like:&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/issue_automation/need_info_result.png#center&#34; alt=&#34;bot result&#34; /&gt;&lt;/p&gt;

&lt;p&gt;And an example of a query for Nautilus auto updated issues &lt;a href=&#34;https://gitlab.gnome.org/GNOME/nautilus/issues?scope=all&amp;amp;utf8=%E2%9C%93&amp;amp;state=all&amp;amp;label_name[]=15.%20Auto%20Updated&#34;&gt;here&lt;/a&gt;, which looks like:&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/issue_automation/auto_updated_results.png#center&#34; alt=&#34;auto updated result&#34; /&gt;&lt;/p&gt;

&lt;p&gt;Nice, right?&lt;/p&gt;

&lt;h3 id=&#34;close-old-feature-proposals&#34;&gt;Close old feature proposals&lt;/h3&gt;

&lt;p&gt;Features proposals are probably the issues that has a higher ratio of being ignored. With the resources we usually have, it&amp;rsquo;s unlikely we can add more maintainership &amp;ldquo;cost&amp;rdquo; to our projects, or that we already didn&amp;rsquo;t plan carefully what features to add.&lt;/p&gt;

&lt;p&gt;With this at hand, we want a rule that closes old feature proposals that hasn&amp;rsquo;t been marked as part of the project planning. The rule looks like:&lt;/p&gt;

&lt;pre&gt;&lt;code class=&#34;language-yaml&#34;&gt;- name: Close old feature proposals without planning labels or milestones
  conditions:
    date:
      attribute: created_at
      condition: older_than
      interval_type: months
      interval: 12
    labels:
      - 1. Feature
    forbidden_labels:
      - 2. Deliverable
      - 2. Stretch
      - 1. Epic
    milestone:
      - No Milestone
    state: opened
    upvotes:
      attribute: upvotes
      condition: less_than
      threshold: 10
  actions:
    labels:
      - 15. Auto Updated
    status: close
    comment: |
      Hi,

      First of all, thank you for raising an issue to help improving Nautilus. In order to maintain order in the issue tracker we are closing old, unscheduled feature proposals.

      Unfortunately, no Merge Request has been provided for this, and/or the project contributors are not planning this feature in the foreseeable future.

      This issue will be closed as it meets the following criteria:
      * Created more than 12 months ago
      * Labeled as ~&amp;quot;1. Feature&amp;quot;
      * Not associated with a milestone or with ~&amp;quot;2. Deliverable&amp;quot; or ~&amp;quot;2. Stretch&amp;quot; project planning labels.
      
      Thanks for your help!

      ---

      This is an automatic message. If you have suggestions to improve this automatic action feel free to add a comment on https://gitlab.gnome.org/GNOME/nautilus/issues/715
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;It&amp;rsquo;s similar to the previous rule, we just added the condition to not proccess issues that has the project planing labels &amp;ldquo;2. Deliverable&amp;rdquo;, &amp;ldquo;2. Stretch&amp;rdquo; or &amp;ldquo;1. Epic&amp;rdquo;. The project planning labels comes from the &lt;a href=&#34;https://csorianognome.wordpress.com/2018/04/30/projects-release-planning-for-gnome/&#34;&gt;Project Planning for GNOME post&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Note the voting threshold condition of 10 votes, this is just an internal way to make sure we don&amp;rsquo;t close automatically a highly voted feature proposal, so we rather make a manual comment to avoid misscomunications.&lt;/p&gt;

&lt;p&gt;You can see an example result &lt;a href=&#34;https://gitlab.gnome.org/GNOME/nautilus/issues/126#note_385647&#34;&gt;here&lt;/a&gt;, it looks like:&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/issue_automation/feature_proposal_result.png#center&#34; alt=&#34;feature proposal result&#34; /&gt;&lt;/p&gt;

&lt;h3 id=&#34;bring-attention-to-untriaged-issues&#34;&gt;Bring attention to untriaged issues&lt;/h3&gt;

&lt;p&gt;This is all nice, but what about issues that wasn&amp;rsquo;t even triagged in the first place? For those, we can make the bot create a summary for us. This helps greatly to bring to our attention in a regular basis those issues that need to be taken care of.&lt;/p&gt;

&lt;p&gt;We use the &amp;ldquo;summarize&amp;rdquo; action, the rule looks like:&lt;/p&gt;

&lt;pre&gt;&lt;code class=&#34;language-yaml&#34;&gt;- name: Mark stale unlabelled issues for triage
  conditions:
    date:
      attribute: created_at
      condition: older_than
      interval_type: months
      interval: 2
    # We want to handle those that doesn&#39;t have these labels, including those with other labels.
    forbidden_labels:
      - 1. Bug
      - 1. Crash
      - 1. Epic
      - 1. Feature
    state: opened
  actions:
    labels:
      - 15. Untriaged
    summarize:
      title: Issues that need triaging
      item: |
        - {{web_url}} - {{title}} - {{labels}}
      summary: |
        The following issues were created two months ago and they are unlabeled:

        {{items}}

        /cc @Teams/BugSquad

&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;This will create an issue with a list of issues that are lacking one of the labels listed in &amp;ldquo;forbidden_labels&amp;rdquo;. Note that we could have use simply &amp;ldquo;No Label&amp;rdquo; value as a condition in a &amp;ldquo;Labels&amp;rdquo; section, however we wanted to bring to our attention those issues that have other labels but we didn&amp;rsquo;t mark if they were a bug or a feature, because we rely on these labels for the previous rules.&lt;/p&gt;

&lt;p&gt;Also note that the created issue pings a group called &amp;ldquo;Teams/BugSquad&amp;rdquo;, which doesn&amp;rsquo;t exist yet. If this sounds useful for us, I would like to create this group so bug triagers can be part of that group and get pinged to handle these issues in a regular basis.&lt;/p&gt;

&lt;p&gt;You can see an example result &lt;a href=&#34;https://gitlab.gnome.org/GNOME/nautilus/issues/826&#34;&gt;here&lt;/a&gt;, it looks like:&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/issue_automation/summary_result.png#center&#34; alt=&#34;summary result&#34; /&gt;&lt;/p&gt;

&lt;h3 id=&#34;close-old-issues&#34;&gt;Close old issues&lt;/h3&gt;

&lt;p&gt;This is a controversial one. Who hasn&amp;rsquo;t receive a &amp;ldquo;Fedora has reached EOL&amp;rdquo; mass mails? :) I will leave the explanation why I think we should try this for another post, since here I want to focus on providing just the tooling and snippets for those who want to try it out.&lt;/p&gt;

&lt;p&gt;For closing old bugs we just look at the updated date and close those that hasn&amp;rsquo;t been touched in 18 months.&lt;/p&gt;

&lt;pre&gt;&lt;code class=&#34;language-yaml&#34;&gt;- name: Close stale issues with no milestone or planning labels
  conditions:
    date:
      attribute: updated_at
      condition: older_than
      interval_type: months
      interval: 18
    milestone:
      - No Milestone
    forbidden_labels:
      - 2. Deliverable
      - 2. Stretch
      - 1. Epic
      # Features are handled in a different rule
      - 1. Feature
    state: opened
  actions:
    status: close
    labels:
      - 15. Auto Updated
    comment: |
      Hi,

      Thank you for raising an issue to help improve Nautilus. We&#39;re sorry this particular issue has gone unnoticed for quite some time.

      This issue will be closed, as it meets the following criteria:
      * No activity in the past 18 months (3 releases).
      * Unscheduled. Not associated with a milestone or with ~&amp;quot;2. Deliverable&amp;quot; or ~&amp;quot;2. Stretch&amp;quot; project planning labels.

      We&#39;d like to ask you to help us keep our issue tracker organized  by determining whether this issue should be reopened.

      If this issue is reporting a bug, let us know if this issue is still present in a newer version and if you can reproduce it in the [nightly version](https://wiki.gnome.org/Apps/Nightly).

      Thanks for your help!

      ---

      This is an automatic message. If you have suggestions to improve this automatic action feel free to add a comment on https://gitlab.gnome.org/GNOME/nautilus/issues/715
&lt;/code&gt;&lt;/pre&gt;

&lt;h1 id=&#34;let-me-know-how-it-works-for-you&#34;&gt;Let me know how it works for you&lt;/h1&gt;

&lt;p&gt;So far it has work quite well for Nautilus, in our first run it helped us to triage &lt;a href=&#34;https://gitlab.gnome.org/GNOME/nautilus/issues/785&#34;&gt;around 50 issues&lt;/a&gt;, and the bot closes 15 issues that were either waiting long for information or were old features requests.&lt;/p&gt;

&lt;p&gt;These rules can be tweaked, and in general these are an approach I think we should test. There are a few things that are a bit bold, specially closing issues automatically, so any feedback is appreciated.&lt;/p&gt;

&lt;p&gt;I&amp;rsquo;m looking forward to hear how it works for you, and see if there are other modifications you do or some advice you would propose.&lt;/p&gt;

&lt;p&gt;Enjoy!&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Desktop icons RC release</title>
      <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2018-11-21-desktop-icons-rc-release/</link>
      <pubDate>Wed, 21 Nov 2018 00:00:00 +0000</pubDate>
      <author>csoriano@gnome.org (Carlos Soriano)</author>
      <guid>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2018-11-21-desktop-icons-rc-release/</guid>
      <description>

&lt;p&gt;So it&amp;rsquo;s finally here, desktop icons release candidate for 1.0 is available now!&lt;/p&gt;

&lt;p&gt;This means that all the features we wanted for 1.0 are implemented and we freeze
the implementation of new features. Now we will focus on polishing and removing
noisy or unnecessary stuff in the UI, fix weird behaviours and UX, fix bugs, etc.&lt;/p&gt;

&lt;h3 id=&#34;what-s-new&#34;&gt;What&amp;rsquo;s new?&lt;/h3&gt;

&lt;p&gt;Tons of stuff! We added multimonitor support, HiDPI support, renaming of files,
thumbnails support, DnD between files on the desktop, better rubberband selection&amp;hellip;
Honestly, more than I thought we could do. You can read more about what&amp;rsquo;s
new in the &lt;a href=&#34;https://gitlab.gnome.org/World/ShellExtensions/desktop-icons/tags/18.11rc&#34;&gt;release notes&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/desktop_icons_RC/multimonitor.png#center&#34; alt=&#34;multimonitor&#34; /&gt;&lt;/p&gt;

&lt;p&gt;Only feature that it&amp;rsquo;s not implemented is DnD from the windows to the
desktop and the other way around. Maybe not a big deal since you can copy &amp;amp; paste
either by shortcuts or by the context menus. We will be glad to review the code
if someone wants to give it a chance and work on it.&lt;/p&gt;

&lt;h3 id=&#34;this-release-already-overpasses-what-nautilus-offered&#34;&gt;This release already overpasses what Nautilus offered&lt;/h3&gt;

&lt;p&gt;Nautilus desktop icons has never worked well in multimonitor setups. Files
get stuck hidden in some not reachable places due to the nature of Nautilus
that simply puts a big window as the desktop, instead of a window per monitor.&lt;/p&gt;

&lt;p&gt;This extension finally implements a sane multimonitor handling, by having a flexible grid
per monitor. No more lost data&amp;hellip;&lt;/p&gt;

&lt;p&gt;Also, as you might know, the Nautilus desktop icons was Xorg only. This extension
is by nature Wayland ready.&lt;/p&gt;

&lt;h3 id=&#34;what-s-needed-for-1-0&#34;&gt;What&amp;rsquo;s needed for 1.0?&lt;/h3&gt;

&lt;p&gt;Once the result feels polished enough and we are confident about the amount
of features we want to support, the default settings, etc. we will release 1.0.
My hope is that that will happen in the timeframe of one month from now.&lt;/p&gt;

&lt;p&gt;Feel free to grab the new release in the &lt;a href=&#34;https://extensions.gnome.org/extension/1465/desktop-icons/&#34;&gt;GNOME extensions website&lt;/a&gt;
test it, report bugs, give feedback and of course, welcome to join the
development of this project if you want to contribute!&lt;/p&gt;

&lt;p&gt;And finally, with this release I&amp;rsquo;m glad to announce and welcome Sergio Costas to join
as official developer to the project! He has done an excellent job implementing
tons of features we wanted for the 1.0 version.&lt;/p&gt;

&lt;p&gt;Thanks to everyone who contributed in one way or another!&lt;/p&gt;

&lt;p&gt;Enjoy&lt;/p&gt;

&lt;p&gt;PD: Nautilus 3.30.4 is needed for the rename of files to work.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>GNOME Internships interns has been elected</title>
      <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2018-11-01-gnome-internships-interns-elected/</link>
      <pubDate>Thu, 01 Nov 2018 00:00:00 +0000</pubDate>
      <author>csoriano@gnome.org (Carlos Soriano)</author>
      <guid>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2018-11-01-gnome-internships-interns-elected/</guid>
      <description>&lt;p&gt;Hello all,&lt;/p&gt;

&lt;p&gt;&lt;a href=&#34;https://wiki.gnome.org/Internships&#34;&gt;GNOME Internships&lt;/a&gt; projects and interns has been elected!&lt;/p&gt;

&lt;p&gt;We had have strong applicants and quite a big amount of applications. If you are
not the elected don&amp;rsquo;t be discouraged, it wasn&amp;rsquo;t an easy choice.&lt;/p&gt;

&lt;p&gt;This round we have to congratulate Ludovico de Nittis who will work in the
&lt;a href=&#34;https://wiki.gnome.org/Internships/2018/Projects/USB-Protection&#34;&gt;&amp;ldquo;USB Protection&amp;rdquo;&lt;/a&gt;
project with his mentor Tobias Mueller. Congrats Ludovico!&lt;/p&gt;

&lt;p&gt;The project goal is to increase the robustness against attacks via
malicious USB devices. Certainly a challenging goal! You can read extensive
information in the project wiki linked above, it&amp;rsquo;s definitely quite interesting.&lt;/p&gt;

&lt;p&gt;This round of internships is fund by the &lt;a href=&#34;https://www.gnome.org/news/2013/07/gnome-raises-20000-to-enhance-security-and-privacy/&#34;&gt;privacy and security campaign&lt;/a&gt;
we did at GNOME a few years ago, and we are happy we can put them into good use
to improve the security and privacy of GNOME users and donors.&lt;/p&gt;

&lt;p&gt;Deeply thanks to all the donors! Withouth you this initiative wouldn&amp;rsquo;t have been
possible. Also thanks to the mentors and applicants.&lt;/p&gt;

&lt;p&gt;More on the admin side, it has been a little bumpy since its the first time
doing these internships. And well, this last week I have been a bit worried
by other stuff you already probably know about :)&lt;/p&gt;

&lt;p&gt;If you have any question or feedback, don&amp;rsquo;t hesitate to contact me on IRC
as csoriano or send an email to internships-admin@gnome.org&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>GNOME Internships are getting closer</title>
      <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2018-09-29-gnome-interhsips-are-getting-closer/</link>
      <pubDate>Sat, 29 Sep 2018 00:00:00 +0000</pubDate>
      <author>csoriano@gnome.org (Carlos Soriano)</author>
      <guid>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2018-09-29-gnome-interhsips-are-getting-closer/</guid>
      <description>

&lt;h3 id=&#34;almost-there&#34;&gt;Almost there&amp;hellip;&lt;/h3&gt;

&lt;p&gt;&lt;a href=&#34;https://wiki.gnome.org/Internships&#34;&gt;GNOME Internships&lt;/a&gt; are getting closer,
if you are a GNOME contributor with some experience this internship is a good
fit for you. Official application deadline is 1st of October, but we are open to receive more
aplications if the aplicant is a good fit.&lt;/p&gt;

&lt;p&gt;How about applying? :)&lt;/p&gt;

&lt;h3 id=&#34;what-s-this-about&#34;&gt;What&amp;rsquo;s this about?&lt;/h3&gt;

&lt;p&gt;GNOME internships is a program to use the donations we get from campaigns into projects
aimed to improve the topic of the campaign. This internship is not limited to students
or a other level of expertise, quite the opossite, some experience and/or being part
of GNOME already is a must.
Making sure these projects get finished is very important to us, and to achieve that the
GNOME foundation is providing a more than nice stipend!&lt;/p&gt;

&lt;p&gt;This round of internships is aimed to improve privacy when using GNOME. We have selected a &lt;a href=&#34;https://wiki.gnome.org/Internships/2018/Projects&#34;&gt;few projects&lt;/a&gt;
tha are key to provide an excellent privacy experience with GNOME software. We will use the funds we raised as part of the &lt;a href=&#34;https://wiki.gnome.org/Foundation/PrivacyCampaign2013/&#34;&gt;privacy campaign&lt;/a&gt; and we are excited to put them in good use for all of our donors.&lt;/p&gt;

&lt;h3 id=&#34;requirements-more-info&#34;&gt;Requirements &amp;amp; more info&lt;/h3&gt;

&lt;p&gt;Ideal what-to-have are being a GNOME contributor and some work/other FOSS experience. If you
don&amp;rsquo;t have work/other FOSS experience but are a regular GNOME contributor this is also fit
for you. Likewise, if you have work/other FOSS experience but don&amp;rsquo;t have as many GNOME
contributions you can try out too after making some contributions to GNOME.&lt;/p&gt;

&lt;p&gt;If you are not sure if you fullfill the requirements don&amp;rsquo;t hesitate to ask me
or send an email to internships-admin@gnome.org. Above all, don&amp;rsquo;t let the
impostor syndrome to prevent you for asking or aplying!&lt;/p&gt;

&lt;p&gt;Go to the &lt;a href=&#34;https://wiki.gnome.org/Internships&#34;&gt;wiki page&lt;/a&gt; to read more info and
follow the steps to apply.&lt;/p&gt;

&lt;p&gt;Cheers 🐩&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Moving from Wordpress</title>
      <link>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2018-09-11-moving-from-wordpress/</link>
      <pubDate>Tue, 11 Sep 2018 00:00:00 +0000</pubDate>
      <author>csoriano@gnome.org (Carlos Soriano)</author>
      <guid>https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/2018-09-11-moving-from-wordpress/</guid>
      <description>

&lt;h1 id=&#34;wordpress&#34;&gt;Wordpress&lt;/h1&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/moving_from_Wordpress/wordpress_blog.png#center&#34; alt=&#34;wordpress blog&#34; /&gt;&lt;/p&gt;

&lt;p&gt;I have been using Wordpress for long. Basically since I joined GNOME because it was required for GSoC. Wordpress works, it&amp;rsquo;s okay. There are themes, it has a wysiwyg editor and you can embed images and videos quite easily. It kinda does the job&amp;hellip;&lt;/p&gt;

&lt;h2 id=&#34;the-bad&#34;&gt;The bad&lt;/h2&gt;

&lt;p&gt;Now, one of the biggest problems are ads. Not that they exist, which is completely understandable, but rather that they are kinda crazy. I got reports that sometimes they were about guns in USA, or they lead to scam sites.&lt;/p&gt;

&lt;p&gt;I also missed a way to link to my personal twitter/linkdin/gitlab. That&amp;rsquo;s quite useful for people to check what other things I write about and how to get more info about what I do.&lt;/p&gt;

&lt;h2 id=&#34;the-ugly&#34;&gt;The ugly&lt;/h2&gt;

&lt;p&gt;More on the technical side, one of the issues was that I coulnd&amp;rsquo;t create a draft post and share it in private with other people so I could get some review. This was specially required for Nautilus anouncements. And in case I could, how could we collaborate in editing the post itself? That was simply not there.&lt;/p&gt;

&lt;p&gt;Most importantly, I couldn&amp;rsquo;t give personality to the blog. In the same way I want the software I use being neutral because for it&amp;rsquo;s just a tool, my personal blog should be more repsentative on how I am and how I express myself. With Wordpress this was not possible. Hell, I couldn&amp;rsquo;t even put some colors here and there, or take the bloat out from some of the widgets provided by the Wordpress themes.&lt;/p&gt;

&lt;h1 id=&#34;the-enlightenment&#34;&gt;The enlightenment&amp;hellip;&lt;/h1&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/moving_from_Wordpress/didier_blog.png#center&#34; alt=&#34;didier&#39;s blog&#34; /&gt;&lt;/p&gt;

&lt;p&gt;Once upon a time, on a stormy day, I wrote the blog post about the removal and future plans of the desktop icons as a guest writter on &lt;a href=&#34;https://didrocks.fr/&#34;&gt;Didier&amp;rsquo;s Roche blog&lt;/a&gt;. And here came the enligthening, he was using some magic PR workflow in GitHub where I could just fix stuff, request to merge those changes, review happens, then gets accepted and published all automatically with CI.&lt;/p&gt;

&lt;p&gt;Finally you could review, share drafts, and collaborate much easily than with Wordpress!&lt;/p&gt;

&lt;p&gt;Not only that, but also his blog was much more personalized, closer to how he wanted to express himself.&lt;/p&gt;

&lt;h2 id=&#34;the-decision&#34;&gt;The decision&lt;/h2&gt;

&lt;p&gt;One thing I had have in the back of my mind for some time is that I need to improve my skills with non-GNOME stuff, specially web and cloud technologies. So what a better oportunity than trying to set up a static web generator for blogs (and other stuff) to mimic the features of Didier&amp;rsquo;s blog?&lt;/p&gt;

&lt;p&gt;And decided was it, got some free time this weekend and decided to learn this magic stuff.&lt;/p&gt;

&lt;h2 id=&#34;the-technology&#34;&gt;The technology&lt;/h2&gt;

&lt;p&gt;I decided to go with &lt;a href=&#34;https://gohugo.io/&#34;&gt;Hugo&lt;/a&gt;, because back when I was experimenting with GitLab pages and a project page for Nautilus Hugo seemed to be the easiest and most convenient tech to create a static website that just works. Overall, it seems that Hugo is the most used static website generator for blogs.&lt;/p&gt;

&lt;p&gt;I also decided that I would get a theme based in the well known and well maintained &lt;a href=&#34;https://getbootstrap.com/docs/3.3/css/&#34;&gt;bootstrap&lt;/a&gt;. Most themes had some custom CSS, all delicately and manually crafted. But let&amp;rsquo;s be honest, I don&amp;rsquo;t want to maintain this, I wanted something simple I can go with.&lt;/p&gt;

&lt;p&gt;So I chose the &lt;a href=&#34;https://themes.gohugo.io/minimal/&#34;&gt;minimal theme&lt;/a&gt; wich is based in bootstrap and then applied my own changes such as a second accent (the red in the titles), support for centered images, the Ubuntu font (which I use it everywhere I can), some navbar changes, full content rss support, lot of spacing adjustments, softer main text coloring, etc.&lt;/p&gt;

&lt;p&gt;Also, I could finally put a decent comment section by using DisQus, which is added to Hugo with a single line. Eventually I would like to go with a free software solution such as &lt;a href=&#34;https://www.talkyard.io/&#34;&gt;Talkyard&lt;/a&gt;, so far I didn&amp;rsquo;t have luck to make it work.&lt;/p&gt;

&lt;p&gt;The nicest thing of Hugo is that adding a new post is a matter of dropping a MarkDown file in the post folder. And that&amp;rsquo;s it. That easy.&lt;/p&gt;

&lt;h1 id=&#34;the-result&#34;&gt;The result&lt;/h1&gt;

&lt;p&gt;&lt;img src=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/moving_from_Wordpress/hugo_blog.png#center&#34; alt=&#34;The result&#34; /&gt;&lt;/p&gt;

&lt;p&gt;So here&amp;rsquo;s the result. I think it&amp;rsquo;s quite an improvement versus what I had in Wordpress, although Antonio says that the page looks like Nautilus&amp;hellip; I guess I cannot help myself. Let&amp;rsquo;s see how it works in the future, specially since there is no wysiwyg editor. To be honest, using MarkDown is so easy that I don&amp;rsquo;t see that as a problem so far.&lt;/p&gt;

&lt;p&gt;I can even embed some code with highlighting for free:&lt;/p&gt;

&lt;pre&gt;&lt;code class=&#34;language-python&#34;&gt;def do_measure(self, orientation: Gtk.Orientation,
               for_size: int) -&amp;gt; Tuple[int, int, int, int]:
    child = self.get_child()
    if not child:
        return -1, -1, -1, -1

    minimum, natural, _x, _x = child.measure(orientation, for_size)
    if self._max_width is not None and orientation == Gtk.Orientation.HORIZONTAL:
        natural = min(self._max_width, natural)

    return minimum, natural, -1, -1
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;And use Builder with Vim emulation to write this. That is already a big win!&lt;/p&gt;

&lt;p&gt;If you want to take a look at the code or do something similar, feel free to take a look and use anything from &lt;a href=&#34;https://gitlab.gnome.org/csoriano/csoriano-blog&#34;&gt;the code in GNOME&amp;rsquo;s GitLab&lt;/a&gt;. I also added &lt;a href=&#34;https://csoriano.pages.gitlab.gnome.org/csoriano-blog/post/example/&#34;&gt;an example post&lt;/a&gt; in order to see all formats for headings, bullet lists, images, code blocks, etc. Any feedback about the looks, functionality, content, etc. is welcome; finally I would be able to do something about it 😏.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Hasta otra amigos&lt;/em&gt; 🍹&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>
