{"id":130,"date":"2004-05-03T13:31:34","date_gmt":"2004-05-03T19:31:34","guid":{"rendered":"http:\/\/www.mooreds.com\/wordpress\/?p=130"},"modified":"2004-05-03T13:31:34","modified_gmt":"2004-05-03T19:31:34","slug":"wap-vs-j2me","status":"publish","type":"post","link":"https:\/\/www.mooreds.com\/wordpress\/archives\/130","title":{"rendered":"WAP vs J2ME"},"content":{"rendered":"<p>When I gave my <a href='http:\/\/www.mooreds.com\/j2me\/'>talk about J2ME<\/a> to BJUG a few weeks ago, one of the points I tried to address  was &#8216;Why use J2ME rather than WAP.&#8217;  This is a crucial point, because WAP is more widely distributed.  I believe the user interface is better, there is less network traffic, and there are <a href='http:\/\/developers.sun.com\/techtopics\/mobility\/apis\/'>possibilities for application extension<\/a> that just don&#8217;t exist in WAP. (Though, to be fair, Michael Yuan makes <a href='http:\/\/www.enterprisej2me.com\/blog\/java\/?postid=19'>a good point regarding issues with the optional packages standards process<\/a>.)  <\/p>\n<p>I defended the choice of using MIDP 1.0 because we needed wide coverage and don&#8217;t do many complicated things with the data, but WAP is much more widely support than J2ME, by almost any measure.  If you don&#8217;t have an archaic phone like my Nokia 6160, chances are you have a web browser.  And <a href='http:\/\/www.vzwdevelopers.com\/aims\/public\/WapLanding.jsp'>WAP 2.0 supports images and XHTML<\/a>, giving the application almost everything it needs without learning an entirely new markup language like <a href='http:\/\/www.oasis-open.org\/cover\/wap-wml.html'>WML<\/a>.  <\/p>\n<p>So, we&#8217;ve decided to support XHTML and thus the vast majority of existing clients (one reason being that <a href='http:\/\/www.colinfahey.com\/2002dec14_j2me_cell_phone\/mobile_j2me_vs_brew.htm'>Verizon doesn&#8217;t support J2ME&#8211;at all<\/a>.)  So I&#8217;ve gotten a quick education in WAP development recently, and I just found a quote that just sums it up:<\/p>\n<p><a href='http:\/\/developer.openwave.com\/dvl\/support\/documentation\/guides_and_references\/xhtml-mp_style_guide\/chapter5.htm#pgfId-998372'>&#8220;As you can see, this is what Web programmers were doing back in 1994. The form renders effectively the same on the Openwave Browser as it does on a traditional web browser, albeit with more scrolling.&#8221;<\/a><\/p>\n<p>This quote is from <a href='http:\/\/www.openwave.com'>Openwave<\/a>, a company that specializes in mobile development, so I reckon they know what they&#8217;re talking about.  A couple of comments:<\/p>\n<p>1.  WAP browsers are where the web was in 1994.  (I was going to put in a link from 1994, courtesy of the <a href='http:\/\/web.archive.org\/collections\/web\/advanced.html'>Way Back Machine<\/a>, but it only goes back to 1996.)  I don&#8217;t know about you, but I don&#8217;t really want to go back!  I like Flash, DHTML and onClick, even though they can be used for some truly annoying purposes.  <\/p>\n<p>2.  &#8220;&#8230;albeit with more scrolling&#8221;  reinforces, to me, the idea that presenting information on a screen of 100&#215;100 pixels is a fundamentally different proposition than a screen where you can expect, at a minimum, 640&#215;480.  (And who codes for that anymore?)  On the desktop, you have roughly 30 times as much screen real estate (plus a <a href='http:\/\/devedge.netscape.com\/central\/javascript\/'>relatively rich language<\/a> for manipulating the interface on the client).  It&#8217;s no surprise that I&#8217;m frustrated with I browse with WAP, since I&#8217;m used to browsing in far superior environments.<\/p>\n<p>3.  Just like traditional browsers, every time you want to do something complicated, you have to go to the server.  You have to do this with <a href='http:\/\/www.w3.org\/TR\/xhtml-basic\/'>XHTML<\/a> (but not with WML, I believe.  WML has its own issues, like supporting only bitmap pictures).  That&#8217;s not bad when you&#8217;re dealing with fat pipes, but mobile networks are slow.  <\/p>\n<p>4.  Fitting in with the carrier is an issue with WAP.  Since the browser is provided, you have no control over some important issues.  For example, one carrier we&#8217;re investigating requires you to navigate through pages and pages of carrier imposed links before you can get to your own bookmarks. It&#8217;s the whole <a href='http:\/\/www.aol.com'>gated community<\/a> mindset; since the UI sucks, it&#8217;s harder to get around than it would be with Firefox.<\/p>\n<p>In short, use WAP 2.0 if you must, but think seriously about richer clients (<a href='http:\/\/java.sun.com\/j2me\/'>J2ME<\/a>, <a href='http:\/\/www.qualcomm.com\/brew\/'>BREW<\/a>, or even the <a href='http:\/\/msdn.microsoft.com\/mobility\/prodtechinfo\/devtools\/netcf\/'>.Net compact framework<\/a>).  Even though they&#8217;ll be harder to implement and roll out, such clients will be easier to use, and thus more likely to become a part of your customers&#8217; lives.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>When I gave my talk about J2ME to BJUG a few weeks ago, one of the points I tried to address was &#8216;Why use J2ME rather than WAP.&#8217; This is [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,6],"tags":[],"class_list":["post-130","post","type-post","status-publish","format-standard","hentry","category-mobile-technology","category-programming"],"_links":{"self":[{"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/posts\/130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/comments?post=130"}],"version-history":[{"count":0,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/posts\/130\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/media?parent=130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/categories?post=130"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mooreds.com\/wordpress\/wp-json\/wp\/v2\/tags?post=130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}