<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Bruno Fernandez-Ruiz</title>
	<link>http://www.olympum.com</link>
	<description>Analysis of Emerging Techno-Social Trends</description>
	<pubDate>Sun, 19 Oct 2008 18:55:51 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
	<language>en</language>
			<item>
		<title>Could the financial downturn be the end of Darwinism</title>
		<link>http://www.olympum.com/future/could-the-financial-downturn-be-the-end-of-darwinism/</link>
		<comments>http://www.olympum.com/future/could-the-financial-downturn-be-the-end-of-darwinism/#comments</comments>
		<pubDate>Sat, 11 Oct 2008 09:04:40 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Future]]></category>

		<guid isPermaLink="false">http://www.olympum.com/future/could-the-financial-downturn-be-the-end-of-darwinism/</guid>
		<description><![CDATA[Because that&#8217;s really what it is. Somebody that was not fitted and loosing big (aka Western Cultures) has just started a new game of Monopoly, and you and I are not getting any of the money in this new game. Some may call it the end of capitalism, but I would go even further, this [...]]]></description>
			<content:encoded><![CDATA[<p>Because that&#8217;s really what it is. Somebody that was not fitted and loosing big (aka Western Cultures) has just started a new game of Monopoly, and you and I are not getting any of the money in this new game. Some may call it the end of capitalism, but I would go even further, this is the end of Darwinism (and a prove that Hegel was looking at the past, and not the future like Marx wanted to see in it).</p>
<p>There are unknown consequences for any deep interventionist economic policy. Anybody who says so it&#8217;s either a fool or badly naive. But worse of all, intervention of this kind defeats the system as we know it, where the fittest survive.</p>
<p>Without intervention this crisis would have been a chance for those without debt to compete, i.e. the very poor.  All that we will see is further foreign investment from large sovereign funds, and that hardly benefits the poorest nations in the World.  I am very disappointed by our politicians lack of pro-activity and foresight.</p>
<p>We live in a culture that encourages risk, and hence competition and growth. But now we have simply wiped out the consequences of failure. The failed specimens survive, unlike what Darwin taught us &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/future/could-the-financial-downturn-be-the-end-of-darwinism/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Can search be entertaining?</title>
		<link>http://www.olympum.com/yahoo/can-search-be-entertaining/</link>
		<comments>http://www.olympum.com/yahoo/can-search-be-entertaining/#comments</comments>
		<pubDate>Wed, 20 Aug 2008 10:18:58 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Yahoo!]]></category>

		<guid isPermaLink="false">http://www.olympum.com/yahoo/can-search-be-entertaining/</guid>
		<description><![CDATA[Definitely! I just got completely blown out by Oamos. The search experience is fantastic. Images, videos, transitions and music are wonderfully inspiring. Ping from Artur Ortega.
]]></description>
			<content:encoded><![CDATA[<p>Definitely! I just got completely blown out by <a href="http://www.oamos.com/" title="Oamos">Oamos</a>. The search experience is fantastic. Images, videos, transitions and music are wonderfully inspiring. Ping from Artur Ortega.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/yahoo/can-search-be-entertaining/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Why Video-On-Demand Streaming in Airlines Sucks</title>
		<link>http://www.olympum.com/other/why-video-on-demand-streaming-in-airlines-sucks/</link>
		<comments>http://www.olympum.com/other/why-video-on-demand-streaming-in-airlines-sucks/#comments</comments>
		<pubDate>Tue, 19 Aug 2008 01:59:11 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Other]]></category>

		<guid isPermaLink="false">http://www.olympum.com/other/why-video-on-demand-streaming-in-airlines-sucks/</guid>
		<description><![CDATA[It&#8217;s rare to take a flight from British Airways or Virgin Atlantic where the Video-On-Demand system just works. It might be a problem only with UK airlines, but I presume this is a general issue across aviation.
Sometimes you are part of the folks in the plane for whom the system does not work. The crew [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s rare to take a flight from British Airways or Virgin Atlantic where the Video-On-Demand system just works. It might be a problem only with UK airlines, but I presume this is a general issue across aviation.</p>
<p>Sometimes you are part of the folks in the plane for whom the system does not work. The crew will normally start rebooting your seat, then the section, and then the whole plane. I guess they do so in hopes that the operating system running the streaming adheres to the same random rules as the one running on their desktop.</p>
<p>In case of an incident with the entertainment system, i.e. in every single flight, the crew keeps apologizing about not being able to fix the problem and continue performing reboots left and right. Reboots are seldom able to address the problem, and the only thing reboots achieve is general frustration, both from those without video, but mostly from those with video who see their programs shut down. Eventually, the crew settles down to multicasting a few movies.</p>
<p>Virgin Atlantic even has the courage to advertise Virgin Media Broadband and TV packages on a commercial playing before the movie. Enjoy this cool entertainment system (that does not work) at home just like you do in the plane. I am no marketing guru, but that sounds to me like a dumb ass campaign.</p>
<p>I&#8217;ve seen a few times a linux boot-up sequence on Virgin, and I&#8217;d be surprised if BA was not also using Linux. Most likely, they are both using VideoLAN against one or multiple streaming servers with network attached storage. For whatever reason, it&#8217;s the connectivity that fails, and the individual Linux workstations that fail to connect to the streaming server, or for the streaming server to be able to read the files from storage.</p>
<p>The reason to use attached storage is two-fold: cheaper, reliable and easier to update. But, guess what, wired networks don&#8217;t seem to be reliable on a plane (probably because of the high-frequency power lines). So here&#8217;s my advice folks: avoid the network (single point of failure). Here&#8217;s how.</p>
<p>Virgin Atlantic has around 100 movies on inventory, plus TV series, CDs and radio programs. I&#8217;d bet their total inventory at any given point in time is between 250Gb and 500Gb. Maybe the solution to use shared storage made sense years ago cost-wise, but today the cost per Gb has fallen so much that internal disk storage could make more sense. Specially since there are no availability requirements (if it fails, a simple swap fixes the issue).</p>
<p>They could get a 1Tb disk per seat and image (push on the ground) all disks with the OS, the video player plus and the full media library. Re-imaging will take a few hours, but the inventory only gets fully updated every 2 to 3 months. Every seat would become an autonomous and reliable processing unit with its own storage. And in case of failure, it would only cost $100 to swap disk and reboot one seat, something the crew could do in-flight. No apologies, no pissed off customers, no compensation.</p>
<p>So, guys, go and implement it, so that I don&#8217;t have to watch the beginning of The Oxford Murders from Alex de la Iglesia three times on my next flight.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/other/why-video-on-demand-streaming-in-airlines-sucks/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Enterprisey Architects</title>
		<link>http://www.olympum.com/architecture/enterprisey-architects/</link>
		<comments>http://www.olympum.com/architecture/enterprisey-architects/#comments</comments>
		<pubDate>Sun, 20 Jul 2008 07:50:46 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Architecture]]></category>

		<guid isPermaLink="false">http://www.olympum.com/architecture/enterprisey-architects/</guid>
		<description><![CDATA[No, it&#8217;s not a typo. I have been daring to write this for ages, but somehow I always refrained myself from doing it. But here it is, this post is about the propeller heads, the skyrocket scientists designing systems in the enterprise world (mostly in the financial services and telco world). Because guys, it&#8217;s time [...]]]></description>
			<content:encoded><![CDATA[<p>No, it&#8217;s not a <a href="http://en.wikipedia.org/wiki/Enterprisey#Criticisms" title="Enterprisey in Wikipedia">typo</a>. I have been daring to write this for ages, but somehow I always refrained myself from doing it. But here it is, this post is about the propeller heads, the skyrocket scientists designing systems in the enterprise world (mostly in the financial services and telco world). Because guys, it&#8217;s time to call it a day and move on. Time to stop building the <a href="http://en.wikipedia.org/wiki/Winchester_Mystery_House" title="Winchester House in Wikipedia">Winchester House</a>.</p>
<p>As background, I have recently been recruiting to backfil <a href="http://www.linkedin.com/in/remya" title="Remy Amouroux">Remy</a>, Yahoo!&#8217;s Chief Architect for Europe [and no, I am not looking any further]. It has proved to be a hell of a task. My mailbox and voicemail have been flooded with messages from agents and candidates. A pile of resumes to go through.</p>
<p>Most resumes are immediate rejects. Absolutely zero experience in online technologies. Do you apply for Yahoo! if you don&#8217;t have a clue about even building a site? WTF!??? And, err, where is your blog, buddy? This is not just <em>any</em> job.</p>
<p>Anyway, moving on to interviews. I called in a few guys with very solid resumes. Outstanding resumes actually. Tons of experience. Lots of technology expertise, masses of troops, managing huge budgets. Right, bring them in, I say.</p>
<p>On the interviews (so that you know) I don&#8217;t look at the resumes, <em>ever</em>. I could not care less, because you are allegedly supposed to be able to synthesize and I can read. So, expect to work hard at the interview. Rather, I&#8217;d love to see you design flickr, or Answers, or tell me how the frontpage could/would/should work, or, for fun, how you would liberalize the water supply system in the UK. I bring engineers on the room to discuss. They need your help, guidance, steering for making choices. Help them!</p>
<p>All I want to learn is that you can think beyond a Powerpoint and a bunch of theoretical ivory-tower diagrams. And you know, most often, candidates can&#8217;t. The large majority of candidates when going through the exercises just put a few boxes up and don&#8217;t actually get into what are the <em>hard</em> bits. And when challenged to think through them, they fail. I admit you might not know how to build our frontpage, but at least you should be able to appreciate the complexities during an interview.</p>
<p>The interesting thing is that all these candidates that fail have a common trait. They are the enterprisey architects (a few exceptions exist, like my good ol&#8217; friend Jeremy who is truly an enterprise architect). Enterprisey architects come with certifications, waving their TOGAF and Zachman willies. They operate so high-level that they ain&#8217;t got a fucking clue.</p>
<p>Enterprisey architects make the argument that architects don&#8217;t need to actually know the details (<em>I don&#8217;t code, </em>they say). First, there is a hell of a difference between coding and designing systems and you seem not to be able to design systems. Secondly I honestly think there is something seriously wrong with anybody who wants to be a technology geek and does not like programming languages <em>per se</em>. It&#8217;s like being a butcher and not liking meat. I&#8217;ll tell you what: if you are not obsessed by [technology|volumes], you are not a [technology|civil] architect.</p>
<p>An enterprise architect is the architect that looks at solving problems across the enterprise, not the department, or the business units, to leverage the synergies and lead towards the future-state architecture. [Don&#8217;t look this up, I just made this up].</p>
<p>An enterprisey architect is the architect that wants to be an enterprise architect but fails to engage with his customers, because he&#8217;s not capable of being detailed enough (business strategy detail, functional domain detail, applications and technology detail, and infrastructure detail).</p>
<p>And as I keep telling my guys, (enterprise) architecture is not about technology, it&#8217;s about people. You are expected to know the technology, mind you, but there are usually much more specialized engineers who need your steering for making choices (if they aren&#8217;t such experts in your organization, you should start by building your team), so that you can find the detail that is relevant. You are supposed to understand the bigger picture, and lead folks into doing the right choices, so that you are not only <em>doing things right</em>, but also <em>doing the right things</em>. Enterprise architects use their social networks to make technology changes happen.</p>
<p>Again, it&#8217;s not about technology, it&#8217;s about people. But you know your technologies, right?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/architecture/enterprisey-architects/feed/</wfw:commentRss>
		</item>
		<item>
		<title>what the iPhone is that Symbian isn&#8217;t</title>
		<link>http://www.olympum.com/mobile/what-symbian-is-not-that-the-iphone-is/</link>
		<comments>http://www.olympum.com/mobile/what-symbian-is-not-that-the-iphone-is/#comments</comments>
		<pubDate>Tue, 13 May 2008 09:52:25 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Mobile]]></category>

		<guid isPermaLink="false">http://www.olympum.com/mobile/what-symbian-is-not-that-the-iphone-is/</guid>
		<description><![CDATA[one of the key strategic questions that developers looking into creating successful mobile applications need to answer is the choice of platform. we see an increasing consumer demand for desktop-like rich applications on the phone, but somehow the promise of such applications remains undelivered. developers can chose between the smartphone centric OSes, Windows CE and [...]]]></description>
			<content:encoded><![CDATA[<p>one of the key strategic questions that developers looking into creating successful mobile applications need to answer is the choice of platform. we see an increasing consumer demand for desktop-like rich applications on the phone, but somehow the promise of such applications remains undelivered. developers can chose between the smartphone centric OSes, Windows CE and Symbian, or the desktop centric OSes, Linux and OS X. so which one should we chose to build those future desktop-like applications?</p>
<p>smartphone centric OSes are designed to address the limitations of the constrained mobile environment, while at the same time delivering a rich user experience. typical constraints range from input methods, battery and connectivity. let&#8217;s be clear, these are good phone OSe,s, and they make good phones. but interestingly, these are constraints that have started to go away, and are becoming largely irrelevant, if not already irrelevant.</p>
<p>mobile network connectivity now offers full TCP/IP stacks on always-connected phones under flat fee transfer rates. battery life on most new phones allows such stack to be always on without significantly affecting the batter life, and input devices such as the iPhone demonstrate that the paradigm can be changed for the best.</p>
<p>in contrast, desktop centric mobile OSes are not really designed for mobile environments, and mobile is just an add-on. where the smartphone centric OSes need to impose API limitations, the desktop centric OSes don&#8217;t impose almost any. where the smartphone centric OSes excel as phones, the desktop centric OSes tend to lack important features (the iPhone is a good computer but a really bad phone).</p>
<p>and the question really for developers starting now a new application is whether to develop for such phone-focused OSes, given the large market share, and hoping that they will be enhanced sometime in the future to become full OSes, or whether to go for desktop centric OSes, with currently a smaller market share, and hoping that the mobile features on the them are sufficient. in other words, what&#8217;s more likely to happen, a desktop centric mobile OS being enhanced to become better phones, or a smartphone centric OS being enhanced to become a better desktop?</p>
<p>the answer to this leaves within the OSes themselves. today, the iPhone is an excellent mobile computer based on the OS X, but it&#8217;s a really bad phone. however, the mach/bsd kernel, the quartz framework and the cocoa framework should make it relatively easy to add GPRS and UMTS to an iPhone. and possibly the only reason it&#8217;s not there is purely commercial, based on the current distribution deal with AT&amp;T.</p>
<p>in contrast, you can&#8217;t make a good desktop OS out of the smartphone centric OSes. they are simply crippled. i find it surprising to see how analysts overrate the symbian os. technically, symbian is a really unattractive and unproductive development platform to work with. commercially, it&#8217;s a fragmented market with three competing and somehow incompatible platform variants: nokia&#8217;s s60, sony-ericsson&#8217;s uiq, and ntt docomo&#8217;s moap.</p>
<p>from a technical standpoint, symbian has its own memory management and exception handling mechanisms which lead to a crippled and unfriendly C++-ish variant. symbian support for string handling is as bad as it gets, and even php does a better job! finally, writing complex interaction paradigms and network access is daunting: multi-threaded applications for symbian requires rocket scientists. and finally, and most importantly, the development environment is simply non-existent, mostly because of the custom C++ memory management and complex deployment process.</p>
<p>very sadly, java does not make a much better symbian. although language and tool support is excellent, the lack of uniformity on the platform itself, with MIDP 1.0 and 2.0, being implemented to different degrees by different vendors and by models, has resulted in tens of different APIs supported by some but not all phone models. it&#8217;s really hard and time-consuming to develop for java applications for symbian. either you create multiple variants of your application, or you cut down to the least common denominator. neither option is attractive from a developer standpoint.</p>
<p>windows ce suffers similar problems to symbian. the programming model is overly complex and based on the highly developer unfriendly win32 api. alike java, the .net compact framework has not been consistently adapted, so one ends up with multiple binary targets, that require separate code, debugging, testing, distribution and installation. a nightmare from a developer&#8217;s perspective. on the plus side, windows ce development environment is superb, including remote debugging abilities on the device itself. but overall, i discount windows ce as a no-go platform.</p>
<p>this really cuts it down to desktop centric OSes being a better choice for development going forward. that&#8217;s really between OS X and Linux. and i am picking OS X and the iPhone. here&#8217;s why.</p>
<p>as with anything linux, mobile linux is really many many things. different vendors have implemented things differently and are providing different stacks. some offer Qtopia, from Trolltech, some offer Gnome. then you have android, openzaurus, openmoko, &#8230; no one phone has a significant market penetration, and to develop for linux really requires multiple binary targets and API abstraction layers. again, it&#8217;s making things more complex than it ought to be.</p>
<p>in terms of kernel and integrated development environment, OS X is a much better platform. it&#8217;s a highly productive environment. but it&#8217;s proprietary to apple. which is good and bad. it&#8217;s good since you know what hardware and software you need to support. it&#8217;s bad since you are locked in, including for distribution.</p>
<p>but here comes the twist. developing a cocoa-based application for the iPhone is extremely easy, and given that Linux and OS X (mach/BSD) share so much in common, moving an iPhone application to a linux variant would not be any harder than moving between Gnome and Qt. good OO design should make it relatively easy.</p>
<p>in summary, iPhones features a robust and rich OS, OS X, a highly productive development environment, an aggressive market share growth, and lots of similarities with Linux. these are all good reasons to me to pick the iPhone as the target mobile platform of the future. i am not fully discounting linux however. the current issues with lack of significant market penetration could be overturn, specially in asia, and particularly in china.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/mobile/what-symbian-is-not-that-the-iphone-is/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Why facebook is just a game</title>
		<link>http://www.olympum.com/internet/why-facebook-is-just-a-game/</link>
		<comments>http://www.olympum.com/internet/why-facebook-is-just-a-game/#comments</comments>
		<pubDate>Fri, 02 May 2008 16:26:54 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://www.olympum.com/internet/why-facebook-is-just-a-game/</guid>
		<description><![CDATA[I keep saying that the web follows the pattern of the fashion industry. It&#8217;s about image, it&#8217;s about fun, it&#8217;s about entertaining.  Sure, you can also buy stuff and do useful things. But that&#8217;s what you have to do, not what you want to do.
That&#8217;s why  facebook is popular - it&#8217;s fun, it&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>I keep saying that the web follows the pattern of the fashion industry. It&#8217;s about image, it&#8217;s about fun, it&#8217;s about entertaining.  Sure, you can also buy stuff and do useful things. But that&#8217;s what you <em>have</em> to do, not what you <em>want</em> to do.</p>
<p>That&#8217;s why  facebook is popular - it&#8217;s fun, it&#8217;s about image, it&#8217;s about entertainment.</p>
<p>And now, to prove it,  a nice chart  <a href="javascript:void(0)" id="file-link-78" title="Facebook application breakdown." class="file-link image"></a><a href="http://flowingdata.com/2008/05/01/chart-of-the-day-a-breakdown-of-facebook-applications/" title="Facebook applications">for the breakout of Facebook applications</a>.</p>
<p><a href="http://www.olympum.com/wp-content/uploads/2008/05/app_breakdown3vq2vabv4x448s0sk080s8wwsazayxg50vkwk0g080ko8kw8s4th.jpeg" title="Facebook application breakdown."><img src="http://www.olympum.com/wp-content/uploads/2008/05/app_breakdown3vq2vabv4x448s0sk080s8wwsazayxg50vkwk0g080ko8kw8s4th.jpeg" alt="Facebook application breakdown." /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/internet/why-facebook-is-just-a-game/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Want to colonize Mars?</title>
		<link>http://www.olympum.com/google/want-to-colonize-mars/</link>
		<comments>http://www.olympum.com/google/want-to-colonize-mars/#comments</comments>
		<pubDate>Tue, 01 Apr 2008 09:50:12 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://www.olympum.com/google/want-to-colonize-mars/</guid>
		<description><![CDATA[Why not give it a go? Or perhaps, here or  here. Or even, here.
I gotta love it.
http://www.google.com/virgle/index.html
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.google.com/virgle/index.html">Why not give it a go</a>? Or perhaps, <a href="http://www.youtube.com/projectvirgle">here </a>or  <a href="http://www.youtube.com/watch?v=PmSdy_9blB4">here</a>. Or even, <a href="http://www.youtube.com/watch?v=4spjSD4bl5I&amp;watch_response">here</a>.</p>
<p>I gotta love it.</p>
<p>http://www.google.com/virgle/index.html</p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/google/want-to-colonize-mars/feed/</wfw:commentRss>
		</item>
		<item>
		<title>AOL Opens Up AIM</title>
		<link>http://www.olympum.com/yamigo/aol-opens-up-aim/</link>
		<comments>http://www.olympum.com/yamigo/aol-opens-up-aim/#comments</comments>
		<pubDate>Wed, 05 Mar 2008 14:44:41 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Yamigo]]></category>

		<guid isPermaLink="false">http://www.olympum.com/yamigo/aol-opens-up-aim/</guid>
		<description><![CDATA[AOL has published the protocol powering both AIM and ICQ (code-named OSCAR). Although the protocol was already well known through reverse engineering, even if it&#8217;s significantly more complex and chatty than MSN&#8217;s or YMSG, this is really good news since it formalizes AOL supporting third party clients, including Yamigo. Additionally, besides publishing the protocol documentation, [...]]]></description>
			<content:encoded><![CDATA[<p>AOL has published the protocol powering both AIM and ICQ (code-named OSCAR). Although the protocol was already well known through reverse engineering, even if it&#8217;s significantly more complex and chatty than MSN&#8217;s or YMSG, this is really good news since it formalizes AOL supporting third party clients, including Yamigo. Additionally, besides publishing the protocol documentation, AOL has released an <a href="http://dev.aol.com/aimclient/OpenAIM167/reference/index.html">AIM SDK for C/C++ and Java</a>, and the ability for creating protocol plugins that can even be monetized through revenue-sharing with AOL. Altogether, a good move from AOL.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/yamigo/aol-opens-up-aim/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Are Java web frameworks ready for building frontends?</title>
		<link>http://www.olympum.com/frameworks/are-java-web-frameworks-ready-for-building-frontends/</link>
		<comments>http://www.olympum.com/frameworks/are-java-web-frameworks-ready-for-building-frontends/#comments</comments>
		<pubDate>Sun, 02 Mar 2008 21:02:31 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Frameworks]]></category>

		<guid isPermaLink="false">http://www.olympum.com/frameworks/are-java-web-frameworks-ready-for-building-frontends/</guid>
		<description><![CDATA[Once every year I like to spend some time revisiting a personal itch of mine: is Java ready for web prime-time?  Sadly, although Java has clearly proven its place in the server-side, it has failed in the frontend, last bit of the server-side, the thin layer that transforms business data into rendered HTML. This [...]]]></description>
			<content:encoded><![CDATA[<p>Once every year I like to spend some time revisiting a personal itch of mine: is Java ready for web prime-time?  Sadly, although Java has clearly proven its place in the server-side, it has failed in the frontend, last bit of the server-side, the thin layer that transforms business data into rendered HTML. This is what Rasmus Lerdorf calls the &#8220;glue&#8221; (<a href="http://www.php.net/manual/en/faq.installation.php#faq.installation.apache2" title="PHP is the glue">PHP is the glue</a>), basically a thin layer of presentational representation that links your server pre-assembled data.</p>
<p>Of course you could build web applications using either JSPs or one of the hundreds of web application frameworks available for Java. And a lot of leading players are doing just this. But contrary to some &#8220;enterprise&#8221; thinking, Java is by no stretch of imagination the leading language for web development.</p>
<p>The number of available web frameworks for Java is an indication of a ground where a problem exists that has not been addressed in any fully satisfactory way, yet. And I believe the key problem is productivity: Java is, still, not a productive platform for development, whereas it is probably the best available platform for production. And the thing is that although there is a very large, mature and globally distributed pool of Java server-side developers, Java is still hard to develop for because it is not a productive platform for this &#8220;glue&#8221;.</p>
<p>A clue as of why it is not productive comes from analyzing the prime language users: the frontened web developers. It is actually really hard to find frontend web developers that want to use JSPs or any Java web framework. They rather use PHP, or Python, or Ruby, or Perl.</p>
<p>What all the P- scripting languages share in common is the low specs required to get started, the easiness itself to get started and hack something together, and most importantly that it only takes a single browser refresh to check any change and push the change to a production server. Sure, this is not a good practice (pushing to production), but it&#8217;s something that for 99% of sites out there, it just works and it&#8217;s good enough.</p>
<p>Java makes deployment hard. Starting a JVM takes seconds, refreshing a JSP takes seconds, changing classpaths, etc. require a restart or reload. Hardly productive. And the thing is, even though Java is more robust, better structured, and enforces better development practices, 99% of the sites out there just don&#8217;t need this level of &#8220;enterprise&#8221; features. And I am not the only one saying so. Even Billy Newport, one of the lead architects behind WebSphere Application Server, and the Chief Architect behind WebSphere XD, has expressed this very same thought, that <a href="http://weblogs.java.net/blog/bnewport/archive/2006/06/java_versus_php.html" title="Billy Newport on PHP">Java needs to figure out how to become as productive as PHP</a>.</p>
<p>The productivity derived from the scripting language in those 99% of web sites out there is what makes Java unpopular for the remaining 1%. Java has to grow up in the web dev area. Ideally, one would like to take the best of both worlds: the robustness and performance of a JVM, and the productivity of the P-languages.</p>
<p>In my yearly review of the state-of-the-art, I am starting to think that this change to make Java more productive is finally starting to happen in 2008. First was the advent last year of the scripting languages becoming a target of the JVM, such as Jython, JRuby, PHP, Groovy, Scala, etc. made it possible to benefit from the JVM robustness. But still one had to suffer the JVM weight inflicted by Java (the language) centric development practices.</p>
<p>It&#8217;s really only been over the last 6 months when we have seen a number of open source and closed-source projects taking on the task of bridging the scripting and JVM world together for web development. A couple of the web frameworks that I am interested in researching more about and that look rather promising to me are <a href="http://www.projectzero.org/" title="Project Zero">Project Zero</a>, and <a href="http://code.google.com/p/liftweb/" title="Lift web framework">liftweb</a>.</p>
<p>In summary, I really think we may be looking at 2008 as the year when Java finally graduated in the web dev frontend area. I certainly hope so. But only time will really tell.</p>
<p><span style="font-style: italic" class="Apple-style-span">Disclaimer: this is not, by any stretch of imagination, Yahoo!&#8217;s official view. Don&#8217;t try to read too much into this posting. For those that know me well enough, you&#8217;ll know that I have been looking into application frameworks, web and others, since 2000.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/frameworks/are-java-web-frameworks-ready-for-building-frontends/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Bad technology choices will chase you</title>
		<link>http://www.olympum.com/architecture/bad-technology-choices-will-chase-you/</link>
		<comments>http://www.olympum.com/architecture/bad-technology-choices-will-chase-you/#comments</comments>
		<pubDate>Sun, 24 Feb 2008 15:55:07 +0000</pubDate>
		<dc:creator>Bruno</dc:creator>
		
		<category><![CDATA[Architecture]]></category>

		<guid isPermaLink="false">http://www.olympum.com/architecture/bad-technology-choices-will-chase-you/</guid>
		<description><![CDATA[We, as engineers, are frequently faced with solving business problems, or sometimes technology problems, that really move the needle. We, as engineers, are usually never happy with any of the technologies in our tool chest. There is a place for every technology, but it always seems like our favorite technologies fall behind the cool kids [...]]]></description>
			<content:encoded><![CDATA[<p>We, as engineers, are frequently faced with solving business problems, or sometimes technology problems, that really <em>move the needle</em>. We, as engineers, are usually never happy with any of the technologies in our tool chest. There is a place for every technology, but it always seems like our favorite technologies fall behind the cool kids in the block.</p>
<p>It is attractive to bet on emerging technologies. They are sexy, cool, promising high productivity gains, and in a way, good technologies are disruptive, not only to the technology landscape, but to the business landscape, since they change what can be achieved with technology.</p>
<p>And so, we feel inclined to risk and pick emerging technologies, without perhaps taking the time and consciously analyze and understand the impact. To list a few things:</p>
<ul>
<li>How many developers can I find with the required skills to support this technology? Where are they located? Are those locations where I can attract and retain talent?</li>
<li>How secure and proven is the technology? Is there a good track record of fixing security bugs in very short time-frames?</li>
<li>How complex is it to deploy this technology? How stable is it and what is the monitoring and analytics required  to operate it?</li>
<li>How long would it take to migrate everybody in my company/group/division/org from the &#8220;old&#8221; stuff to this &#8220;new&#8221; stuff? Does it pay off?</li>
<li>How long would it take to migrate my project from this &#8220;new&#8221; stuff to the &#8220;old&#8221; stuff? Does it make sense that I even start doing it?</li>
</ul>
<p>Unfortunately, many times the answer to these questions leads to a categoric deception: we can do with the old technology, and that there is no need to introduce &#8220;new&#8221; stuff. While we should be trained to accept this outcome, we are not, and end up choosing the new cool and sexy stuff instead.</p>
<p>Picking stable, mature technology, despite its known shortcomings, should be the most traveled route for engineers, but unfortunately it is not. Specially in the context of startups, there is a desire to play with new technologies, somehow associating business innovation with technology risk.</p>
<p>Unfortunately, these risky technology choices later become heavy burdens that cost the venture either big bucks for paying star &#8220;talent&#8221; developers, big bucks for hardware and operations, or very low availability. In some cases, the technology might even become a dead-end and a re-engineering exercise is required anyway.</p>
<p>So, next time around, let&#8217;s try to think beyond our desk, and into the long-term implications whenever we chose a technology.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.olympum.com/architecture/bad-technology-choices-will-chase-you/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
