Episode 16

Wednesday, January 26, 2011


  • Qt SDK Mergers
  • Qt Components
  • Qt Modularization
  • CES - Las Vegas
  • Precor's Qt-enabled touch-screen console
  • Qt Quick (QML) - MeeGo IVI demo
  • Mobile World Congress - Barcelona
  • Qt Meetups
Mark Hatch and Justin Noel

Intro: Welcome to ICS Network's This Week in Qt, the ten minute podcast that keeps you informed of significant events that may impact your engineering projects. If you have not yet heard about ICS, please visit our website at www.ics.com. As an organization, we believe we have the best independent team of Qt engineers in the world. Whether you're starting a new project or need help removing that insurmountable roadblock that every project has, please contact us at sales@ics.com.

Mark: Good morning this is Mark Hatch from ICS. I run the Qt/MeeGo business unit here at ICS. And today with me is Justin Noel, one of our Senior Engineers here and were talking about this week in Qt. So Justin, what's up this week?

Justin: Well, it's good to be here again. As usual, when we wait awhile between doing these, a lot of news has piled up. Things have been very busy here at ICS with a bunch of trade shows. We'll talk about them, and we'll also talk about the brand new merging of the Forum Nokia Qt SDK with the regular Qt framework's Qt SDK. There's some news in the area and concept of Qt modularization; breaking the Qt libraries into separate projects and repositories, and we'll talk about some meet-ups and trade show type of things such as CES which has happened a few weeks ago, and Mobile World Congress which is coming up in February. And we'll take a minute also to talk about what's going on with the Calling All Innovators contest.

Mark: That sounds great. Let's start with the SDK mergers.

J: So as we talked about ad nauseam in prior podcasts, there used to be a distinction between the Qt SDK that Forum Nokia produced, which always lagged a little behind and was very geared toward mobile devices. It came with simulators, it came with toolchains, it was meant to make applications using Qt for the Symbian phones and for the Maemo phone, the N900. And Nokia Qt Frameworks had their own Nokia Qt SDK that would come with the latest desktop version of Qt and a version of Qt Creator. Now these two very similar products have now merged so you get one download, and that one download will include mobile versions of Qt for the Symbian and Maemo phones, it will include a desktop version of Qt for your platform and it will include Qt mobility, Qt Quick, all these things in a single download that you can install and get all the toolchains, all the simulators, all the compilers, all the versions of Qt that you would need to work on the desktop or mobile devices.

M: Well that must be a pretty large package, there.

J: Yeah, the Windows download is 1.6 gigabytes, which is quite amazing. There are some things to note, though. If your going to go and download this Nokia Qt SDK for use in Linux, and you'll notice that the Linux download is quite a bit smaller, in the order of about 900 megabytes, if you can call that small. There is no Symbian tool chain for Linux right now that comes with the Nokia SDK. There are some issues that Nokia is working with; getting Linux development with Qt for Symbian. They are currently still working on that. However, enabled in the Linux version is a thing called remote compile. And this has actually been around in the Forum Nokia SDK for a while if you chose to turn it on. What this does is, takes your source code, and when you want to compile it, it will upload it to a Nokia build farm. It builds the objects and sends you back the binaries. So this is very useful if you're working on open source development, or you trust Nokia with your source code.

M: Yeah, I'm not sure that would go over well with a lot of people here.

J: Ah, well, there are some that would find it advantageous, and apparently the remote build servers are pretty fast as well.

M: Well, to be fair, Google Docs and everything else... corporations are already doing that in other areas too. In the cloud, if you will.

J: Yeah, you've got that cloud-based, trusted third party kind of thing. But it is a way for you to actively develop for a Symbian phone while using Linux, which is I think the key part.

M: That's great. What about Qt components? Any word about that becoming available any time soon?

J: If you subscribe to the mailing list, you'll see that there's been a lot of traffic, and they're proposing new API's, changing API's, implementing new API's... They've got things that work for MeeGo, using basically the same type of functionality as the old MeeGo touch framework. They have functionality geared towards Symbian, but they are still very much in the development phase. I don't think we'll see a technology preview and definitely not a release for months.

M: We need those. I mean, we're doing a lot of work in QML now, and it would certainly go a lot faster if we had those components there.

J: Yeah, it's amazing how far you can get without a tool set, and even here at ICS, we basically have our own tool set that we use for various projects.

M: Correct me if I'm wrong, but this reminds me a little bit of back in the old days, and I'm kind of an old person around here compared to a lot of you young guys, but this goes back to the day when you had XT but no Motif.

J: Yeah, exactly. You have the toolkit-toolkit, which I think is a really good analogy for the current state of Qt Quick. You've got something that allows you to render graphics very easily, just no widget set.

M: But as you've shown in the IVI demos, that we'll talk about in a little bit, you don't necessarily need that in many cases, right?

J: Yeah, you can get pretty far making your own button, your own slider, and moving forward.

M: Great. So you wanted to talk about the modularization that's continuing to go on here?

J: Yes, in fact I was a little confused until I saw some blog postings about this. They've been talking about Qt modularization for a while. What this means is that they're basically going to take some of the independent libraries that exist within Qt, such as the Qt Multimedia or Qt Sequel. Qt Webkit has already been spun off. These things can stand on their own. They can be developed independently. They depend back on the core libraries such as Core and GUI, but in reality they could have their own update cycle. So Qt Webkit could be updated four times a year with features, rather than Qt Core, which traditional only gets updated with features once a year.

M: And Mobility is another one of those types of libraries where it's built on top of the core, maybe adjacent too it because it has to get to the Mobile API's...

J: Yeah, you can see how fast they're developing Mobility. As soon as they come out with a release, the next week they have a technology preview of the next stuff. So what they want, is they want to take some of these libraries that could have a higher pace of development, and allow them to have their own development cycles.

M: That's pretty cool. That's pretty smart because we need to get those things out sooner than later.

J: Yes. Now the base libraries, Core, GUI, and Network... things like that, are going to stay has one module and one source code repository with one release cycle. Something that has been on the table and talked about for a while, but won't happen until the possibility of Qt 5 is the removal of things from Qt GUI. Right now, you can imagine mobile applications are using QML. They don't use the widgets at all. So those really should be kicked into a separate library so that when you're QML app runs, you don't need to load all the symbols in the shared object for all these widgets that you're not using. That is not going to happen until Qt 5, if ever, comes out.

M: Ok. Yes, there are no announced plans for Qt 5, you're just theorizing?

J: No, the only indication of a Qt 5 is in the bug database. When things like this pop up and they say "We'll fix it in Qt 5."

M: Oh ok, the "5th of Never," right?

J: Exactly.

M: So we had a whole bunch of trade shows going on right? In fact I think both of us have been at a whole bunch of them since our last podcast.

J: Yeah, it's been pretty, pretty crazy lately. We were at CES in Las Vegas.

M: That's a huge show. There was what, 250,000 people? I've been at CeBIT and COMDEX over the years but this one was just...

J: Yeah all told, exhibiters and attendees... it was massive. And we were actually in one of the corners of the Nokia Qt meeting area doing some demos that we have. Or actually, one was an actual product that has been released by Precor. It's basically a recumbent bicycle for gyms, with a multimedia head unit on it.

M: Yes, that's really cool. When people ask me what it is, I always say that gee, these guys built a tablet that happens to be in the piece of plastic on top of an exercise machine of some sort.

J: Yeah and it'll track your workout. It'll show you basically climbing up hills and doing that sort of thing.

M: The other thing was the video piece, too. And it also has a live TV feed so... when I go to the gym it's always annoying because someone next to me is always watching a different show than I would be interested in seeing.

J: How many times can you watch the headline news loop?

M: Oh, it gets annoying. On this Precor it's pretty cool because it's got this feed for an iPod too that you could use to drive the video, and stuff like that. So that was a lot of work for our guys. It was something that we really enjoyed working with the guys we had working on that, because it starts off as we're helping them get going, and Precor brings in their own people and they start to fly, and we're kind of becoming part of the team as they deliver the product. It's just really good to see your customers develop that way, and we kind of move out as they're ready to take on the projects themselves.

J: In another corner of the Nokia booth was my infamous IVI demo which you can check out if you go to www.ics.com, and there should be a link to it. There should be some source code you can download. It's basically an application that started life as a Photoshop, and was generated into QML using a Photoshop plug-in, and we implemented it from there.

M: If you haven't seen it, please go to www.ics.com. It's right on the front page, there's a link off to the right. And you can actually see who Justin is, and you can see how he developed this. It's a great story about how Justin was working on the data acquisition part of it, and we have who you refer to as "your artist..."

J: Andrew. Great guy.

M: ...that actually did the Photoshop in about a days worth of work on either side and then slammed them together, and suddenly we had speedometers bouncing around and stuff. And from there you just kept adding things.

J: Yeah and you can download the source code and see the native Photoshop files and see basically what we did.

M: It's scary to see how much this thing keeps continuing to grow. When I saw that steering wheel on the expense report I was like "uh-oh, he's getting a car."

J: It'll also be at the Mobile World Congress in Barcelona. Actually, Mark and I will both be there also in an area that is dedicated to Nokia Qt. So if any of you international folks will be around Mobile World Congress, feel free to stop by.

M: Yes we'd like you to stop by and say hi, and Justin will show you the demo directly on this. Again, this is a real cool demo of what you can do with QML, and its well worth seeing the possibility there. Also, if you are planning your calendar, there are a couple more MeeGo conferences in May that we'll be at. There's one in San Francisco, in Silicon Valley, actually. And then, one towards the end of May, which is going to be in Finland, outside of Helsinki.

J: Yeah it's actually going to be in Oolu, Finland.

M: Yes that's right, you're going to be speaking there...

J: I need to make my reservations. It looks like it's going to be an interesting MeeGo summit, but the big MeeGo conference is going to be in San Francisco. It's going to be like the show that they had in Dublin.

M: Right, that's sponsored by the Linux foundation, and they did a really good job. I don't know what they're going to do to top what happened in Dublin. If you haven't heard, anybody that attended in Dublin ended up walking away with a Lenovo touch screen. IdeaPad, was it?

J: Yes.

M: Right, that Lenovo provided and Nokia and Intel generously paid for to give to all the attendees. I'm sure they're not going to do the same thing in Silicon Valley. They'd probably go broke if they did that. Certainly, Intel and Nokia are trying to promote MeeGo. I think ICS is going to be a platinum sponsor of that event, so please feel free to come and see us there.

J: And for that conference we're expecting MeeGo 1.2 to be available.

M: That's right. I was going to ask you when the next MeeGo version was going to come out.

J: In fact, the way that they are timing the release schedule is to line up with the conferences so we can expect two versions a year with two conferences a year.

M: Well that's cool. It was a really good time in Dublin. They got challenged in Silicon Valley to equate what it was in Dublin. You know it's amazing because you're actually in this new soccer stadium. This is where the conference was held in Dublin. That was pretty nice. So we also have some meet-ups coming up too, right?

J: Yeah so Nokia is promoting local communities of Qt developers to get together. And in the United States at least they are trying to get grassroots effort via a website called meetup.com, which is a generic site for people who want to get together with varying interests. ICS is sponsoring a bunch of them in the United States and Canada as well. We have one coming up in Boston here on Monday. We had one in San Jose a little while ago. Upcoming events in Dallas and Vancouver... So go ahead and check out Meetup.com, look for Qt, and see who's in you area that wants to get together and talk about Qt, trade QML secrets...

M: Yeah it was interesting. The San Jose one was pretty good. We've actually had two meetings now. I think everybody took up a challenge in the first one to write a Qt application on an N8, and then in the second round they actually judged the different applications. So it was actually a lot of fun there. And it was kind of interesting to see a relatively unknown take the prize in Silicon Valley for the best app.

J: And this is really a grassroots type of effort, you know. Nokia's trying to promote these from the bottom up, so it was really about the users coming together and basically making these meet-ups happen.

M: So the one in Boston, just for you out there, it's the 31st of January. So probably by the time you hear this there will be a second one scheduled, so you'll probably miss the first one. But, we look forward to seeing you there. It's actually right below ICS...

J: Yes, in our illustrious restaurant downstairs.

M: Exactly right, in the Boardroom.

J:So, great. It's been a long time since we last got together, and we're hoping to make this a little more frequent again now that all the trade show season is done and we can sit down and keep you updated. And again if you are at Mobile World Congress in Barcelona in a couple weeks, please stop by.

M:Thanks a lot Justin.

J: See you next week.