<?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>Lazesharp.net</title>
	<atom:link href="http://lazesharp.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://lazesharp.net</link>
	<description></description>
	<pubDate>Thu, 03 Apr 2008 16:45:54 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Final year project</title>
		<link>http://lazesharp.net/2008/04/03/final-year-project/</link>
		<comments>http://lazesharp.net/2008/04/03/final-year-project/#comments</comments>
		<pubDate>Thu, 03 Apr 2008 16:45:54 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://lazesharp.net/2008/04/03/final-year-project/</guid>
		<description><![CDATA[I think I&#8217;ve finally settled on an idea for my final year project and dissertation. I won&#8217;t go in to the details right now but it involves a lot of work with audio files, quite possibly of different formats.
While researching the feasability of this idea as a project I hit a pretty big road block. [...]]]></description>
			<content:encoded><![CDATA[<p>I think I&#8217;ve finally settled on an idea for my final year project and dissertation. I won&#8217;t go in to the details right now but it involves a lot of work with audio files, quite possibly of different formats.</p>
<p>While researching the feasability of this idea as a project I hit a pretty big road block. I need to find an audio toolkit that will allow me to work with audio files, of different formats, in a fairly simple way whilst at the same time exposing enough complexity for me to do various mixing between audio tracks.</p>
<p>Fortunately, several such toolkits exist, the most attractive of which being GStreamer. GStreamer is the audio framework that the GNOME Desktop is built upon. It&#8217;s pluggable, allowing support for new formats to be added and removed independantly of the applications that use them and it&#8217;s very stable. However, traditionally, the language of choice for GStreamer applications is C - which I don&#8217;t know, so I decided to check out the various language bindings available.</p>
<p>Unfortunately, the only stable language bindings are all for dynamic languages (Python, Perl, Ruby etc.) - the bindings for both Mono and Java are unstable and deemed &#8220;suicide to use&#8221;.</p>
<p>This is a shame because I would really like to develop this project in a strong-typed language, especially C# - more specifically: Mono.</p>
<p>Unless the bindings for C# are completed and stabilize before I begin my project I&#8217;ll just have to make do with Python. Don&#8217;t get me wrong, I like Python. I would just rather have the debugging support of the Mono CLI behind me to help me iron out problems.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2008/04/03/final-year-project/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Facebook: A modular steamroller</title>
		<link>http://lazesharp.net/2007/11/14/facebook-a-modular-steamroller/</link>
		<comments>http://lazesharp.net/2007/11/14/facebook-a-modular-steamroller/#comments</comments>
		<pubDate>Wed, 14 Nov 2007 18:02:49 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://lazesharp.net/2007/11/14/facebook-a-modular-steamroller/</guid>
		<description><![CDATA[Since the launch of the Facebook Platform earlier this year many people have been writing applications for the social networking site. Some good, some bad and some very ugly.
However, something that has probably slipped most people by is exactly how useful the Facebook Platform is to Facebook themselves. Most of the core elements, the Wall, [...]]]></description>
			<content:encoded><![CDATA[<p>Since the launch of the Facebook Platform earlier this year many people have been writing applications for the social networking site. Some good, some bad and some very ugly.</p>
<p>However, something that has probably slipped most people by is exactly how useful the Facebook Platform is to Facebook themselves. Most of the core elements, the Wall, Groups, Events, Photos etc. (but <em>not</em> Profiles and Pages) are all in fact applications that run on the Facebook Platform. Most people don&#8217;t notice because they&#8217;re enabled by different, but it affords Facebook many advantages.</p>
<p>For a start it enables them to create the Platform using use-driven development. While I don&#8217;t know whether this is true, it&#8217;s certainly a brilliant opportunity to aid development. I also makes the entire system far more modularised - by decreasing the number of things that are part of the core of Facebook, they&#8217;ve reduced the amount of code that has to be maintained by the core Facebook team. Problems with the default applications, for example, a bug in the Wall, can be easily isolated and therefore fixed quickly and easily.</p>
<p>As with bug-hunting, modularisation allows them to very quickly create new features without having to dabble with the core code and potentially break one of the most popular websites in the world. New features can be tested by releasing it as a non-default application and, once it has been put through its paces, deployed en-mass.</p>
<p>All of this gives Facebook the opportunity to comepletely crush rivals like MySpace, and with relative ease. Obviously, they&#8217;re not there yet, but they launched &#8220;Pages&#8221; only 4 days ago, alowing groups/organisations to setup specialised profiles, and already around a quarter of my favourite bands have their own pages.</p>
<p>Together with the clean look and easy to use interface, Facebook&#8217;s extensibility and modularity has exactly what it takes to bury MySpace.</p>
<p>This has me thinking: Can this computing model of abstraction and modularisation be applied as a general business model to real world products? And if it can, can it with much success? The answer to both questions is probably &#8220;no&#8221;, but I&#8217;d certainly be interested in finding out.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/11/14/facebook-a-modular-steamroller/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Working in a Microsoft world</title>
		<link>http://lazesharp.net/2007/10/02/working-in-a-microsoft-world/</link>
		<comments>http://lazesharp.net/2007/10/02/working-in-a-microsoft-world/#comments</comments>
		<pubDate>Tue, 02 Oct 2007 00:51:38 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://lazesharp.net/2007/10/02/working-in-a-microsoft-world/</guid>
		<description><![CDATA[I&#8217;ve always hated the idea of of using nothing but Microsoft products on a computer, about as much as I&#8217;ve always hated the idea of owning a laptop. So, after finally having taken the plunge and bought myself a cheap little number - pre-installed with Windows Vista - I&#8217;ve decided to see what life would [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve always hated the idea of of using nothing but Microsoft products on a computer, about as much as I&#8217;ve always hated the idea of owning a laptop. So, after finally having taken the plunge and bought myself a cheap little number - pre-installed with Windows Vista - I&#8217;ve decided to see what life would be like if all my software was Microsoft.</p>
<p>Obviously, I will be installing <strong>some</strong> non-Microsoft software - Adobe Flash Player was among the first things I installed - but my productivity software will largely be developed by Microsoft.</p>
<p>I started by setting up the native Vista applications - Windows Calendar, Windows Contacts and Windows Mail. I couldn&#8217;t help but notice that Windows Mail actually seems to handle my various IMAP accounts <strong>better</strong> than Evolution - a supposed rival to Outlook.</p>
<p>The integration between Calendar, Contacts and Mail is intriguing, I can&#8217;t pass judgement until I&#8217;ve used them for a few weeks, but if it works well it&#8217;ll certainly increase my productivity. </p>
<p>On the subject of integration, I know they&#8217;re legally bound not to bundle Windows Live products with Windows Vista but it does strike me as odd that the Windows Live crew hasn&#8217;t explored the possibility of integrating better with Vista.</p>
<p>I would love to see Windows Live Messenger automatically tie my Live account to my system account, using it&#8217;s contact details and display picture without having to select one myself.</p>
<p>Similarly, it&#8217;d be nice for my Messenger contacts to be added, in some form, to Windows Contacts. Even if they were fairly basic, it would give me a starting point to go through and add more details for each contact.</p>
<p>Windows Live Writer, I must admit, is one of the better Windows Live products. It&#8217;s one of the best desktop blog publishing tools I have ever tried. Upon opening it I was prompted for my blog address, username and password. Writer automatically set <strong>everything</strong> up using just these 3 pieces of information. That&#8217;s simplicity.</p>
<p>Windows Vista itself works like a charm. That&#8217;s right. No driver hell, no sluggish operations, no crashing and very little nagging from the controversial User Account Control (UAC).</p>
<p>Reflecting upon my move to Windows XP back in 2001 - just after its release - this experience is much smoother. While critics have lambasted the operating system for its poor compatibility, it is miles ahead of the situation Windows XP was in this long after it launched.</p>
<p>While it&#8217;s certainly not the best thing since sliced bread, and is not going to cure cancer (although it may play a part), I feel confident that Windows Vista and most mainstream applications will be stable enough for most companies to roll out once Service Pack 1 is released next year.</p>
<p>Finally, to everyone who immediately discredited Windows Vista before using it for a week or two, I pity you. Sure it took them far too long to produce it, but that doesn&#8217;t change the fact that it&#8217;s significantly better than Windows XP. I&#8217;m not going to explain why, Vista&#8217;s critics will just have to use it to find out.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/10/02/working-in-a-microsoft-world/feed/</wfw:commentRss>
		</item>
		<item>
		<title>A frontend for configuring FUSE filesystems</title>
		<link>http://lazesharp.net/2007/06/19/frontend-for-configuring-fuse-filesystems/</link>
		<comments>http://lazesharp.net/2007/06/19/frontend-for-configuring-fuse-filesystems/#comments</comments>
		<pubDate>Tue, 19 Jun 2007 18:23:25 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Gnome]]></category>

		<guid isPermaLink="false">http://lazesharp.net/index.php/2007/06/19/a-frontend-for-fuse-based-filesystem-configuration/</guid>
		<description><![CDATA[The title for this post is a little misleading because what I&#8217;m proposing is both a frontend and a backend for configuring FUSE-based filesystems.
This started off with me spending 2 days hacking together a small PyGTK tool to mount SSHFS filesystems. It quickly became apparent that my limited PyGTK skills had left me with some [...]]]></description>
			<content:encoded><![CDATA[<p>The title for this post is a little misleading because what I&#8217;m proposing is both a frontend and a backend for configuring FUSE-based filesystems.</p>
<p>This started off with me spending 2 days hacking together a small PyGTK tool to mount SSHFS filesystems. It quickly became apparent that my limited PyGTK skills had left me with some pretty ugly code. So, with a little more experience under my belt I decided to start again.</p>
<p>However, this time I&#8217;m not just going to tackle the mounting and unmounting of SSHFS filesystems - instead I plan to build a tool for mounting and unmounting any FUSE-based filesystem (whether it&#8217;s local or remote) <strong>and</strong> have it automatically mount selected filesystems on start-up.</p>
<p>I now have a basic specification which calls for the following major components:</p>
<ul>
<li>A new file, ~/.fusetab, that will contain definitions for all your FUSE-based filesystems.
<ul>
<li>It will need to contain: FUSE driver (e.g. sshfs),  filesystem path (local or remote), mount point and a flag to determine whether it should be automatically mounted on startup.</li>
</ul>
</li>
<li>A PyGTK frontend to manage the filesystems defined in ~/.fusetab.</li>
<li>A fast, simple Python script to parse ~/.fusetab on startup and automatically mount the specified filesystems.</li>
<li>A shared library, likely a simple Python class, that encapsulates a filesystem with methods to mount, unmount and get the mount status.</li>
</ul>
<p>There will need to be hooks defined in the shared library that allows drivers to define additional creation and pre/post mount/unmount behaviour (i.e. when mounting over SSH for the first time it should attempt to append your local ~/.ssh/id_rsa.pub to your remote ~/.ssh/authorized_keys in order to remove the need for a password on-mount).</p>
<p>FUSE drivers will also have to instruct the shared library exactly <strong>how</strong> to mount filesystems. This I haven&#8217;t fully researched but I&#8217;m hoping that the Python FUSE bindings themselves will have something to do this elegantly, otherwise I&#8217;ll have to have the driver define the CLI program to execute for mounting filesystems.</p>
<p>If anyone reading this has any thoughts on this, especially regarding its design, please comment, I&#8217;d love to hear from you.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/06/19/frontend-for-configuring-fuse-filesystems/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The incomplete desktop</title>
		<link>http://lazesharp.net/2007/06/19/the-incomplete-desktop/</link>
		<comments>http://lazesharp.net/2007/06/19/the-incomplete-desktop/#comments</comments>
		<pubDate>Tue, 19 Jun 2007 17:25:13 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Gnome]]></category>

		<guid isPermaLink="false">http://lazesharp.net/index.php/2007/06/19/the-incomplete-desktop/</guid>
		<description><![CDATA[The Gnome desktop has for a long time, been a collection of related projects. The official distribution of Gnome generally includes only those projects that have been declared &#8220;a part of the Gnome desktop&#8221; - anything that fits well and complies (loosely) with the Gnome Human Interface Guidelines (HIG).
It&#8217;s a shame in many ways because [...]]]></description>
			<content:encoded><![CDATA[<p>The Gnome desktop has for a long time, been a collection of related projects. The official distribution of Gnome generally includes only those projects that have been declared &#8220;a part of the Gnome desktop&#8221; - anything that fits well and complies (loosely) with the Gnome Human Interface Guidelines (HIG).</p>
<p>It&#8217;s a shame in many ways because it leaves the Gnome desktop feeling incomplete. Recently I&#8217;ve been thinking long and hard about the Gnome control panel applets (cutely abbreviated &#8220;capplets&#8221;) and how best to tackle them. Generally, I&#8217;ve found them to be a bit fragmented, with often related options in totally different capplets or with seemingly vital options missing entirely.</p>
<p>That&#8217;s not to say there&#8217;s a lack of good software and developers out there making such programs for Gnome, but unfortunately they appear either unwilling or unable to integrate this work in to the Gnome desktop itself.</p>
<p>Case in point: Today I found out about <a href="http://sourceforge.net/projects/gsysinfo/" title="Gnome System Information App">sysinfo</a>, an application for displaying useful system information in a user friendly way and is miles better than the standard &#8220;Device Manager&#8221; capplet. It&#8217;s written for Gnome in GTK+, so in theory, there&#8217;s no reason why it shouldn&#8217;t be a part of the Gnome desktop. It would require fairly minor changes to integrate it in to the Gnome desktop as a control panel applet so why not?</p>
<p>Sysinfo isn&#8217;t alone, there is a multitude of applications and especially applets that provide much needed functionality and yet hasn&#8217;t been included in the Gnome desktop. All that would be required is someone from Gnome to contact these developers and say &#8220;Hey, you&#8217;ve got a pretty good thing going there, with a few small changes/additions this&#8217;d fit great in to the Gnome desktop.&#8221;</p>
<p>If I was approached by a seasoned Gnome-er and asked to incorporate my application in to Gnome, I&#8217;d leap at the chance. Especially if it&#8217;d fill a whole and make the Gnome desktop just that little more complete.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/06/19/the-incomplete-desktop/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Moving to Wordpress</title>
		<link>http://lazesharp.net/2007/06/18/moving-to-wordpress/</link>
		<comments>http://lazesharp.net/2007/06/18/moving-to-wordpress/#comments</comments>
		<pubDate>Mon, 18 Jun 2007 18:00:24 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://lazesharp.net/index.php/2007/06/18/moving-to-wordpress/</guid>
		<description><![CDATA[I&#8217;m in the process of moving my blog over to Wordpress now that we&#8217;re with a new VPS provider.
I&#8217;ve mostly ported the theme and all the old posts, but unfortunately I don&#8217;t think I&#8217;m going to be able to post the comments.
The theme is pretty slap-dash at the moment. It hasn&#8217;t been tested in anything [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m in the process of moving my blog over to Wordpress now that we&#8217;re with a new VPS provider.</p>
<p>I&#8217;ve mostly ported the theme and all the old posts, but unfortunately I don&#8217;t think I&#8217;m going to be able to post the comments.</p>
<p>The theme is pretty slap-dash at the moment. It hasn&#8217;t been tested in anything other than Firefox 2 on Linux so it&#8217;ll likely be a little broken, especially on ancient installations of IE.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/06/18/moving-to-wordpress/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Cancel or allow</title>
		<link>http://lazesharp.net/2007/05/26/cancel-or-allow/</link>
		<comments>http://lazesharp.net/2007/05/26/cancel-or-allow/#comments</comments>
		<pubDate>Sat, 26 May 2007 23:23:32 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://lazesharp.net/index.php/2007/05/26/cancel-or-allow/</guid>
		<description><![CDATA[Windows Vista&#8217;s UAC (User Account Control) has sparked much controversy on the internet. The simple fact is that UAC prompts the user far too much, something everyone agrees on, but is it really the fault of UAC?
UAC, in principle, is a good step towards making Windows a better and more secure operating system, unfortunately in [...]]]></description>
			<content:encoded><![CDATA[<p>Windows Vista&#8217;s UAC (User Account Control) has sparked much controversy on the internet. The simple fact is that UAC prompts the user far too much, something everyone agrees on, but is it really the fault of UAC?</p>
<p>UAC, in principle, is a good step towards making Windows a better and more secure operating system, unfortunately in practice it proves more of an irritation to users, who find themselves clicking &#8220;continue&#8221; out of habit. Reminiscent of software installation licence agreements.</p>
<p>OS X and most desktop Linux distributions have been using a similar approach to allow temporary administrative access for years to much success. However, both of these require more from the user than UAC, needing a password to &#8220;continue&#8221; whereas UAC merely prompts the user to click a button.</p>
<p>The problem is that administrative access is required by far too much on the Windows platform. Each time something requests administrative access. Want to delete a shared shortcut from the start menu? You&#8217;ll need administrative access for that! How about playing Battlefield 2142 online? Sorry, Punkbuster requires administrative access (why!?).</p>
<p>The truth is, it&#8217;s not UAC that&#8217;s the problem. It&#8217;s all the various programs for Windows that assume and have always assumed that they have full administrative access to the machine. It&#8217;s a long standing loop-hole that Microsoft have <em>finally</em> closed and now developers have to actually put some thought in to their software before coding.</p>
<p>Of course, Microsoft themselves have this lesson to learn as many actions in Windows Vista require administrative access when they probably shouldn&#8217;t. </p>
<p>Hopefully, in time everyone will learn that they&#8217;re not in charge of the computer. The user is.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/05/26/cancel-or-allow/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Favouritism in Firefox</title>
		<link>http://lazesharp.net/2007/05/26/favouritism-in-firefox/</link>
		<comments>http://lazesharp.net/2007/05/26/favouritism-in-firefox/#comments</comments>
		<pubDate>Sat, 26 May 2007 23:01:29 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://lazesharp.net/index.php/2007/05/26/favouritism-in-firefox/</guid>
		<description><![CDATA[One of the goals for Firefox 3 is to use native cocoa widgets for it’s user interface. Great, it’s about time because at the moment, it looks out of place on OS X. But why stop there?
Where’s my native GTK+ widgets on Gnome? Qt on KDE? Or, dare I ask, native widgets on Windows, which [...]]]></description>
			<content:encoded><![CDATA[<p>One of the goals for Firefox 3 is to use <a href="http://wiki.mozilla.org/Mac:Cocoa_Widgets">native cocoa widgets</a> for it’s user interface. Great, it’s about time because at the moment, it looks out of place on OS X. But why stop there?</p>
<p>Where’s my native GTK+ widgets on Gnome? Qt on KDE? Or, dare I ask, native widgets on Windows, which is by far their largest demographic. I admit, Firefox looks <em>worse</em> on OS X than it does on any of the above, but that’s no excuse.</p>
<p>At the moment, on Gnome, it’s a toss up as to which is better, Firefox or Epiphany. Epiphany, with it’s native GTK+ user interface, is much faster and integrates well with the desktop, but Firefox, with it’s add-on system and huge development community is much more powerful.</p>
<p>We need a clear winner. We need a GTK+ build of Firefox.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/05/26/favouritism-in-firefox/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Gnome 2.18</title>
		<link>http://lazesharp.net/2007/03/17/gnome-218/</link>
		<comments>http://lazesharp.net/2007/03/17/gnome-218/#comments</comments>
		<pubDate>Sat, 17 Mar 2007 11:38:33 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Gnome]]></category>

		<guid isPermaLink="false">http://lazesharp.net/index.php/2007/03/17/gnome-218/</guid>
		<description><![CDATA[Gnome 2.18 has been released, but after looking at the release notes, I feel this release is much less significant than people are making it out to be.
Compare the release notes of the last 3 releases of Gnome with that of Gnome 2.18:

Gnome 2.12 release notes
Gnome 2.14 release notes
Gnome 2.16 release notes

The 2.18 release notes [...]]]></description>
			<content:encoded><![CDATA[<p>Gnome 2.18 has been <a href="http://www.gnome.org/start/2.18">released</a>, but after looking at the <a href="http://www.gnome.org/start/2.14/notes/en/">release notes</a>, I feel this release is much less significant than people are making it out to be.</p>
<p>Compare the release notes of the last 3 releases of Gnome with that of <a href="http://www.gnome.org/start/2.18">Gnome 2.18</a>:</p>
<ul>
<li><a href="http://www.gnome.org/start/2.12/notes/en/">Gnome 2.12 release notes</a></li>
<li><a href="http://www.gnome.org/start/2.14/notes/en/">Gnome 2.14 release notes</a></li>
<li><a href="http://www.gnome.org/start/2.16/notes/en/">Gnome 2.16 release notes</a></li>
</ul>
<p>The 2.18 release notes are important because they are a single page, whereas the others are all split over multiple pages - each one of a length that rivals the entirety of the 2.18 release notes.</p>
<p>Are the release team getting lazy in their documentation? Or has Gnome development slowed significantly over the last 6 months resulting in a fairly dull release.</p>
<p>I’ve heard reports that there are “numerous performance improvements” in 2.18, but they’re not documented in the release notes - unlike in <a href="http://www.gnome.org/start/2.14/notes/en/rnusers.html">previous releases</a>.</p>
<p>Does this mark a change in the detail to which releases are documented? I hope not.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/03/17/gnome-218/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Rapid UI prototyping with Glade</title>
		<link>http://lazesharp.net/2007/01/30/rapid-ui-prototyping-with-glade/</link>
		<comments>http://lazesharp.net/2007/01/30/rapid-ui-prototyping-with-glade/#comments</comments>
		<pubDate>Tue, 30 Jan 2007 12:29:47 +0000</pubDate>
		<dc:creator>Nicholas Telford</dc:creator>
		
		<category><![CDATA[Gnome]]></category>

		<guid isPermaLink="false">http://lazesharp.net/index.php/2007/01/30/rapid-ui-prototyping-with-glade/</guid>
		<description><![CDATA[I’m no artist and when it comes to design it usually takes me several attempts to get it right. This is where rapid prototyping comes in handy. Being able to quickly and easily produce a design, twist, turn and tweak it or simply throw it away and start again is a vital process to any [...]]]></description>
			<content:encoded><![CDATA[<p>I’m no artist and when it comes to design it usually takes me several attempts to get it right. This is where rapid prototyping comes in handy. Being able to quickly and easily produce a design, twist, turn and tweak it or simply throw it away and start again is a vital process to any application design.</p>
<h3>Step up Glade</h3>
<p><a href="http://glade.gnome.org/">Glade</a> is probably one of the most underrated development tools for <a href="http://www.gnome.org">Gnome</a>. It makes prototyping an interface a sinch, with no need to worry about typing out laborious GTK+ code; move everything around, add and remove features from your design and mess around with settings quickly and easily until you have something you’re happy with.</p>
<p>Once you have your final UI design, you have two options. Either use libglade to set up your application UI or convert the glade UI in to real GTK+ code by hand.</p>
<p>The former is far simpler, but the latter adds more flexability, removes redundant widgets and a dependancy on libglade and increases performance.</p>
<p>Converting the Glade XML by hand isn’t as much of a chore as it sounds. Widgets in the Glade XML only define options that have non-default values so you simply need to arm yourself with the <a href="http://developer.gnome.org/doc/API/2.0/gtk/index.html">GTK+ documentation</a>, run down the XML and implement each widget, adding children where necessary.</p>
<h3>Guest starring: Anjuta</h3>
<p>While Glade is great for prototyping a UI, testing your UI (Glade appears to render <em>slightly</em> differently to GTK+, so it’s a good idea to run the prototype properly), converting it to GTK+ code and of course, writing the actual program code is a necessity. While <a href="http://gedit.gnome.org/">gedit</a>, <a href="http://www.vim.org">vim</a> and <a href="www.gnu.org/software/emacs/">emacs</a> are all fine for the job, creating a source tree and build system for your application can be a bit of a nightmare.</p>
<p>There’s nothing worse than spending more time debugging your build scripts than your program code.</p>
<p>Anjuta makes it all easy - while it may not generate the most optimal build scripts - it does a good job of providing you with a source tree that will build without the need for any tweaking. Which is perfect for testing your UI prototype quickly and without fuss.</p>
<p>I’m just starting out with GTK+ programming and, in fact, C; but I’m already finding tools that make the learning curve so much less steep.</p>
]]></content:encoded>
			<wfw:commentRss>http://lazesharp.net/2007/01/30/rapid-ui-prototyping-with-glade/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
