09 Mar 2026
Planet Debian
Isoken Ibizugbe: Starting Out in Outreachy
So you want to join Outreachy but you don't understand it, you're scared, or you don't know what open source is about.
What is FOSS anyway?
Free and Open Source Software (FOSS) refers to software that anyone can use, modify, and share freely. Think of it as a community garden; instead of one company owning the "food," people from all over the world contribute, improve, and maintain it so everyone can benefit for free. You can read more here on what it means to contribute to open source.
Outreachy provides paid internships to anyone from any background who faces underrepresentation, systemic bias, or discrimination in the technical industry where they live. Their goal is to increase diversity in open source. Read their website for more. I spent a good amount of time reading all the guides listed, including the applicant guide and the how-to-apply guide.
The "Secret" to Applying (Spoiler: It's not a secret)
I know newcomers are scared or unsure and would prefer answers from previous participants, but the Outreachy website is actually a goldmine, almost every question you have is already answered there if you look closely. I used to hate reading documentation, but I've learned to love it. Documentation is the "Source of Truth."
- My Advice: Read every single guide on their site. The applicant guide is your roadmap. Embracing documentation now will make you a much better contributor later.
The AI Trap: Be Yourself
Now for the part most newcomers have asked about is the initial essay. I know it's tempting to use AI, but I really encourage you to skip it for this. Your own story is much more powerful than a generated one. Outreachy and its mentoring organizations value your unique story. They are strongly against fabricated or AI-exaggerated essays.
For example, when I contributed to Debian using openQA, the information wasn't well established on the web. When I tried to use AI, it suggested imaginary ideas. The project maintainers had a particular style of contributing, so I had to follow the instructions carefully, observe the codebase, and read the provided documentation. With that information, I always wrote a solution first before consulting AI, and mine was always better. AI can only be intelligent in the context of what you give it; if it doesn't have your answer, it will look for the most similar solution (hallucinate). We do not want to increase the burden on reviewers-their time is important because they are volunteers, too. This is crucial when you qualify for the contribution phase.
The Application Process
There are two main stages:
- The initial application: Here you fill in basic details, time availability, and essay questions (you can find these on the Outreachy website).
- The contribution phase: This is where you show you have the skills to work on the projects. Every project will list the skills needed and the level of proficiency.
When you qualify for the contribution phase:
- A lot of people will try to create buzz or even panic; you just have to focus. Once you've gotten the hang of the project, remember to help others along the way.
- You can start contributions with spelling corrections, move to medium tasks (do multiple of these), then a hard task if possible. You don't need to be a guru on day one.
- It's all about community building. Do your part to help others understand the project too; this is also a form of contribution.
- Lastly, every project mentor has a way of evaluating candidates. My summary is: be confident, demonstrate your skills, and learn where you are lacking. Start small and work your way up, you don't have to prove yourself as a guru.
Tips
- Watch this: This step-by-step video is a great walkthrough of the initial application process.
- Sign up for the email list to get updates: https://lists.outreachy.org/cgi-bin/mailman/listinfo/announce
- Be fast: Complete your initial application in the first 3 days, as there are a lot of applicants.
- Back it up: In your essay about systemic bias, include some statistics to back it up.
- Learn Git: Even if you don't have programming skills, contributions are pushed to GitHub or GitLab. Practice some commands and contribute to a "first open issue" to understand the flow: https://github.com/firstcontributions/first-contributions
The most important tip? Apply anyway. Even if you feel underqualified, the process itself is a massive learning experience.
09 Mar 2026 9:10pm GMT
Dirk Eddelbuettel: nanotime 0.3.13 on CRAN: Maintenance

Another minor update 0.3.13 for our nanotime package is now on CRAN, and has been uploaded to Debian and compiled for r2u. nanotime relies on the RcppCCTZ package (as well as the RcppDate package for additional C++ operations) and offers efficient high(er) resolution time parsing and formatting up to nanosecond resolution, using the bit64 package for the actual integer64 arithmetic. Initially implemented using the S3 system, it has benefitted greatly from a rigorous refactoring by Leonardo who not only rejigged nanotime internals in S4 but also added new S4 types for periods, intervals and durations.
This release, the first in eleven months, rounds out a few internal corners and helps Rcpp with the transition away from Rf_error to only using Rcpp::stop which deals more gracefully with error conditions and unwinding. We also updated how the vignette is made, its references, updated the continuous integration as one does, altered how the documentation site is built, gladly took a PR from Michael polishing another small aspect, and tweaked how the compilation standard is set.
The NEWS snippet below has the fuller details.
Changes in version 0.3.13 (2026-03-08)
The
methodspackage is now a Depends as WRE recommends (Michael Chirico in #141 based on a suggestion by Dirk in #140)The mkdocs-material documentation site is now generated via altdoc
Continuous Integration scripts have been updated
Replace
Rf_errorwithRcpp::stop, turn remaining one into(Rf_error)(Dirk in #143)Vignette now uses the
Rcpp::asisbuilder for pre-made pdfs (Dirk in #146 fixing #144)The C++ compilation standard is explicitly set to C++17 if an R version older than 4.3.0 is used (Dirk in #148 fixing #147)
The vignette references have been updated
Thanks to my CRANberries, there is a diffstat report for this release. More details and examples are at the nanotime page; code, issue tickets etc at the GitHub repository - and all documentation is provided at the nanotime documentation site.
This post by Dirk Eddelbuettel originated on his Thinking inside the box blog. If you like this or other open-source work I do, you can now sponsor me at GitHub.
09 Mar 2026 4:38pm GMT
Colin Watson: Free software activity in February 2026

My Debian contributions this month were all sponsored by Freexian.
You can also support my work directly via Liberapay or GitHub Sponsors.
OpenSSH
I released bookworm and trixie fixes for CVE-2025-61984 and CVE-2025-61985, both allowing code execution via ProxyCommand in some cases. The trixie update also included a fix for openssh-server: refuses further connections after having handled PerSourceMaxStartups connections.
bugs.debian.org administration
Gioele Barabucci reported that some messages to the bug tracking system generated by the bts command were being discarded. While the regression here was on the client side, I found and fixed a typo in our SpamAssassin configuration that was failing to apply a bonus specifically to forwarded commands, mitigating the problem.
Python packaging
New upstream versions:
- aiosmtplib
- bitstruct
- diff-cover
- django-q
- isort
- multipart
- poetry (adding support for Dulwich >= 0.25)
- poetry-core
- pydantic-settings
- python-build
- python-certifi
- python-datamodel-code-generator
- python-flatdict
- python-holidays
- python-maggma
- python-pytokens
- python-scruffy
- python-urllib3 (fixing CVE-2025-66471 and a chunked decoding bug)
- responses
- yarsync
- zope.component
- zope.deferredimport
Porting away from the deprecated (and now removed from upstream setuptools) pkg_resources:
- genshi (contributed upstream)
- germinate
- mopidy
- nose2
- pokrok (contributed upstream)
- pylama
- python-flask-seeder
- python-maggma (contributed upstream)
- python-pybadges
- python-scruffy (contributed upstream)
- thumbor (contributed upstream)
- zope.deprecation (contributed upstream a while ago, but there hasn't been an upstream release yet)
Other build/test failures:
- flask-dance: FTBFS: No module named 'pkg_resources' (actually fixed by adding a missing dependency to python3-sphinxcontrib.seqdiag)
- paramiko: autopkgtest regression on i386 (contributed upstream)
- poetry: autopkgtest regression on i386
- python-argh
- python-django-celery-beat: FTBFS: FAILED t/unit/test_models.py::HumanReadableTestCase::test_long_name
- python-maturin: rust-itertools update
- python-msrest: FTBFS: FAILED tests/asynctests/test_async_client.py::TestServiceClient::test_client_send (contributed upstream, though not very successfully)
- python-typing-inspect
Other bugs:
- python-datamodel-code-generator: Depends: python3-isort (< 8) but 8.0.0-1 is to be installed (contributed upstream)
- python-typeguard: Mark python3-typeguard Multi-Arch: foreign
- wheel: Mark python3-wheel Multi-Arch: foreign
- zope.deferredimport: Please make the build reproducible (contributed upstream, with a follow-up fix)
I added a manual page symlink to make the documentation for Testsuite: autopkgtest-pkg-pybuild easier to find.
I backported python-pytest-unmagic and a more recent version of pytest-django to trixie.
Rust packaging
I also packaged rust-garde and rust-garde-derive, which are part of the pile of work needed to get the ruff packaging back in shape (which is a project I haven't decided if I'm going to take on for real, but I thought I'd at least chip away at a bit of it).
Other bits and pieces
Code reviews
- debconf: Add BMP version of debian-logo (merged and uploaded)
- openssh: Reorder pam_selinux(7) usage (merged and uploaded)
- openssh-client: use sysusers.d, drop superflous dependencies (merged and uploaded)
- openssh: Stop deleting system user on remove/purge (merged and uploaded)
- openssh: Do not link against libcrypt on GNU/Hurd (merged and uploaded)
- partman-prep: Align PReP descriptions with other partition types (merged)
- python-better-exceptions (sponsored upload for Seyed Mohamad Amin Modaresi)
09 Mar 2026 12:22pm GMT