Monthly Archives: July 2009
Did you ever wonder “Why the heck there is JuK? Why are there guys working on it?”? I’ve been asked this question some times now when I told somebody I’m spending time on JuK. But what is the reason for this? Basically nobody bothers using JuK.
Of course, we know that there is Amarok around. We know it has a lot of more features, and is a better MP3 Player than JuK will ever be. Maybe, Amarok will replace JuK one day in KDE, even though, I don’t know why it is not replaced already. I think the Amarok team doesn’t want to handle with the KDE release management, but have their own.
Well, I’ve my reasons to develop JuK. First of all, I use it as a MP3 player. It’s my favorite for NOT having a lot of options, it just works, and just plays music. That’s important to me, allthough, I also have Amarok installed, using it when I can’t use JuK because I work on it at this time.
The second reason is, that JuK needs quite a lot of work. It needs to be ported to KDE4 (remove k3support, which I have pretty much now). Also it would be needed rewriting the JuK backends, the interface could need some love as well, an options dialog would be great and so on. So you see, there’s a lot of interesting stuff to do. Stuff, I’ve never done before, never bothered with, things I don’t know, new things.
Even when I’m not getting along as I’d like to (my social life is time hungry), I can learn a lot of stuff working some on JuK. Even when nobody bothers using the program, I’ve fun developing it, I like it, and I want to learn by working with people as Michael (who’s a really great guy, as the rest of the KDE community).
As you can see, mostly selfish reasons. Yea, I’m a selfish person from this point of view, because I probably could help somewhere what really matters. The thing is, it’s my free time, I can do what ever I want, and I currently like what I’m spending the little spare time I can enjoy in front of the PC on.
Not said, that I won’t move on one day. If JuK gets replaced as the “default”, I probably will be looking for something else to do, or I keep with JuK. But until then, I enjoy my free time on what I want.
And now please stop asking “why the heck are you wasting your time?”. I don’t waste it, I enjoy it, and can learn within that, and I’m learning Qt and some KDE development (and Qt is a great framework). Just because I’ve developed much more complex things in the past, doesn’t mean I enjoyed it nor it means that I always want to keep on with projects I’ve been working on for almost 7 years now. Yes, I had a lot of fun writing the firewire drivers for industrial cameras, yes I had a lot of fun in image manipulation and cascade calculation, object recognition, AI systems and so on. It was just time to move on, to do something different. I enjoyed working with you, all of you (no names). You’re a great bunch of guys, but please consider that you’re paid for that, I am not. I spend my spare time on what ever I want, and my personal interests changed.
I began the refactoring of the playlist last weekend. Sadly, I’m not at home this weekend and can’t continue to work on it.
Then I’ll be absent for 3 weeks (vacations, yey!), so the next month will not be very productive (or not productive at all).
It’s time to relax, to come back with more strength and will to continue my tasks. I want to suceed before the merge windows for 4.4 close.
Lazy? Well, yea, from a development point of view I am right now. You probably realized it’s summer in central europe. I’ve spent a lot of time lately with sports and hanging around somewhere in the sun (without my notebook).
I expect that I’ll get something done next weekend, or at least that I can start working on the projects I plan to work on within the 2nd half of this week.
Time is a rare good, as is having sunshine in central europe.
My server was running low on ressources. For this reason, I installed more ram to the server. Sadly, my provider made a “mistake”, or at least I don’t know what exactly happened.
I ran kernel 184.108.40.206 on that machine, and for some reason pacman and httpd were crashing. It took me about 3 hours finding the cause. Now my provider installed a new kernel for the box, and it’s everything working again.
If anybody needs a good german service provider for virtual servers, goekal-it.de is your way to go. They have great, cheap offers, and a really great support which responds within minutes (!!!).
I’m there now for about 3 years, and it’s the first problem I ever experienced, so it’s a very stable provider as well. They are offering a lot of linux distributions you can equip your server with, you can choose the distribution by a web interface, you can have backup services for a little fee as well, the servers perform great, and you have exclusive ram.
Advertise mode off, but I’m once again just happy I have a provider like them.
None! Yea, I’m a bit lazy lately. I’ve started two new things in JuK development.
First of all, I’m still on removing k3support of the playlist. This is a quite huge task, and even needs a little part of refactoring the playlist down even to the core playlist.cpp which uses klistviewitems.
Secondly, I started refactoring the backend to something more modular. The current layout not existing abstraction of the playlist from the caching backend (not providing a clean api to use) is blocker for implementing mutiple backend interfaces as a QSLITE or MySQL interface, or even other data storage caches.
Also it makes it nearly impossible to thread the playlist reading, or to make the playlist “fetchmore” compatible. The first step on this which I’ll take is to split the data backends clearly from the main playlist handling code of JuK Also, it must be considered how to handle playlists in the future. Different data backends provide different posisblities.
I hope one day, as soon as those basic things are solved, we can move on improving JuK in a visible way.
Due to the reason that I use a very unstable and annoying dailup hsdpa connection (YeY, thanks to Orange for this, the carriers keep kicking me), I’ve been using QtWvDialer over KPPP.
What are the Reasons for this? KDE does provide a tool?
- kppp only provides two initialization strings. That’s bad, because my modem requires 3 to switch from UMTS to HSDPA
- It doesn’t reconnect on connection loss, rather showing an error message (annoying, due to being Orange customer)
Nowdays, I’m thinking on two things. I dislike the current code and structure of QtWvDialer, even the fact it’s still Qt3. I’ve thought about a kind of fork, or refactoring of QtWvDialer, switching it to Qt4, adding some nice things (as systemtray support, i hate windows floating around everywhere of things which should be in the background).
Also, I could just improve KPPP, adding some nice features (in example as many init strings as you like to have), improving the traffic log, improving the pppd error handling, supporting uatomatic reconnects.
Both options are challanging, and would be really great. I think people would love having KPPP improved rather. QtWvDialer is a perfect option for UMTS/HSDPA, but wouldn’t it be nice if a desktop shipped something capable?
How about KPPP shipping pre-set configurations (as init-strings) for companies? I think users would like to contribute there, making the desktop experience in KDE or generally Linux a lot of easier for users, who don’t want to be bugged with internals.
I decided to re-start my own blog. Most likely I’ll be blogging about technical aspects, KDE, Qt and JuK development.
More to come soon…