<?xml version="1.0" encoding="UTF-8"?>
<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/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Paradise Road: Ken's Blog</title>
	<atom:link href="http://www.kenpardue.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kenpardue.com/blog</link>
	<description>broken household appliance national forest</description>
	<pubDate>Thu, 28 Aug 2008 02:43:57 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
	<language>en</language>
			<item>
		<title>Mozilla Gecko Office - Why Not?</title>
		<link>http://www.kenpardue.com/blog/2008/08/27/mozilla-gecko-office-why-not/</link>
		<comments>http://www.kenpardue.com/blog/2008/08/27/mozilla-gecko-office-why-not/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 02:36:38 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=140</guid>
		<description><![CDATA[So I&#8217;ve been using the OpenOffice 3.0 betas on my Mac and I just can&#8217;t get past the feeling that the folks at Sun are just trying to keep up with the 1990&#8217;s.  While it is nice that the latest version runs under OS X without using X11, it must also be realized that it [...]]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;ve been using the OpenOffice 3.0 betas on my Mac and I just can&#8217;t get past the feeling that the folks at Sun are just trying to keep up with the 1990&#8217;s.  While it is nice that the latest version runs under OS X without using X11, it must also be realized that it remains slow and cludgey to the point of frustration.  There weren&#8217;t enough features added to justify a major version jump, although somehow OpenOffice has <a href="http://www.oooninja.com/2008/05/openofficeorg-getting-faster-benchmark.html" target="_blank">taken</a> a major jump <em>down</em> with performance.  Grant it that these are betas and somewhat better performance is to be expected from the final release, but NeoOffice compares only slightly better.  Scroll speed is very jerky (sometimes freezing between page switches), text appears poorly antialiased and poorly kerned on Windows and Mac (and downright abominable on Linux), images appear jagged and seem to move around the page inexplicably, manually positioning images and text frames within a page of text is guesswork at best, and the interface&#8230; well let&#8217;s just not start on that.  </p>
<p>And yet, OpenOffice.org is the poster child for open source office suites.  It&#8217;s included by default in nearly every single Linux distribution and is proclaimed as <em>the</em> Microsoft Office alternative on Windows.  It, and derivatives of it, remain the only viable implementations of the OpenDocument format.</p>
<p>Certainly there must be a better way to do this.  Certainly there is a way to get consistent cross-platform performance with high quality text and image rendering and support for networking and the impending eventual move to cloud-based applications?  I think there is, and the answer lies with Mozilla.  Mozilla stormed onto the scene several years ago and today has become the cornerstone for BOTH open standards advocation on the web AND for intuitive, navigable, and ultimately usable user interfaces.  Why not make a Mozilla Office Suite?  There are many arguments in favor of this:</p>
<ul>
<li>Gecko is a mature platform that claims <a href="http://en.wikipedia.org/wiki/Mozilla_Firefox">140 million Firefox users</a> as of February 2008 (probably many more now that Firefox 3 has been released) and <a href="http://en.wikipedia.org/wiki/Mozilla_Thunderbird">48 million</a> Thunderbird downloads, versus <a href="http://en.wikipedia.org/wiki/OpenOffice.org">98 million</a> OpenOffice.org downloads.</li>
<li>The ethos surrounding Mozilla is one of providing the end user the best experience, not necessarily the most options.  This has led them to develop a platform that is extremely light weight and focused on performance.</li>
<li>Much of Mozilla&#8217;s products are written in JavaScript, which would seem to be a hindrance on a large scale office suite, but the most recent builds of an optimized JavaScript interpreter <a href="http://news.yahoo.com/s/zd/20080822/tc_zd/231247">approaches native code speeds</a>, with even more improvements on the way.</li>
<li>All of the networking components, text rendering/kerning components, and image rendering and scaling components  are already in place and are well tested across all major platforms.</li>
<li>There is a proven extension system with automatic checking for updates polished and in place.</li>
<li>A lot of the basic composition functionality is already contained in the Thunderbird project.</li>
<li>Mozilla is now working to support open and platform specific multimedia frameworks more tightly into their products, with the inclusion of Ogg Theora native support in the browser right alongside support for the video framework for whatever platform it&#8217;s running on (Quicktime for OS X, DirectShow for Windows, GStreamer, etc., for Linux).  This would be a boon to those using embedded video in documents, or more practically, in presentations.</li>
<li>Since OpenDocument is DOM based, it would be an easy transition to make native rendering of OpenDocument files available for viewing and collaboration on the web.  Imagine the maturity of Google Documents if you could leverage Mozilla Office&#8217;s capabilities?  It would be the single best way to turn XUL-runner into the ultimate stand-alone platform like some have <a href="http://browsing.justdiscourse.com/2008/08/14/thoughts-on-xulrunner-part-two-one-xulrunner-to-rule-them-all/">recently talked</a> about doing.</li>
<li>Not anything specific to Mozilla here, but the user interface could be optimized with tabs for different documents, a platform-specific look and feel that feels at home regardless of what platform you&#8217;re on, smooth scrolling through documents (I pasted 150+ pages into Thunderbird, albeit without images, and it scrolled through it satisfyingly smoothly), and much, much more.</li>
</ul>
<div>So, in short, Mozilla Office for President 2008!  Now, who wants to code it?</div>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/08/27/mozilla-gecko-office-why-not/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Shuttleworth is the Man!</title>
		<link>http://www.kenpardue.com/blog/2008/07/23/shuttleworth-is-the-man/</link>
		<comments>http://www.kenpardue.com/blog/2008/07/23/shuttleworth-is-the-man/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 13:59:20 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=139</guid>
		<description><![CDATA[I&#8217;ve always wanted to be a Linux guy, using and supporting as much as possible the philosophy of Free, Libre Open Source Software, but every time I&#8217;ve been put off by the amount of time involved in getting simple things done (one should NOT have to go to Google to figure out how to add [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve always wanted to be a Linux guy, using and supporting as much as possible the philosophy of Free, Libre Open Source Software, but every time I&#8217;ve been put off by the amount of time involved in getting simple things done (one should NOT have to go to Google to figure out how to add fonts to the system) and the fact that the graphical experience was either too mundane or so effusive that it actually got in the way of the user experience.  Don&#8217;t get me wrong, I&#8217;m a developer and a power user, but I&#8217;d much rather be spending my time being productive than tweaking in a terminal to infinity.</p>
<p>So a few years back, Ubuntu came onto the scene declaring that the user should never have to go into the command line to do routine stuff and, over the past few years of releases, has slowly made Linux easier and more intuitive to use.  Now they&#8217;re <a href="http://www.eweek.com/c/a/Linux-and-Open-Source/Shuttleworth-Make-Desktop-Linux-Better-than-Apple/">setting themselves</a> the lofty goal of targeting Apple in terms of user experience.</p>
<p>The idea of a freely available operating system fostering the growth of technology in the developing world and the embrace of open standards has always intrigued me.  The more I read about Mark Shuttleworth, the more I like him.  My favorite quote from his recent OSCON keynote: &#8220;The great task in front of us over the next two years is to lift the experience of the Linux desktop from something that is stable and robust and not so pretty, into something that is <em>art</em>.&#8221; Art!  From a Linux guy!  This guy really should be on Apple&#8217;s <a href="http://youtube.com/watch?v=4oAB83Z1ydE">Think Different</a> commercial.  He&#8217;s one of those people who&#8217;s crazy enough to think he can change the world.</p>
<p>Now, don&#8217;t get me wrong.  I love my Apple computer and doubt I&#8217;ll be switching my primary OS any time soon.  Apple has set a wonderful precedent in user experience that others will be hard pressed to exceed and also <a href="http://developer.apple.com/darwin/">embraces</a> some of the same open source philosophies that I do.  But I&#8217;ll definitely continue to keep my eye on Ubuntu and the inspiration that Mark Shuttleworth brings.  After all, Steve Jobs has never been to <a href="http://www.space-tourism.ws/Mark-Shuttleworth.html">space</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/07/23/shuttleworth-is-the-man/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Metrification</title>
		<link>http://www.kenpardue.com/blog/2008/07/12/metrification/</link>
		<comments>http://www.kenpardue.com/blog/2008/07/12/metrification/#comments</comments>
		<pubDate>Sun, 13 Jul 2008 04:00:42 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=138</guid>
		<description><![CDATA[You know, I&#8217;m very, very much not a math person.  In fact, that&#8217;s quite the understatement.  I actually always have sucked hard at math.  But while piddling around with learning Blender 3D tonight in trying to model my house it occured to me: the metric systems makes a heck of a lot more sense than [...]]]></description>
			<content:encoded><![CDATA[<p>You know, I&#8217;m very, very much not a math person.  In fact, that&#8217;s quite the understatement.  I actually always have sucked hard at math.  But while piddling around with learning <a href="http://www.blender.org">Blender 3D</a> tonight in trying to model my house it occured to me: the metric systems makes a heck of a lot more sense than what we&#8217;re used to in the United States!  I mean, metric has always <em>seemed</em> like it made more sense than Imperial, but it&#8217;s not something that most people really care about.  Blender has a simple measurement model: 1 unit is whatever the heck you want it to equal.  So after spending considerable time converting from feet and inches to inches and making note that 1 inch is equal to .01 unit in Blender it occured to me that life would be so much easier had I just done everything in meters from the start.  1 Blender Unit = 1 Meter, and everything degrades gracefully because it&#8217;s remarkably easy to convert.</p>
<p>So why hasn&#8217;t the United States switched to metric yet?  There was a half-hearted attempt in the &#8217;70&#8217;s which failed miserably.  I guess some people think that converting to metric constitutes being unpatriotic, giving up something distinctly American, and scandalously embracing heathen, Unchristian enemies in a New World Order.  Either that, or it&#8217;s too expensive.</p>
<p>Well, the most obvious thing to note is that our system isn&#8217;t American at all.  It&#8217;s British, and they abandoned it because it didn&#8217;t make sense.  Another thing to note is that in all the countries in the world, only the United States, Liberia, and Myanmar (Burma) haven&#8217;t adopted the metric system.  We&#8217;re keeping some bad company there.  Besides, the rest of the scientific and mathematics community seem to have moved on to the metric system, including <a href="http://www.space.com/news/070108_moon_metric.html">NASA</a>.  All of the competitive world trade and all international industry is conducted in metric.  So really, by not switching now, we&#8217;re <em>reducing </em>Americans&#8217; competitiveness in the world, not enhancing it by being superior and different.  And has anyone noticed that 20 years ago America had the biggest <em>everything</em>?  Now (taking my references from &#8220;<a href="http://www.amazon.com/Post-American-World-Fareed-Zakaria/dp/039306235X/ref=pd_bbs_1?ie=UTF8&amp;s=books&amp;qid=1215920429&amp;sr=8-1">The Post-American World</a>&#8220;) the tallest building in the world, the largest company in the world, the largest refinery in the world, the largest passenger airplane, the largest ferris wheel in the world, the largest casino in the world, and the largest mall in the world are all outside of the United States.  By stubbornly thinking that we stand alone, by not educating the American people on the system that everyone else is using, we&#8217;re <em>hurting</em> our competitiveness and stance in the world, not <em>helping</em> it.</p>
<p>So finance is a big one.  Since the math and science communities have already switched over, the biggest areas where I see measurements in a consumer&#8217;s daily life are: construction, weather, and road signage.  Construction seems to have partially taken the plunge, and I&#8217;m sure there exist tools to make conversions easier for workers, and if not, it wouldn&#8217;t take them long to adjust to this in their daily habits.  Weather is easy.  Weather is something that&#8217;s constantly updated, so it&#8217;s just a simple matter of changing what you&#8217;re publishing.  Road signage is probably the most expensive thing, but other countries (countries that successfully metrified themselves) found that a cold turkey solution was much better than maintaining a dual system.  Instead of replacing all the signs, why not just put stickers with new numbers over the existing signs, and then replace them as needed with fully metric signs?  Seems to work, and relatively inexpensive.  Of course, you&#8217;re always going to have the toothless hick that sees a sign that says the speed limit is 90 and revs his Bubba-mobile up to 90 miles per hour.</p>
<p>All that said, I&#8217;ve found a couple of ways to do my part to get more comfortable with metric (it&#8217;s officially supported in the United States, after all, just not common).  First, is to change the settings on my computer to Metric.  I&#8217;m not sure what settings OS X has that would make a difference one way or the other, but I suppose I&#8217;ll find out.  I&#8217;ve also switched the weather on my computer to report in Celcius, not hard.  I&#8217;ll also probably quickly rescale my house in Blender to be metric based&#8230; which will save me a lot of headache I&#8217;m sure.</p>
<p>Not that I intend to become an advocate or anything, but some useful sites to help promote awareness of the issue are <a href="http://gometric.us/xwiki/bin/view/Main/WebHome">Go Metric!</a> and the <a href="http://lamar.colostate.edu/~hillger/">US Metric Association</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/07/12/metrification/feed/</wfw:commentRss>
		</item>
		<item>
		<title>WWDC 2008: Pinning My Hopes and Dreams</title>
		<link>http://www.kenpardue.com/blog/2008/06/06/wwdc-2008-pinning-my-hopes-and-dreams/</link>
		<comments>http://www.kenpardue.com/blog/2008/06/06/wwdc-2008-pinning-my-hopes-and-dreams/#comments</comments>
		<pubDate>Fri, 06 Jun 2008 21:02:48 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=137</guid>
		<description><![CDATA[
It&#8217;s that time of year again.  Twice a year, in January and in July, something special happens.  Journalists&#8217; and bloggers&#8217; keyboards are aflutter, eye-strain headaches abound from staring at grainy &#8220;spy shots&#8221; of a certain theater in San Francisco, and the rumor mills swell uncontrollably with what Dear Leader, Steve Jobs, might unveil.
This year&#8217;s Apple [...]]]></description>
			<content:encoded><![CDATA[<div>
<p>It&#8217;s that time of year again.  Twice a year, in January and in July, something special happens.  Journalists&#8217; and bloggers&#8217; keyboards are aflutter, eye-strain headaches abound from staring at grainy &#8220;spy shots&#8221; of a certain theater in San Francisco, and the rumor mills swell uncontrollably with what Dear Leader, Steve Jobs, might unveil.</p>
<p>This year&#8217;s Apple Worldwide Developer&#8217;s Conference is obviously no different.  The past few days have seen the almost certain prediction of the iPhone 3G and the probably rebranding of .Mac to MobileMe.  But there&#8217;s always something that slips in unnoticed.  I originally thought that it was way too soon for us to be hearing anything about a new iWork update, since iWork &#8216;08 hasn&#8217;t been out for very long.  But all the speculation about a possible OS upgrade has me thinking otherwise since Leopard came out months after iWork &#8216;08.</p>
<p>Personally I hope (as I have anxiously hoped for the last two iWork releases) to see Apple get firmly behind the OpenDocument standard for its suite of programs so that iWork gains a TRUE place in a mixed platform corporate (and home) environment. OpenDocument makes a lot of sense for the following reasons:</p>
<p>1) Apple has a history of supporting open standards where it bolsters its business and reduces the complexity on their own developers,</p>
<p>2) it would be FAR easier for Apple to implement than native support for OOXML (heck, it&#8217;s even easier for Microsoft to implement in their OWN product than OOXML),</p>
<p>3) No more dialogs asking, &#8220;Do you want to save this in iWork &#8216;06 format, iWork &#8216;08 format, iWork&#8230;. &#8221; What&#8217;s good for one is good for everyone.</p>
<p>4) OpenDocument is extensible so they could&#8230; possibly&#8230; implement such features as Numbers&#8217; multi-table-on-a-single-sheet feature (not sure about the viability of this one), and</p>
<p>5) it will make Apple not look like they&#8217;re drinking Microsoft&#8217;s Kool-Aid, while, when native ODF support is added to MS Office next year, Apple will be totally compatible and competitive with not just most Windows users but Linux/open source advocates too.</p>
<p>6) Apple obviously has expressed interest in heating up competition with Microsoft on the desktop since the disaster called Vista.  If Apple ever hopes to bring iWork to Windows, joining iTunes and Safari, they&#8217;ll need to have a document format that&#8217;s not based on bundles.  A .pages file is just a folder as far as Windows is concerned.</p>
<p>Of course, the obvious argument against this is the tremendous effort that Apple has put into evolving its own XML document format.  It&#8217;s hard to see Apple just tossing all their work that brought them so far so fast in iWork&#8217;s three year life.  But for myself, I would love to see an ODF-native iWork so that I can use a program with Apple-pizaaz and not have to depend on the upcoming OpenOffice 3.0.  While it is the best ODF program on the market, they just don&#8217;t &#8220;get&#8221; the Mac platform.  Their clunky beta looks and feels like it belongs on a Windows ME installation, not on Mac OS X (or just OS X Leopard, as the new banners seem to have rebranded it).</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/06/06/wwdc-2008-pinning-my-hopes-and-dreams/feed/</wfw:commentRss>
		</item>
		<item>
		<title>OpenOffice.org 3.0 Beta Thoughts</title>
		<link>http://www.kenpardue.com/blog/2008/05/07/openofficeorg-30-beta-thoughts/</link>
		<comments>http://www.kenpardue.com/blog/2008/05/07/openofficeorg-30-beta-thoughts/#comments</comments>
		<pubDate>Wed, 07 May 2008 14:52:26 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=135</guid>
		<description><![CDATA[OpenOffice.org beta was released today.  I think I can already post about it since it appears to be the same build as the BEA300m2 developer snapshot that I had been using.  Overall, it feels like a lackluster release that hasn&#8217;t received much usability love.  Really, you&#8217;d expect a lot more from a product that has [...]]]></description>
			<content:encoded><![CDATA[<p>OpenOffice.org beta was released today.  I think I can already post about it since it appears to be the same build as the BEA300m2 developer snapshot that I had been using.  Overall, it feels like a lackluster release that hasn&#8217;t received much usability love.  Really, you&#8217;d expect a lot more from a product that has broad corporate support from Sun Microsystems and IBM and is the de facto standard cross-platform office suite.  There&#8217;s a problem when your main version release takes upwards of two years to make and the big features that you highlight are &#8220;the new &#8216;Start Centre&#8217;, new fresh-looking icons, and a new zoom control in the status bar&#8221;.</p>
<p>I hate to tell the OpenOffice devs, but these &#8216;new fresh-looking icons&#8217; passed the point of being either new or fresh looking around 2001. I know I&#8217;m a Mac guy and probably vain about my user interface, but seriously&#8230; these icons are unattractive at the small size, and downright <em>hideous</em> at the large size.  Tango icons look much better, and Tango is nothing to write home about.  Thing is, if it weren&#8217;t for those icons you wouldn&#8217;t even be able to tell the difference between 2.x and 3.x.</p>
<p>There seem to have been very few, if any, usability improvements.  Apple is doing innovative stuff with iWork Pages in simplifying the UI and adding context sensitive formatting; IBM is doing some innovative stuff with Symphony by putting all of the context-sensitive editing on the right side of the screen to take better advantage of documents being vertical and most new monitors being widescreen; Microsoft is doing usability studies and trying to find a way that works better for their users, although there have been some issues with the &#8220;Ribbon,&#8221; at least they&#8217;re trying.  I understand OpenOffice.org&#8217;s philosophy is &#8216;looks like Word &#8216;97&#8242;, but can&#8217;t they find a better key selling point than &#8220;you should use our product because we don&#8217;t evolve from a familiar, crufty old interface.&#8221;</p>
<p>Some months ago, one of the developers was arguing against critics of OpenOffice.org&#8217;s look and feel, saying that it could and would be made to look native on platforms, OS X in particular.  And one person posted on the 3.0 roadmap wiki extolling the merits of taking the approach that IBM was with Symphony.  I guess these persons weren&#8217;t very high up on the food chain.</p>
<p>I&#8217;m a strong supporter of open standards, OASIS OpenDocument in particular.  I whole heartedly believe that OOXML is wrong to be a standard because of the lack of attention to technical flaws, complexity, and less-than-a-single-vendor implementation (not to mention how the whole standardization process went down).  But, given the ISO&#8217;s approval of OOXML and the fact that this new OpenOffice.org represents the &#8220;best of&#8221; breed in ODF suites, I&#8217;m afraid that we&#8217;d all better start learning to speak Chinese&#8230; that is&#8230; recognizing OOXML.  Actually, I guess everyone else already has.</p>
<p>I realize that this is a lot of criticism for a fresh out of the oven Beta, but I also realize that there&#8217;s not likely to be many UI changes between now and OpenOffice.org 3.0 final in September.  At least I can count on some performance improvements though, because the Beta that I&#8217;m using runs like a crippled dog on a quad-core Mac Pro.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/05/07/openofficeorg-30-beta-thoughts/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lightning Looking Good</title>
		<link>http://www.kenpardue.com/blog/2008/05/02/lightning-looking-good/</link>
		<comments>http://www.kenpardue.com/blog/2008/05/02/lightning-looking-good/#comments</comments>
		<pubDate>Fri, 02 May 2008 14:23:08 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[Source Code]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=134</guid>
		<description><![CDATA[Lightning is supposed to reach 0.9 in the August timeframe, and it&#8217;s going to be a long wait.  I haven&#8217;t used Lightning because the interface was so kludgy to me that I didn&#8217;t feel like it was making me productive (yeah, superficial of me, whatever).  But at the recent Calendar face to face the developers [...]]]></description>
			<content:encoded><![CDATA[<p>Lightning is supposed to reach 0.9 in the August timeframe, and it&#8217;s going to be a long wait.  I haven&#8217;t used Lightning because the interface was so kludgy to me that I didn&#8217;t feel like it was making me productive (yeah, superficial of me, whatever).  But at the recent Calendar face to face the developers put a lot of spit and polish into how the calendar works and addressed some real usability issues, focusing on giving the user the most important information (and no more) in a modern, attractive way.  God bless them, they even removed the 2px border on the months and replaced it with something less fugly.</p>
<p>A developer&#8217;s outline of some of the changes can be found on Bryan Clark&#8217;s blog <a href="http://clarkbw.net/blog/2008/04/28/lightning-calendar-month-view-hacks/">here</a>, and additional interface mockups can be found on the Mozilla Wiki <a href="http://wiki.mozilla.org/Calendar:Improved_Events_and_Tasks">here</a> and <a href="http://wiki.mozilla.org/Calendar:Calendar_View">here</a>.</p>
<p>Now, I&#8217;m hopeful that the Thunderbird devs will also apply the spit and polish to the 3.0 release due out at the end of the year or (more likely) early next year.  I&#8217;d love to see Thunderbird come into the modern age of email and set defaults that people actually USE instead of being idealistic about how email SHOULD function.  Specifically</p>
<ul>
<li>The account setup is a mess, and there are way too many redundant options between Options and Accounts</li>
<li>All modern email programs just assume that you&#8217;re going to be using HTML.  I don&#8217;t know of any other (popular) program that would assume that you&#8217;re sending plain text or put up an annoying prompt to send in plain text, html, or both.  I know that email *should* be in plain text and there&#8217;s no reason for it not to, but people just don&#8217;t use it that way.</li>
<li>All modern email programs also assume a sans serif font for message composition.  While serifs are great for printed documents, it doesn&#8217;t have as usable place in the world of electronic, on-screen purposes.</li>
<li>Why is the default behavior set to put the reply BELOW the message being replied to?  I mean, I understand that as a holdout from the newsgroup days it makes more logical sense for the conversation to flow properly from top to bottom with the more recent stuff at the bottom of the page.  But seriously&#8230; who uses email like that?</li>
<li>Nearly every email program I&#8217;ve ever seen that people actually use forwards messages inline and not as attachments.  Why does Thunderbird insist on the default being to forward as an attachment?</li>
</ul>
<p>I know those are a couple of items that have been controversial within the developer community before, but whenever I recommend Thunderbird to someone else I find that they either stop using it or ask me to change it to work like Outlook Express.  I know those options can be changed, but it&#8217;s a confusing process to do so in the plethora of options menus.  It&#8217;s time to do to Thunderbird what Mozilla did to Firefox: Simply, simplify, simplify, and add better defaults!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/05/02/lightning-looking-good/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Creating a XULRunner 1.9 App on OS X</title>
		<link>http://www.kenpardue.com/blog/2008/04/29/creating-a-xulrunner-19-app-on-os-x/</link>
		<comments>http://www.kenpardue.com/blog/2008/04/29/creating-a-xulrunner-19-app-on-os-x/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 19:18:32 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[Source Code]]></category>

		<category><![CDATA[TreeFrog]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=130</guid>
		<description><![CDATA[I&#8217;ve just created my first simple XULRunner-based application.  In order to make creating the application work in OS X, a number of different steps have to be taken from the Windows version.  Unfortunately, there doesn&#8217;t seem to be a comprehensive guide for newbies to do so, so I created my own based on several resources.  [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/xulrunning.tiff"><img class="alignnone size-full wp-image-131" title="xulrunning" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/xulrunning.tiff" alt="" /></a>I&#8217;ve just created my first simple XULRunner-based application.  In order to make creating the application work in OS X, a number of different steps have to be taken from the Windows version.  Unfortunately, there doesn&#8217;t seem to be a comprehensive guide for newbies to do so, so I created my own based on several resources.  Since much of what follows is direct quotes or slightly modified, I want to be sure to give credit where credit is due:</p>
<blockquote><p><a href="http://developer.mozilla.org/en/docs/Getting_started_with_XULRunner">http://developer.mozilla.org/en/docs/Getting_started_with_XULRunner</a><br />
<a href="http://groups.google.pt/group/mozilla.dev.tech.xul/browse_thread/thread/d8c0127036615492">http://groups.google.pt/group/mozilla.dev.tech.xul/browse_thread/thread/d8c0127036615492</a><br />
<a href="http://rcrowley.org/2007/07/17/cross-platform-xpcom-a-howto/">http://rcrowley.org/2007/07/17/cross-platform-xpcom-a-howto/</a><br />
<a href="http://developer.mozilla.org/en/docs/XULRunner:Deploying_XULRunner_1.8">http://developer.mozilla.org/en/docs/XULRunner:Deploying_XULRunner_1.8</a><strong></strong></p></blockquote>
<p><strong>Step 1: Install the XULRunner Framework</strong></p>
<p>The first step is to download and install the XULRunner Framework.  XULRunner may be downloaded from here: http://developer.mozilla.org/en/docs/XULRunner.  On the Mac, just run the installer, which installs XULRunner as XUL.Framework in the /Library/Frameworks directory.</p>
<p><strong>Step 2: Set up the Application Directory Structure</strong></p>
<p>I created the root in a new /Users/{username}/Desktop/approotfolder folder, but you can create it wherever you like. Here is the subfolder structure:</p>
<blockquote><p>../approotfolder<br />
&#8230;./myapp<br />
&#8230;&#8230;/chrome<br />
&#8230;&#8230;../content<br />
&#8230;&#8230;&#8230;.main.xul<br />
&#8230;&#8230;chrome.manifest<br />
&#8230;./defaults<br />
&#8230;&#8230;/preferences<br />
&#8230;&#8230;..prefs.js<br />
&#8230;.application.ini</p></blockquote>
<p>Notice that there are 4 files in the folder structure: application.ini, chrome.manifest, prefs.js, and main.xul.</p>
<p><strong>Step 3: Set up the XUL Application Files<br />
</strong></p>
<p><em>Application.ini</em></p>
<blockquote><p>The application.ini file acts as the XULRunner entry point for your application. It specifies how your application intends to use the XULRunner platform as well as configure some information that XULRunner uses to run your application. Here is mine:</p>
<p>[App]<br />
Vendor=Finkle<br />
Name=Test App<br />
Version=1.0<br />
BuildID=20060101<br />
Copyright=Copyright (c) 2006 Mark Finkle<br />
ID=xulapp@starkravingfinkle.org</p>
<p>[Gecko]<br />
MinVersion=1.8<br />
MaxVersion=1.9.0.*</p></blockquote>
<p><em>chrome.manifest</em></p>
<blockquote><p>The chrome manifest file is used by XULRunner to define specific URIs which in turn are used to locate application resources. This will become clearer when we see how the “chrome://” URI is used. Application chrome can be in a single or a few JAR files or uncompressed as folders and files. I am using the uncompressed method for now. Here is my manifest:</p>
<p>content myapp file:content/</p></blockquote>
<p><em>prefs.js</em></p>
<blockquote><p>The prefs.js file tells XULRunner the name of the XUL file to use as the main window. Here is mine:<br />
pref(&#8221;toolkit.defaultChromeURI&#8221;, &#8220;chrome://myapp/content/main.xul&#8221;);</p>
<p>XULRunner preferences include:<br />
toolkit.defaultChromeURI<br />
Specifies the default window to open when the application is launched.<br />
toolkit.defaultChromeFeatures<br />
Specifies the features passed to window.open() when the main application window is opened.<br />
toolkit.singletonWindowType<br />
Allows configuring the application to allow only one instance at a time.</p>
<p>This is described in further detail in XULRunner:Specifying Startup Chrome Window.</p></blockquote>
<p><em>main.xul</em></p>
<blockquote><p>Finally, we need to create a simple XUL window, which is described in the file main.xul. Nothing fancy here, just the minimum we need to make a window. No menus or anything:</p>
<p>&lt;?xml version=&#8221;1.0&#8243;?&gt;<br />
&lt;?xml-stylesheet href=&#8221;chrome://global/skin/&#8221; type=&#8221;text/css&#8221;?&gt;</p>
<p>&lt;window id=&#8221;main&#8221; title=&#8221;My App&#8221; width=&#8221;300&#8243; height=&#8221;300&#8243;<br />
xmlns=&#8221;http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul&#8221;&gt;<br />
&lt;caption label=&#8221;Hello World&#8221;/&gt;<br />
&lt;/window&gt;</p>
<p>Note: Make sure there is no extra whitespace at the beginning of the XML/XUL file</p></blockquote>
<p><strong>Step 4: Set up the OS X .app directory structure.<br />
</strong></p>
<p>XULRunner for Mac is slightly more complicated because of strict requirements for GUI apps running in OS X. First, go download XULRunner and install the package. It will create itself deep within /Library/Frameworks (quite separate from the Windows version). In myapp, create a new directory called MacApp.app or something else ending in .app. Within this directory create one called Contents (capitalization is important), and within Contents create Frameworks and MacOS. Now create three symbolic links to complete the Mac directory structure:</p>
<blockquote><p>ln -s /Library/Frameworks/XUL.framework MacApp.app/Contents/Frameworks/XUL.framework<br />
ln -s ../../../myapp MacApp.app/Contents/MacOS/Resources<br />
ln -s /Library/Frameworks/XUL.framework/Versions/Current/xulrunner MacApp.app/Contents/MacOS/xulrunner</p></blockquote>
<p>If you would like to ship the application on a private install of XULRunner, you could always just copy the respective files into the XUL.framework and the MacOS/xulrunner directories.</p>
<p>Now create MacApp.app/Contents/Info.plist and dump this in, making sure to change things in ALL CAPS. I am almost certain this is not optimal as it repeats itself a lot. But it is functional.  Note: when using XULRunner 1.9, it doesn&#8217;t seem to matter what is in this file, or even that it exists.  XULRunner generates its own Info.plist file.</p>
<blockquote><p>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;UTF-8&#8243;?&gt;<br />
&lt;!DOCTYPE plist PUBLIC &#8220;-//Apple Computer//DTD PLIST 1.0//EN&#8221; &#8220;http://www.apple.com/DTDs/PropertyList-1.0.dtd&#8221;&gt;<br />
&lt;plist version=&#8221;1.0&#8243;&gt;<br />
&lt;dict&gt;<br />
&lt;key&gt;CFBundleDevelopmentRegion&lt;/key&gt;<br />
&lt;string&gt;English&lt;/string&gt;<br />
&lt;key&gt;CFBundleExecutable&lt;/key&gt;<br />
&lt;string&gt;xulrunner&lt;/string&gt;<br />
&lt;key&gt;CFBundleGetInfoString&lt;/key&gt;<br />
&lt;string&gt;3.0&lt;/string&gt;<br />
&lt;key&gt;CFBundleIdentifier&lt;/key&gt;<br />
&lt;string&gt;YOUR_APP_ID&lt;/string&gt;<br />
&lt;key&gt;CFBundleInfoDictionaryVersion&lt;/key&gt;<br />
&lt;string&gt;YOUR_APP_VERSION&lt;/string&gt;<br />
&lt;key&gt;CFBundleName&lt;/key&gt;<br />
&lt;string&gt;YOUR_APP_NAME&lt;/string&gt;<br />
&lt;key&gt;CFBundlePackageType&lt;/key&gt;<br />
&lt;string&gt;APPL&lt;/string&gt;<br />
&lt;key&gt;CFBundleShortVersionString&lt;/key&gt;<br />
&lt;string&gt;YOUR_APP_VERSION&lt;/string&gt;<br />
&lt;key&gt;CFBundleSignature&lt;/key&gt;<br />
&lt;string&gt;YOUR_APP_ID&lt;/string&gt;<br />
&lt;key&gt;CFBundleURLTypes&lt;/key&gt;<br />
&lt;array&gt;<br />
&lt;dict&gt;<br />
&lt;key&gt;CFBundleURLName&lt;/key&gt;<br />
&lt;string&gt;YOUR_APP_NAME&lt;/string&gt;<br />
&lt;key&gt;CFBundleURLSchemes&lt;/key&gt;<br />
&lt;array&gt;<br />
&lt;string&gt;chrome&lt;/string&gt;<br />
&lt;/array&gt;<br />
&lt;/dict&gt;<br />
&lt;/array&gt;<br />
&lt;key&gt;CFBundleVersion&lt;/key&gt;<br />
&lt;string&gt;YOUR_APP_VERSION&lt;/string&gt;<br />
&lt;/dict&gt;<br />
&lt;/plist&gt;<strong></strong></p></blockquote>
<p><strong>Review Directory Structure:</strong></p>
<blockquote><p>As a review, here’s how our tree looks now:<br />
/approotfolder<br />
.. /myapp<br />
&#8230;. /chrome<br />
&#8230;. /content<br />
&#8230;&#8230; main.xul<br />
&#8230;. chrome.manifest<br />
&#8230;. /defaults<br />
&#8230;&#8230; /preferences<br />
&#8230;&#8230;.. prefs.js<br />
&#8230;. application.ini<br />
.. /MacApp.app<br />
&#8230;. /Contents<br />
&#8230;. /Frameworks<br />
&#8230;&#8230; XUL.framework→/Library/Frameworks/XUL.framework<br />
&#8230;. Info.plist<br />
&#8230;. /MacOS<br />
&#8230;&#8230; /xulrunner→/Library/Frameworks/XUL.framework/Versions/Current/xulrunner<br />
&#8230;&#8230; /Resources→../../../myapp</p></blockquote>
<p><strong>Step 5: Run the Application</strong></p>
<p>The moment of truth. We need to get XULRunner to launch the bare-bones application.  Before you can run a XULRunner application, you must install it using the &#8211;install-app xulrunner commandline flag. Installing the application creates an OS X application bundle:</p>
<blockquote><p>/Library/Frameworks/XUL.framework/xulrunner-bin &#8211;install-app /&lt;path&gt;/&lt;to&gt;/myapp.zip</p></blockquote>
<p>Once installed, you can run the application:</p>
<blockquote><p>/Library/Frameworks/XUL.framework/xulrunner-bin &#8220;/Applications/Finkle/Test App.app/Contents/Resources/application.ini&#8221;</p></blockquote>
<p>You should now see a window that looks something like this:</p>
<p style="text-align: center;"><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/xulrunning.png"><img class="alignnone size-full wp-image-132" title="xulrunning" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/xulrunning.png" alt="" width="300" height="300" /></a></p>
<p><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/xulrunning.tiff"><img class="alignnone size-full wp-image-131" title="xulrunning" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/xulrunning.tiff" alt="" /></a></p>
<p>This application will output to Applications/Vendor Name/App Name (as specified in the application.ini).</p>
<p>Since XULRunner 1.9 seems to generate its own plist file (disregarding anything in the custom one), I&#8217;m not sure how to add application icons yet.  I&#8217;m sure there&#8217;s a way to specify this in the application.ini somehow, but since I&#8217;m brand new to XUL/XULRunner I can&#8217;t really speak to that.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/04/29/creating-a-xulrunner-19-app-on-os-x/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Treefrog: User Interface, Part 2</title>
		<link>http://www.kenpardue.com/blog/2008/04/28/treefrog-user-interface-part-2/</link>
		<comments>http://www.kenpardue.com/blog/2008/04/28/treefrog-user-interface-part-2/#comments</comments>
		<pubDate>Mon, 28 Apr 2008 16:53:13 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[TreeFrog]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=121</guid>
		<description><![CDATA[The Family Group Screen
The Family Group screen is, arguably, the most important screen in the entire application.  This screen is where virtually all of the data entry is done and where the user spends most of his/her time.  I&#8217;ll begin by analyzing the interfaces of some popular existing software.
Family Tree Maker is the leading (or [...]]]></description>
			<content:encoded><![CDATA[<p><strong>The Family Group Screen</strong></p>
<p>The Family Group screen is, arguably, the most important screen in the entire application.  This screen is where virtually all of the data entry is done and where the user spends most of his/her time.  I&#8217;ll begin by analyzing the interfaces of some popular existing software.</p>
<p>Family Tree Maker is the leading (or at least the best marketed) genealogy software on Windows.  The family group screen on it is, ironically, the least intuitive.  It provides extremely basic data entry functions.  You can enter information for a husband, wife, and birth, death, and burial dates/places.  You can also enter children.</p>
<p style="text-align: center;"><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/ftm_family_group.png"><img class="alignnone size-medium wp-image-123" title="ftm_family_group" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/ftm_family_group-300x186.png" alt="" width="300" height="186" /></a></p>
<p>Reunion 9 is the Family Tree Maker equivalent on the Mac.  Recently it has been rewritten as a Universal Binary application and has seen many improvements.  The Family Group screen in Reunion is more feature rich, allowing the user to enter and visualize more information.</p>
<p style="text-align: center;"><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/reunion_family_group.png"><img class="alignnone size-medium wp-image-125" title="reunion_family_group" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/reunion_family_group-300x254.png" alt="" width="300" height="254" /></a></p>
<p>GRAMPS is the open source Linux genealogy program, and the one with the most confusing and least useful interface.  There really isn&#8217;t a &#8220;family group&#8221; screen per se, but an individual screen that brings up information related to one individual.  There are advantages to this type of layout, however.  It features a tabbed interface that allows the user to quickly navigate information for the selected individual and see which areas have content.</p>
<p style="text-align: center;"><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/gramps_family_group.png"><img class="alignnone size-medium wp-image-124" title="gramps_family_group" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/gramps_family_group-300x181.png" alt="" width="300" height="181" /></a></p>
<p style="text-align: left;">So, what I&#8217;ve done is create a few quick mockups of how the interface might work.  These are quick Photoshop brainstorms, so a lot of the details are left to be worked out.  My main goal was to provide an interface to make sure that the user knows where there is more information to be had on an individual.  In the process, I also want to be able to show all spouses for the selected individuals and a way visualize all children related to them.  So, if Jane Doe married three times, all of her children should be displayed with all husbands (with the option of turning this off, perhaps).  I think this can be accomplished through some sort of color coding.</p>
<p style="text-align: left;">The first concept builds on the Reunion idea of displaying a father on the left side, a mother on the right, and some facts and children below.  This idea would more appropriately take advantage of increasingly-popular widescreen monitors and allow more space vertically to display more information.  Spouses are displayed with color codes and may be checked on or off.  This also allows some room for things like timelines or event summaries to be displayed.  Unfortunately, this takes an individual approach than a family group approach.  Events displayed here would display only for the selected individual.  Clicking on one of the spouses names would shift the darker blue background to the spouse side and focus on his/her information.</p>
<p style="text-align: center;"><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/family-group-layout-1.png"><img class="alignnone size-medium wp-image-126" title="family-group-layout-1" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/family-group-layout-1-300x200.png" alt="" width="300" height="200" /></a></p>
<p style="text-align: left;">The second concept takes a horizontal approach, displayed the husband above the wife, tabs to the right of each to get to the fathers and mothers of the individuals, and spouse information at the bottom of the person&#8217;s box.  A solid colored background behind the spouse name indicates which spouse is currently active, where the active spouse&#8217;s information is also displayed.  Checkboxes could be added to show/not show children for these individuals.  There is obviously less vertical space to play with in this model.</p>
<p style="text-align: center;"><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/family-group-layout-2.png"><img class="alignnone size-medium wp-image-128" title="family-group-layout-2" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/family-group-layout-2-300x200.png" alt="" width="300" height="200" /></a></p>
<p style="text-align: left;">Perhaps the best option is a hybrid between the two, since there tends to be a lot of horizontal space left over in the second approach, but I&#8217;m not sure about how much information could be displayed for both spouses.  More ideas to come later, comments and critiques very much appreciated.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/04/28/treefrog-user-interface-part-2/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Treefrog: User Interface, Part 1</title>
		<link>http://www.kenpardue.com/blog/2008/04/28/treefrog-user-interface-part-1/</link>
		<comments>http://www.kenpardue.com/blog/2008/04/28/treefrog-user-interface-part-1/#comments</comments>
		<pubDate>Mon, 28 Apr 2008 16:46:36 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[TreeFrog]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=122</guid>
		<description><![CDATA[I&#8217;m going to do generally the worst thing that developers do: I&#8217;m thinking through the user interface of Treefrog first, before necessarily planning out the data or program structure.  I&#8217;m aware of the reasons for not doing this, but there is one important reason to do it: to keep me focused.  My hope is that [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m going to do generally the worst thing that developers do: I&#8217;m thinking through the user interface of Treefrog first, before necessarily planning out the data or program structure.  I&#8217;m aware of the reasons for not doing this, but there is one important reason to do it: to keep me focused.  My hope is that with a light at the end of the proverbial tunnel I&#8217;ll be able to keep a focus on what I&#8217;m doing and why I&#8217;m doing it.</p>
<p><strong>Main Goals</strong></p>
<p>There are two main goals of the user interface for Treefrog.  First is to take the best ideas of some popular genealogy programs and, without sacrificing function or usability, create a consistent user interface across platforms.  The second goal is to perhaps improve on the user interface to provide a better way to visualize data.  Genealogy software is generally lacking in this area, and it&#8217;s easy to see why.  Once you start factoring in complex family relationships (multiple spouses, children with reference to two different brothers as their father, adopted children, etc.), the challenges become clear.  However, I feel that the important goal first is to at least fill the gaps across platforms.</p>
<p><strong>Navigating the Interface</strong></p>
<p>My initial thought was to keep all of the navigation top-centric with a series of icons across the top to redraw the main window.  That is, switching between &#8220;Family Group&#8221; view, &#8220;Reports&#8221; view, &#8220;Multimedia&#8221; view, and &#8220;Tree&#8221; view, etc.  I started looking at arguably some of the best user interfaces designed, Apple&#8217;s, and found that there were very few cases where the navigation at the top of the screen actually redrew the main window.  As I looked to PC programs, I also found this to be the case.  Most of the options to redraw the main window were located in the left side of the screen, with the top of the screen being reserved for functions that enhanced or provided additional functionality to the main window.</p>
<p>This is consistent across all of the iLife apps.   In iTunes, the top navigation is reserved to indicate track progress and to provide different viewing options.  Down the left navigation you see different categories that are used to redraw the interface.  In iPhoto, there isn&#8217;t even a top navigation bar, instead leaving the different photo events, albums, and views to the left side, and providing a menu at the bottom of the main window that is context-sensitive to the photo/album you&#8217;re viewing.</p>
<p>So how does this apply to Treefrog?  Options that will redraw the main window include a Research Center/Summary page, Index (list of all individuals in the family file), Family Group, Reports, Multimedia, Maps, and Sources.  Functions that might enhance the views include an Index of individuals in the family file, a Search box, Sources, and Multimedia, all of which could be used to update the focus of the main window.  The latter two initially seem redundant, but my vision is that the left navigation will bring up a center where you can manage, tag, organize, etc. the sources and multimedia, whereas the top navigation source and multimedia links will open up drawers that you can use to drag sources and multimedia items onto persons and events.</p>
<p>With so little going into the top navigation, it may be a better idea to put a very small top navigation bar, or perhaps none at all and make the drawers sensitive to what&#8217;s in the main window.  That said, here is a first brainstorm in Photoshop (note: this is an extremely quickly done mockup, I know it&#8217;s quite amateurish).  Obiously this is very Mac, but there&#8217;s much room for Linux/Ubuntu and Windows native look and feel here.</p>
<p style="text-align: center;"><a href="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/main.png"><img class="aligncenter size-medium wp-image-129" title="main" src="http://www.kenpardue.com/blog/wp-content/uploads/2008/04/main-300x283.png" alt="" width="300" height="283" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/04/28/treefrog-user-interface-part-1/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Introducing Treefrog</title>
		<link>http://www.kenpardue.com/blog/2008/04/25/introducing-treefrog/</link>
		<comments>http://www.kenpardue.com/blog/2008/04/25/introducing-treefrog/#comments</comments>
		<pubDate>Fri, 25 Apr 2008 14:46:28 +0000</pubDate>
		<dc:creator>kenneth</dc:creator>
		
		<category><![CDATA[Source Code]]></category>

		<category><![CDATA[TreeFrog]]></category>

		<guid isPermaLink="false">http://www.kenpardue.com/blog/?p=120</guid>
		<description><![CDATA[Treefrog, that is, the name that a friend has coined for my project &#8220;Genzilla,&#8221; a Mozilla/XUL-based, cross-platform genealogy application, is starting to take some shape.  I&#8217;m still very early in the would-be development of it and have a lot to learn about developing Real Applications (TM) before I make any progress, but at least I&#8217;m [...]]]></description>
			<content:encoded><![CDATA[<p>Treefrog, that is, the name that a <a href="http://www.wesleyharp.com">friend</a> has coined for my project &#8220;<a href="http://kenpardue.com/genzilla.php">Genzilla</a>,&#8221; a Mozilla/XUL-based, cross-platform genealogy application, is starting to take some shape.  I&#8217;m still very early in the would-be development of it and have a lot to learn about developing Real Applications (TM) before I make any progress, but at least I&#8217;m starting to define a goal.  Over the next several blog posts, I&#8217;m going to spend some time thinking through how this should work.</p>
<p><strong>Desktop App or Web App?</strong></p>
<p>The big question is whether or not to develop Treefrog as a standalone desktop application or as a web-application.  There are major benefits to developing it as a web application, beyond web applications being hip since everyone seems to be moving to the cloud computing/software as a service ideal these days.  And there are the obvious benefits in doing so: maintained control over upgrades and bug fixes, instantly visible by everyone on the domain; no installation or platform-specific glitches (other than browser JavaScript issues); easy ability to roll out the application to a variety of non-traditional platforms such as mobile devices (I could see an awesome iPhone app here); the ability to tap into social networking to enhance the collection and organization of data; perhaps most importantly, I already <em>know </em>how to develop web applications.  I&#8217;ve been doing that for a while.</p>
<p>We&#8217;re on the verge of ubiquitous Internet access.  Many phone carriers are shipping with unlimited data Internet plans these days, and I can foresee a day in the not-too-distant future where all laptops have carrier-independent cellular Internet connectivity built right in.  Unlike the days where you had to worry about offline access, we&#8217;ll be at a point where having a computer and having Internet access are synonyms.  Mozilla, like Google, is quick to promote the web as a platform for all things.  A Mozilla affiliate recently said (paraphrasing) that Mozilla isn&#8217;t really going to focus on XULRunner as a desktop app development platform and that it&#8217;s a much better idea to focus on promoting a healthy, open Internet with web applications. </p>
<p>But on the desktop side, there are benefits as well.  First and foremost is that there really isn&#8217;t a good, quality genealogy program that works cross-platform.  Mac users have Reunion, Linux users have GRAMPS, and Windows users have Family Tree Maker, but there&#8217;s no good program intended to make a researcher&#8217;s genealogy portable across platforms.  It would be much easier to deal with privacy issues on the desktop rather than the web.  There are opportunities to take advantage of native platform look and feel, extensions to further manipulate the data, and the ability to work with large media files such as high-resolution photo and source document scans.  Let&#8217;s face it, many genealogists are older in age and may not be keen on the idea of using some Internet app to store all of their research.  Finally, a personal reason to do a desktop app is for the sheer challenge of it.  I&#8217;ve never done a desktop application and have always been interested in this arcane world.</p>
<p>Besides, Treefrog is such a trendy name for a Mozilla-based application!  It fits right in with Firefox, Thunderbird, Songbird, etc.  But, if the desktop truly does become obsolete in a few years as <a href="http://www.readwriteweb.com/archives/windows_collapsing_2011_tipping_point.php">some predict</a> I suppose that another benefit would be that, by choosing to develop on XULRunner, my application would be largely developed in the language of the web and should I decide to take it to the web or tie into the <a href="http://labs.mozilla.com/2007/12/introducing-weave/">Mozilla Weave</a> API&#8217;s in the future it wouldn&#8217;t be as difficult.</p>
<p>Launchpad Page: <a href="https://launchpad.net/treefrog">https://launchpad.net/treefrog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kenpardue.com/blog/2008/04/25/introducing-treefrog/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
