MOTUApplication

Revision 16 as of 2025-01-06 19:03:31

Clear message

I, Pushkar Kulkarni, apply for MOTU upload rights.

Name

Pushkar Kulkarni

Launchpad Page

https://launchpad.net/~pushkarnk

Wiki Page

https://wiki.ubuntu.com/pushkarnk

I am applying because:

  • I'd like to eliminate delays in getting my work sponsored.
  • I'd like to reduce the burden on my sponsors.

Who I am

Since my graduation from college, I have been working on JVM technologies including dynamic compilation, standard libraries and debugging tools, across Java releases starting 1.3 and covering two JVM implementations - Open J9 and Hotspot. I contributed to Apple's Swift language project, as a committer on their "Swift Foundation" libraries and also contributed towards the creation of a "server-side Swift" ecosystem. For the past nineteen months, working for Canonical, I have been contributing to Ubuntu, focused on improving the overall Java developer experience.

I live in Belagavi, India. I am Computer Science graduate from R.V College of Engineering, Bangalore.

My Ubuntu story

I remember a friend giving my a set of Ubuntu CDs sometime in 2006 and strongly recommending "this flavor with an African name" over $(another-popular-linux-distro) which I used back then. I don't remember which version it was, but I do recall being glad about switching to it for my graduation project and thesis. Later, in my professional life in JVM technology, Ubuntu was often the go-to distro for all Linux-related development and debugging, simply because most things that I needed worked out-of-the-box and there was great support available online. For three years starting 2016, I contributed to the creation of a "server-side Swift" ecosystem where trusty and xenial were the target platforms.

Since June 2023, working with Canonical, I have been actively contributing to Ubuntu.

My involvement

I am a part of the Foundations team and currently focused on maintaining OpenJDK packages as well as introducing newer packages to enrich Ubuntu's Java development ecosystem. I am involved in preparing OpenJDK's quarterly security updates for Ubuntu LTS releases. I worked on the initial scripting effort around TCK certification of Ubuntu's OpenJDK packages and am now responsible for the ensuring compliance with TCK on a quarterly basis.

On the Ubuntu Pro side of things, I contribute to Canonical's OpenJDK FIPS solution and have prototype'd an OpenSSL-based Java FIPS provider.

Apart from my OpenJDK/Java-related contributions, I have taken up +1 maintenance shifts, proposed-migrations and Debian merges where I have worked on a variety of universe packages.

Examples of my work / Things I'm proud of

The list of my sponsored uploads can be seen here.

New Packages

I introduced and maintain the following packages for OpenJDK CRaC - a fast-startup Java solution.

+1 Maintenance

I have done five +1 maintenance shifts in 2024. You can find the reports here 1 2 3 4 5.

Merges

Contributions to toolchain transitions

openjdk-21

I contributed to the migration to openjdk-21 in Noble. This work happened in Debian. Here is the list of packages that I enabled openjdk-21 builds for:

Ruby 3.3

I worked on this during one of my +1 shifts in the oracular cycle. My contribution was focused around fixing two issues:

SRU

I've had the opportunity of working on 1 SRU as of now

Package

Version

Distribution

Bug

puppetdb

7.12.1-3ubuntu0.1

noble

2069384 2072516

Other fixes/contributions that I am proud of

  • Contributed a copyright generator script for openjdk packages.

  • Fixed an openjdk-11 armhf failure resulting from passing 64-bit time_t to dlsym()'d 32-bit clock* functions

Areas of work

  • Contribute to the maintenance of openjdk packages on Ubuntu, including OpenJDK CRaC packages.
  • Contribute to quarterly security updates on OpenJDK LTS releases for Ubuntu stable releases (nn, jj, ff and bb). I work with the Security team on this.
  • OpenJDK FIPS solutions for Ubuntu Pro. This includes a lot of prototyping.
  • TCK certification of Ubuntu's openjdk packages. In this context (and beyond), I participate in the Adoptium working group.
  • Exploring Java/JVM tech to improve the Java developer experience on Ubuntu.
  • +1 maintenance shifts, proposed migrations.

Things I could do better

  • Spend more time with packages from main.

  • Take up more SRUs and MIRs.
  • Spend more time peer-reviewing code.
  • I could have judged better when it is justified to maintain an Ubuntu delta.

Plans for the future

  • For the near future, I hope to incrementally improve the Java developer experience on Ubuntu by bringing in technology that doesn't yet exist as a first-class citizen i.e as a deb or a snap. This includes JVM technology like GraalVM and Spring Native.
  • I also hope to bring in more cloud-native development technology to improve developer experiences with popular language toolchains in general and Java in particular.
  • Personally, I desire to improve my participation in Ubuntu package development. And eventually, I hope to motivate more developers by way of mentoring and coaching.

General

What I like least in Ubuntu

  • I have worked closely with developer communities in the past. While Ubuntu is the one of the first choices when it comes to deploying applications, it is clearly not preferred for development. In cloud-native application development, there is a desire to iteratively develop and test in an environment that matches the deployment environment. I see this as a good opportunity for Ubuntu to equip itself and win some developer mind-share.
  • "Is this issue worth maintaining an Ubuntu delta (over Debian)?" - I realize that it is difficult to have a definitive answer to this question. People have their own thinking processes and opinions. It could help if we clearly documented what scenarios justify an Ubuntu delta and what scenarios do not. Apologies if such a document already exists!
  • I personally don't have qualms about using Launchpad as a collaboration tool. But I do wonder if the Launchpad interface might act as a deterrent in on-boarding new people onto the Ubuntu developer community. Most developers today are used to collaboration interfaces with much better UI/UX.


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.


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:
##  https://udd.debian.org/cgi-bin/ubuntu-sponsorships.cgi
=== Areas of Improvement ===