Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Handhelds Programming

Best Platform For Hobbyist Mobile Development? 143

An anonymous reader notes a blog entry, possibly his own, comparing and evaluating 8 mobile platforms from the point of view of their suitability for a hobbyist programmer. Covered are iPhone, Java ME, Windows Mobile, Linux, Palm, Brew, Symbian, and Blackberry. The writer seems open-minded and is a strong fan of free software, but he gives the edge to Windows Mobile for this class of developer.
This discussion has been archived. No new comments can be posted.

Best Platform For Hobbyist Mobile Development?

Comments Filter:
  • Badly written (Score:5, Insightful)

    by strags ( 209606 ) on Tuesday October 02, 2007 @12:01AM (#20819381)
    This piece reads more like a stream-of-consciousness than a carefully prepared technical article - maybe it's not meant to be considered as such. The author doesn't event attempt to justify a number of his assertions - in fact most of them seem to be based on some kind of vague "feeling" rather than concrete data or research.

  • Mostly useless (Score:5, Insightful)

    by Anonymous Coward on Tuesday October 02, 2007 @12:08AM (#20819449)
    Not only is it not well written, many of the platforms are there just for show, as he knows nothing about them.

    Examples:

    iPhone

    It's not clear he's developed for it. He spends his time whining about the closed SDK, which is valid enough, but could have simply said "Apple doesn't welcome outside developers currently". And left it off.

    Blackberry

    I can just quote him

    "Next comes the blackberry, I have no idea about this as a programming platform so cannot say much about the SDK support."

    Brew

    And here:

    Brew as a platform is great but its not a platform for a hobbyist programmer. The tools are "supposed to be good. I have never directly worked on a brew project so cannot say much about it."

    Linux

    (goes off boring us about his dislike of GPL (fine, but out of place). And then finally gets to the matter

    (His JavaME and Windows Mobile coverage is decentish)
  • Re:J2ME (Score:2, Insightful)

    by Anonymous Coward on Tuesday October 02, 2007 @12:19AM (#20819523)

    Sun is snatching defeat from the jaws of victory
    If Sun could find a business model for this they'd be bigger than Microsoft.
  • This article contains less information than you'd get from 5 minutes of google searches on the names of the various technologies. Why reward such haphazardly written articles with frontpage coverage and ad impressions?

    The author's few actual opinions about technologies are equally worthless; his rambling about Palm and J2ME makes it clear that he's never actually used the technology for more than a few minutes, and the ranting about Linux's license and the hassle of 'signing' applications makes you wonder if he's ever written any software at all. Someone who considers the Java Mobile API 'beyond him' probably shouldn't be writing articles about programming.
  • Re:Badly written (Score:4, Insightful)

    by djradon ( 105400 ) on Tuesday October 02, 2007 @12:39AM (#20819609) Homepage Journal
    Unfortunately for the world of would-be hobbyist programmers, there really is only one reasonable development platform, and it is Windows Mobile. His points might be poorly-referenced, but I think he's pretty right-on about everything.
  • by p0tat03 ( 985078 ) on Tuesday October 02, 2007 @01:08AM (#20819765)
    I dunno. I have some peers who won't touch FOSS with a ten foot pole, but at the same time feel very insulted having to PAY for their proprietary software. There do exist people who like their software free as in beer, but no free as in speech. Odd, I know.
  • Re:J2ME (Score:4, Insightful)

    by hey! ( 33014 ) on Tuesday October 02, 2007 @01:31AM (#20819865) Homepage Journal

    I just don't get why J2ME development has to be so complicated


    It starts from what J2ME is. Or rather what it is not.

    First and foremost, it is not a product -- at least of the the company that controls it. You can't buy J2ME and plop it on your phone; it has to be put there by the manufacturer, who in turn sells them through the wireless carriers, who don't give a shit about anything unless it can be turned into a monthly service fee.

    Secondly -- and this accounts for the alphabet soup issue -- J2ME isn't really a platform. It's more like a family of specifications, or at least it is "marketed" (?) that way. Sun's direct audience for J2ME isn't users, it isn't developers, nor is it enterprises. It is device manufacturers. Since devices come in all shapes and sizes and capabilities, J2ME is balkanized so that there is a J2ME specification that work on just about anything more powerful than a PIC. Furthermore any J2ME implementation is going to extend the standard both with non-standard capabilities and with a non-standardizable selections of optional features. Which means that if you aren't careful you end up with a program that doesn't run on all.

    If you step back and squint, J2ME is handled exactly the opposite way that Java is handled. There are no standardized implementations you can deploy on, not even on PDAs, which would bring a lot of ideas and talent in from the developer community. This diametrically opposite effect explains why Java, which is so important in the enterprise, is a toy platform in the mobile world. You either develop for a specific device, or you develop trivial games that don't cause a lot of grief when they don't work cross platform.

    It's not entirely Sun's fault, at least on the mobile end. Our de-regulated telecom model means that the wireless companies are gatekeepers between developers and consumers. However, the failure to extend Java to the PDA was a lost opportunity to gain momentum before PDAs lost ground to smart phones, and smart phones lose ground to closed devices like the iPhone.

  • by xonicx ( 1009245 ) on Tuesday October 02, 2007 @02:16AM (#20820101)
    Not as a hobbyist but as a professional developer i have little experiences of both.

    Whenever i need to do something on windows mobile/wince i never commit on a deadline because you don't know where will you get stuck with so many libs (without source code) around. Microsoft is not going to support you until you really mean something to them and windows mobile documents sucks.

    Some point of time, I had to demo VoIP on wince. I plan to use wince messenger but it was returning 421(IIRC). I was using M$ SIP stack so code was not available to me. There was no way to find out the root cause until I get M$ support. Luckily i thought little differently and figured out that there could be some problem in Wi-Fi driver(it was developed by me again). NDIS API for maximum data rate was not correct. I don't understand how can someone think of development on M$ platform as a HOBBY with such a bad documentation and no support.

    Later,i had to port Linux kernel on a alien platform with some minimal applications (e.g ftp, ssh ) within a month. I am basically a network engineer with no embedded experience at all but have some user level Linux experience. With the help of community(IRC) i successfuly completed the task within the specified time. I was amazed the way linux kernel is written. You dont have to do anything to port on a new device. Error handling is great. Error reporting is excellent and tools really rocks. No OS give support over IM as Linux has. I feel, Linux is best for developing applications for mobile devices(at least for command line applications, haven't tried GUI ever). You don't have fear to get locked in with issues in some alien binary.

    Windows mobile looks good at beginning but once you go inside it, its all muddy and you find yourself helpless. Still trying to figure out what is equivalent of kernel magic number in windows mobile :(.

    PS: Sorry for broken English. I am not a native speaker.
     
  • Re:Badly written (Score:5, Insightful)

    by S3D ( 745318 ) on Tuesday October 02, 2007 @02:30AM (#20820157)
    Well, I did develop for Symbian and he is mostly correct. Certification and signing is nightmare. Even if developer is not using any capabilities and can self-sign application it still present some problems, due to poor documentation - some not quite necessary API call included by mistake can prevent application from installation. If any non-trivial capabilities are used freeware development (outside of promotional demo for big companies) becoming practically impossible. Signing freeware application can take months. Or freeware application could be ignored by test house without any explanations at all. There will be some changes soon. Free developer certificates to be abolished soon. Only TC Center certificates (cost 200 euro per year) will be accepted, valid only for like 100 phones, and process of getting them is not fast anyway.
  • Re:Not just J2ME (Score:4, Insightful)

    by cs02rm0 ( 654673 ) on Tuesday October 02, 2007 @03:22AM (#20820365)
    ...JSP, JCA, JCE, JAI...

    It's crazy isn't it. What's most infuriating is it means when you go for a Java job half the time you'd get turned down because you haven't got the latest three letter abbreviation in your CV (resume) even though you're perfectly capable of churning out Java code and you'd be familiar with whichever two APIs they use most pretty quickly.
  • Re:Not just J2ME (Score:3, Insightful)

    by julesh ( 229690 ) on Tuesday October 02, 2007 @06:34AM (#20821117)
    JSP, JCA, JCE, JAI...

    It's crazy isn't it. What's most infuriating is it means when you go for a Java job half the time you'd get turned down because you haven't got the latest three letter abbreviation in your CV (resume) even though you're perfectly capable of churning out Java code and you'd be familiar with whichever two APIs they use most pretty quickly.


    There are only 676 possible TLAs that start with 'J'. Why not just list them all?
  • by cuby ( 832037 ) on Tuesday October 02, 2007 @07:02AM (#20821209)
    Hello.

    At an amateur level, J2ME is the best because is well documented, reasonable IDEs and free. It is not very powerful or fast, but it is simple and will do a lot of things.

    At a professional level, Symbian and Windows CE/Mobile are the viable options. If you want to build a decent UI, get good performance and use decent IDEs and get lots of resources, that's the way.
    Linux is the most promising new platform, but I tried to get into openmoko, as a useful hobby, but the development tools are a lot different of what I'm used to... It is taking a lot more time than I expected to learn the thing.
  • Re:Badly written (Score:5, Insightful)

    by Lumpy ( 12016 ) on Tuesday October 02, 2007 @09:04AM (#20821747) Homepage
    From my experience you are 100% correct.

    I have tried all the platforms. Palm based treos are decent if you use CASL to write for them. it's fast enough for management to be happy and powerful enough for the typical programmer. but it sometimes causes problems and connectivity out the cellular connection can be a PITA.

    windows smartphone 5 after getting past the C# strangeness is actually quite nice to write for. and releasing for a new phone is as easy as a compile. the current software I write for the company on the phones we are about to roll out (deploying the samsung blackjack to all field employees and throwing away the blackberries.) allows full job tracking and other task management easily. all phone report back to a central server management has a complete up to minute picture as to where all projects are at and the employees love the fact that they do not have to do any paperwork anymore.

    I suggested the Linux phone offering on openMoko but it's hardware and software is still early beta and not ready for company wide use. right now the dirt cheap WM5 smartphones are the best solution for rapid deployment of mobile applications for a company.

    and I hate to say it but Microsoft seemed to got this one right. which does suprise me. they dropped the ball on all the other ones. AutoPC and the others (windows CE) sucked HARD.

Today is a good day for information-gathering. Read someone else's mail file.

Working...