Robocode and others

As expressed in a previous post, I prefer to spend my free time with my kids than with technology (for technology I already have my job). However, when there is an exception to that, I do like to do some sort of smaller projects, like “porting” stuff to Flatpak.

I did my share of Debian and RPM packaging in the past, and honestly I have never enjoyed it (for a number of reasons not really interesting for this post). But “flatpaking” stuff is completely different to me. Maybe it’s my early involvement with it, or maybe it’s my admiration for how its designed, but the feeling when making a Flatpak is of reward, rather than a chore.

Robocode

Around 15 (fifteen!) years ago, while at University, my colleagues and I enjoyed this quirky little program called Robocode: a game where you load multiple tanks coded (hopefully by you and your friends) using a small Java API, and let them fight each other until one stands. At the time, my parents still didn’t have broadband at home, so when I visited them, I spent some time coding “the best” tank (it was more fun and less sad than it sounds…)!

Thus, roughly 5500 days later, I thought it’d be cool to have Robocode in the easy to install/run way that Flatpak and Flathub give us, and I finally made this into a small Christmas project a couple of months ago.

Small detour into other tanks

A couple of years ago, in a brainstorm with my Endless’ colleagues at the time, I mentioned my nostalgic fascination for Robocode, and how it could inspire a mode for an Endless’ game we were testing called Tank Warriors.

Matt liked the idea so I wrote a draft of this game mode for the game developers to follow, and got to test a couple of early versions once it was built. Thus, if you are interested in a more modern approach to Robocode (and using Javascript rather than Java), check out the Tank Warriors on Flathub.

Get it while it’s hot warm

Robocode has been available on Flathub since early January, but only now I found the time to blog about it…
In any case, if you’re getting into programming now, I really hope you enjoy Robocode and that it inspires you to keep learning!

Get Robocode for Flatpak now!

Other oldies

As mentioned, I enjoy porting software on Flatpak in general, but in particular I like porting old stuff. It’s a chance to have often forgotten projects in a way that’s expected to just run. So I am taking this chance to mention a couple of other games I ported a couple of years ago but didn’t blog about.
Those are rRootage and noiz2sa, two psycadelic shooters created by the Japanese game developer Kenta Cho, and they’re among the first games I played on Linux. If you’re into minimalist and psychadelic graphics, be sure to check them out.

I wonder what other cool old software should be made available as Flatpak.

FOSDEM 2020

It’s that time of the year, and I need to thank my company Kinvolk for sponsoring this waffle-gobbling-presentation-hopping event we all love.

Hoping to meet all those people I usually see at this time of the year, and new ones too.

If you are interested in Kinvolk and our products, let’s have a beer (or a coffee) and talk about it!

OCRFeeder 0.8.2 released

Looking at this title gives me a “blast from the past” kind of feeling.
OCRFeeder hasn’t seen a release in 6 years (!), but due to some recent efforts from members of the GNOME community, I decided to dedicate a few late nights to it and here it is the new release finally: version 0.8.2.

I gotta give my special thanks to the community member scx who not only fixed a few important issues and added a couple of quick improvements, but also was patient enough to wait for my delayed reviews last year, and even created the flatpak for OCRFeeder.

Here are a few paragraphs about the changes/status:

Python 3

Perhaps the biggest change in this version is the port to Python 3. Yes, Python 3 has not been a new thing for a while now, but it was never a priority to port the source code to it. An extra incentive for me to do the change though, is that Debian is in the process of nuking Python 2 for good.

One of the good things that Python 3 brings is unicode support by default, so hopefully there will be no more unicode issues in OCRFeeder.

Scanning

One feature that was added a long time ago is the support for importing pages directly from a scanner device. This feature never worked very well, and it’s actually very complicated to have a scanning functionality that includes everything that a user may need.

Luckily, scx has fixed a lot of the issues in the scanning dialog, so at least the intended functionality should be working again.
Still, as I have proposed in the scan discussion. I think that with great apps like GNOME Document Scanner or the eventual development of a scanner portal in flatpak, the extra effort of maintaining a half-baked scanner support is not justified, and thus I am very inclined towards just removing that support.

(No) Future

There are MANY things that I would like to rewrite in OCRFeeder. It has code written more than 11 years ago, by the unexperienced student I was, and I believe I know better now.
However, I don’t see that happening any time soon. My life changed a lot since the last time OCRFeeder was under active development, and I simply don’t have the time nor the motivation to spend hours of my own free time working on it. These days I prefer spending time with my family, playing squash, or working on completely different projects.

I did ask some of the people who contributed from time to time whether they wanted to transition to a maintainor role (with some initial guidance from me), but there was also no time from them (and I of course understand 100%).

OCRFeeder had its spotlight moments, like when it was part of a public initiative by the Andalusian Government to improve accessibility on Linux, or when it featured in magazine articles, etc.
So even though the tone of this section doesn’t sound the most cheerful, it’s also not that of a grievance or regret. I think OCRFeeder is still helpful for some users, and it will likely continue to receive sporadic contributions. Having it on flatpak also means that the effort to get it running in different distros has been dramatically reduced. But I don’t have any plans for reviving it beyond that.

I hope you enjoy OCRFeeder on flatpak, and do get in touch if you want to participate.