Release of libmygpo-qt 1.0.8 (Qt5 support inside :) )

Dear Blog Readers,  Dear Planet KDE Readers,

I’m happy to announce the release of a new version of my project libmygpo-qt. It again has been a while, over one year since the last release. And although it took so long, this release doesn’t include many new features, except one: support for building the library with Qt5.

Before I get into detail about this release, first let me tell you what libmygpo-qt is, because in my last post someone complained that it wasn’t clear enough from the post. So if you already know what it is, you can skip the next two paragraphs. To be able to explain what libmygpo-qt is, I first have to tell you about gpodder.net.

What is gpodder.net?

Probably some of the people reading this post know the gPodder podcast client, a free and open-source podcast client available for Linux, Mac OS X, the Nokia N9, Sailfish OS and some more platforms. gpodder.net is a website and REST webservice that can be used to search for podcasts, get podcast toplists and data for podcasts & episodes. But it can do much more: if you register a free account (the software running the webservice is also open-source), you can synchronize your podcast subscriptions, playback status of episodes and even the playback position (although unfortunately this feature isn’t yet support by many clients). There are also third-party podcast clients for Android that use gpodder.net.

What is libmygpo-qt?

libmygpo-qt started out as a project for an university course, to be used for gpodder.net integration in Amarok and is since then developed and maintained by me. It is a C++/Qt library wrapping the gpodder.net webservice and does everything from sending the request to the correct endpoint, authentication and parsing the returned JSON data into object, so that the developers using this library don’t have to know the details of the webservice. Nowadays it is also used by Clementine.

What are the new feature in libmygpo-qt 1.0.8

The most important feature is the support for building the library with Qt5. Due to my work on Tomahawk & libechonest and learning how to building Tomahawk with Qt5 and how to adapt CMake build scripts to Qt5, I implemented this functionality also in libmygpo-qt. So now you can build it either with Qt4 or with Qt5. Both versions can be installed next to each other and the API of the library is the same for Qt4 & Qt5. If there are any unexpected problems with the Qt5 version, please let me know.

Where to get libmygpo-qt?

Tarball:
http://stefan.derkits.at/files/libmygpo-qt/libmygpo-qt.1.0.8.tar.gz
sha256sum:
83716ea5cd6c0010d4531dd2b0c4e83c12d67b738da6aa15c932fc5901902e81
md5sum:
cb67c86919171d6d2356dfb59c3b9571

Some more important Links for libmygpo-qt:

Project Website: http://wiki.gpodder.org/wiki/Libmygpo-qt
Git Repository: https://github.com/gpodder/libmygpo-qt
Doxygen Documentation: http://stefan.derkits.at/libmygpo-doc/
gpodder.net API: http://wiki.gpodder.org/wiki/Web_Services/API_2
Bug reports: http://bugs.gpodder.org
Contact: gpodder@freelists.org

I hope this blog post explained detailed enough what libmygpo-qt is and where it is used. Now I did my part on this library, if you are the developer of a C++/Qt library and it isn’t yet ready for Qt5: Go ahead and port it, it is really easy :)

P.S.: I’m going to Akademy 2014, but more about that in a seperate post :)

Release of libmygpo-qt 1.0.7

Dear Blog Readers,

after exactly half a year, a new version of libmygpo-qt is ready.

Changes in v1.0.7:

  • New Config Class. This class allows to programmatically to retrieve the
    libmygpo-qt version and retrieve and set the gpodder.net API endpoint
    (e.g. if you test your software against a private instance of gpodder.net)
  • Config Class also allows to set a prefix to the user-agent. Please
    never completely overwrite the user-agent set in libmygpo-qt (instead
    pre/append your own, e.g. via mygpo::Config::setUserAgentPrefix( … ) )
  • fixed a bug that created incomplete Episode Actions if an Episode
    Action couldn’t be parsed completely by libmygpo-qt
  • fixed a small bug with the pkgconfig file (thx to davidsansome)
  • added support for uploading & retrieving flattr Episode Actions to
    gpodder.net (this allows you to automatically flattr Podcast Episodes
    from any podcatcher that uses libmygpo-qt)

Where to get libmygpo-qt?

Tarball:
http://stefan.derkits.at/files/libmygpo-qt/libmygpo-qt.1.0.7.tar.gz
sha256sum:
faade78e1baeeab7f858dec80530ad63c50f683fe511948ab1a45e685828cc74
md5sum:
447e60c8c695b4280a0e20c71abacf49

Some more important Links for libmygpo-qt:

Project Website: http://wiki.gpodder.org/wiki/Libmygpo-qt
Git Repository: https://github.com/gpodder/libmygpo-qt
Doxygen Documentation: http://stefan.derkits.at/libmygpo-doc/
gpodder.net API: http://wiki.gpodder.org/wiki/Web_Services/API_2
Bug reports: http://bugs.gpodder.org
Contact: gpodder@freelists.org

Want to support libmygpo-qt?

You can support the development of libmygpo-qt you can send me a book via my Amazon Wishlist or donate via paypal to stefan@derkits.at

What is libmygpo-qt?

libmygpo-qt is a Qt/C++ library wrapping the gpodder.net Webservice.
It is currently used in Amarok & Clementine to retrieve a directory of
podcasts & to synchronize podcast subscriptions with gpodder.net

libmygpo-qt 1.0.6 release

A long time (nearly a year) passed since the last libmygpo-qt release.
Today there was the first gPodder hackday (of many more to come) and
so it was time to fix some bugs, test the library a little bit and
make a new release

I’m looking for contributors, so if you wanna work on a
interesting library used atm by Amarok, Clementine & Nokia Podcasts,
drop me a line.

Changes in 1.0.6:
-) added support for DeviceSync API. This API makes it possible to
set up synchronization with existing gpodder.net devices from inside
your application
-) set Contenttype Header to avoid warnings with Qt 4.8
-) some fixes & enhancements to CMake build system

Where to get libmygpo-qt?

Tarball: http://stefan.derkits.at/files/libmygpo-qt/libmygpo-qt.1.0.6.tar.gz
md5sum: dd07ccc88eac954a3860aeda96aab7b1
sha1sum: 7970c4c43cab4862e220b4239491f2bac2c36f75

Some more important Links for libmygpo-qt:

Project Website: http://wiki.gpodder.org/wiki/Libmygpo-qt
Git Repo: https://github.com/gpodder/libmygpo-qt
Doxygen Documentation: http://stefan.derkits.at/libmygpo-doc/
gpodder.net API: http://wiki.gpodder.org/wiki/Web_Services/API_2
Bugreports: http://bugs.gpodder.org
Contact: gpodder@freelists.org

— Infos about libmygpo-qt —

What is libmygpo-qt?

libmygpo-qt is a Qt/C++ Library wrapping the gPodder.net Webservice. It
was created as part of a University Course & it is used in
Amarok (since 2.4.1) with the new gpodder.net
Service, that makes the gpodder.net Podcast Directory available from
within Amarok. Also it is used in Nokia Podcasts and will be used in
Clementine from v1.1 onwards.

Teaching Qt/C++

In less than a week, the summer-term at the Vienna University of Technology starts. And as last term, I will be tutor for a course about Software Engineering & Project Managment.

In this course, students should learn how to create a bigger piece of software in teamwork, in all its facets, e.g. project managment, coding, testing, documentation. Normally the software is written in Java, as this is the programming language that they learn from their first term onwards.

Additionally to the Java mainstream variant, there was a variant where the code had to be written in C++. I took this course around 2 years ago and while it was more technical than the Java course, I learned a lot and it also brought me into starting FOSS development. As the person organizing the course stepped back from organisation and the institute was looking for new tutors, two colleagues and me took over the C++ variant of this course and during last summer term, we developed a new project for students to implement and created a reference solution. We changed many aspects of the course, including the used technologies. We changed the GUI Toolkit from GTKMM to Qt and the build system from Autotools to CMake.

Last term our new variant of this course was offered for the first time and after some lectures prepared and held by us (my lectures where about ZeroC Ice and Qt & CMake) three studentteams started to plan & implement the project we gave them. The feedback we received was very positive, especially the use of Qt not only as GUI Toolkit, but for acessing a database or in combination with QCA2 for encryption/decryption made coding a little bit easier for C++ beginners.

So what is the relation to KDE/OpenSource here? In my opinion, it is really bad practice at our university that people aren’t normally forced to learn any other programming languages than Java (depending on the field of study you may also learn C & Haskell). That’s why it was important for me that interested students can choose to code C++ while doing the Software Engineering & Project Managment course. And to give them an introduction into Qt & CMake, so that they would be able (either in their spare time or for university during advanced courses or university projects) to contribute to KDE Applications or other FOSS Qt Software. So I partly see this variant of the course as a FOSS recruitment program ;)

This should also be a call for action: if you think you can mentor an individual student or teams of students and have an idea for an area in your application that they could work on,please contact me.

libmygpo-qt 1.0.5 released

Amarok 2.5 is nearby, gpodder.net getting more features every few
weeks, so it is time for a new Version of libmygpo-qt including some
bugfixes & new features.

I’m also looking for contributors, so if you wanna work on a
interesting library used atm by Amarok & Nokia Podcasts, drop me a line.

Changes in libmygpo-qt 1.0.5:
-) fixed a bug in downloadSubscriptionsJson()
-) changed the way http basic auth information is transmitted to
gpodder.net to no longer getting annoying popups when using
libmygpo-qt with KIO from KDE 4.7.X
-) implemented functions to access the new API for retrieving
synchronization information of devices
-) implemented functions to retrieve toplist and search results in
gpodders custom XML format
-) added “ConfigStyle” package finding to CMake Buildsystem

Where to get libmygpo-qt?

Tarball:
http://stefan.derkits.at/files/libmygpo-qt/libmygpo-qt.1.0.5.tar.gz
md5sum: 37af04b1e944f982e35b69c04b5d1b0f
sha1sum: a38d0ac08cc4601634b3cda3851226aabcff9638

Some more important Links for libmygpo-qt:

Project Website: http://wiki.gpodder.org/wiki/Libmygpo-qt
Git Repo: https://github.com/gpodder/libmygpo-qt
Doxygen Documentation: http://stefan.derkits.at/libmygpo-doc/
gpodder.net API: http://wiki.gpodder.org/wiki/Web_Services/API_2
Bugreports: http://bugs.gpodder.org
Contact: gpodder@freelists.org

General Infos about libmygpo-qt

What is libmygpo-qt?

libmygpo-qt is a Qt/C++ Library wrapping the gPodder.net Webservice. It
was created as part of a University Course & it is used in
Amarok (since 2.4.1) with the new gpodder.net
Service, that makes the gpodder.net Podcast Directory available from
within Amarok.

One of the next Versions of Amarok (2.5) require libmygpo-qt 1.0.5 for the
gPodder PodcastProvider, with which you can synchronize your local
Podcasts between Amarok and gpodder.net (and other podcatchers with
gpodder.net integration).

libmygpo-qt 1.0.4 released

Summer (and with it Google Summer of Code) is over and Lucas Lira Gomes sucessfully finished his GSoC Project (Integration of gpodder.net into Amarok), so expect to be able to synchronize your podcasts between Amarok & gpodder.net soon.

In addition to that, Ari Hannula from Nokia created Podcasts for the Nokia N9, which also utilizes libmygpo-qt for synchronizing and searching podcasts.

Thanks to Lucas & Ari, we found (and fixed ) some Bugs in libmygpo-qt, so we announce hereby the availability of libmygpo-qt v1.0.4

Changes in 1.0.4:
-) fixed a bug with an invalid timestamp when uploading EpisodeActions
-) fixed a bug with a wrong url when retrieving EpisodeActions by Podcast
-) fixed a crash happening on MeeGo because of the deletion of QNetworkReply Pointers

Where to get libmygpo-qt?

Tarball:
http://stefan.derkits.at/files/libmygpo-qt/libmygpo-qt.1.0.4.tar.gz
md5sum: 9c840d6a7dc96055c6eb5a7d36d02a7c
sha1sum: 7d46fcbcc3c0177bc353f8e15b0bff9fd19013e6

Some more important Links for libmygpo-qt:

Project Website: http://wiki.gpodder.org/wiki/Libmygpo-qt
Git Repo: https://github.com/gpodder/libmygpo-qt
Doxygen Documentation: http://stefan.derkits.at/libmygpo-doc/
gpodder.net API: http://wiki.gpodder.org/wiki/Web_Services/API_2
Bugreports: http://bugs.gpodder.org
Contact: gpodder-devel@lists.berlios.de

What is libmygpo-qt?

libmygpo-qt is a Qt/C++ Library wrapping the gPodder.net Webservice. It
was created as part of a University Course & it is used in
Amarok (since 2.4.1) with the new gpodder.net
Service, that makes the gpodder.net Podcast Directory available from
within Amarok.

One of the next Versions of Amarok require libmygpo-qt 1.0.4 for the
gPodder PodcastProvider, with which you can synchronize your local
Podcasts between Amarok and gpodder.net (and other podcatchers with
gpodder.net integration).

P.S.: Desktop Summit was awesome, my first (but for sure not last) FOSS conference, I will write about it sooner or later ;)

P.P.S.: libmygpo-qt is always looking for additional Developers, so if you’ve read till here and are interested, drop me a line ;)

Hello Planet KDE

Finally (2 Months after I wrote “soon”) this is my introductory post to Planet KDE: Hello Planet KDE :)

About me

I’m Stefan, living in Vienna (one of the greatest Cities on Earth ;) ) and I study Computer Science at the Technical University of Vienna. After learning C++ in the Summer Term 2010, I’ve started last Summer developing small features for Amarok. In Winter 2010 we (2 colleagues & me) created libmygpo-qt & the gpodder.net service for Amarok, which was my first bigger Open Source project.

Especially my work on libmygpo-qt and the gpodder Service made me an even more Open Source Enthusiast as before. It was a great collaboration between the gpodder/gpodder.net Developers (both also living in Vienna), Amarok Developers and our Team. During the process of creating a library and the feedback we got, I’ve learned many things (like d-pointer or API/Binary compatibillity) which I didn’t knew before.

Other than my interest in Open Source & trying to get my degree at University, I’m also a CouchSurfer, even though in the last years I don’t host that much, but I’m active in attending & organizing Events in Vienna.

I think for the moment that’s enough for my introduction, I should start packing, because:

10 more hours and I will already be on the Train to Berlin, 3 days of sightseeing, then I will attend the Desktop Summit and afterwards the CCC Camp, soo much looking forward to this nerdy holiday in Berlin, hope to meet many of you there ;)

=-=-=-=-=
Powered by Blogilo

libmygpo-qt 1.0.3 released

Amarok 2.4.1 is released and with it the first Application to use libmygpo-qt.

Thanks for all the Feedback since 1.0.2 … it’s time again for a new Bugfix Release, so here is libmygpo-qt 1.0.3

Where to get libmygpo-qt?

Some more important Links for libmygpo-qt:

What is libmygpo-qt?

libmygpo-qt is a Qt/C++ Library wrapping the gPodder.net Webservice.

It was created as part of a University Course & it is used in Amarok (since 2.4.1) with the new gpodder.net Service, that makes the gpodder.net Podcast Directory available from within Amarok.

 

Also at the Moment there is a GSoC Project running, trying to create a Podcast Provider, which allows you to synchronise your Amarok Podcasts with gpodder.net.

What is gpodder.net?

gpodder.net is a Webservice (with an open API) that can be used for discovering new Podcasts (via Search, Toplists, Tags etc) and for Synchronization of Podcast Subscriptions & Podcast/Episode Status.

Stefan

P.S.: Hello Planet KDE! I will (hopefully) post an introductory Post soon ;)

=-=-=-=-=
Powered by Blogilo

Random thoughts about injustices

Related to the actual incident all over Austrian News about the Tramway Driver on Line 1 who ended a speech with the Hitler salute:

One Tramwaydriver makes a bad & stupid joke and looses his job and maybe also gets punishment by the law and is all over the news. Somehow I think he is a poor guy, who maybe watched to much Sterman & Grisseman and didn’t realize what the difference between these two and him is.
Why I think he is a poor guy?

Because there are some politicians which say “Ausländer raus!” and other things (or praise the working environment in the third reich) and what do they get for it?
They get a good salary as Nationalrat and when they die they are nearly praised as a Volksheld by a whole Bundesland.

So “Wiederbetätigung” will be punished roughly and Xenophobia not?

Somehow strange all in all, isn’t it? I find the media coverage of this horrible.
I was there, and I didn’t really see that the people where laughing and cheering about this bad joke.
In reality the atmosphere on the last round around the ring, after his speech was very depressing, people talked about him and where trying to find out how he meant it.

I agree with the decision of the Wr. Linien to cancel his contract, but if he get’s punished for it, then I’d like to see much more people get punished for their statements.

BarCamp Vienna 08 – Impressions after 1 1/2 days

Yesterday, the BarCamp Vienna 2008 started. It is the first BarCamp I am attending and after one and a half day I’m trying to put the experience (which was much greater than I expected) in words.
As there is not much time (lunch will be ready soon) just some short impressions/thoughts:

1) Twitter is really a useful tool for such Conferences. Everyone is tagging their Tweets with the Tag #bcv08. You can find all Tweets with that Tag on Twitter Search. Even if you are there and see what’s going on, it’s great to see what’s happening in other sessions or read other peoples thoughts about the session you are attending.

2) The Sessions are not everything. As every event, BarCamp is also a social Event and so there is much “networking” going on. But “networking” in a good & nice way. Soo many different people (Students, Founders of StartUps, People working in the IT Sector, Marketing People, Politicians,…) in one place makes the BarCamp such a great experience.

3) It’s interesting to get to know People you know by their blogs (or even people you “know” already since years through Online Communities) in person. As with many events organized by Online Communites which I attended, you feel like you already know the people you meet in person because of their “online presence”.

4) Somehow (probably because there are so many Bloggers here), by attending this BarCamp you find motivation to blog, you find out how useful Twitter can be and how to really use it. I twittered more in the last 1 1/2 days than in the 24 days before. The motivation to blog partly comes also from the fact that by Twittering for example about the BarCamp you have more attention from persons who before didn’t know your Blog and this way more people look at your blog or mention it in their blog. And due to the fact that I see that people are reading and at least partly interested in this blog, I’m more motivated to write Posts.

5) By attending such a “Conference” with your Laptop, you also change your style of Internet Usage. You no longer just browse randomly from website to website, you “report” about the conference via Twitter, IRC or Blog; watch the Twitter Search for the #bcv08 Tag, reply to people and twitter short thoughts about the Sessions or something else. In between you think what you will talk about in your Session and prepare a Presentation for it in the Evening. I think from now on I will more often take my laptop with me when I’m not at home and try to work with it on interesting things (read blogs/articles,write on twitter or on the blog,do university related stuff,…) and not just stupidly browse around. (There is a Word … wilfing or so for it … don’t have time to find it out now)

So these were my first experiences/impressions, Lunch is ready. Also another experience now after writing this Blog entry in a little bit of a “hurry” you find out that Blog Posts can be written fast. They don’t have to be perfect, better a not perfect Post than no Post.
My Session is at 2 pm in the yellow room, I’m looking forward to it :)

Life, University, FOSS Development and Everything else