![]() |
Speed up Application Development
I saw this report on PALM app development and its download status
http://www.blogcdn.com/www.engadget....2009-06-24.png In less than 30 days , they have more than 30 apps in the marketplace. This makes me think how some ecosystems have a fast development cycle and ramp-up time to get apps delivered while some take a longer time. Which brings me to the subject of Maemo development platform being so hard (from what I read). Its this factor that has put me off from even starting to dabble in Maemo development - and that fact that I need to have a Linux machine to do it. Earlier for QT and PyQT I remember I could develop either in Linux or on Windows, but with Maemo being so tied down to Scratchbox (and I cant even understand the intricacies of getting it built for the extras repository), this has been one major drawback I believe. Is this a reason for Maemo apps being much more limited to a slower start and less volume of apps ? What does the community feel ? |
Re: Speed up Application Development
I assume the majority of these apps are not free...?
Commercial developers often work full time (on their apps) and have an extra motivation to have them available - the fact they want to get paid. |
Re: Speed up Application Development
I strongly believe that the ease of development strongly influences the ultimate success of the platform.
One of the reasons I like considering Java or Vala for development (powerful IDEs, lanaguages, Vala still tied to Scratchbox, though). And, indeed, why I'm considering proposing a "Developing for Maemo with Vala and a real IDE" talk for the summit. |
Re: Speed up Application Development
|
Re: Speed up Application Development
I had whimsically asked for a way to develop Maemo apps in my friendly Visual basic environment, since that's what I've been using for around 20 years. I was surprised to find that Mono *almost* gets me there. If Nokia had put sincere, serious effort into such alternative development environments (as they did with S60) who knows where we'd be right now...
|
Re: Speed up Application Development
Quote:
Btw, that amount of app downloads is impressive, given the low number of devices out there, and the low number of apps... |
Re: Speed up Application Development
Quote:
|
Re: Speed up Application Development
Quote:
It would be interesting to see what's available 30 days after the SDK ships, and especially the free/Free apps. Quote:
And no, Qt is not the answer - it will just be another piece of the puzzle eventually. Quote:
Note that Linux will most likely run fine on any machine you already have, and you don't even need to install it (a lot of people are happily using vmware images hosted on other OSs). "Having a Linux machine" isn't the same costly proposition as requiring a Windows machine for Symbian development or an OSX one for iPhone development. Quote:
|
Re: Speed up Application Development
Heh, its no visual c++, thats for sure ;)
|
Re: Speed up Application Development
I doubt my position is typical for much of anyone, but my biggest obstacle was the difficulty in establishing an on-device build environment. Now since all the other platforms have cross-compiling SDKs, this is clearly more of a *n*x user's perspective than a mobile dev's, but as lma mentioned, we've got a platform rather like a typical GNOME desktop, so perhaps this perspective is slightly more broadly represented among prospective developers?
OTOH, I never tried scratchbox, so I'm not saying it's bad; just the expected hassle of getting everything working right kept me from ever digging in and doing it. (I do hope Fremantle will be nicer to on-device work -- there's absolutely nothing about the N8x0s rendering them unsuitable for moderate dev work, and even less about a new OMAP3 powerhouse.) |
Re: Speed up Application Development
two thoughts:
it's not all that bad, really. such a small market, and still: last time i checked i found more apps on downloads.maemo.org than on store.ovi.com for my S60. just to put things in proportion. (the overall number of downloads at ovi is higher, of course, but more than half of it is themes, sounds, wallpapers...) on the negative side, there's too little effort to bring existing desktop apps to the platform. yes i know some argue you cannot do this and go fighting ideological battles on "mobile UIs" andd stuff... but even if you're on that side: it's better to have a non-optimized, desktop-like application than nothing. also, there's the possbility to avoid the UI-battle by porting libraries und CLI-tools and let others build new apps on top of them. so it would have been helpful to encourage porting... |
Re: Speed up Application Development
You seem to forget that most GTK+ desktop apps are using the latest libs... which are not available for Maemo 4. Sometimes its easier to rewrite an app than to get it running.
|
Re: Speed up Application Development
I might be boring by repeating this like a parrot, but this is exactly why I feel PyQt is such a killer combinaton. Easy to code, can develop on any of mac/win/linux, excellent docs and community, has half a dozen IDEs, no crosscompilation or scratchbox required has library functions for pretty much everything and with sticking to a few guidelines it doesn't have to be slow, either. The only reason it won't get that popular on current-gen NITs is because it's off limits for most simple users (it's hard to keep qt on the default system layout, and cloning is still rocket science for many).
|
Re: Speed up Application Development
Quote:
Those numbers don't tell much about how easy or complex is to develop on the WebOS. Still your point is good and the topic is really relevant to Maemo. What are these 30 apps? I couldn't find a complete listing but there is http://www.palm.com/us/products/phon...lications.html Most of these have a complexity equivalent to a thick desktop widget. And this is not bad! They count as 1 just like... Tear? However, the amount of work needed to have that "1" up is less. We have seen this trend already with the iPhone apps and now with the S60 widgets. Simpler apps for simpler use cases. Less native environment and more runtimes easier to approach like e.g. Nokia Web Runtime. |
Re: Speed up Application Development
Quote:
|
Re: Speed up Application Development
Quote:
(2) means you no longer need an SDK environment which doesn't match the device; you don't need to faff with Scratchbox or sub-optimal qemu; you can develop on any OS. It's just cleaner architecturally. Pre-release development would still require an SDK, as would any development before you get a device, but for the majority of developers I think this'd be a real boon. Unfortunately, I don't think Maemo |
Re: Speed up Application Development
Quote:
webOS has more interest as an interesting device, with a complete UI was shown and has the promise of apps being able to be put together in an innovative way (although sub-optimal in many ways as fms will point out). Now, I don't work in marketing directly, so I can't say why one device gets more press and excitement than another; but I can recognise it when I see it :-/ Quote:
For an open platform, there are sure a load of barriers to entry for anyone who isn't already familiar with Gtk+ programming on Linux. (Now, I've got some familiarity, but loads of people don't). Entice the developers and they build the software which entices the users. (One or two fun accelerometer-based third-party games on the iPod Touch made me seriously consider picking one up) |
Re: Speed up Application Development
Quote:
After the premature death of Gazpacho for Maemo, There's de-facto no UI builder for Hildon. There's Glade, but Hildon is not supported. I don't expect that to change with the Fremantle release, but who knows - the information from Nokia is scarse on all fronts. QT is going to be supported in Fremantle, so probably the easiest path for the newbies will be QT's declarative UI and the QT creator. This of course if there's good Hildon support. |
Re: Speed up Application Development
What I don't understand is why Nokia has so many useful RAD-like thingies (like that Web Runtime) but is not actively encouraging them as Maemo capable development platforms.
Also, where's that "Universal QT" with both S60 and Maemo compatibility? If the only bump in the road to success is writing a "web application engine" (aka reusing Webkit+JavascriptCore) and putting up some nice frontend (aka application launcher) with a local web server to it (aka application manager), as the Palm Pre may show us, then let Maemo have it too, dammit. Serious apps can use full GTK for the moment. I am yet to use GTK for any "serious app" but if I were to start I would use Vala. Has a "nice" feel to it, don't ask me why. BTW, declarative QT seems a nice idea to me. |
Re: Speed up Application Development
Quote:
|
Re: Speed up Application Development
Quote:
So, on Maemo if you want to include a port it has to be Hildonised, power mgmt aware, installable from Extras and have a UI suited to the form factor of a Maemo 5 lead device. ...but it is only €5, so I'm not too worried about getting the terms exact ;-) |
Re: Speed up Application Development
Quote:
Quote:
|
Re: Speed up Application Development
Quote:
My point is that 'ease of development' is one important factor to get a big amount of applications, but not the only one. Sales volumes and the existence of a payment system count as much. I won't take your bet since it's an unfair one: the Palm Pre is already selling while a Maemo 5 device hasn't been launched. I'm happy inviting you to €5 of your preferred drink in Amsterdam while we keep this conversation going. More this Saturday. |
Re: Speed up Application Development
Quote:
Quote:
Quote:
|
Re: Speed up Application Development
I remember developing for the Zaurus using QT and PyQT more specifically.
I think that was a killer development platform - giving a wide variety of IDE support and - even if the target was a Linux machine (the Zaurus), you could still develop in Windows or Linux. So this argument that a a Linux target requires a Linux dev environment always doent hold. I understand for Maemo, being GTK based and to write native apps that is a plus, but to make any development platform ubiqitous, it should allow to develop in a cross-platform way. Of course the final compile has to be for the target platform. I would be very happy with Maemo to have a way to develop and run on a cross-platform supported system - so as to write and develop on Windows on which I am on most of the day. At the end of my development, I switch all my files to a linux machine and compile and build the stuff for the target environment. That would be a great solution. And this is what PyQt allowed. I am looking forward to when Harmattan release will have QT support. The other thing that I enjoyed with the Zaurus was that I could write an app for the Zaurus in Python and QT and a "sister" app for the S60 using Python for S60 - such that the two complimentary apps could "talk" and exchange data (it was a travel app). So on the bigger screened handheld you could have edit and additional functions, while the smaller phone app periodically read the latest data (over BT) from the handheld system and worked as a instant display app on the phone (when you are running to catch a train, better to whip out the phone rather than the handheld). That is where I always wanted to go with app development - make complimentary apps for mobile needs with extensible function on different supported platforms. Where is that dream possible with Maemo ? Maybe Harmattan ? Edit : And to note : I see myself as a hobbyist developer for Linux, wioth most time spent on Windows (like Texrat) - not too knowledgeable on the innards of GTK/GObject and all such environments, but again interested enough to learn something a bit easy and fast. So this simplistic wish as above is all from that viewpoint. |
Re: Speed up Application Development
Doesn't Palm distribute a VirtualBox copy with each SDK? That'll take care of Windows, OS X or the rest of obscure x86 operating systems users.
|
Re: Speed up Application Development
What it needs (IMHO) is a good, well documented in-built language which comes with the machine. E.g. like OPL on the Psions.
Python is the best bet for the tablets, with a link to a nice how to get programming page or the like, which explains how to create basic GUIs, how to access databases, etc. (/me remembers the stuff that people used to use OPL for). |
Re: Speed up Application Development
Quote:
Tim |
Re: Speed up Application Development
Quote:
|
Re: Speed up Application Development
Quote:
|
Re: Speed up Application Development
Quote:
|
Re: Speed up Application Development
Quote:
1. Clone to SD or internal card (you'll need the space) 2. enable extras-devel in the Application Manager if you haven't done so yet 3. (as root from console) apt-get install python2.5-qt4-gui It'll pull in the python/qt4/pyqt dependencies and after a minute or two of munching, you're good to go ! PS. Be sure to check http://wiki.maemo.org/Qt for generic Qt on Maemo stuff, most of it is directly applicable to pyqt, too (except for scratchbox, which you don't need :) ). |
Re: Speed up Application Development
Quote:
Quote:
Quote:
If I interpreted it right, it's just a matter of recompiling a qt application (and is that necessary if the application is already compiled for arm, say, coming from a debian repository?), adding maemo specific things is completely optional. If so, why on earth didn't nokia do the same with gtk? (instead of requiring specific hildonization to make it work right) |
Re: Speed up Application Development
Most of the work on qt was done before nokia picked up trolltech, iirc...
as for GTK, its what, 3 years ago now? long time in the tech world, that... |
Re: Speed up Application Development
Quote:
|
Re: Speed up Application Development
I think another aspect has to be taken into consideration.
As a recently made unemployed Senior Software Developer I am asking the question 'where should I be developing?'. Should I be looking at Maemo (I am a strong and long standing Maemo user) and Linux (I've been using Linux for 14 years!) or should I be looking where the money is? I see 15 year old iPhone developers making 100,000€ plus from a good idea, I'm full of good idea's! Would I get this from a Maemo app? I love Maemo, I love what it all stands for and I get that the tablet is way before its time and in the future we will all look back and see it as the beginnings of a mobile (phone) revolution. What *I* as a developer of 10 years commercially (and more personally) see from the platform is a raw playground with nothing to entice me. I say that from the developer who has released *no* software under Maemo but I say that from a consumer who has bought every iteration of the tablet. I WANT IT TO WORK, but how can we, as a community, entice developers? OVI at the moment isn't it so what is? |
Re: Speed up Application Development
Quote:
http://www.fiercemobileit.com/story/...y/2009-06-17-0 http://www.stromcode.com/2009/05/24/...pp-store-hype/ |
Re: Speed up Application Development
It's a gamble. IMHO, anyone who goes in thinking that they will make ton of money from the App Store, for sure, no questions asked, are the ones who still believe in santa claus.
|
Re: Speed up Application Development
Quote:
As a developer, what are the chances? 1) Develop for Maemo and hope the money comes in some way? 2) Develop for Palm and hope the money comes in some way? 3) Develop for iPhone and hope the money comes in some way? Where would you bet the money if all you had was development income? |
Re: Speed up Application Development
I would probably choose again 4) the web...
There's not much money in the mobile business yet, at least as independent application developer. If you work for one of those 3 companies though, you'll have more chance to feed your family. |
| All times are GMT. The time now is 11:20. |
vBulletin® Version 3.8.8