Thoughts about the future of LottaNZB
June 14th, 2009 - SeverinIn 2007, LottaNZB started as a nice little project with great ambitions. With joined forces of numerous contributors, it made fast progress in the following year, with the goal of providing the most easy and convenient way of downloading files from the Usenet for Linux desktops.
For a long time, LottaNZB’s backend, HellaNZB, served us well as the piece of software that did the actual work for our graphical application. However, to our regret, the project hadn’t been maintained since the time LottaNZB was initially born. First, this wasn’t that severe, but we spent more and more time thinking about how to overcome and work around the limitations of HellaNZB’s capabilities, especially the ones of its API. The HellaNZB developers didn’t really express interest in continuing the development of HellaNZB, mostly due to the lack of time. Additionally, with the release of Python 2.6 and Python 3.0, we’re entering a new age of Python that requires developers to update their applications.
We initially thought that we could revive the HellaNZB project by providing patches and implementing new features. The problem is that diving in to another applications code always takes a long time and that some changes LottaNZB would really benefit from would probably require quite an amount of work. Additionally, we, the core developers of LottaNZB, don’t have much knowledge about networking stuff, that might be required to fix the inherently broken bandwidth throttling. A simple patch fixing Python 2.6 deprecation warnings that was submitted to the HellaNZB developers wasn’t applied to the code-base.
Being one of the core developers of LottaNZB I started to realize that developing a third-party application for a dead and more and more broken project is kind of frustrating. What I knew for sure is that I don’t want LottaNZB to die because as an NZB grabber, it’s a quite unique and valuable application with its simple and tidy user interface.
In the past year, other NZB grabbers gained more and more attention, notably SABnzbd, while HellaNZB presumably didn’t attract many new users. Especially SABnzbd, which is a NZB grabber with a browser interface, is being developed at an incredible pace and has a large active community. During the past months, I saw this project as a competitor and disliked that they had that many downloads. But during a conversation with a LottaNZB user from Portugal named VuDu, the following idea came up:
What if LottaNZB was ported to SABnzbd?
I felt guilty when I first thought about this, but the longer I think about it, the more reasonable it appears to me. The upcoming SABnzbd 0.5 offers an API that offers much more information and methods than HellaNZB’s one. Surprisingly, there are still no GTK applications based on SABnzbd, except for a tiny tray applet for the GNOME desktop. This means that LottaNZB would definitely fill a gap because personally, I prefer a shiny and well-integrated GTK application over a web interface in my browser of choice while it still leaves the possibility of accessing it from a remote location. SABnzbd runs equally well on Windows, Linux and Mac OS X. Because of the project’s large user base, we would probably even attract more users than we do now.
Such a transition would require quite an amount of changes in LottaNZB’s code, but overall it wouldn’t be necessary to make much changes to the GUI and rewriting the invisible parts of LottaNZB can also be seen as an opportunity to make it much better than before thanks to the things we’ve learned about it in the past.
I got in touch with the lead developers of SABnzbd a while ago. Telling them about the potential future of LottaNZB, they expressed interest and told me that they would be eager to help us with the transition.
In the past days, I’ve been working closely together with Shypike, a very friendly and collaborative SABnzbd developer, and provided him with a couple of fixes for SABnzb’s API, which soon after showed up in SABnzbd’s codebase. Collaboration between application and team boundaries: A crucial element in the world of Free Software everyone profits from and that motivates people to create amazing software!
Suppose we make this migration, there are couple of goals we would intend to achieve: Firstly, the migration from HellaNZB to SABnzbd should be as painless as possible for every LottaNZB user, that’s why we will provide an automatic import of configuration data. Ideally, user shouldn’t even notice that LottaNZB uses a different backend. Next, with the new version, it should be possible to do everything that was possible in past version of LottaNZB, which the same or an improved friendly graphical user interface.
In the past weeks, I’ve been working on code that can handle SABnzbd configuration data and is able to import existing HellaNZB configuration files. Next, I’ve started to implement the new backend, which aims to be much more modular and extensible and to make the UI more responsive. But there are still lots of things to do.
We will definitely release LottaNZB 0.5 in the near future, which will be based on HellaNZB and contain the cool stuff we’ve been working on since January. You may find a preview of this version on this blog soon as well as a post about what cool piece of software Sander has been working on in the past weeks! Stay tuned!
And of course, we would like to know from you, the LottaNZB users, what you think about the whole thing!
June 14th, 2009 at 4:23 pm
You already know my thoughts on this
For the users that don’t quite know SABnzbd potential take a look at their web-frontend skin prototype:
http://img217.imageshack.us/img217/3803/prototypethemeshg2.png
http://img91.imageshack.us/img91/7876/proto1my9.png
http://sabnzbd.org/switch/prototype/images/
that’s a webpage running on a browser with the program API.
June 14th, 2009 at 4:45 pm
Wise decisions =)
June 14th, 2009 at 6:56 pm
It’s a great idea to switch from HellaNZB to SABnzbd since HellaNZB is outdated and with will the issues it has. I’ve been using SABnzbd for like 3 weeks now and so far its been great, I haven’t encounter any issues that were present with HellaNZB, but the only think is that its controlled by a web browser. It will be great if LottaNZB becomes its frond-end, therefore LottaNZB will be the best GTK front-end for SABnzbd
June 14th, 2009 at 8:10 pm
all i can say is that i agree to tenshu.
I simply *had* to switch from HellaNZB to SABnzbd because of the bugs in hellanzb.
I’d love to test the preview version soon
June 14th, 2009 at 10:40 pm
«Suppose we make this migration, there are couple of goals we would itend to achieve: Firstly, the migration from HellaNZB to SABnzbd should be as ***painful*** as possible for every LottaNZB user, that’s why we will provide an automatic import of configuration data.»
I suppose you meant painless?
Nice to know a GTK+ interface to SABnzbd+ may appear in the future
June 14th, 2009 at 11:37 pm
@everyone: Thanks alot for the positive feedback!
@Pedro: Thanks for the correction.
Of course the migration should be as simple as possible. Configured servers and download directories will be kept and downloads in the queue will probably be moved too.
Debian Sid/Ubuntu 9.04 already ships with SABnzbd 0.4.11, but LottaNZB will require the not yet released SABnzbd 0.5 because of the completely overhauled API. The fact that SABnzbd 0.5 has not yet been released isn’t that bad, because the LottaNZB migration is far from complete and we can still make changes to the API in collaboration with the SABnzbd developers.
@Freddy: I think the web interface is nicely done, but of course, you won’t need to use it when LottaNZB is installed, but you still could. You can also specify if it’s possible to access the web interface from other computers.
June 15th, 2009 at 12:22 am
Severin, I really don’t mind the web interface at all, but I rather use a separate gui/front-end instead…. that way is shows more info in front of me, instead of clicking links to show all the info that I want to check/see…
June 28th, 2009 at 4:56 am
I’ve been using LottaNZB for awhile.
Great program.
Never heard of this SABnzbd one.
But if it makes some of the weirdness of HellaNZB go away sweet!!
July 11th, 2009 at 10:34 pm
Just found my way here. I remember searching and trying to get a reliable newsreader to work back in the day (suse user turning to eft but it is hard to remember) and I finally got hella to work (pan worked but was awkward in my opinion) in feisty or maybe it was gutsy. Then I started looking for a gui and well again it was difficult for me to make things work… but your app was a godsend and worked well and is still pretty unique so I would probably rely on your good judgment and simply follow you… it is always a time vs gratification issue and I hope you get more recognition and your app gets more widely accepted but in the end your app is valuable to me and thats all I know
July 17th, 2009 at 12:58 pm
Looking for a replacement of Grabit and Wine that are not always stable, found LottaNZB + HellaNZB as a nice solution, tested also SABnzb but will be easier to have the LottaNZB interface, One question : Why a specific tab for Newzbin because it is not free access, Currently no way to register to Newzbin as a newbie
July 19th, 2009 at 10:09 am
@WiLL&dasbooter: Thanks alot for the positive feedback! Of course it’s motivating for a developer like me to hear such nice words from users.
I did not only start working on LottaNZB just in order to create a NZB grabber with an easy and intuitive interface for as many people as possible, but also in order to get known to Linux programming in general. It was in fact my first Python/GTK project I’ve been working on and LottaNZB was rewritten several times in the past as I learned more about Python/GTK programming. Such changes are not directly visible to the users and it may look as the development is slow-paced. However, it was a very valuable experience for me that I hope will come in handy when contributing to other free software projects.
@Christian: I absolutely get what you mean and I can assure you that the Newzbin tab will go away in LottaNZB 0.5 as the whole Newzbin code has been moved to a plug-in that needs to be enabled explicitely. Of course, the plug-in will be enabled from the start in case the user has made use of the Newzbin feature in the past.
July 22nd, 2009 at 8:50 am
It would be great if lottanzb switched to SABnzbd. I’ve used Lottanzb happily for a while now, but there are still some problems I’d like to see fixed, such as that repairing doesn’t always work and on restart creates a copy etc.
I had looked at SABnzbd before, but didn’t install it because of the web ui. Hope this all goes well:)
August 5th, 2009 at 12:52 am
Yeah! This is a very good news
August 16th, 2009 at 8:36 pm
O this is soo nice, I’m fed up with the broken downloads I get with hellanzb, requiring me to manually redownload the par files etc.
(segment000 is added to the par files, and they all have the same file-size, if someone has the same issue let me know)
August 30th, 2009 at 12:02 am
cant wait for sabnzbp 0.5 to come out and also lottanzb 0.6 to be ready to jump the wagon.
Wise decision +
I wish all the best to developers.
September 5th, 2009 at 11:32 am
From all the grabbers I’ve tried out LottaNZB was (and still is) the nicest, most likely because of the well thought of gui which aids the straight forward configuration.
Looking forward to what you guys come up with using SABnzb.
Best of luck, guys
September 5th, 2009 at 12:28 pm
Thanks everyone for the encouraging comments!
@DeepDown: When working on LottaNZB, usability was always our top priority and this isn’t going to change when migrating to SABnzbd. Having in mind how much time passed since the release of LottaNZB 0.1, the number of new features that were added since then probably isn’t overwhelming. This is mostly due to me rewriting stuff all over again (as I learned more about PyGTK programming) and the fact that (imho) new features must be carefully planned before starting to implement them.
Please note that ideas for new features are always highly appreciated. Don’t hesitate to create a blueprint at launchpad.net if you’ve got something cool on your mind.
February 20th, 2010 at 7:24 pm
I think this sounds a perfectly sensible way to proceed. I look forward to the update to 0.6 with SabNZB with anticipation.