CoredevApplication

I, Andreas Hasenack, apply for Ubuntu Core Developer

Name

Andreas Hasenack

Launchpad Page

http://launchpad.net/~ahasenack

Wiki Page

https://wiki.ubuntu.com/AndreasHasenack

Who I am

I graduated in Electrical Engineering. Worked for a few years in a company in the aerospace industry, but in the civilian area, in a project about installing "black boxes" in trucks and buses to monitor several driving and engine parameters. I then came in contact with a customer who had a nice "intranet" (that's what it was called back then), with internal web sites and a big database backend (oracle). We had to do some development for them, but didn't have access to Oracle, and someone told me that I should try this thing called "linux", "postgresql" and "apache". I did, then installed it at home, and never looked back.

In 1998 I took a post-grad specialization course in the University (a degree higher than graduation, but below masters) in computer networks and went to work for Conectiva, the Brazilian Linux distribution, later renamed to Mandriva, where I stayed until 2008 doing lots of packaging work (RPM) and consulting for enterprise customers in the server area. My main area of expertise was email, authentication (kerberos, pam) and LDAP, and I also spent about half the time working in Conectiva's security team and doing security updates for the distro.

My Ubuntu story

Tell us how and when you got involved, what you liked working on and what you could probably do better.

My involvement

In 2008 I applied for a job in the Landscape team (https://landscape.canonical.com), and got hired as a QA engineer. I had never done any Debian packaging before, just had some ideas about how it worked, had grabbed a few packages here and there to inspect them, looked at patches, etc. apt-get wasn't a stranger, since Conectiva developed apt-rpm back in the day, and the concept of dependency resolution is the same everywhere.

Landscape has a client component, and that means a Debian package that gets installed on machines. It obviously needs to be QA'ed. So that's how I got exposed to Debian packaging "for real" that time.

In April 2017 I started working in the Ubuntu Server Team. That got me back in touch with my "Linux roots" (no pun intended) and immediately I started looking into my old friends kerberos, ldap, samba, etc and searching for bugs to fix. It is in the Ubuntu Server Team that I got introduced to the Debian Merge process, and how this team is looking into improving that process via the Git Ubuntu tooling.

In December 18th, 2017, I became an Ubuntu Server Developer: https://lists.ubuntu.com/archives/ubuntu-devel/2017-December/040101.html

Examples of my work / Things I'm proud of

My sponsored uploads: https://udd.debian.org/cgi-bin/ubuntu-sponsorships.cgi?render=html&sponsor=&sponsor_search=name&sponsoree=Andreas+Hasenack&sponsoree_search=name

My direct uploads: https://launchpad.net/~ahasenack/+uploaded-packages

DEP8 tests I added

Samba:

Autofs:

krb5:

sssd:

FTBFS fixes I uploaded

Cooperation with debian and/or upstream

autofs:

ocfs2-tools:

Samba:

sssd:

squid4 dep8 fixes pushed to debian. Debian had adopted most of our DEP8 tests previously, but they never passed in their infrastructure (https://ci.debian.net/packages/s/squid/testing/amd64/):

bind9:

exim4:

dovecot:

Misc

  jul 31 15:44:10 <ahasenack>     and upgrading just bind, leaving isc-dhcp without a rebuild, also works: https://pastebin.ubuntu.com/p/zkw8nzryYV/
  • The packages would still not migrate. Looking at the update_output.txt, I found out that debian-installer is a reverse dependency as well. Asked for a rebuild/sponsorship:

  ago 01 14:37:54 <ahasenack>     hi, my bind9 upload, which bumped the soname, also needs a debian-installer rebuild (ppa at https://launchpad.net/~ahasenack/+archive/ubuntu/bind-merge-9.11.4/+packages). Would someone sponsor this for me? https://pastebin.ubuntu.com/p/HPVtSzkPK7/

Areas of work

Let us know what you worked on, with which development teams / developers with whom you cooperated and how it worked out.

I think the previous section is a good example of my areas of work. To summarize:

  • DEP8 testing: many fixes for existing DEP8 tests, and new tests that I added
  • upstream contributions: I push changes back to Debian and upstream
  • assorted server packages bug fixing: apache, samba, sssd, kerberos, bind9, squid, and others

From the past:

  • Ubuntu Server Guide documentation fixes:
    • #1692259: slapd service does not automatically start

    • #973981: Ubuntu 11.10 help page for kerberos and ldap uses deprecated commands

    • #1038625: kerberos: never states to create non-admin user principal

    • #1170876: LDAP Private Key Access

    • #1239914: ldap installation Server guide implies for default settings that do not happen

    • #1409392: 'Kerberos and LDAP' instructions show bad ldap_kerberos_container_dn example

    • #1579209: Samba and LDAP is completely out of date

    • #1603540: wrong ldif file for altering indexes

Things I could do better

  • I stopped helping to update the server guide. It still needs work.
  • Create more bug patterns. Experience with triage has showed some patterns in bugs that we can leverage with automation
  • Grouping fixes together in a single upload, since migrations are costly
  • Expand my work to other packages that are in need of maintenance

Plans for the future

General

  • Keep adding DEP8 tests to the Ubuntu and Debian packages, and improve the coverage of existing tests
  • Reduce the delta with Debian by submitting changes to Debian and upstream.
  • Improve the LTS Server Guide in the areas of Authentication, Authorization and Samba

What I like least in Ubuntu

Please describe what you like least in Ubuntu and what thoughts do you have about fixing it.

It feels like someone quickly built a tool to solve an immediate problem, published it under a group account somewhere they had write access to, and that became official because it works and people who need it, know where to find it. I imagine some time ago people thought this would all be part of Launchpad.

  • Packages stuck in proposed-migration for way too long. Sometimes they are syncs, meaning no-one specifically uploaded them, so I guess no-one got notified. But they still take up resources, migration is attempted regularly, new DEP8 tests might be triggered if a dependency is updated, etc.


Comments

If you'd like to comment, but are not the applicant or a sponsor, do it here. Don't forget to sign with @SIG@.


Endorsements

As a sponsor, just copy the template below, fill it out and add it to this section.

Christian Ehrhardt

General feedback

I have accompanied Andreas from him joining the server Team - with an already great technical background and emphasis on testing things before pushing changes - to the clearly core-dev material engineer that he is today - where I'm close to create aliases to sponsor his work. So far I sponsored 45 uploads of Andreas (see sponsor ship miner). I have seen a great progression of quality over time and it reached a a state where I mostly find style suggestions and similar things, but no actual packaging/Ubuntu issues as part of the upload. I'd judge the quality of his uploads really high and having seen his improvements over the past I'm sure he can adapt to changes as needed. I appreciate that he has grown as much as being a great resource for reviewing my work recently. Due to that he really has my trust and I'm confident he would be a good Ubuntu Core Dev.

Specific Experiences of working together

Out of recent memory squid4 comes to my mind, where he nicely carried Ubuntu Delta through a Debian source rename. Worked on extended tests, did well on submitting plenty of things to Debian so that Delta stays maintainable and so on ...

Also the rather complex ndctl (new packaging) and libzstd (was a mess on backward/forward compatibility) cases further increased my confidence.

I'm also proud how he took active responsibility of the samba/sssd/ldap area in Ubuntu-server. He combined his former experience with his eagerness to learn and made this somewhat orphaned area great again - great for Ubuntu and great for our team.

Areas of Improvement

He was part of seed changing activities but not yet driving a lot on his own. There more work could be done to get a better grip of these as well. I'm convinced that he'll do great and not start pushing crazy things on day one.

Robie Basak

Andreas is a colleague of mine on the Canonical server team. According to the sponsorship miner, I've sponsored only 11 separate uploads for Andreas. I'm surprised; I thought it'd be a lot more. We operate a peer review policy on our team. This means that I see his work on a daily basis. I suppose much of what I review of his work he can already upload himself, or other colleagues sponsor.

However we keep hitting uploads that he cannot do without being a core dev. samba and bind9 are a couple of examples.

Much of my endorsement for Andreas' previous successful server packageset application still applies: "I am continually impressed by Andreas' attention to detail and the general comprehensiveness and correctness of his work upon first review. He doesn't just throw a patch at a sponsor to see if it sticks; by the time he requests review, he typically has done far more extensive investigation and testing than I would do before uploading. He mostly asks all necessary questions in public on Freenode before preparing an upload for sponsorship. I've seen him find tangential edge cases and fix those up as well while working a particular bug."

Andreas understands well what he doesn't know and is appropriately cautious, asking others before committing to an action to make sure that it is correct. I think his overall knowledge of packaging and Ubuntu processes surpassed the bar for core dev a while ago.

Nish Aravamudan

General feedback

I have sponsored 19 uploads for Andreas as a former member of the Canonical Ubuntu Server team. In all cases, Andreas demonstrated a commitment to high-quality packaging, even going out of his way to point out potential issues with his changes.

I have no qualms with Andreas being granted core dev rights, based upon his knowledge of Ubuntu processes and packaging.

Specific Experiences of working together

My sponsorship list is here. While I am no longer working for Canonical, I have sponsored a few things, or reviewed them as a core dev, and Andreas has mantained the same level of high quality work that I experienced as his teammate.

Additionally, Andreas has provided excellent feedback to the git-ubuntu team, both in the form of bugs and in documentation.

Areas of Improvement

I do not have any specific areas of improvement for Andreas at this time. I do not expect he will overstep any of his bounds, and will continue to ask questions when he is unsure of something in the various workflows that exist.

Steve Langasek

General feedback

I have known of Andreas Hasenack's work since Mandriva times two decades ago. I am unsurprised that the upload which I sponsored for him was straightforwardly correct and required no iteration. I also did NEW processing of the new packages ndctl and pmdk which he prepared on behalf of the Ubuntu Server Team, and which were impeccably handled, requiring only a corner-case discussion of copyright file handling when no copyright holder is listed. I have no reservations about recommending him for core-dev, despite the relatively narrow interactions I've had with him directly on Ubuntu packaging.

TEMPLATE

== <SPONSORS NAME> ==
=== General feedback ===
## Please fill us in on your shared experience. (How many packages did you sponsor? How would you judge the quality? How would you describe the improvements? Do you trust the applicant?)

=== Specific Experiences of working together ===
''Please add good examples of your work together, but also cases that could have handled better.''
## Full list of sponsored packages can be generated here:
## http://ubuntu-dev.alioth.debian.org/cgi-bin/ubuntu-sponsorships.cgi?
=== Areas of Improvement ===


AndreasHasenack/CoredevApplication (last edited 2018-09-23 10:08:31 by ahasenack)