A few people have asked me about my presentation I did in April at OSOS, it was to be about the commons, but I kinda flicked at around to be a comparison of FLOSS projects and a Māori worldview. So here it is.
The Koha community is a great community to be part of. Not only do we create a great piece of software but we try to make the world a better place in other ways also. Here are just a few examples of how we do this.
I have run a server (since 2010) that hosts bugs.koha-community.org, download.koha-community.org, paste and a few other services. I haven’t minded funding it, I think of it as penance for making the bad decision I made in 2007, but recently I wanted to upgrade it. So I thought I would give patreon a whirl, to get some funding to increase the ram and and a couple more cores.
Within days I had more than enough pledges, and the recurring cost is more than covered. I promised each person who pledged a haiku, so here they are, can you guess who is who? (be warned I write crappy haiku)
In the northeast of
Kansas, libraries love software
freedom and koha
In Greece a lovely
woman translates software to
help grow its usage
Norway can be cold
but there lives a man with a
warm heart and kind soul
Because he cares, he
donates both time and money
to help the project
She moved to nz
but that wasn’t enough so
she donates things too
She walks the walk and
talks the talk documenting
everything in sphinx
The next example is that earlier this year Tómas, the current release manager, had his house broken into and things, including his computers, taken. Within days Kyle had set up a gofundme campaign and in I think 3 days we hit the $2000 target.
There is another gofundme campaign running at the moment as well. Nicole (our documentation manager) has had a tough time of it lately and is currently seeking funds to help pay the medical expenses for one of her gorgeous dogs. Please help her out if you are able.
The last example I wanted to mention is the Koha Kiva team. We have loaned out $3275 in 131 loans to small businesses all around the world. Pretty neat huh?
Recently I have seen people giving advice how to use CPAN to install the perl modules that Koha depends on. Now for non .deb based systems (Redhat, Centos, etc) this advice is ok. But if you are use a Debian based distro, like Debian, Ubuntu, Mint, etc please use the packages.
If it is not in your distro proper, you can get the packages from debian.koha-community.org. As new dependencies are added, we package them and submit them to Debian, so they end up in the next release, but you can always get them from debian.koha-community.org until then.
A really easy way to get them is of course to just install the koha-common package from there. You can read good instructions at http://wiki.koha-community.org/wiki/Debian or there is the koha-perldeps package which only pulls in the dependencies.
Why not use CPAN? Because then it is up to you to make sure you keep all your installed modules up to date, and with the latest security patches. Or you could let the package maintainers worry about that instead.
If you do bump into a module that isn’t packaged, let us know and we will fix that right away.
So for no real reason, other than to see if I could, I figured out how to get the top 10 changed (well it could be any number) files in the Koha code base
git rev-list --objects --all | awk '$2' | sort -k2 | uniq -cf1 | sort -rn | while read frequency sample path do [ "blob" == "$(git cat-file -t $sample)" ] && echo -e "$frequency\t$path"; done | head
This told me (where the number is the number of commits)
- 3006 installer/data/mysql/updatedatabase.pl
- 1220 C4/Biblio.pm
- 1141 C4/Search.pm
- 1137 kohaversion.pl
- 997 C4/Circulation.pm
- 996 installer/data/mysql/kohastructure.sql
- 914 C4/Auth.pm
- 796 opac/opac-search.pl
- 752 circ/circulation.pl
- 710 opac/opac-detail.pl
You could of course leave the head off to get all or do head -20 to get the top twenty etc.
Like I said, useless statistic, but kinda interesting nonetheless
This year we had 6 students working on the Koha project as part of their project work for the Catalyst Open Source Academy and a very productive 3.5 days it was too.
In total we submitted 29 new patches, tested and signed off on 9 more, and even rescued one patch from languishing in the ‘patch does not apply’ status.
So far most of the patches have been signed off, and some have passed QA, and a few have even been committed into the codebase. In fact the upcoming 3.18.3 Koha release will have 5 patches from 3 of the students from 2015, and 1 patch from a former Academy student who is now an intern at Catalyst.
After all that hard work, I figured they deserved a cupcake, so I asked the wonderful Sweet Release Cake and Treats to make some, and we ended up with these, which everyone loved.
A++ would academy again.
2014 was another big year for Koha, there are now 2847 libraries in Libwebcats listed as using Koha. That doesn’t include 1037 public libraries in Argentina, the 1106 public libraries in Turkey, and the multitude more in many other countries.
On top of the ever growing number of users, many more features were added, and bugs fixed, here are some statistics for the year:
- There were 2225 commits to the master branch of the Koha codebase
- The busiest month was May with 278 commits
- 1570 Patch sets were signed off
- 1299 Patch sets Passed QA
- 673 Patch sets Failed QA (almost all were fixed and went on to pass in the end)
- Katrin Fischer signed off on 47, and QAed 815
- Jonathan Druart – was author of the year with 325 patches, he also signed off on 74 and QAed 336
- 87 People had patches in Koha
- There were 34 people who got their first patch in Koha this year
Yesterday Kahurangi came to work with me, as he likes to do when he is on school holidays, but this day was a little bit different. Normally Kahu spends most of the day reading, and playing on the tablet, but yesterday he decided he wanted to do some work.
One of the bonuses of working on Free Software is that if your child says “Can I do some work with you?” you can say “Yes, lets fix a bug together” knowing that there is a good chance you can get your patch submitted.
So the two of us sat down to do some pair programming, Kahu at the keyboard and me beside him. It took us about 30 mins to get his dev environment set up, and check out a copy of the Koha source code. I knew of the perfect bug, while we were having our Koha team Xmas function (Bubbles and bugs, drink some bubbles and fix some bugs) we spotted that one of the developers names was missing from the about page. A perfect low barrier to entry bug to fix, but still one well worth fixing. It took us a little while to find the file that needed editing (got distracted showing him how to use locate) but once we found it, Kahu found the place that needed editing (the names are in alphabetical order so it wasn’t too hard) and we added the missing name. We then committed the fix to git, and created and attached a patch to the bug in bugzilla (bugs.koha-community.org)
Last night, Katrin (from Germany) checked and signed off the patch and this morning the Release manager (Tomás from Argentina) pushed it to the master branch. So now Kahurangi has a patch in Koha. http://git.koha-community.org/gitweb/?p=koha.git;a=commit;h=70de2cae53d93a47a7666015a79f35d7f458f4fe
I think we may be the first parent and child team to both have patches in Koha.
(And yes, that is a Cat Stevens lyric)