<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2062038737175613469</id><updated>2012-02-16T12:24:35.819-05:00</updated><category term='mobile'/><category term='gdd07'/><category term='google gdd08'/><category term='blogger xml html markup'/><category term='cobertura java coverage programming development'/><category term='mashup'/><category term='gdd07us'/><category term='gartner search lucene'/><category term='emma java coverage programming development'/><title type='text'>The Java Magician</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>31</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-1093587287022340843</id><published>2008-10-23T10:34:00.002-04:00</published><updated>2008-10-23T10:54:13.680-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Changing the mobile industry, one device at a time</title><content type='html'>Rich Miner, Group Manager of mobile platforms at Google presented this morning.  His presentation was titled, "Changing the mobile industry, one device at a time."  The content of his presentation was largely focused on Android, and not the TMobile G1.  Rich first set the stage of why an open platform, Android, was long overdue in the mobile market.  Using a lot of his mobile related startup experience (prior to joining Google) to drive his argument, Rich argued that openness of mobile platforms is the primary catalyst for the tipping point of the mobile revolution.  5 years ago, it was nearly impossible for a startup developer to get their app onto a mobile phone.  The operators were simply too monolithic and closeminded to streamline the process.  Paraphrasing Rich with regard to mobile operators, it takes 100 people to agree on something, but only 1 to say no and slow the whole thing to a halt.  Another anecdote he mentioned was related to a push to talk service he was trying to get off the ground.  The service was being developed on the Windows Mobile platform.  His team actually found a bug in the Windows Mobile code.  Upon approaching Microsoft to fix the bug, Microsoft indicated it would take 18 months to complete.  Wow that is a long time.  They must not be using the agile development methodology.&lt;br /&gt;&lt;br /&gt;After describing why closed platforms have stifled innovation in the mobile market (something I absolutely agree with), Rich continued on to give all the reasons why Android fixes these problems.&lt;br /&gt;&lt;br /&gt;Couple other gems from the presentation:&lt;br /&gt;"Google sees 50 times the searches on an iPhone than any other platform."&lt;br /&gt;When the first versions of Google Maps Mobile (written in Java) were developed, and Google was trying to convince the operators to ship the app with the devices, Google experienced a lot of grief and resistance.  The operators indicated that even if the users loved the app, they suspected there were unspoken motives for Google wanting to distribute the app.  In some cases, operators disabled the underlying service for Google Maps Mobile, so even if the user was able to install it themselves, it was unusable.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-1093587287022340843?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/1093587287022340843/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=1093587287022340843' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/1093587287022340843'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/1093587287022340843'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/changing-mobile-industry-one-device-at.html' title='Changing the mobile industry, one device at a time'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-6599912569205537446</id><published>2008-10-23T10:23:00.002-04:00</published><updated>2008-10-23T10:34:12.290-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Full featured browsers on mobile browers - end of .mobi?</title><content type='html'>An absolute them from Mobile Internet World is there will only continue to be a heavy market penetration of full featured browsers on mobile devices.  Consumers know how powerful their desktop browsers are, and they want nothing less on their mobile device.&lt;br /&gt;&lt;br /&gt;This presents the question, is it even worth pursuing development of .mobi sites now?  How long will they continue to be around?  I think the answer is yes, it is absolutely worthwhile to have a presence in the .mobi space.  For the next couple years, the majority of mobile Internet users will be using these scaled down browsers.  While users do want the full desktop experience from their mobile device, it won't be for a couple years until the desktop experience on mobile has a majority share in the market.  Until then, people need a site that is usable on their Motorola RAZR.&lt;br /&gt;&lt;br /&gt;When I refer to .mobi sites, I'm basically referring to websites that are designed specifically for the lightweight mobile browsers of today, like the one you'd find on a BlackBerry.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-6599912569205537446?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/6599912569205537446/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=6599912569205537446' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/6599912569205537446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/6599912569205537446'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/full-featured-browsers-on-mobile.html' title='Full featured browsers on mobile browers - end of .mobi?'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-1570073229424301840</id><published>2008-10-22T16:52:00.002-04:00</published><updated>2008-10-22T17:53:02.637-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Mobile Internet World - Day 2 - Afternoon</title><content type='html'>Mobile Internet World day 2 is just about to wrap up.  Regarding the second half of the day, I heard from a bunch of speakers.  I'll only capture the highlights.&lt;br /&gt;&lt;br /&gt;First, I heard from Erik de Kroon of Vodafone.  Vodafone is another network operator prevalent outside the US.  There were two important points that I took from Erik's presentation:  The main differences between the PC and mobile device with regard to distributing mobile content are that the entry point is very important (users don't want to type long urls on their mobile device), the business models are different, and finally there is limited reach on the mobile platforms due to the large fragmentation in the market.  The other important point from Erik's presentation, is the large amount of work that Vodafone is putting into developing a widget platform for their mobile devices.  It didn't sound like this platform would be open to developers for third party apps, but merely an easy way for Vodafone to distribute apps.&lt;br /&gt;&lt;br /&gt;Next, we heard from Tony Lewis, VP of Open Development at Verizon Wireless.  Right off the bat, Tony's first slide was a "safe harbor" slide.  I had never seen one of these, but he passed it off as something everyone in the audience had seen.  There was a bunch of small font text on the slide, but I think the gist of it was, don't repeat what you're about to hear.  I'll keep this part brief, and restricted to info that is already public.  One cool thing Tony mentioned, is that Verizon has these mobile cell towers that they can drive to areas with poor coverage.  Also, Verizon Wireless really does have people driving around testing service (can you hear me now?).  Tony also described the &lt;a href="http://www.verizonwireless-operndevelopment.com"&gt;Verizon Wireless Open Development program&lt;/a&gt;.  I'll let you go to the site to read about it, but OMG YET ANOTHER OPERATOR COPYING APPLE'S IPHONE DEVELOPMENT SITE!!!!  It's so funny how fast these companies mimic eachother.  It's a site with documentation and a community for developers writing apps for Verizon devices.  Ok, enough on Verizon.&lt;br /&gt;&lt;br /&gt;Next up, Marcelo Vieira, General Manager of OMAP at Texas Instruments.  The guys from the hardware companies (like Intel and TI) have the coolest toys.  Similar to the Intel Atom processor, TI has release a processor for mobile devices.  As an example of its power, he was demo'd a photo album app on a mobile device (using the processor) that was easily and very quickly flipping through 8 megapixel photos!  It was definitely impressive.  Here's an interesting stat Marcelo mentioned:&lt;br /&gt;&lt;br /&gt;In 2004, 15% of the handsets shipped were smartphones&lt;br /&gt;In 2012, 35% of handsets shipped will be smartphones&lt;br /&gt;&lt;br /&gt;So what's a smartphone?  This question has been posed to be many times, and I don't think I ever gave an answer as accurate or succinct as Marcelo's.  A smartphone is a handset with a high-level operating system.  This makes a lot of sense.  Just think of the functionality offered on RAZRs, and then functionality on a phone with, say, Windows Mobile.  There's a huge difference.  It's not just the QUERTY keyboard, but the nature of the software.  Smartphones weren't the only mobile device that Marcelo talked about.  There's an exciting new class of devices coming onto the mobile market, mobile internet devices (MIDs).  Characteristics of MIDs include: boots up in seconds (not minutes), can go a full day's charge with a full day's use, impressive service, and uncompromised browsing.  These are like mini laptops, not quite a laptop, but certainly more functional than a smartphone (with regard to Internet browsing).  Finally, the coolest device that Marcelo discussed (but no demo :() is called the DLP Pico.  It's a tiny projector that may be integrated or included with smartphones!  Google it to check out the product page.&lt;br /&gt;&lt;br /&gt;Next, I heard an okay presentation on near field communication.  The topic of the presentation was attractive, "Mobile Transactions."  Instead of meaning software based transactions, like mobile banking, it was much more focused around near field communication as a technique to use your cell phone like a credit card.  Interesting, but not really up my alley.&lt;br /&gt;&lt;br /&gt;After the presentation on near field communication, I attended a presentation on securing SMS messaging.  SMS messaging (or simply text messaging) is extremely unreliable and insecure.  Additionally, unlike email, SMS messages that are sent and received cannot be monitored for compliance purposes.  Even with these limitations, data indicates that there will be 2.3 trillion messages sent in 2008.  Obviousily, these are at the consumer level, not enterprise.  Regarding the enterprise, a company called CellTrust has come up with a solution to secure SMS.  Besides needing to subscribe to their service, a thin client is required to be installed on the consumers phone!  That seems like a huge barrier of entry to me.  Maybe within the enterprise and its devices that are managed by the company, one could easily roll out the software to their phones.  This seems to be way too much of an inconvenience for a company to expect their clients and consumers to install an app on their phone, merely to receieve secure messages.  I certainly wouldn't.  Messages just aren't that important to me.&lt;br /&gt;&lt;br /&gt;Next I heard a panel discussion on WiFi in the enterprise.  Couple of interesting points here.  It was suggested that any new WiFi rollouts in the enterprise should, without a doubt, include hardware to support 802.11n.  There was also some interesting discussion around fixed mobile convergence.  I'm still a little unclear on what fixed mobile convergence is.  At the highest level, it's basically a way to integrate your mobile device and your other communication devices, such as your desk phone, and work voice mail.  Advancements in wifi and related software will eventually enable this.  It was the common consensus on the panel that 4G/WiMax will not replace WiFi, but they will instead complement eachother.  WiFi is so cheap these days that there's no reason every electronic chip should come with an integrated radio to allow for connectivity.&lt;br /&gt;&lt;br /&gt;The last panel of the day discussed mobile enterprise applications.  This was slightly a disappointment.  The CIO of Providence (yes the town in Rhode Island) monopolized the time by telling the audience how he set up a complicated network for his police force.  While interesting, not really the type of information I was looking for.  There were a few worthwhile points that came out of the discussion.  Drivers for enterprise mobile applications need to come from a balance of the business and IT, not solely from either.  The panelist from Yankee Group confirmed some of my thoughts, that college grads entering the workforce will make choices of where to work based on the company's enterprise mobile direction.  Meaning, companies without a strong mobile direction will lose the best job candidates.&lt;br /&gt;&lt;br /&gt;There's the highlights from this afternoon.  I've probably skimmed over some of the details, but I do have some notes that go a little further below the surface.  I'm not trying to go that deep on this post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-1570073229424301840?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/1570073229424301840/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=1570073229424301840' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/1570073229424301840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/1570073229424301840'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/mobile-internet-world-day-2-afternoon.html' title='Mobile Internet World - Day 2 - Afternoon'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-7121858298356104490</id><published>2008-10-22T10:44:00.002-04:00</published><updated>2008-10-22T11:24:20.075-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Mobile Internet World - Day 2 - Morning</title><content type='html'>The morning presentations just concluded.  We heard from three people:&lt;br /&gt;Emily Green, the CEO of Yankee Group&lt;br /&gt;Russ McGuire, Vice President of Strategy at Sprint&lt;br /&gt;Anand Chandrasekher, Senior Vice President of the Ultra Mobility Group at Intel&lt;br /&gt;&lt;br /&gt;Emily's presentation was interesting, themed around what the Yankee Group calls Unleashing the Anywhere Network.  The Anywhere Network is really a concept defined as a common platform, bandwidth, intelligence, seemlessness, and ubiquity.  There are a few issues with mobility today that are holding us back from realizing this innovation, including: network limitations, device limitations, pricing problems, spectrum, and mobile operators.  Even with these issues preventing huge jumps in mobile innovation, flat rate data plans have unleashed huge appetites for more mobile services!  In contrast, despite these large increases in mobile demand, mobile revenues are in long term decline.  Weird.  Continuing on a theme started yesterday, Emily says that the mobile browser is the field to nourish to easily address the fragmented market.  Mobile popularity is having a huge impact on the enterprise.  Workers want connectivity.  In fact, &lt;span style="font-weight: bold;"&gt;workers say that their personal technology experience is better than what they have at work.  Additionally, 20% of employees say they would be more productive at work if their technology experience matched that of which they have at home!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Next up, Russ McGuire, Vice President of Strategy at Sprint.  His presentation was a lot of marketing of why Sprint is so great.  I'm not sure they're as good as he presented, but they do have two great innovations: dominating the click to talk market, and also the first wide spread wimax solutions in Baltimore (and Boston soon to come).  It's funny to hear execs from non AT&amp;amp;T operators talk about the iPhone.  I definitely feel a sense of jealousy that they missed the boat.  He briefly talked about how successful the iPhone has been, and then mention some aspects of how Sprint has innovated to excel their products beyond the iPhone.  Russ did mention an interesting point about a customer fear.  Customers have a concern around unintentionally subscribing to a pay service when using advanced funcitonality on their mobile device.  They are worried that clicking a link will accidently subscribe them to a service for which they'll be committed to paying for something, even though they were just "trying something out."  I find this definitely to be true, especially when I had my Verizon Wireless RAZR.  Maybe part of this was the poor interface.  It was not clear at all when I'd be charged for clicking a VCast link, or testing out a game.&lt;br /&gt;&lt;br /&gt;Finally, Anand Chandrasekher, Senior Vice President of the Ultra Mobility Group at Intel made a presentation.  He called 2008, the year of mobility.  According to Forrester Research, 1 out of 2 mobile internet users prefer full internet pages on their mobile device, not a mobile version.  Consumers are aware of the experience they can get on their computer, and aren't happy that their handheld doesn't provide that.  Anand introduced Intel's Atom processor, released earlier this year.  It will continue to allow for next generation mobile devices.  Atom powered devices will have computing power comparable to laptops circa 2004.  He had some devices on hand, they were somewhere between smartphones and laptops.  I think he called them, mobile internet devices (which he later clarified, not expected to cannibalize laptops or smartphones).  He showed two Intel vision videos which I embedded from YouTube in earlier posts.  Closing his presentation, he brought up a picture of the Carpentier vs Dempsey boxing match in 1921.  Anand posed the question to the audience, "Does anyone know why this event was revolutionary?"  Answer: it was the first sporting event to be broadcasted over live radio.  This was really when radio transitioned from a medium for news and information, to a medium for entertainment.  The following year, sales of radios doubled, and the year following that, they doubled again.  Anand compared this with what he expects will happen with mobile behavior and usage.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-7121858298356104490?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/7121858298356104490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=7121858298356104490' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/7121858298356104490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/7121858298356104490'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/mobile-internet-world-day-2-morning.html' title='Mobile Internet World - Day 2 - Morning'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-995840547381437346</id><published>2008-10-22T10:22:00.002-04:00</published><updated>2008-10-22T10:23:01.755-04:00</updated><title type='text'>Another Intel Vision video showing off the potential power of the Atom processor</title><content type='html'>WOW, this is SO Enterprise 2.0!&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/XcN_9vZ7j20&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/XcN_9vZ7j20&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-995840547381437346?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/995840547381437346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=995840547381437346' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/995840547381437346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/995840547381437346'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/another-intel-vision-video-showing-off.html' title='Another Intel Vision video showing off the potential power of the Atom processor'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-6359636345502566280</id><published>2008-10-22T10:13:00.003-04:00</published><updated>2008-10-22T10:19:12.479-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Intel's Ultra Mobile Concept Video</title><content type='html'>Anand Chandrasekher of Intel just showed this vision video of their Ultra Mobile technology:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/G_FS2TiK3AI&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/G_FS2TiK3AI&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-6359636345502566280?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/6359636345502566280/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=6359636345502566280' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/6359636345502566280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/6359636345502566280'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/intels-ultra-mobile-concept-video.html' title='Intel&apos;s Ultra Mobile Concept Video'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-5874999382747046501</id><published>2008-10-22T08:58:00.003-04:00</published><updated>2008-10-22T09:05:07.411-04:00</updated><title type='text'>The Weather Channel's Mobile Site</title><content type='html'>Good morning, day 2 of Mobile Internet World is about to start.  Have you seen The Weather Channel's mobile site?  The Weather Channel owns &lt;a href="http://www.weather.com"&gt;www.weather.com&lt;/a&gt; and thus their mobile site is &lt;a href="http://weather.mobi"&gt;http://weather.mobi&lt;/a&gt;&lt;br /&gt;I heard from one of their employees yesterday that they're mobile website actually gets more hits than their desktop website!  The kicker was that many of these hits are actually coming from desktop browsers!  They suspect that people are prefer the mobile site because there is so little fluff there.  The users only want the weather forecast, and that's what the mobile site provides.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-5874999382747046501?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/5874999382747046501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=5874999382747046501' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5874999382747046501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5874999382747046501'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/weather-channels-mobile-site.html' title='The Weather Channel&apos;s Mobile Site'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-3814148995025362702</id><published>2008-10-21T17:49:00.003-04:00</published><updated>2008-10-21T18:05:55.203-04:00</updated><title type='text'>Mobile Internet World - Day 1 - Afternoon</title><content type='html'>The afternoon at the Mobile Internet World was okay, not great.  First I attended a panel discussion on the evolution of mobile devices.  There were three panelists, an IBM employee, a Nuance employee, and a Qualcom employee, all of whom were very smart and well spoken.  There were three insightful ideas mentioned in this presentation.&lt;br /&gt;&lt;br /&gt;First, the idea that people want mobility in all devices, but don't really care about the underlying operators or networks.  The simply want to be able to get pictures from their camera to their Facebook page, or get their most recently purchased book from Amazon onto their Kindle, or their most recently purchased iTunes song onto their iPhone.  It seems that some devices do this better than others.  The popularity of the devices that do it well should help competitors adopt the innovation.&lt;br /&gt;&lt;br /&gt;Second, the advent of 4G networks will really push the idea of delivering services to users, independent of the device.  Enterprises will cease to standardize certain desktop computers.  Instead, it will entirely be up to the employees.  Developers will get whatever high powered machine they want, and executives will get a highly mobile laptop.  Regardless of the device, the same services will be delivered to each.&lt;br /&gt;&lt;br /&gt;Finally, with regard to open versus closed mobile platforms, people (and open source software advocates) can argue all they want about how good open platforms are (such as Android or Symbian), but the fact is, the two most successful mobile platforms are produced by RIM and Apple, and subseqently the most closed and most expensive systems.  Even though they are closed and costly, the users' love for these devices is still immensely high.  (heck, I just switched off Verizon merely so I could own an iPhone :)&lt;br /&gt;&lt;br /&gt;Next session was another panel entitled, "Device and Operating System Wars."  On the panel was an employee of Limo, the Linux mobile foundation, and the director of marketing for deviceanywhere, a service that helps you test your mobile apps on many devices (more on this later).  Probably the single biggest theme out of this discussion, was that operators (like TMobile and Verizon) are very hesitant to provide a device based on an open platform merely for fear that the user's experience will be negatively impacted.  In my opinion, this is a very real fear.  I think Android's success will help strengthen, or weaken, the fears of the operators.&lt;br /&gt;&lt;br /&gt;In the last session of the day, I heard from Kate Walsh, an employee at the Yankee Group in charge of advertising for the Mobile Internet World conference.  She described how the Yankee group leveraged an improved mobile website, as well as social networking platforms, to significantly increase the number of conference attendees from 2007 to 2008.  Personally, I joined the Facebook group for the conference about a month ago.  It was cool to see the other people going, but beyond that, I didn't really take advantage of it.  She also placed presences on LinkedIn, Twitter, RSS enabled the website, and provided registration discounts to people who registered on the mobile version of the conference's website (darn, if I only knew).  To me, these are obvious ways for cheap publicity, and nothing revolutionary.  I'm glad the Yankee Group is eating their own dog food.  It's no secret that these platforms are heavily used.  Maybe it's just that enterprises are starting to understand that (and use them).&lt;br /&gt;&lt;br /&gt;More to come tomorrow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-3814148995025362702?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/3814148995025362702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=3814148995025362702' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/3814148995025362702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/3814148995025362702'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/mobile-internet-world-day-1-afternoon.html' title='Mobile Internet World - Day 1 - Afternoon'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-870904741078375801</id><published>2008-10-21T17:02:00.004-04:00</published><updated>2008-10-21T17:41:07.492-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Mobile Internet World - Day 1 - Keynotes</title><content type='html'>There were two keynotes on day 1 of Mobile Internet World.  First, Michael Bayle, Senior Director of Global Money Monetization at Yahoo spoke, and he was followed by Ian McKerlich, director of mobile web and content services at TMobile.&lt;br /&gt;&lt;br /&gt;Michael's presentation was strongly focused on how to best advertise on mobile devices.  It was certainly interesting, but I'm not really in the business of advertising.  I did find that many of the topics he was talking about applied to general brand awareness on mobile devices, not just advertising.  He first poses the rhetorical question, why aren't more brands on the go?  Answers he posed are that the mobile landscape is too fragmented, the media is too small, and no clear definition of how start.  On the otherhand, it's the perfect place to push your brand since it's hyper-personal.  He cited that if you lose your wallet, it takes about 26 hours to completely report all stolen items.  On the otherhand, lost cell phones are reported in an average of 68 minutes.&lt;br /&gt;&lt;br /&gt;At this point, Michael made some joke about Sarah Palin's hacked Yahoo email.  I think it was funnier that the Yahoo employee was joking about this, rather than the joke itself.&lt;br /&gt;&lt;br /&gt;Other stats on the hyper-personal nature of cell phones are:&lt;br /&gt;60% of married mobile owners won't share the device with their spouses&lt;br /&gt;68% of teens won't allow their parents to see their phone contents&lt;br /&gt;And finally 6 out of 10 people sleep with their cell phone (maybe because they use it as an alarm)&lt;br /&gt;&lt;br /&gt;Next, Michael covers various examples of mobile advertising, and how they take advantage of this hyper-personal nature of the devices.  Nothing too extraordinary.  While he was wrapping up his presentation, he mentioned a unique anecdote: the hottest venture capital topic is that of mobile analytics.&lt;br /&gt;&lt;br /&gt;After Michael concluded, Ian McKerlich, director of mobile web and content services at TMobile was introduced.  This was probably one of the most interesting presentations of the day.  Besides the hot news related to Google Android lately, he described some other innovations from TMobile.  The first thing that jumped out at me, was that he mentioned that TMobile executives are required to serve a specified amount of time in the actual store fronts assisting customers (just like the people who help you when you walk into a TMobile store).  I found this very innovative on behalf of TMobile.  I think this would definitely help keep the executives grounded and focused that the ultimate goal of the company is providing the best experience to customers, on all fronts.&lt;br /&gt;&lt;br /&gt;While overviewing TMobile's recent work, he mentioned two unique contrasts between mobile devices and laptops:&lt;br /&gt;Mobile devices have the permission to interupt you in a meeting, laptops don't.&lt;br /&gt;Mobile devices have the permission to know where you are, laptops don't.&lt;br /&gt;&lt;br /&gt;Humorously stated, but pretty profound in my opinion.&lt;br /&gt;&lt;br /&gt;Next, Ian introduced the TMobile devPartner community.  To me, this looked IDENTICAL to Apple's iPhone developer community.  Well, not "looked" from a visual sense, but provided with the same intentions.  It's a place for developers to gather, find documentation, and provide apps they write for TMobile to distribute to consumers, JUST LIKE THE IPHONE APP STORE!  I should clarify, these aren't just Android apps, these are apps that would work on all TMobile devices.  There's a profit sharing structure also similar to iPhone App Store.&lt;br /&gt;&lt;br /&gt;During the Q and A, I posed the question to him, is the TMobile devPartner community a rip off (phrased a little more politely) of Apple's App Store?  And what lessons learned has TMobile observed from the launch of the iPhone?&lt;br /&gt;&lt;br /&gt;While he was responding, I could detect the slightest annoyance about being asked about the iPhone, almost as if he was thinking, "do I really have to talk about the iPhone again???"  He indicated that TMobile has been working on this community for about a year and a half, that they were disappointed that Apple beat them to the market with the App Store, but also encouraged since the App Store's success has validated their approach.  During his response, he also said, "Grandma doesn't know what an application is." almost degrading Apple's terminology while describing why TMobile's approach will be better for consumers at large.  One nice feature that he explained will be part of the TMobile's version of the AppStore would be that when searching for "NY Times."  Users will not only get a search result for the TMobile native app, but also a search result that would direct them to the smartphone designed website for NY Times.  I would find this very useful on my iPhone.  I'd really like a way to be able to find websites that are designed for the iPhone, maybe Apple should consider integrating this with their App Store???&lt;br /&gt;&lt;br /&gt;That's it for the keynotes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-870904741078375801?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/870904741078375801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=870904741078375801' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/870904741078375801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/870904741078375801'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/mobile-internet-world-day-1-keynotes.html' title='Mobile Internet World - Day 1 - Keynotes'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-5114462578184240588</id><published>2008-10-21T13:11:00.004-04:00</published><updated>2008-10-21T16:56:03.862-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Mobile Internet World - Day 1 - Morning</title><content type='html'>I'm trying a new format for posts from conferences.  Instead of writing for each session, I'm going to simply merge the writeups from one half of the day.  For example, this post will cover information from the morning of Mobile Internet World day 1.&lt;br /&gt;&lt;br /&gt;First, the conference is heavily sponsored by The Yankee Group.  The name was always familiar to me, but I was never clear that they are a research firm, very similar to Gartner or Forrester.  For the morning, I choose the Mobile Development track.  I heard three presentations.  First, Carl Howe of the Yankee Group, spoke about mobile technologies in general.  Near the beginning of his presentation he mentioned that "people in living in huts in Africa are mobile addicts."  What a coincidence, one of my colleagues loves to cite this example as well!  Another very important point he made that I remember reading in a book on mobility (can't remember the title at the moment), is when planning your mobile strategy, remember to mobilize, not miniaturize your site.  This is very important.  There are plenty of bad examples where companies try to simply mimic all functionality on their PC web version of their site, on their mobile version of their site.  Carl makes a weak argument against native applications for mobile devices in favor of the mobile web.  While I agree with his point that there are far too many devices to try and write a native app for each, I think there are certainly applications in which native applications make sense.  I recently purchased an iPhone.  For whatever reason, I find myself using Facebook's native app 100% of the time, instead of accessing their iPhone website.  I think it feels a little quicker, or for some reason, more convenient?  After trying to convince the audience why the mobile web is the optimal platform for apps, he identifies the problem of finding a company's mobile website.  Is the address xxx.mobi?  Is it mobile.xxx.com?  etc.  There's also the problem of browser standards.  His research indicates that Opera and WebKit will continue to gain market share.&lt;br /&gt;&lt;br /&gt;Next, Carl discussed some work the Yankee Group did to score mobile websites against criteria his form defined.  32 mobile websites were picked in three categories, financial services, shopping, and airlines.  He didn't really go into the actual criteria used for evaluation, this is actually contained in the formal Yankee Group written research (which I've requested).  The most interesting point in this part of his discussion was that, out of the 32 sites they reviewed, not a single site scored higher than a 68 out of 100 points.  Highest ranking mobile web sites included Bank of America's, Southwest, Fidelity, and Edmunds.  Highlights include:&lt;br /&gt;&lt;br /&gt;Southwest - incredibly minimalistic.  No graphics or colors, just text.  Users can do the few tasks that one would expect on an airline website from a mobile device (check in, get flight status).&lt;br /&gt;Fidelity - Any brokerage activity that one can perform on Fidelity.com, one can perform on fi-w.com.  Also of note, the separate domain for Fidelity's mobile site, less letters mean it's easier and quicker to type.&lt;br /&gt;&lt;br /&gt;Carl also mentioned &lt;a href="http://wurfl.sourceforge.net/"&gt;WURFL.&lt;/a&gt;  WURFL is an online open source free xml database containing a list and description of nearly every mobile device on the market.  A very valuable research tool.&lt;br /&gt;&lt;br /&gt;Carl now gave the floor to Francesco Rovetta, director of ebay mobile commerce.  Ebay has one of the most successful mobile websites.  The goal of developing mobile ebay was to make using the site as easy as making a phone call.  I'd say they achieved that goal.  Their native app for the iPhone is also very successful, in fact it's top rated in the Lifestyle App Store category.  How have they measured the success of their mobile website?  Well, Francesco indicated that users who bid on an item from their mobile device are twice as likely to win the auction.  He stressed that when designing for a mobile site, never lose site of user experience.  Provide the fewest  screens and clicks possible, reduce complexities and distractions for the user, and be sure to consider hardware and speed constraints.&lt;br /&gt;&lt;br /&gt;Primary lesson learned from ebay's mobile forays:&lt;br /&gt;Provide a consistent experience across different Internet touch points (whether desktop, mobile, or native apps)&lt;br /&gt;&lt;br /&gt;Ebay has separate development teams for their desktop and mobile websites.  Additionally, the use cases provided on the mobile site are a very small subset of that on the desktop version of the site.  For instance, new users cannot register on ebay's mobile site.&lt;br /&gt;&lt;br /&gt;Hardest problem for ebay (and probably many other companies): Determining the best desktop features to mobilize.&lt;br /&gt;Unfortunately Francesco didn't suggest any techniques for answering this question.&lt;br /&gt;&lt;br /&gt;Next, Michael Neidhofer, the CEO of Netbiscuits presented on ...........  Netbiscuits!  I'm going to keep this brief because I really hate when presenters use a conference as a channel for a product pitch.  In fact, I see it as very similar to how presidential candidates use national debates to simply rant about their platforms on national TV rather than actually answer the posed questions.  Enough of that, Netbiscuits is a platform for mobile development.  It seems ok.  I haven't developed on it, nor have I really used many websites that are built on it, so I won't pass too much judgement.  Probably the most insightful thing Michael said was, when designing for mobile, focus explicitly on the use case you're addressing (meaning, pick the use cases!  Don't just design a mobile version of your website!).&lt;br /&gt;&lt;br /&gt;Overall, an impressive morning.  I'm looking forward to the rest of the conference.  Next, I'll discuss the two keynotes of the day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-5114462578184240588?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/5114462578184240588/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=5114462578184240588' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5114462578184240588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5114462578184240588'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/mobile-internet-world-day-1-morning.html' title='Mobile Internet World - Day 1 - Morning'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-500465039832652500</id><published>2008-10-21T10:27:00.000-04:00</published><updated>2008-10-21T10:29:47.816-04:00</updated><title type='text'>Most comfortable conference</title><content type='html'>The Mobile Internet World conference has done a great job with their seating in the sessions.  The seats are not packed in, chairs are at tables, there is very fast wifi (probably provided by the Boston Convention Center, but reliable and fast none the less), and power strips for plugging in laptops.  Way too many conferences lack these simple amenities.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-500465039832652500?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/500465039832652500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=500465039832652500' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/500465039832652500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/500465039832652500'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/most-comfortable-conference.html' title='Most comfortable conference'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-3314116558031596860</id><published>2008-10-21T09:54:00.001-04:00</published><updated>2008-10-21T09:55:50.761-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><title type='text'>Attending Mobile Internet World in  Boston</title><content type='html'>I'm attending the Mobile Internet World conference in Boston, MA for the next three days.  I'll blog extensively about the conference after each day.  I find it's too time consuming to try and blog midsession during the conference.&lt;br /&gt;&lt;br /&gt;Here's the conference's web page&lt;br /&gt;&lt;a href="http://www.mobilenetx.com/"&gt;http://www.mobilenetx.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-3314116558031596860?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/3314116558031596860/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=3314116558031596860' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/3314116558031596860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/3314116558031596860'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/10/attending-mobile-internet-world-in.html' title='Attending Mobile Internet World in  Boston'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-7312325778408486346</id><published>2008-05-27T15:13:00.000-04:00</published><updated>2008-05-27T15:16:40.178-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google gdd08'/><title type='text'>Google Developer Day 2008</title><content type='html'>I'm at the airport waiting for my flight to San Francisco.  A colleague of mine and I will be attending Google Developer Day 2008 tomorrow and the day after.  The official site is:&lt;br /&gt;&lt;a href="http://code.google.com/events/developerday/2008/"&gt;http://code.google.com/events/developerday/2008/&lt;/a&gt;&lt;br /&gt;Instead of posting here, Karun and I will be posting our thoughts at a blog dedicated to the conference.  You can find it here:&lt;br /&gt;&lt;a href="http://googleconference.blogspot.com/"&gt;http://googleconference.blogspot.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-7312325778408486346?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/7312325778408486346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=7312325778408486346' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/7312325778408486346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/7312325778408486346'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/05/google-developer-day-2008.html' title='Google Developer Day 2008'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-8888462797631724152</id><published>2008-04-09T21:15:00.000-04:00</published><updated>2008-04-09T21:33:40.562-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gartner search lucene'/><title type='text'>Gartner Emerging Trends - The Future of Search in the Post-Google Era</title><content type='html'>Today was my first day at the Gartner Emerging Trends conference.  The first session of the day was titled "The Future of Search in the Post-Google Era."  Overall, an informative presentation.  A couple of themes coming from the talk were that IT shops should recognize that there may very well be a need to use multiple search engines within the organization.  Often, picking a single search engine to fit all your needs may increase time to market for new applications requiring search capabilities.  Additionally, a single search engine may force you into some corners and require compromises in the resulting applications.  Instead, my spending some more money initially on a couple of search engines to complement each other, you'll reap the benefits down the road, and ultimately provide better search results to the users.&lt;br /&gt;&lt;br /&gt;Another interesting metaphor presented was that of relating the searching a search engine does with an ant, rather than a spider.  A spider (in the context of web search) determines which information is relevant to a query term by "crawling" over the content on the web.  The ant metaphor, related to search, is more focused on how ants (the insects) communicate with each other by leaving trails of information related to the particular path.  For instance, if an ant finds a trail to a food source, it will leave chemical traces along the path for subsequent ants to find, and know that the path leads to a food source.  Cutting edge search engines are doing similar things related to the data that they find.  For instance, if a user searches for "firm" and ultimately clicks a link related to a mattress sale (ya know, a firm mattress), the search engine will capture this and remember for future searches, that the user may be more interested in mattresses, than attorney firms.&lt;br /&gt;&lt;br /&gt;Lucene, an open source search tool, was briefly recognized as a useful tool, but it was recommended to adopt with caution.  The basis for this recommendation was primarily due to the fact that it's nothing more than a library of APIs to help index content.  Usually, application teams have to do a lot of work around it to get to the desired endpoint.&lt;br /&gt;&lt;br /&gt;Another random metric that was new to me, on average, search engines only receive 1.7 words in the query.  Incredible, right?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-8888462797631724152?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/8888462797631724152/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=8888462797631724152' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8888462797631724152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8888462797631724152'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/04/gartner-emerging-trends-future-of.html' title='Gartner Emerging Trends - The Future of Search in the Post-Google Era'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-8814005392503024114</id><published>2008-02-01T15:34:00.000-05:00</published><updated>2008-02-01T16:41:04.899-05:00</updated><title type='text'>OEM - Balancing Control and Innovation</title><content type='html'>Presenter: Michael Ogrinz, Principal Architect, Global Markets Technology, Bank of America Securities, LLC&lt;br /&gt;&lt;br /&gt;architect role is liason between business and IT, get to work with technology but don't have to worry abbout 2am support calls&lt;br /&gt;Showed the Froogle example with rebates&lt;br /&gt;Ease of Use = Business Value, who cares about the exact definitions?&lt;br /&gt;Example at BOA - people joining conference calls, mashing up data from AT&amp;amp;T call center, whitepages.com to show who is on the conference calls&lt;br /&gt;When bringing in new tech at BOA, it sounds like products go through levels of acceptance, such as "emerging"&lt;br /&gt;They'll never use a mashup to broker a trade, but they would use mashups to quickly prototype how the UI should look for these systems&lt;br /&gt;Generation Y vs Generation BabyBoomers&lt;br /&gt;Leverage mashups for dashboards, discovery (of new ways to relate data), usability (quick testing of new UIs), application monitoring (quick, not really reliable, but useful in some circumstances)&lt;br /&gt;Drawbacks: regulatory for who provides the data, brittle (who provides the SLA?),&lt;br /&gt;SIFR - product for helping to secure mashup data so it doesn't get reused where you don't want it to be, basically renders the sensitive data as images&lt;br /&gt;&lt;br /&gt;----&lt;br /&gt;WSO2 Mashup Server Architecture, Apache licensed, make money from support and training.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-8814005392503024114?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/8814005392503024114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=8814005392503024114' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8814005392503024114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8814005392503024114'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-balancing-control-and-innovation.html' title='OEM - Balancing Control and Innovation'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-2503544358143820116</id><published>2008-02-01T15:02:00.000-05:00</published><updated>2008-02-01T15:34:28.059-05:00</updated><title type='text'>OEM - The Right Approach</title><content type='html'>Presenter: Bob Buffone, Chief Architect, NexaWeb&lt;br /&gt;&lt;br /&gt;What is a mashup? &lt;br /&gt;Why mashup?  Productivity, agility, efficiency&lt;br /&gt;Everyone can be a user of mashups&lt;br /&gt;Does the creator have to be in IT or not?&lt;br /&gt;Need to define what people are good at... creating content, consuming content&lt;br /&gt;making decisions&lt;br /&gt;Evolution or Revolution?  Probably an evolution from SOA and RIA&lt;br /&gt;Programmable Web - largest inventory of the mashups available&lt;br /&gt;Downfall of mashup market - there are really no standards&lt;br /&gt;Things to consider if you were to develop a Mashup Servers - cxn to SOA governance, hot deployable widgets, integration w authentication, role-based access, federated mashup repository, handling portal users&lt;br /&gt;Steps to success - production (need services to feed into the mashup, leverage companies like kapop, mashery, strikeiron), consumption (look at complete platforms, standards, open, mission critical), proof of concepts&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-2503544358143820116?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/2503544358143820116/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=2503544358143820116' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/2503544358143820116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/2503544358143820116'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-right-approach.html' title='OEM - The Right Approach'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-5183977460412833134</id><published>2008-02-01T14:33:00.001-05:00</published><updated>2008-02-01T15:00:49.473-05:00</updated><title type='text'>OEM - Web Services Management Infrastructure</title><content type='html'>Presenter: Oren Michels, CEO, Mashery&lt;br /&gt;&lt;br /&gt;How easy is it for two companies to partner and get a beneficial work relationship started?&lt;br /&gt;Mashery is designed to help with this, particularly for solutions in which are independent of the IT organization&lt;br /&gt;Facebook as a reverse API - as long as you code an API to their definition, they'll distribute your app to millions of people&lt;br /&gt;Would we ever want to open our API to external clients?&lt;br /&gt;An open is all about business, not data (what does this mean?)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-5183977460412833134?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/5183977460412833134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=5183977460412833134' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5183977460412833134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5183977460412833134'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-web-services-management.html' title='OEM - Web Services Management Infrastructure'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-3323344793970606115</id><published>2008-02-01T14:05:00.000-05:00</published><updated>2008-02-01T14:32:39.449-05:00</updated><title type='text'>OEM - Delivering Data as a Service</title><content type='html'>Presenter: Bob Brauer, CEO, President and Co-Founder StrikeIron&lt;br /&gt;&lt;br /&gt;Overview of StrikeIron, "Like is easy, data is hard."&lt;br /&gt;State of external data today: authentication, different development key structures, SOAP headers with email address, ip address throttling&lt;br /&gt;Business models and their associated data are all different, how can we reconcile these differences?&lt;br /&gt;Presentation is still focusing around StrikeIron....uggg&lt;br /&gt;StrikeIron intends to simplify the details around consuming a lot of different backends&lt;br /&gt;Be aware of the context by which you describe mashups to the business so they understand the benefit, rather than get scared away&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-3323344793970606115?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/3323344793970606115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=3323344793970606115' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/3323344793970606115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/3323344793970606115'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-delivering-data-as-service.html' title='OEM - Delivering Data as a Service'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-8339145497666619841</id><published>2008-02-01T13:30:00.000-05:00</published><updated>2008-02-01T14:05:13.226-05:00</updated><title type='text'>OEM - Building the Future of Enterprise Mashups</title><content type='html'>Presenter: Scott Feldman, Senior Director, Global Customer Communities, SAP Americas, Inc.&lt;br /&gt;&lt;br /&gt;Must be careful about using mashups and consider IP laws, especially when considering other people's data or sites&lt;br /&gt;In the enterprise sense of things, must balance governance with freedom (both have their place)&lt;br /&gt;Enterprise service - bringing together disparate backends using a tool that till allows them to be loosely coupled&lt;br /&gt;Business Network - what can be done from a creative perspective from the user base&lt;br /&gt;SAP CEO one of the biggest proponents of value networks&lt;br /&gt;Business leaders generally are not driving mashup development&lt;br /&gt;mashups are part of a broader social context of Webb 2.0 leverage power of the net to augment collaboration and communication among individuals&lt;br /&gt;SOBA apps are rooted in business context&lt;br /&gt;Enterprise SOA delivers flexible IT resources to meet continually changing business needs&lt;br /&gt;Users are the ones developing solutions with mashups, where with SOA IT is the one developing the solutions&lt;br /&gt;What is the difference in definition between SOA and Mashups?&lt;br /&gt;Example App - an entire application based on mashup technologies that allowed power companies to view information in Google Earth.  Better view than in an table&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-8339145497666619841?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/8339145497666619841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=8339145497666619841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8339145497666619841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8339145497666619841'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-building-future-of-enterprise.html' title='OEM - Building the Future of Enterprise Mashups'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-8381722061743605080</id><published>2008-02-01T11:48:00.000-05:00</published><updated>2008-02-01T12:34:49.855-05:00</updated><title type='text'>OEM - Keynote, Mashups are here</title><content type='html'>Presenter: Rene Bonvanie, Serena Systems, Senior VP of Worldwide Marketing, Partners and Online Services&lt;br /&gt;&lt;br /&gt;There will be no product pedaling in this presentation&lt;br /&gt;We're in the infancy of mashups&lt;br /&gt;Mashups may already exist, but just not recognized as a solution to these problems&lt;br /&gt;Can't silo the people who innovate, and the people who must use this innovation&lt;br /&gt;Is IT the sole source of IT innovation?  Probably not&lt;br /&gt;SOA problem - like building a currency that can't be used outside of IT&lt;br /&gt;The more we inhibit people, the more people will find suboptimal solutions like spreadsheets and SharePoint, rather than truly innovate&lt;br /&gt;Must foster innovation throughout your employee base&lt;br /&gt;Innovation prospers in times of tight budgets, we must find out ways to do things for much cheaper&lt;br /&gt;The more money humans have, the less innovative they become and the more wasteful they are&lt;br /&gt;Similar to Facebook, let's use SAP, PeopleSoft, CRM system to create a mashup (a la Facebook application) that helps us expand or better understand our customer network&lt;br /&gt;Provide a platform for innovation, expand the general definition of mashups to include business (processes and users)&lt;br /&gt;Influence executives about how they can use mashups to propel business growth&lt;br /&gt;Example mashups: prediction markets, industry associations based on this data&lt;br /&gt;Innovation vs Governance: I want to innovate without asking for permission vs I'm on the hook for security, reliability, and compliance&lt;br /&gt;This is a natural imbalance in any organization&lt;br /&gt;Innovation side: automate business processes, connect existing systems, design user interactions, deploy without infrastructure, use without worry.  Notice that none of these aren't indicative of huge new applications, but a little bit of this and a little bit of that&lt;br /&gt;Governance side: expose services securely, govern mashups transparently (versioning and rollback, deployment privileges, approvals &amp;amp; notifications), fine grained security, collect detailed audit information&lt;br /&gt;Mashups are not a development or coding platform, but instead a type of artwork&lt;br /&gt;There's no way to determine if there's a facebook application available with the functionality that you want (for instance using SAP and salesforce.com to run a credit check on a company)&lt;br /&gt;There has to be a strong collaborative relationship between IT and the business for mashups to work.  If the end user doesn't want them, they simply won't be used.  If IT doesn't want to open up systems, then the end users will be frustrated that they aren't able to access the data&lt;br /&gt;The need for mashups cannot be generated solely from IT&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-8381722061743605080?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/8381722061743605080/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=8381722061743605080' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8381722061743605080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8381722061743605080'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-keynote-mashups-are-here.html' title='OEM - Keynote, Mashups are here'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-757783205507012459</id><published>2008-02-01T11:06:00.000-05:00</published><updated>2008-02-01T11:47:31.906-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mashup'/><title type='text'>OEM - Mashing up Networks</title><content type='html'>Presenter: Patti Anklam, Author,  Consultant, Hutchinson Associates, Author of &lt;a href="http://www.amazon.com/Net-Work-Practical-Creating-Sustaining/dp/0750682973/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1201882473&amp;amp;sr=8-1"&gt;"Net Work"&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;How do you want to mashup a network?&lt;br /&gt;Purpose of her presentation - understand how mashups can help networks grow and prosper&lt;br /&gt;Networks are the medium for individual and organizational fulfillment (communities, church networks, etc)&lt;br /&gt;Network's Purpose: Falls into one of five categories, mission, business, idea, learning, personal&lt;br /&gt;Network's Style: What is it like to be in this network?  What does it look like?  What are the cultural norms?  How is it led?&lt;br /&gt;"Let me describe my network."  (Then out comes the org chart) - Is this really the best way to describe it?&lt;br /&gt;Analyzing your network (not org chart) can help bring out thoughts about external contacts that may not be obvious from the network&lt;br /&gt;ONA: Organizational network analysis - often referred to by more generic term, social network analysis.  Basically just documenting a view of personal interactions among individuals&lt;br /&gt;Benefit of network analysis: are those people with a ton of connections leaving the company?&lt;br /&gt;How do we get this data?  Observe how emails flow within the organization (drawback: we don't really know the logical contents of the email).&lt;br /&gt;Microsoft's investment in Facebook - intended use is to observe the relationship's between people, not really targeted advertising&lt;br /&gt;Creating a social graph isn't that hard, but it's associating value of the relationships contained there&lt;br /&gt;VNA; Value Network Analysis - view of the web of relationships that generates economic or social value.  Requires physical access to the people, can't really automate the collection of this data&lt;br /&gt;Microsoft has such a heavy footprint in the workforce via the software systems people use (Windows, etc), yet they missed the boat on including builtin analytics systems&lt;br /&gt;What would we want in a network mashup?  But also keep privacy, superficiality, accessibility&lt;br /&gt;OpenSocial - mashing up people and technology, hammer home the context of role in a network&lt;br /&gt;&lt;a href="http://www.byeday.net/weblog/networkblog.html"&gt;http://www.byeday.net/weblog/networkblog.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.theappgap.com"&gt;http://www.theappgap.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-757783205507012459?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/757783205507012459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=757783205507012459' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/757783205507012459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/757783205507012459'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-mashing-up-networks.html' title='OEM - Mashing up Networks'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-8980066231332609666</id><published>2008-02-01T10:19:00.000-05:00</published><updated>2008-02-01T10:53:33.594-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mashup'/><title type='text'>OEM - Crossing the Barriers of Adoption</title><content type='html'>Presenter: Sam Ceccola, North America  CTO of Capgemni&lt;br /&gt;&lt;br /&gt;We don't want mashup technology going the way of SOA, adoption is dropping&lt;br /&gt;What customers got with SOA didn't live up to what they thought they were getting with SOA&lt;br /&gt;Drucker's Seven Sources of Innovation  - ?&lt;br /&gt;Governance and Management - personalize, differentiate, organize, comply&lt;br /&gt;Barriers to crossing the divide - security vs trust, information overload vs the creation of knowledge, the aging workforce, finding the novelty vs marketing to the masses, a successful implementation strategy&lt;br /&gt;Instead of locking a system that you have to be granted access to, instead, grant everyone access to the system but keep careful watch on them, and as soon as someone does something wrong slap the handcuffs on them (government A-Space program to change their security for the analytic community to leverage Web 2.0 technology)&lt;br /&gt;Can this work in the financial industry?&lt;br /&gt;Spectrum of "Unique &amp;amp; Value" to "Commodity &amp;amp; Cost"  Where on this pendulum do the financial industries lie?&lt;br /&gt;Demographics of today's workforce is U-shaped, one side is 40+, one side is 30-, and then a little between 30 and 40&lt;br /&gt;If the governance walls are maintained, a companies workforce will lose out on the younger crowd if the new technology is not adopted&lt;br /&gt;How can we combine a company's org chart with the actual social networks contained within it that actually represent how the business gets done&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-8980066231332609666?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/8980066231332609666/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=8980066231332609666' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8980066231332609666'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8980066231332609666'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-crossing-barriers-of-adoption.html' title='OEM - Crossing the Barriers of Adoption'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-8103280906787507094</id><published>2008-02-01T09:46:00.001-05:00</published><updated>2008-02-01T10:55:54.466-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mashup'/><title type='text'>OEM - The Language of Enterpise Mashups</title><content type='html'>The Language of Enterprise Mashups&lt;br /&gt;Presenter: John Crupi, CTO of JackBe&lt;br /&gt;&lt;br /&gt;JackBe, founded in 2003 as an Ajax company, and repositioned the company as an enterprise mashup company&lt;br /&gt;Do mashups enable users to control their own software's functionality?  Almost abstracting the actual development into a point and click interface for creating the mashup&lt;br /&gt;Gartner Top 10 Strategic Technology Areas: Mashups at #7&lt;br /&gt;Incoming workforce - grow up on myspace, gmail, facebook, do it yourself, don't like to conform, born after 1977, expect to be paid more, expect to have flexible work schedule, expect to be promoted within a year, expect to have access to state of the art technology&lt;br /&gt;Gen Y - doesn't want a corporate portal, instead they want to customize their entire experience (a la iGoogle of PageFlakes)&lt;br /&gt;Collaboration Example - Nintendo DS with 8 year olds and their networking technology&lt;br /&gt;Demo&lt;br /&gt;Everything in an enterprise is authenticated and authorized with each request, but the key with enterprise mashup is mixing external free data, with proprietary and secure internal data&lt;br /&gt;Product handles the big 4 - RSS, REST, WSDL for Silk, Databases, and web clipping&lt;br /&gt;Two parts of mashup - the data part, and the UI part&lt;br /&gt;Value the fact that the UI of the mashup should be reusable and portable.  It shouldn't matter that the mashup is in a portlet, or contained in someone's website, even if it's only internal to a company&lt;br /&gt;Should there exist a standard for mashups such that they are wrapped in a reusable abstract way?&lt;br /&gt;Tomorrow's Data-driven web - integration of data happens at the edge of the server, no longer in the client browser.  This data is moved outside of the firewall&lt;br /&gt;Forced Mashup 1.0 - The practice of collaborating on a spreadsheet via email, an outdated and error prone process.  There is no governance on the data.&lt;br /&gt;Enterprise Mashup Characteristics - tag/shared/search-able, user-driven, dynamic/ad-hoc, UI (mashlet) accessible.   The IT people want to wrap this data with APIs, secure it, drive it from the server,&lt;br /&gt;Web 1.0 Tiers - presentation, business, integration&lt;br /&gt;Web 2.0 Tiers - presentation, mashups, business, integration&lt;br /&gt;Mashups shouldn't care where they are shown&lt;br /&gt;Demo #2 - JackBe Wires - Tibco like GUI for wiring data together to eventually be shown as a mashup, looks interesting&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-8103280906787507094?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/8103280906787507094/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=8103280906787507094' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8103280906787507094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8103280906787507094'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/oem-language-of-enterpise-mashups.html' title='OEM - The Language of Enterpise Mashups'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-453692778210190896</id><published>2008-02-01T09:10:00.000-05:00</published><updated>2008-02-01T10:55:28.081-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mashup'/><title type='text'>OEM - Understanding the value and applying to business</title><content type='html'>Presenter - Stefan Andreasen, Founder of Kapow&lt;br /&gt;&lt;br /&gt;Kapow is a .com survivor&lt;br /&gt;250+ customers across US, Asia, and Europe&lt;br /&gt;Partnerships with Oracle, IBM, BEA, Attachmate, FAST, EMC/Documentum&lt;br /&gt;Products - Kapow Mashup Server 6.2 - 8 years in the making&lt;br /&gt;OpenKapow - free version, but catch is that you have to share everything you do&lt;br /&gt;What is a mashup? Comes much more from the situation in which it was created, than the technology used to create it, we're already doing it!  It's just an evolutionary thing, we finally put a name to it, can be management data mining, business reports, price comparison, rss feeds.  An application, dashboard, spreadsheet, portlet, widget which is combining multiple data sources to create new insight, business decision, intelligence, and additionally the situation in which the mashhup is created is teh most significant differentiator for being a mashup (self service, adhoc, sharable, collaborative, distributed, automation of manual process, comes from the long talk of business&lt;br /&gt;Systematic Projects for conservative reliability vs opportunistic projects for competitive agility&lt;br /&gt;Systematic Projects for conservative reliability - old way of IT, doesn't give us much these days, this is just :running the machinery"&lt;br /&gt;opportunistic projects for competitive agility - biggest opportunity for ROI, especially from mashups, this is where we "create the value"&lt;br /&gt;Mashup can be presented as: portlet, web application (housing maps), spreadsheet, rss feed, smartphone&lt;br /&gt;Data can come from competitors, pricing, market data, reputation, customers, and suppliers (which is all freely available on the web!)&lt;br /&gt;Kapow - two versions either one that will run inside your firewall, or another that will be released soon&lt;br /&gt;Typical mashup - Google Maps and craigslist data in one view&lt;br /&gt;Business mashup - BP oil rig warning system in Gulf of Mexico, create a warning system using five free web sites to show oil rigs on a map with weather, rig names, water temperature, and send alerts via text messages to a cell phone&lt;br /&gt;Core data vs Intelligence data - breaking up the data layer into two pieces&lt;br /&gt;Core data - private, systematic, structured, subscribed&lt;br /&gt;Intelligence data - public, unstructured, knowledge, often no standard API or feed, and hard to get to (this are kind of like the wild websites)&lt;br /&gt;Only the largest free websites have a public API, most websites don't, so how can we access the data on these websites to mash it up?&lt;br /&gt;#1 obstacle is getting access to this raw data, this is where Kapow's product comes into play&lt;br /&gt;Kapow's Product Family - Portal Content Edition, data collection edition, web 2.0 edition, content migration edition (ETL for the web)&lt;br /&gt;OpenKapow - 3500 users&lt;br /&gt;Transactional mashup - When creating an account in Facebook, if you already have a LinkedIn account, you can provide your LinkedIn credentials to Facebook and they'll suck you information from there&lt;br /&gt;Demo - create an RSS feed of information on a certain stock based on data returned from Google Blog Search.  Kapow was primarily a GUI in which you interact with, kind of like a browser in which you specify the area of the screen to capture.  Seemed like a lot of manual work just for an RSS feed.  Can't TIBCO do this for internal data from the backend?  It got impressive when he service enabled the demo, and the data was ultimately fed live into a spreadsheet (from the web)&lt;br /&gt;So how fragile is this manner of "screen scraping?"  Since a website author can change their structure and potentially break someone's Kapow mashup.  This is apparently the most asked question from customers of Kapow, and the answer is that ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-453692778210190896?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/453692778210190896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=453692778210190896' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/453692778210190896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/453692778210190896'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/open-enterprise-20-mashups-stefan-of.html' title='OEM - Understanding the value and applying to business'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-3219723757822282897</id><published>2008-02-01T08:55:00.000-05:00</published><updated>2008-02-01T13:30:25.465-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mashup'/><title type='text'>Open Enterprise 2.0 Mashups - Introduction</title><content type='html'>Today I'm attending the Open Enterprise 2.0 Mashups Summit on in NYC.  I'll be posting a separate blog entry for each presentation.  I'll use "OEM" as a prefix for the titles of these posts so I can fit the actual name of the presentation there as well.&lt;br /&gt;&lt;br /&gt;SharePoint Site for the summit&lt;br /&gt;&lt;a href="http://colabria.sharepointsite.net/emu/default.aspx"&gt;http://colabria.sharepointsite.net/emu/default.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;John Maloney's Opening Remarks&lt;br /&gt;Intangible assets - the real wealth of individuals, nations, and ecosystems&lt;br /&gt;Value networks are dynamic system views of roles and relationships&lt;br /&gt;Value networks generate true wealth, prosperity and sustainable success&lt;br /&gt;Analysis and modeling is important in planning these networks&lt;br /&gt;These are not just business or IT specific networks, but apply to all areas of life (and science)&lt;br /&gt;First, understand the as is value network, how do you tap that intangible wealth?&lt;br /&gt;These value networks may be treated as ecosystems themselves&lt;br /&gt;smallest type of exchanges are tangible and intangible exchanges&lt;br /&gt;Tangible Exchanges -&lt;br /&gt;Intangible Exchanges -&lt;br /&gt;Business Analysis Methods - process, value network, social network&lt;br /&gt;Value networks look at : what's in the network, what's flowing, what's contained in those exchanges, move from a process mentality to a framework mentality (?)&lt;br /&gt;Goal is to have the intangibles working for you and making wealth&lt;br /&gt;----&lt;br /&gt;Mashups as the spreadsheet analogy, the data comes from somewhere else, we just let the user control how they slice it and dice it&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-3219723757822282897?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/3219723757822282897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=3219723757822282897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/3219723757822282897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/3219723757822282897'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/02/open-enterprise-20-mashups-introduction.html' title='Open Enterprise 2.0 Mashups - Introduction'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-152259296294846531</id><published>2008-01-12T17:00:00.000-05:00</published><updated>2008-01-12T17:32:14.964-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogger xml html markup'/><title type='text'>Why is Blogger so anti-markup?</title><content type='html'>Please offer me some suggestions for posting XML, HTML, and other markup in my blog posts.  As I found out in my previous post, Blogger is really stupid when trying to interpret any markup in the post.  My intention is that the markup isn't interpreted by the browser, but instead shown as code to the reader (see the build.xml excerpts below).  In Blogger's editor, I pasted the xml, and used the WYSIWYG editor to format it.  The results were devastating.  Both the xml became mangled, and the resulting html that Blogger generated to adjust the format of the text wasn't correct.  I ultimately had to change to the "Edit Html" view and change all the &amp;gt; and &amp;lt; characters to their encoded equivalents (ampersand-lt; and ampersand-gt;).&lt;br /&gt;&lt;br /&gt;How do you get around this problem in your blog?  I guess I could merely switch over to the "Edit Html" view full time, but then, what good is the WYSIWG editor?&lt;br /&gt;&lt;br /&gt;Stay tuned for more on Java code coverage...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-152259296294846531?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/152259296294846531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=152259296294846531' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/152259296294846531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/152259296294846531'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/01/why-is-blogger-so-anti-markup.html' title='Why is Blogger so anti-markup?'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-1242018321903322938</id><published>2008-01-09T07:22:00.000-05:00</published><updated>2008-01-12T17:32:36.747-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='emma java coverage programming development'/><title type='text'>Enough of Cobertura, introducing Emma - another Java code coverage tool</title><content type='html'>After fooling around with Cobertura for a couple nights, I got frustrated because I couldn't figure out how to filter out my unit tests being monitored for coverage.  Specifically, I had written the Cobertura ant targets to execute my suite of unit tests and monitor the coverage of the code.  When reporting the results, in addition to showing the which lines were covered from my application code, the report also showed which lines from the unit tests were covered as well.  I tried a multitude of different ways to try and filter out certain patterns of filenames from being reported, but nothing seemed to work.  I imagine I'll revisit Cobertura in the future, since I'd really like to get the results fed into a tool like QALab.  At the moment, QALab's website doesn't indicate that it supports output from Emma, only Cobertura (but there seem to be new feature requests under development for supporting Emma's format).&lt;br /&gt;&lt;br /&gt;Emma seems to be very similar to Cobertura under the covers.  Both tools do analysis and insert some markers into the compiled Java bytecode in order to monitor which lines of code are called during the coverage period.  Emma's website has a lot better documentation on getting a new user up and running.  With my work, I'm not even concerning myself with the command line Java execution of my code (does anyone even do this anymore besides college students writing simple programs?).  Instead I like to jump right to the documentation for integrating these tools with ant, primarily because most of my code already has ant build scripts written, and that's where I'd ultimately like to integrate these tools.  Also, some developers may use Emma to monitor coverage of test cases they're executing by hand, specifically QA type test cases from which they're clicking through the application.  I'm not worrying about this scenario either, I just want to focus on the unit testing coverage aspect.  To get Emma monitoring code coverage of your unit test cases from ant, at a high level you need:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;A JUnit suite that will execute all of your unit test cases&lt;/li&gt;&lt;li&gt;An ant taskdef referencing the Emma jar file to load its custom targets&lt;/li&gt;&lt;li&gt;A custom ant target for compiling your test cases&lt;/li&gt;&lt;li&gt;A custom ant target for running your unit test cases while Emma monitors it&lt;/li&gt;&lt;/ol&gt;The suite is all on you to write, so no need to cover that here.  The taskdef for Emma looks like this:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;&lt;br /&gt;  &amp;lt;!-- You'll need to define emma.home as a property pointing to the&lt;br /&gt;  directory where you extracted the Emma zip --&amp;gt;&lt;br /&gt;  &amp;lt;property name="emma.dir" value="${emma.home}/lib"&amp;gt;&lt;br /&gt;  &amp;lt;path id="emma.lib"&amp;gt;&lt;br /&gt;     &amp;lt;pathelement location="${emma.dir}/emma.jar"&amp;gt;&lt;br /&gt;     &amp;lt;pathelement location="${emma.dir}/emma_ant.jar"&amp;gt;&lt;br /&gt;  &amp;lt;/path&amp;gt;&lt;br /&gt;  &amp;lt;taskdef classpathref="emma.lib" resource="emma_ant.properties"&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The first couple lines just cleverly define some path stuff so we can reuse the variables elsewhere in our build.xml.  The last line here is the interesting part, it tells ant that one of the jar files on the emma.lib path contains a file called emma_ant.properties, which contains information for tasks that can be used from ant.  &lt;span style="font-weight: bold;"&gt;Troubleshooting point:&lt;/span&gt; If you later get an error regarding ant not being able to understand the custom emma tasks, then you most likely have a bug/typo in the above code snippet such that the Emma libraries aren't being referenced correctly.&lt;br /&gt;&lt;br /&gt;Next we'll define a general on/off property for enabling Emma (if you understand ant, you'll later see that this really isn't necessary, but you'll need to adjust future targets accordingly)&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;&lt;br /&gt;&amp;lt;target name="emma"&amp;gt;&lt;br /&gt;  &amp;lt;property name="emma.enabled" value="true"&amp;gt;&amp;lt;/property&amp;gt;&lt;br /&gt;&amp;lt;/target&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Next, we'll define the target for compiling our unit tests:&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;&lt;br /&gt;   &amp;lt;target name="compiletests"&amp;gt;&lt;br /&gt;       &amp;lt;javac destdir="web/WEB-INF/classes" source="1.5" target="1.5"&lt;br /&gt;           debug="true" deprecation="false" optimize="false" failonerror="true"&amp;gt;&lt;br /&gt;           &amp;lt;src path="${test.dir}"&amp;gt;&amp;lt;/src&amp;gt;&lt;br /&gt;           &amp;lt;classpath refid="compile.classpath"&amp;gt;&amp;lt;/classpath&amp;gt;&lt;br /&gt;       &amp;lt;/javac&amp;gt;&lt;br /&gt;   &amp;lt;/target&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;One thing you'll probably notice from this snippet is that I'm developing a web application.  I really haven't variablized my ant script completely at this point, that will come later when I try to replicate the script on a separate machine.  Nothing complicated, or even Emma specific, in this snippet, just compile my test cases, located in ${test.dir}&lt;br /&gt;&lt;br /&gt;Next, we'll actually execute the unit test suite and monitor their coverage.&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;&lt;br /&gt;   &amp;lt;target name="runtests" depends="compiletests"&amp;gt;&lt;br /&gt;       &amp;lt;emmajava fork="yes" enabled="true" libclasspathref="emma.lib"&lt;br /&gt;            classname="junit.textui.TestRunner" taskname="junit" failonerror="true"&amp;gt;&lt;br /&gt;            &amp;lt;arg value="mongo.AllMongoTests"/&amp;gt;&lt;br /&gt;            &amp;lt;classpath refid="compile.classpath"&amp;gt;&lt;br /&gt;                &amp;lt;filter includes="mongo.*" /&amp;gt;&lt;br /&gt;            &amp;lt;/classpath&amp;gt;&lt;br /&gt;       &amp;lt;/emmajava&amp;gt;&lt;br /&gt;   &amp;lt;/target&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This target will run the custom emmajava ant task (loaded from the earlier taskdef statement) which executes my unit test suite (class is mongo.AllMongoTests), run a filter such that only classes under the mongo package are monitored for coverage (otherwise you'll see stuff like how many times you called the junit.framework.TestCase class, and who cares about that?), and finally output the results into a file called coverage.html in the same directory as the build.xml.  Well the results don't end up exactly there, instead they end up in a subfolder to wherever build.xml is located called "coverage."  Of course, you can customize this by just changing the value of the "outfile" attribute, and absolute paths are supported.&lt;br /&gt;&lt;br /&gt;The html output of the tool is very pretty, although not as pretty as Cobertura (but it's just data).  In my next post, I'll show an example of the output.  Unfortunately, compiling and running ant all the time on your desktop gets a little slow.  It's better designed for integrating and building your application.&lt;br /&gt;&lt;br /&gt;In my next post I'll review EclEmma, a plugin for Eclipse which allows you to do all this within the context of your IDE with minimal configuration.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-1242018321903322938?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/1242018321903322938/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=1242018321903322938' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/1242018321903322938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/1242018321903322938'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/01/enough-of-cobertura-introducing-emma.html' title='Enough of Cobertura, introducing Emma - another Java code coverage tool'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-5929745029332838930</id><published>2008-01-06T22:57:00.000-05:00</published><updated>2008-01-12T17:32:52.124-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cobertura java coverage programming development'/><title type='text'>Cobertura - A tool to help you measure your Java unit test code coverage</title><content type='html'>If you've ever written unit test cases for any program language, you know how important it is to ensure that your test cases execute each line of code.  This is called code coverage.  The more your unit test cases exercise the logic in your application code, the less likely it is that a bug slips through your unit test cases.  On a large code base (common to most applications these days), it's hard to judge how effectively your coverage statistics.  There are various tools to help quantitatively measure the coverage of your unit test cases.  Such vendor tools that accomplish this are Parasoft's JTest, and Quest's JProbe.  But who wants to buy software?  I've been trying out this open source code coverage measurement tool called Cobertura.  So far I've only been using the ant tasks in combination with HTML reports.  The reports it produces are really nice and informative, even allowing you to drill down into each class such that you can view the source and actually see the number of times each line of code was called from your test suite.  Alternatively, red highlighting will call those lines with no coverage to your attention.  There's also a command line interface if you choose to execute it outside of your build.  Check it out here:&lt;br /&gt;&lt;a href="http://cobertura.sourceforge.net/"&gt;http://cobertura.sourceforge.net/&lt;/a&gt;&lt;br /&gt;Hopefully I get the initiative to post some examples of how to include it in your ant targets.&lt;br /&gt;&lt;br /&gt;Other tools that have my attention at the moment, and could very possibly surface in a future blog post include:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://cruisecontrol.sourceforge.net/"&gt;http://cruisecontrol.sourceforge.net&lt;/a&gt; CruiseControl and the whole continuous integration thing&lt;/li&gt;&lt;li&gt;&lt;a href="http://qalab.sourceforge.net/index.html"&gt;http://qalab.sourceforge.net/index.html&lt;/a&gt; QALabs' is a tool to show you trends over time of your code metrics&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.prweb.com/releases/2007/12/prweb591322.htm"&gt;http://www.prweb.com/releases/2007/12/prweb591322.htm&lt;/a&gt; Enterprise Mashups 2.0 Conference I'll be attending on February 1st&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-5929745029332838930?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/5929745029332838930/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=5929745029332838930' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5929745029332838930'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5929745029332838930'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2008/01/cobertura-tool-to-help-you-measure-your.html' title='Cobertura - A tool to help you measure your Java unit test code coverage'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-5938719407494565560</id><published>2007-06-05T22:16:00.001-04:00</published><updated>2007-06-05T22:58:04.136-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gdd07us'/><category scheme='http://www.blogger.com/atom/ns#' term='gdd07'/><title type='text'>Google Developer Day - Session 2 - A Computing System for the World's Information: A Look Behind the Scenes at Google</title><content type='html'>The second true session of the day (not including the keynote) was called "A Computing System for the World's Information: A Look Behind the Scenes at Google."  &lt;a href="http://code.google.com/events/developerday/mv-sessions.html#behind_the_scenes"&gt;This session, presented by Jeff Dean&lt;/a&gt;&lt;a href="http://labs.google.com/people/jeff/"&gt;,&lt;/a&gt; primarily focused on specific aspects of Google's infrastructure.  To summarize their systems' philosophy, build a large amount of cheap machines that are expected to fail, but write extremely reliable software to gracefully handle the failures and milk the hardware as much as possible.  By "cheap machines," I mean literally desktop grade hardware, no complicated expensive servers.    Mr. Dean joked that ultra-reliable hardware makes programmers lazy.  During the presentation, three key internally developed technologies were presented, GFS, MapReduce, and BigTable.  I don't plan on going into all the notes I have on these, in fact I don't understand them all myself, but here's some highlights.&lt;br /&gt;&lt;br /&gt;GFS is Google's internally developed file system specifically tuned to their unique requirements (did you really think that NTFS could store all the world's information?).  Some of these requirements include huge read/write bandwidth and reliability over thousands of cluster nodes.  By writing their filesystem from scratch, they can also ensure that it has the reliability necessary for the crappy hardware used.  The filesystem helps Google's 200+ clusters, some of which have up to 5000 machines.&lt;br /&gt;&lt;br /&gt;MapReduce is a library of code or "system used for expressing a way of computation such that a programmer must write the computation in a certain style," designed for processing lots of data.  The system defines two phases, a map phase and a reduce phase.  The map phase extracts relevant information from each record of the input, and the reduce phase collects the data together to produce the final output.  This technology is useful for batch processes, and helps solve problems in a standard way.  Thousands of programs at Google use this.  For other information, search Google for "MapReduce" or &lt;a href="http://labs.google.com/papers/mapreduce-osdi04.pdf"&gt;read this article.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;BigTable is another internally developed technology that Mr. Dean described as a higher level API than a filesystem, somewhat like a database, but not as full featured.  I understood this as a giant data structure to store and organize a ton of information.  Google's crawlers use BigTable&lt;br /&gt;to help index the vast about of information on the Internet.  BigTable is also used by a lot of other data heavy applications for their storage on GFS.  &lt;a href="http://labs.google.com/papers/bigtable-osdi06.pdf"&gt;Here's a paper Mr. Dean wrote on BigTable.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-5938719407494565560?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/5938719407494565560/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=5938719407494565560' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5938719407494565560'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/5938719407494565560'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2007/06/google-developer-day-computing-system.html' title='Google Developer Day - Session 2 - A Computing System for the World&apos;s Information: A Look Behind the Scenes at Google'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-8874984404051804</id><published>2007-06-05T20:51:00.000-04:00</published><updated>2007-06-05T21:34:40.693-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gdd07us'/><category scheme='http://www.blogger.com/atom/ns#' term='gdd07'/><title type='text'>Google Developer Day - Evening Reception</title><content type='html'>The best part of the day was the evening event at the Googleplex.  As I mentioned, the conference took place in San Jose, which is about 25 mins south from the Googleplex in Mountain View.  Google provided their renown commuter buses as free transportation between the convention center and their campus.  Here's the outside of one of the buses:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh5.google.com/image/obusek/Rl-oCqSLyCI/AAAAAAAAAUw/HOb-ENiSCs4/IMG_1029.JPG?imgmax=512"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh5.google.com/image/obusek/Rl-oCqSLyCI/AAAAAAAAAUw/HOb-ENiSCs4/IMG_1029.JPG?imgmax=512" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;And the inside:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh3.google.com/image/obusek/Rl-n8KSLx_I/AAAAAAAAAUY/RxuoUjEj_ZU/IMG_1028.JPG?imgmax=512"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh3.google.com/image/obusek/Rl-n8KSLx_I/AAAAAAAAAUY/RxuoUjEj_ZU/IMG_1028.JPG?imgmax=512" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;There is a giant fleet of these buses which provide free transportation for Google employees to and from work (they even have free WiFi Internet on them).  After arriving at the Googleplex, everyone was funneled into the central courtyard between all the buildings.  On the way there, we passed the personal swimming pools that have been posted all over the Internet.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://blog.outer-court.com/files/google-swimming-pool-large.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://blog.outer-court.com/files/google-swimming-pool-large.jpg" alt="" border="0" /&gt;&lt;/a&gt;Inside the courtyard, it was clear there was a party.  In fact, it felt more like a carnival than a corporate reception.  There were many white tents setup, each of which had a different type of food.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh6.google.com/image/obusek/Rl-nx6SLx6I/AAAAAAAAATw/MnRrPiP-hiY/IMG_1024.JPG?imgmax=512"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh6.google.com/image/obusek/Rl-nx6SLx6I/AAAAAAAAATw/MnRrPiP-hiY/IMG_1024.JPG?imgmax=512" alt="" border="0" /&gt;&lt;/a&gt;Check out this picnic table that also acts as a job posting service and a white board (where do they get those things?)!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh6.google.com/image/obusek/Rl-mt6SLxgI/AAAAAAAAATc/F6HEqn1q8z4/IMG_1020.JPG?imgmax=512"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh6.google.com/image/obusek/Rl-mt6SLxgI/AAAAAAAAATc/F6HEqn1q8z4/IMG_1020.JPG?imgmax=512" alt="" border="0" /&gt;&lt;/a&gt;After filling my stomach on all types of good food, I was able to convince one of the Googlers I met, named JP, to give me a personal tour of one of the buildings.  I really wanted to see how the software development areas were setup.  JP walked me through registering as a visitor, and we entered one of the buildings (I forget which exactly).  It's hard to summarize exactly what the insides of one of the buildings was like.  Of course the cube areas felt like office space, but there were plenty of open meeting areas decorated with a  similar feel to an Ikea display.  I managed to snag this picture of one of there conference rooms (those are two projectors mounted in the ceiling):&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh3.google.com/image/obusek/Rl-ndKSLxxI/AAAAAAAAASk/bykJ9uvARJE/IMG_0209.JPG?imgmax=576"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh3.google.com/image/obusek/Rl-ndKSLxxI/AAAAAAAAASk/bykJ9uvARJE/IMG_0209.JPG?imgmax=576" alt="" border="0" /&gt;&lt;/a&gt;Regarding the development stations themselves, I was able to see three different types: a typical cube, an agile island, and two person pod.  The typical cube was just that, a typical cube.  The "agile island" was a configuration of work stations that I felt was perfect for agile development.  Imagine a large open square of about eight work stations, with two in the middle.  The large amount of open space is very conducive to free conversation and thought.  The two person development pods were a sort of small office made from temporary glass walls.  There were two development stations in these pods.  Unfortunately I was not able to get pictures of these.&lt;br /&gt;After my mini-tour, we returned to the party.  Instead of hanging out in the courtyard, we moved into one of the buildings that were open to entertain the guests as well.  I thought I was walking into Dave n Busters downtown Philly than a corporate lobby.  There were arcade machines, pool tables, a slideshow running on a huge screen, and disco lights.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh3.google.com/image/obusek/Rl-nwKSLx5I/AAAAAAAAATo/joKfboAp1vg/IMG_1022.JPG?imgmax=512"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh3.google.com/image/obusek/Rl-nwKSLx5I/AAAAAAAAATo/joKfboAp1vg/IMG_1022.JPG?imgmax=512" alt="" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh5.google.com/image/obusek/Rl-ntqSLx4I/AAAAAAAAATg/yE7qX49adTA/IMG_1021.JPG?imgmax=512"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh5.google.com/image/obusek/Rl-ntqSLx4I/AAAAAAAAATg/yE7qX49adTA/IMG_1021.JPG?imgmax=512" alt="" border="0" /&gt;&lt;/a&gt;It wasn't until I went to the bathroom that I found one of the most best ideas Google had, TOTT (testing on the toilet).  In reading distance from any vantage point during a bio-break, developers can review techniques to better test their code!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh6.google.com/image/obusek/Rl-ny6SLx7I/AAAAAAAAAT4/lTzvNPswPdA/IMG_1025.JPG?imgmax=576"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh6.google.com/image/obusek/Rl-ny6SLx7I/AAAAAAAAAT4/lTzvNPswPdA/IMG_1025.JPG?imgmax=576" alt="" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh5.google.com/image/obusek/Rl-n0qSLx8I/AAAAAAAAAUA/mZzpqcE5G6U/IMG_1026.JPG?imgmax=576"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh5.google.com/image/obusek/Rl-n0qSLx8I/AAAAAAAAAUA/mZzpqcE5G6U/IMG_1026.JPG?imgmax=576" alt="" border="0" /&gt;&lt;/a&gt;Furthermore, I did a little poking around when I got home and found that all of these articles are available as PDFs online for other development shops to use!  Here's a couple links: &lt;a href="http://www.artima.com/forums/flat.jsp?forum=155&amp;thread=192883"&gt;http://www.artima.com/forums/flat.jsp?forum=155&amp;amp;thread=192883&lt;/a&gt; and &lt;a href="http://googletesting.blogspot.com/"&gt;http://googletesting.blogspot.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-8874984404051804?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/8874984404051804/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=8874984404051804' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8874984404051804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/8874984404051804'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2007/06/google-developer-day-evening-reception.html' title='Google Developer Day - Evening Reception'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2062038737175613469.post-6116375794199730815</id><published>2007-06-04T12:10:00.001-04:00</published><updated>2008-12-10T18:48:56.752-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gdd07us'/><category scheme='http://www.blogger.com/atom/ns#' term='gdd07'/><title type='text'>Google Developer Day - Overview and Keynote</title><content type='html'>Google Developer Day 2007 was a free conference provided by Google.  The conference was initially scheduled to happen at the Googleplex, but due to an overwhelming response of attendees, Google moved it to a larger venue, the San Jose Convention center.  This was somewhat disappointing because I was looking forward to spending the day at Google's headquarters.  The good news was that there was still an evening event scheduled at the Googleplex.  As I walked into the lobby of the convention center, the first thing I noticed was all the Google colored decorations.  Registration was split into three different tables separated by last name, A-I, K-Q, R-Z.  I'm not sure how Google decided on this split, but it didn't seem very efficient, my line (K-Q) was about 10 times longer than the others (but it did move quick)!  Here's a picture of the check-in desk:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_TShiXjd-XIY/RmQ55KSLyUI/AAAAAAAAAYA/iG-tkXLjFy8/s1600-h/IMG_1012.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_TShiXjd-XIY/RmQ55KSLyUI/AAAAAAAAAYA/iG-tkXLjFy8/s320/IMG_1012.JPG" alt="" id="BLOGGER_PHOTO_ID_5072242734501972290" border="0" /&gt;&lt;/a&gt;Elsewhere in the lobby were demo's of Google's Search Appliance and other products, foosball tables, pool tables, ton of free snacks, and a field of bean bag chairs.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_TShiXjd-XIY/RmQ-TaSLyWI/AAAAAAAAAYQ/zTKqufugL3c/s1600-h/IMG_1010.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_TShiXjd-XIY/RmQ-TaSLyWI/AAAAAAAAAYQ/zTKqufugL3c/s320/IMG_1010.JPG" alt="" id="BLOGGER_PHOTO_ID_5072247583520049506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_TShiXjd-XIY/RmQ-TKSLyVI/AAAAAAAAAYI/a5EqbaAV3so/s1600-h/IMG_1011.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_TShiXjd-XIY/RmQ-TKSLyVI/AAAAAAAAAYI/a5EqbaAV3so/s320/IMG_1011.JPG" alt="" id="BLOGGER_PHOTO_ID_5072247579225082194" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/profile?user=GoogleDeveloperDay"&gt;Here's a link to YouTube where Google posted videos of all presentations as they were recorded professionally.&lt;/a&gt;   During each time slot during the day, there were about six possible presentations one could attend, I tried to pick the most interesting or applicable to my work.  &lt;a href="http://code.google.com/events/developerday/mv-sessions.html"&gt;Here's a full list of all the sessions.&lt;/a&gt;   I'll post a different blog entry for each session I attended, some will be more extensive than others.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Opening Keynote - Jeff Huber - Vice President, Software Engineering&lt;/span&gt;&lt;br /&gt;While waiting for the keynote to begin, there was a repeating video playing demoing many applications built with Google technology, but not all necessarily built by Google.  Throughout the day they referenced a couple of them as good examples of how Google's technology could be used (I'll mention some later).  Mr. Huber's presentation highlighted what was to come throughout the day, as well as indicating that there were 1,500 developers attending the conference in San Jose, and that there were 160 Google Developer Day sessions to happen throughout the world (Google Developer Day happened in other cities internationally).  Everything, including food, was free (paid for by Google).&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh6.google.com/image/developerday/Rl8aoqaEomI/AAAAAAAAF8o/_65DxEXRNYc/MW2W2370.CR2.jpg?imgmax=912"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh6.google.com/image/developerday/Rl8aoqaEomI/AAAAAAAAF8o/_65DxEXRNYc/MW2W2370.CR2.jpg?imgmax=912" alt="" border="0" /&gt;&lt;/a&gt;Mr. Huber continued, explaining that Google Maps opened people's eyes in 2005 to AJAX and how web applications would be revolutionized.  Besides the rich client experience that AJAX enabled web applications to have, AJAX also enabled a way for developers to "mashup" pieces of functionality to extend to the original desired purpose.  The idea of mashups started when the community of developers reverse engineered the Google Maps code, and then combined the maps with other features such as mapping out a jogging route (&lt;a href="http://www.walkjogrun.net/"&gt;as provided by walkjogrun.net&lt;/a&gt;).&lt;br /&gt;Next, Mr. Huber described that the web application development is continually requiring less and less low level development, instead, developers merely reusing existing applications/infrastructures and merge them together (mashup or not) with code only existing at the high level.  Here's an example: if someone needed to make a website, no one ever starts by writing the code behind the web server, instead they may actually use a WYSIWYG editor to create the pages and the move them to an already existing hosting service.&lt;br /&gt;&lt;br /&gt;The presentation defined three stages towards contemporary development of a web application: integrate, reach, and build.  The integrate stage involves determining which data or existing services to combine for your application (check out the Google Mashup editor, an way to quickly and easily create a mashup with only a few lines of xml).  The reach stage is used to devise a way to drive traffic to your site.  Google advertised their Gadgets as a technique to do this.  Citing an example, the Pacman gadget, for iGoogle, &lt;span style="font-weight: bold;"&gt;successfully drove 6.7 million page views&lt;/span&gt; to the authors site in a week!  Finally, the build stage of web application development is when everything comes together into the fully functional web application in the &lt;span style="font-weight: bold;"&gt;fastest, best, and cheapest&lt;/span&gt; way.  Of course it's all good when your web application is running and people are visiting each day, but what happens if the web is not available?  In this case, web applications are useless because no one can actually use them!  Mr. Huber introduced Google Gears beta, a framework that developers may use to enable users a way to use web applications without a connection to the Internet!  In a nutshell, Google Gears leverages the fact RIA focused websites only ever need to contact the server when data is needed (read or write).  Why not download a batch of the data to keep locally if this would enable the web application without an Internet connection?  If new data is ever needed, or if data needs to be sent to the server, a local queue of changes is maintained for synchronization whenever the connection to the Internet (or whatever server) is restored.  The concept of Google Gears sounds promising, but the technology is still in its infancy (nowhere near ready for enterprise use).  It seemed that Google was using the conference as a channel for soliciting help for the open source model being used to develop the product (while a Google product, it is &lt;a href="http://www.opensource.org/licenses/bsd-license.php"&gt;BSD licensed&lt;/a&gt;).  Read more about Google Gears &lt;a href="http://gears.google.com/"&gt;here (http://gears.google.com/)&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;As Mr. Huber's presentation was concluding, he introduced a surprise guest, Sergey Brin (cofounder of Google).  Mr. Brin thanked everyone for attending and spoke briefly about the current "self sustaining" evolution of the Internet.  The Internet is not a sentient being on its own, but it's the result of hard work from many people.  These people are a key component of its evolution.  Regarding Internet search, Mr. Brin described that as good as Internet searching could become, it is only as good as the content on the Internet (and that would be nowhere without the people posting it).&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lh3.google.com/image/developerday/Rl8a-6aEpQI/AAAAAAAAGAw/oxYNFglhPn4/MW2W2478.CR2.jpg?imgmax=800"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px;" src="http://lh3.google.com/image/developerday/Rl8a-6aEpQI/AAAAAAAAGAw/oxYNFglhPn4/MW2W2478.CR2.jpg?imgmax=800" alt="" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2062038737175613469-6116375794199730815?l=javamagician.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://javamagician.blogspot.com/feeds/6116375794199730815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2062038737175613469&amp;postID=6116375794199730815' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/6116375794199730815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2062038737175613469/posts/default/6116375794199730815'/><link rel='alternate' type='text/html' href='http://javamagician.blogspot.com/2007/06/google-developer-day.html' title='Google Developer Day - Overview and Keynote'/><author><name>Andy</name><uri>http://www.blogger.com/profile/17169533423656992783</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_TShiXjd-XIY/RmQ55KSLyUI/AAAAAAAAAYA/iG-tkXLjFy8/s72-c/IMG_1012.JPG' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
