<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-22946021</id><updated>2011-12-15T14:04:28.379+11:00</updated><title type='text'>A programmers blog</title><subtitle type='html'>I'm interested in emerging technologies and all things linux and open source. Popular blog topics include Windows Vista, Linux, Gentoo, Xgl, Compiz, Programming, Java, C++, C#, .NET, Design Patterns, Agile</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>70</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-22946021.post-116843079492495250</id><published>2007-01-10T22:56:00.000+11:00</published><updated>2007-01-16T09:25:49.387+11:00</updated><title type='text'>joshuahayes.blogspot has moved to http://codelines.net.au</title><summary type='text'>I now have a new domain http://codelines.net.au which you will find me at shortly.




The content of this blog specifically has been moved to http://codelines.net.au/codecutter as a general technical IT blog. I will shortly be starting another IT blog at http://codelines.net.au/blog; A blog about software development issues from a programmer, for programmers and the broader IT industry. This </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116843079492495250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116843079492495250&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116843079492495250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116843079492495250'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2007/01/joshuahayesblogspot-has-moved-to.html' title='joshuahayes.blogspot has moved to http://codelines.net.au'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116670661403866768</id><published>2006-12-21T23:28:00.000+11:00</published><updated>2007-01-07T16:29:07.550+11:00</updated><title type='text'>Choosing a widescreen LCD</title><summary type='text'>I have been comfortable on my 3x17" Samsung lcd's (see this post for a writeup on my panorama) but am looking to move to larger screens. At the moment I'm considering the upgrade to two 21" or 22" Samsung's; the 215TW or 225bw respectively.

The 215TW is a couple hundred dollars more but has extra inputs and supports PiP (Picture in Picture). Whilst handy, it's not a deciding factor for me. The </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116670661403866768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116670661403866768&amp;isPopup=true' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116670661403866768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116670661403866768'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/12/choosing-widescreen-lcd.html' title='Choosing a widescreen LCD'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116488627378599403</id><published>2006-11-30T22:08:00.000+11:00</published><updated>2007-01-07T16:29:41.093+11:00</updated><title type='text'>What makes a good RTS</title><summary type='text'>For those of you that like RTS games Supreme Commander should be released around Feb 2007. Anyone who ever played Total annihilation that was released nearly 10 years ago will find this game comforting. Personally I've been through the C&amp;C series (with C&amp;C Generals being my favourite), the Age of Empires series, Rise of Nations and countless others and never found an RTS as good as the original </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116488627378599403/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116488627378599403&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116488627378599403'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116488627378599403'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/11/what-makes-good-rts.html' title='What makes a good RTS'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116466232585504255</id><published>2006-11-28T08:06:00.000+11:00</published><updated>2006-11-28T08:22:44.236+11:00</updated><title type='text'>Beware of radiator leaks</title><summary type='text'>Recently I rebuilt my main computer to move both radiators (double and single) into the case resulting in a completely enclosed, or internal water cooling setup. The reason for this was to make the pc easier to move. Sitting in a CM Stacker, the case is already quite big but is on wheels so it makes it easier to move around the house :)

After re-hosing everything, I filled the system up with </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116466232585504255/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116466232585504255&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116466232585504255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116466232585504255'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/11/beware-of-radiator-leaks.html' title='Beware of radiator leaks'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116313939795250326</id><published>2006-11-10T17:14:00.000+11:00</published><updated>2006-11-10T20:02:11.836+11:00</updated><title type='text'>Expand an existing raid 5 array</title><summary type='text'>My server currently sits with 4x120gig sata drives in raid5. I purchased 4x320gig drives to replace the drives already in there that are now full.

Two options for transferring the raid 5 array over to the larger disks immediately sprang to mind.

Option 1: In Parallel
Take the existing four disks out of the server and place the new 4x320's in.
Boot up the server on a livecd and create a new raid</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116313939795250326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116313939795250326&amp;isPopup=true' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116313939795250326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116313939795250326'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/11/expand-existing-raid-5-array.html' title='Expand an existing raid 5 array'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116304447886914111</id><published>2006-11-09T14:15:00.000+11:00</published><updated>2007-01-07T16:31:09.373+11:00</updated><title type='text'>Useful services for a linux server</title><summary type='text'>I've been doing a lot of work upgrading my laptop and desktop lately with new linux installations  (read my previous posts on xgl, aiglx, compiz and beryl). So, I thought it was time to do the same with my main server.

My main server is a 64 bit gentoo linux server (compiled for 64 bit)

As it stands, the services the server is now running:

Apache - Web server

FTP - Remote access to my files </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116304447886914111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116304447886914111&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116304447886914111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116304447886914111'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/11/useful-services-for-linux-server.html' title='Useful services for a linux server'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116270287043054643</id><published>2006-11-05T15:30:00.000+11:00</published><updated>2006-11-05T16:20:36.406+11:00</updated><title type='text'>Linux nvidia drivers (1.0.9629)</title><summary type='text'>In a previous post I took a brief look at where we were with 3d rendering on linux and where we had come from. We are seeing the shift from Xgl to AIGLX and Compiz to Beryl. In my efforts to upgrade both my laptop (with an ati r300 card) and desktop (nvidia 7800gtx) I had the following experience.

Laptop
Although the r300 is suppose to be supported by the Free open source ati drivers I was not </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116270287043054643/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116270287043054643&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116270287043054643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116270287043054643'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/11/linux-nvidia-drivers-109629.html' title='Linux nvidia drivers (1.0.9629)'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116256916217942885</id><published>2006-11-04T02:20:00.000+11:00</published><updated>2006-11-04T02:54:46.130+11:00</updated><title type='text'>Xgl, Compiz, AIGLX and Beryl</title><summary type='text'>I've had a *little* more time to read up on the latest changes in Xgl/Compiz to see where we are headed.

All the hype in the linux community over the last year has been the advancements made in 3d. The Suse developers pushed Xgl out the door which really spurred things along. Then Compiz, the compositing manager.

Xgl and Compiz
So just about every linux fan boy has seen at least a glimpse of </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116256916217942885/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116256916217942885&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116256916217942885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116256916217942885'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/11/xgl-compiz-aiglx-and-beryl.html' title='Xgl, Compiz, AIGLX and Beryl'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116160686377192932</id><published>2006-10-23T22:34:00.000+10:00</published><updated>2006-10-27T20:01:06.776+10:00</updated><title type='text'>Reflecting on Agile</title><summary type='text'>I think I have taken away quite a lot from my study on Agile. Though it is not suited to all projects I can see some projects really benefiting from its practices.
After having written on most of the topics I looked at I thought I'd provide a summation.

Design: Is emergent

Testing: Cannot be built into a product. It should be part of the product.

Refactoring: Shouldn't change exisiting </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116160686377192932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116160686377192932&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116160686377192932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116160686377192932'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/10/reflecting-on-agile.html' title='Reflecting on Agile'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116137463612367217</id><published>2006-10-21T05:27:00.000+10:00</published><updated>2006-10-23T22:33:27.836+10:00</updated><title type='text'>Synchronise and Centralise Your Activities</title><summary type='text'>We often double over in our activies, having to do an activity more than once as a part of another activity. Thus optimising one is going to optimise the other. Saving time on one is going to save time on another. Increasing the quality of one....you get the idea.

For some time now it has been bothering me how 'unsynchronised' my activities are. I'm going to be back at University next year so I </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116137463612367217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116137463612367217&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116137463612367217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116137463612367217'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/10/synchronise-and-centralise-your.html' title='Synchronise and Centralise Your Activities'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116110800166155298</id><published>2006-10-18T03:06:00.000+10:00</published><updated>2006-10-19T01:54:25.573+10:00</updated><title type='text'>Pair Programming</title><summary type='text'>Pair programming has been adopted in many agile and XP derivatives. It has stood the test of time and the sign that it is still being used in various flavours suggests that it has something to offer. Do the pro's outweigh the con's?

Pair programming is one of those practices you either love or hate. The experience depends vastly on the person you work with and how much tolerance the pair is able</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116110800166155298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116110800166155298&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116110800166155298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116110800166155298'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/10/pair-programming.html' title='Pair Programming'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116067106251306825</id><published>2006-10-13T00:43:00.000+10:00</published><updated>2006-10-19T01:54:38.916+10:00</updated><title type='text'>What makes a good lecture?</title><summary type='text'>Everybody learns in different ways and responds to different stimuli. There are however, some key things that I have found vary greatly.

1)Delivery
2)Form
3)Content
4)Application

Delivery

You can really tell when when a lecturer is enthusiastic and passionate about what they teach. Hence goes the saying 'practice what you preach',. A lecturer that comes across disinterested is not going to </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116067106251306825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116067106251306825&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116067106251306825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116067106251306825'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/10/what-makes-good-lecture.html' title='What makes a good lecture?'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116031371799614782</id><published>2006-10-08T23:21:00.000+10:00</published><updated>2006-10-11T17:01:06.920+10:00</updated><title type='text'>Design is emergent</title><summary type='text'>Design is an interesting process as it requires, in most cases, a lot more forethought than your coding (often done on the fly).

How detailed it should be depends like most things, on the size of the project and how complex it is. One thing that I am constantly trying to force myself to do these days is simpler designs. Just like diagrams are best kept simple to convey one thing well, a design </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116031371799614782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116031371799614782&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116031371799614782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116031371799614782'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/10/design-is-emergent.html' title='Design is emergent'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116015583031475958</id><published>2006-10-07T01:53:00.000+10:00</published><updated>2006-10-08T23:20:38.196+10:00</updated><title type='text'>Fragile Agile?</title><summary type='text'>How do agile teams stack up against those adopting a more conventional methodology. My focus here is not so much on the development model itself and how it lends itself to a useful product, but on the team dynamics it produces. Though I'm sure there is a connection between the two.

Do group dynamics improve? Is there some new synergy that is formed between group members? Group dynamics can make </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116015583031475958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116015583031475958&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116015583031475958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116015583031475958'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/10/fragile-agile.html' title='Fragile Agile?'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-116006041163052268</id><published>2006-10-06T00:13:00.000+10:00</published><updated>2006-10-06T01:41:01.493+10:00</updated><title type='text'>Generics in .NET</title><summary type='text'>I was a big fan of generics when they were first introduced in Java 5.0 and I have to say, .NET is no exception. In fact, I enjoy programming more in .NET these days than I do in Java. But that's another story.

When you can really abstract something well, the addition of generics can further afford your programming some more flexibility. One big use for generics is that of data structures/</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/116006041163052268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=116006041163052268&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116006041163052268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/116006041163052268'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/10/generics-in-net.html' title='Generics in .NET'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115951677015463694</id><published>2006-09-29T17:15:00.000+10:00</published><updated>2006-09-29T18:29:33.680+10:00</updated><title type='text'>The Concurrency Adventure</title><summary type='text'>Growing increasingly tired of his journey, spanning many horizons over the four years  the journeyman began to wonder what was on the next horizon. The journey started out well, with good intentions, high hopes and spirit. Ready to tackle and take on anything at hand. It had been tough, misguided at times, but plenty of refreshments offered along the way in the form of inspirational peers, </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115951677015463694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115951677015463694&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115951677015463694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115951677015463694'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/09/concurrency-adventure.html' title='The Concurrency Adventure'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115865318397869867</id><published>2006-09-19T17:48:00.000+10:00</published><updated>2006-09-19T18:11:41.446+10:00</updated><title type='text'>Agile Testing</title><summary type='text'>Agile has a slightly different approach towards testing than traditional practices. Inline with the agile manifesto, the focus is shifted more towards customer expectations. Thus testing pertaining to the agile manifesto is a practice that treats development as the customer of testing; A set of principles and rules for testing come from this manifesto.

XP Practices include:

Test-First </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115865318397869867/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115865318397869867&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115865318397869867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115865318397869867'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/09/agile-testing.html' title='Agile Testing'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115809797632491501</id><published>2006-09-13T06:56:00.000+10:00</published><updated>2006-09-13T08:07:00.353+10:00</updated><title type='text'>Looking to other domains</title><summary type='text'>Over the years we have seen many software design and development models evolve, each using a set or subset of formal processes; requirements analysis, design, implementation, testing, maintenance etc. From the waterfall model, bottom up, top down, evolutionary variants, to those with a prototypcial focus, test driven design/development (intentional programming) to the newer iterative models; </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115809797632491501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115809797632491501&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115809797632491501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115809797632491501'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/09/looking-to-other-domains.html' title='Looking to other domains'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115764590994788020</id><published>2006-09-08T02:00:00.000+10:00</published><updated>2006-09-08T03:13:37.446+10:00</updated><title type='text'>Fun With Predicates</title><summary type='text'>Problem
I have a bunch of Trade objects that internally store two players (involved in the trade). I was thinking of storing these Trade objects in a hashtable so I could index them with the key using the value of the two players respective names.

What do I want to do? Get to the trade object by knowing the two people inside it.

Rather than use a Hashtale I thought I might poke around with a </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115764590994788020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115764590994788020&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115764590994788020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115764590994788020'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/09/fun-with-predicates.html' title='Fun With Predicates'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115748515188246396</id><published>2006-09-06T05:03:00.001+10:00</published><updated>2006-09-06T06:08:30.153+10:00</updated><title type='text'>Agile Measurement</title><summary type='text'>Agile is not a traditional SDLC model so this would suggest traditional measurement techniques would be out of step with this model also. I have collated some thoughts on an article I found interesting (see end of article for link).

Points of Interest

 Follows trends, not numbers. This avoids measuring sub-optimsied data
 Use a small set of metrics and diagnostics, They (see the authors of the </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115748515188246396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115748515188246396&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115748515188246396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115748515188246396'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/09/agile-measurement_06.html' title='Agile Measurement'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115688087541995567</id><published>2006-08-30T05:43:00.001+10:00</published><updated>2006-08-30T05:47:55.433+10:00</updated><title type='text'>Agile Modelling</title><summary type='text'>I came across an article I found interesting in some other research I was doing in agile/eXtreme modelling. I had originally planned on covering a few points in an earlier article on software development life cycle (SDLC) models but didn't want to draw the article out.

If you are interested...
Agile modelling</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115688087541995567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115688087541995567&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115688087541995567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115688087541995567'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/08/agile-modelling_30.html' title='Agile Modelling'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115688061197004162</id><published>2006-08-30T03:49:00.000+10:00</published><updated>2006-08-30T10:47:04.996+10:00</updated><title type='text'>Bottleneck Analysis</title><summary type='text'>I've been thinking about risk analysis/assessment lately (for both my agile and final year project). Exactly what it means, when to look for it (risks/bottlenecks) and how to circumvent them.

When is it needed?
Prudent thinking would suggest early on before problems/risks and bottlenecks begin to manifest them self. I don't know if the "..better late than never" approach applies here. Risks are </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115688061197004162/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115688061197004162&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115688061197004162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115688061197004162'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/08/bottleneck-analysis.html' title='Bottleneck Analysis'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115627122496491987</id><published>2006-08-23T03:38:00.000+10:00</published><updated>2006-08-23T04:48:26.113+10:00</updated><title type='text'>SCRUMptious</title><summary type='text'>In a previous article I took a brief look at how the agile development methodology compares against other traditional SDLC models like waterfall and test driven development (intentional programming). Continuing the theme, I thought I would provide some thoughts on the SCRUM process.

"Scrum is a lightweight agile method for software development...named after the Scrum in rugby, which is a way to </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115627122496491987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115627122496491987&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115627122496491987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115627122496491987'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/08/scrumptious.html' title='SCRUMptious'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115522280939352786</id><published>2006-08-11T01:13:00.000+10:00</published><updated>2006-08-23T03:55:14.716+10:00</updated><title type='text'>Team Work &amp; Culture</title><summary type='text'>Team work sure does bring with it a whole lot of issues. Some good, some bad. Like most things in life, you take the good with the bad and hope the good outweighs the bad :)

More specifically, you can't build anything of size without more resources; in this case, developers. Culture plays a background role in ensuring a happy and productive work environment. Every company has a culture, every </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115522280939352786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115522280939352786&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115522280939352786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115522280939352786'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/08/team-work-culture.html' title='Team Work &amp; Culture'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115504494951433800</id><published>2006-08-08T22:56:00.000+10:00</published><updated>2006-08-09T00:06:41.963+10:00</updated><title type='text'>The Agile Methodology</title><summary type='text'>My first thoughts on agile development were, what exactly will agile development achieve and how will it do it? How will the agile methodology compare to alternative software development life-cycle (SDLC) models and where does it fit in? When is it appropriate to use and what risks does it culture or alleviate? The answer is I'm not sure, so I endeavor to find out.

We are all too familiar with </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115504494951433800/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115504494951433800&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115504494951433800'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115504494951433800'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/08/agile-methodology.html' title='The Agile Methodology'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115374028025077703</id><published>2006-07-24T21:01:00.000+10:00</published><updated>2006-08-05T13:18:00.146+10:00</updated><title type='text'>Better Multi-tasking</title><summary type='text'>In a previous article I looked at the CPU price wars AMD would be introducing with Intels introduction of their new Conroe/Merom processor line (to replace the ageing netburst architecture). You can read this here.

Today is the 24th and I did indeed buy a 3800+ dual core. Interesting story behind this one pertaining to MSY.

Since the price cuts were introduced the AMD dual core processors have </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115374028025077703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115374028025077703&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115374028025077703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115374028025077703'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/07/better-multi-tasking.html' title='Better Multi-tasking'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115251870083768184</id><published>2006-07-10T17:28:00.000+10:00</published><updated>2006-07-10T22:16:53.680+10:00</updated><title type='text'>Monitor Panorama</title><summary type='text'>
I have been looking around for about the past twelve months for a good solution to mounting my lcd's. Sure, the default lcd stand might be fine if you only have one, but what if you have three? Not only is it nice to have them neatly aligned, but positioned at a good head height. Some stands that lcd's come with are ok and adjustable, but generally the stand is the cheapest aspect of the monitor</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115251870083768184/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115251870083768184&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115251870083768184'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115251870083768184'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/07/monitor-panorama.html' title='Monitor Panorama'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115104851740266798</id><published>2006-06-23T17:23:00.000+10:00</published><updated>2006-06-27T10:40:54.756+10:00</updated><title type='text'>Neurons self-organise to make brain chips</title><summary type='text'>
The rat brain cells form self-organise into clusters with projections between them (Images:Yael Hanein)

The day I finish my final exam (Introduction to Artificial Intelligence) for this semesters exam period the first article I just happen to read when I get home, "Neurons self-organise to make brain chips". I don't know whether to laugh or cry. After reading the article and looking at the </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115104851740266798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115104851740266798&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115104851740266798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115104851740266798'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/06/neurons-self-organise-to-make-brain.html' title='Neurons self-organise to make brain chips'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115069351679046660</id><published>2006-06-19T14:34:00.001+10:00</published><updated>2006-06-27T10:39:45.076+10:00</updated><title type='text'>Watercooling</title><summary type='text'>Instead of studying for exams I put together a water cooling kit. I'm not normally for kits vs custom setups but this kit in particular (Thermaltake BigWater 745) is a big step up from previous models. Only a click away and two days delivery I was tempted to try it out. So here we are.

A bit messy. I haven't had time to clean up all the cables and tie everything up.







A closer shot of the </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115069351679046660/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115069351679046660&amp;isPopup=true' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115069351679046660'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115069351679046660'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/06/watercooling_19.html' title='Watercooling'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115022045565881253</id><published>2006-06-14T02:20:00.000+10:00</published><updated>2006-06-14T03:56:27.380+10:00</updated><title type='text'>Technology, enough is never enough</title><summary type='text'>I was talking to a good friend of mine about some of the technology to come (Intel's Conroe processor, AMD's AM2 platform and the respective price cuts both sides are introducing), and started to ponder how we got to this place. I can remember as far back as my family owning a 486 SX 25. I fondly remember getting a speedy upgrade for that (DX4 100) processor. I believe that was the first </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115022045565881253/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115022045565881253&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115022045565881253'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115022045565881253'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/06/technology-enough-is-never-enough.html' title='Technology, enough is never enough'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-115018138503084314</id><published>2006-06-13T16:35:00.000+10:00</published><updated>2006-06-15T10:28:51.300+10:00</updated><title type='text'>CPU Price Wars continue...</title><summary type='text'>There has been a lot of hype about Intels Conroe processor. I have been wondering what AMD's at least, immediate plans would be. Well, it seems AMD are cutting prices (as Intel are too) on many models (both single and dual core).

The Inquirer  reports:

Athlon 64 3000+ $89
Athlon 64 3200+ $99
Athlon 64 3500+ $109
Athlon 64 3800+ $139

"... In the last case, that's a 50 per cent drop." says the </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/115018138503084314/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=115018138503084314&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115018138503084314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/115018138503084314'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/06/cpu-price-wars-continue.html' title='CPU Price Wars continue...'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114924421820205294</id><published>2006-06-02T18:28:00.000+10:00</published><updated>2006-06-10T17:44:48.296+10:00</updated><title type='text'>Genetic Algorithms Part II</title><summary type='text'>See part I here

Finally the end of another semester and another incredibly long week. It was a huge effort to get the software and report finished for AI in just over a week. Nevertheless, it was quite interesting. After running batch files, collating enourmous amounts of data, producing graphs and analysing algorithmic trends and points of interest it was all over. The final assessment in.

</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114924421820205294/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114924421820205294&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114924421820205294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114924421820205294'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/06/genetic-algorithms-part-ii.html' title='Genetic Algorithms Part II'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114828885296898265</id><published>2006-05-22T18:21:00.000+10:00</published><updated>2006-05-22T19:12:25.976+10:00</updated><title type='text'>Enterprise Java - The root of all evil</title><summary type='text'>After an extremely long slog we got our enterprise java semester project in at 4:30am this morning. Actually, it was probably a bit later as Ted stayed up doing the final touches and combining everything together for the final submission. So good work Ted!

The majority of the previous consultation week and both weekends were required to bring it all together in the end. This subject could </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114828885296898265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114828885296898265&amp;isPopup=true' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114828885296898265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114828885296898265'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/05/enterprise-java-root-of-all-evil.html' title='Enterprise Java - The root of all evil'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114813381919915541</id><published>2006-05-20T23:09:00.000+10:00</published><updated>2006-05-21T00:11:21.663+10:00</updated><title type='text'>Genetic algorithms to solve Sudoku puzzels</title><summary type='text'>Uni work has been non stop at the moment. It's a funny thing when you see several other groups of people coming into the same labs to work on assignments on weekends and consultation week. This weeks flavour of work for most was either Enterprise Java (I cannot wait till this one is over) and AI.

I'll leave my thoughts on Enterprise Java for another time (because it will most likely turn into a </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114813381919915541/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114813381919915541&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114813381919915541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114813381919915541'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/05/genetic-algorithms-to-solve-sudoku.html' title='Genetic algorithms to solve Sudoku puzzels'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114762106551665402</id><published>2006-05-15T00:43:00.000+10:00</published><updated>2006-06-10T17:41:46.206+10:00</updated><title type='text'>Creating a menu system Part II</title><summary type='text'>See part 1 here

Expanding on my initial ideas I decided to go with something similar to  the listener/observer design pattern. Basically, objects can register with a Listener as 'posters' and other objects can be added to the listener as 'listeners'. Whenever a poster posts an event to the listener, the Listener updates all those 'listening' with the new event.

The above screenshot is not UML </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114762106551665402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114762106551665402&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114762106551665402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114762106551665402'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/05/creating-menu-system-part-ii.html' title='Creating a menu system Part II'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114741396970769537</id><published>2006-05-12T15:55:00.000+10:00</published><updated>2006-06-10T17:43:34.103+10:00</updated><title type='text'>Menu System</title><summary type='text'>
This is a screenshot of the first prototype i've done for a menu system. I've been thinking about ways of implementing a decent menu system in TrueVision itself (Graphically drawn by TrueVision) rather then Windows Forms. I initially thought I was going to perform Collision detection on rectangles with set bounds but when I started coding it wasn't as easy as I initially thought. So, I went with</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114741396970769537/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114741396970769537&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114741396970769537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114741396970769537'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/05/menu-system.html' title='Menu System'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114699030331119977</id><published>2006-05-07T18:16:00.000+10:00</published><updated>2006-05-15T04:58:44.736+10:00</updated><title type='text'>The start of a game engine...</title><summary type='text'>I've been toying with the idea of actually writing a game engine in my spare with TrueVision and now i've finally started. I'm working a lot in C# at the moment and since we now have managed DirectX support, and full C# support (I don't like VB or VB.NET) I couldn't pass it up.




I've mapped out some basic classes with the bulk of my construction occuring in the GameEngine and a rendering loop </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114699030331119977/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114699030331119977&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114699030331119977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114699030331119977'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/05/start-of-game-engine.html' title='The start of a game engine...'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114640140445927843</id><published>2006-04-30T22:29:00.000+10:00</published><updated>2006-04-30T22:53:11.620+10:00</updated><title type='text'>TrueVision3D Exploration Part III</title><summary type='text'>I had a play around with bilboards (basic 2d object). As you can see, I littered the grass area with trees. It's fairly handy, because they rotate to follow the camera, thus giving the illusion they are somewhat 3d. Even though they are infact a flat image. Whilst cheap, it's effective. It also means you can litter your landscape with them and not have to worry about upping your polly count.

I </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114640140445927843/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114640140445927843&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114640140445927843'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114640140445927843'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/truevision3d-exploration-part-iii.html' title='TrueVision3D Exploration Part III'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114632892888089626</id><published>2006-04-30T02:17:00.000+10:00</published><updated>2006-04-30T02:54:12.463+10:00</updated><title type='text'>TrueVision3D Exploration Part II</title><summary type='text'>

I've spent another couple of hours with the TV3D framework and finally started to condition my brain into coordinate systems.

I've moved from a single room to a open style egyptian building surrounded by grass and a wall.

To this version, I also added mouse support for free-look. When I upload these images they come out blurry (because I uplaod them using the 'small' size). But the textures </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114632892888089626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114632892888089626&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114632892888089626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114632892888089626'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/truevision3d-exploration-part-ii.html' title='TrueVision3D Exploration Part II'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114630490804902815</id><published>2006-04-29T19:47:00.000+10:00</published><updated>2006-04-30T02:54:36.150+10:00</updated><title type='text'>TrueVision3D Exploration</title><summary type='text'>
I've just started playing around with TrueVision3D (TV3D) in C#. My software project requires it so I thougth i'd spend my weekend playing around with the basics. In short, TV3D is a wrapper for DirectX.





In no particular order you might do something similar too:
Create a TV engine
Create a scene
Setup a camera
Load in and construct any meshes you are going to use
Load in any textures you </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114630490804902815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114630490804902815&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114630490804902815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114630490804902815'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/truevision3d-exploration.html' title='TrueVision3D Exploration'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114571093846600292</id><published>2006-04-22T22:11:00.000+10:00</published><updated>2006-04-23T00:37:18.303+10:00</updated><title type='text'>Videos</title><summary type='text'>I have posted on the phenomenon that is Channel 9 before. I thought I'd keep a listing of all the Channel 9 Videos I watch here (and for anyone else that is interested). You can find interesting videos on almost anything Microsoft with respect to the latest (and sometimes greatest) tools and technologies.

I think many, if not all, of the videos are conducted/filmed by Robert Scoble; also known </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114571093846600292/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114571093846600292&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114571093846600292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114571093846600292'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/videos.html' title='Videos'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114570531503113309</id><published>2006-04-22T20:38:00.000+10:00</published><updated>2006-04-22T23:21:09.156+10:00</updated><title type='text'>Game Development</title><summary type='text'>

Code4Fun: Rocket CommanderSince I'm now spending a lot of time in C# .NET (recently working on an AI assignment and soon final year software project), I'm on the lookout for interesting .NET related articles. This article apart of Microsoft MSDN's new coding for fun site touches on game development in C# .NET and Managed DirectX. It is broken up into 10 steps (from start to finish). The game </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114570531503113309/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114570531503113309&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114570531503113309'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114570531503113309'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/game-development.html' title='Game Development'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114569930675538151</id><published>2006-04-22T19:40:00.000+10:00</published><updated>2006-04-22T19:52:01.696+10:00</updated><title type='text'>Developer Weblog</title><summary type='text'>I stumbled across this blog from digg :) I've spent my time reading through a few of his articles (his blog is developer friendly) and have bookmarked it for later reading. Here are just a few of the topics he has recently blogged about which were of interest to me.

Five Truths About Code Optimization
Ant in Ten Steps
Ten Things Every Java Developer Should Know About Unix
Regular Expressions In </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114569930675538151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114569930675538151&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114569930675538151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114569930675538151'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/developer-weblog.html' title='Developer Weblog'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114561219837210906</id><published>2006-04-21T19:03:00.000+10:00</published><updated>2006-04-22T09:16:53.936+10:00</updated><title type='text'>Reflecting on C#</title><summary type='text'>I did some research into C# reflections today for my AI assignment (thanks Clinton!) I got tired of having to modify a lengthy switch statement for invoking the correct Algorithm class at runtime. I also didn't like having to keep moving stuff up to the base algorithm class when it wasn't specifically needed. I.E. Not all search algorithms use heuristics so I wanted to keep that separate.

I've </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114561219837210906/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114561219837210906&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114561219837210906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114561219837210906'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/reflecting-on-c.html' title='Reflecting on C#'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114520271775206478</id><published>2006-04-17T01:28:00.000+10:00</published><updated>2006-04-17T02:00:55.973+10:00</updated><title type='text'>Monodevelop</title><summary type='text'>
Monodevelop is actually a port of SharpDevelop from Windows. When the port begain they decided to add in support for GTK#; a C# based API for developing GTK applications using the mono framework.

I've played around with a few C# mono projects on Linux now , Beagle search engine and F-Spot picture manager (both of which are pretty good).

Whilst Monodevelop does support common features of what </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114520271775206478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114520271775206478&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114520271775206478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114520271775206478'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/monodevelop.html' title='Monodevelop'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114503322868164396</id><published>2006-04-15T02:10:00.000+10:00</published><updated>2006-04-15T03:18:16.850+10:00</updated><title type='text'>A nice way to configure compiz</title><summary type='text'>This tool; gset-compiz, provides a nice way of configuring all your compiz plugins. You do not need to worry about loading them in the correct order (as you do with gconf) and do not have to go wading through as many options.

Simply click the plugin, and then start tweaking its appropriate functionality.

Gset-compiz is a gtk based app and according to the depgraph I built:
equery depgraph </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114503322868164396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114503322868164396&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114503322868164396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114503322868164396'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/nice-way-to-configure-compiz.html' title='A nice way to configure compiz'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114503056954273138</id><published>2006-04-15T01:42:00.000+10:00</published><updated>2006-04-15T03:21:03.466+10:00</updated><title type='text'>Gnome 2.14</title><summary type='text'>This weekend I had time to upgrade from Gnome 2.12 to 2.14. This was good, as it fixed my problem with Gnome and GDM 2.12 not loading properly with XGL. Previously, GDM was hard coded to kill an xsession if it wasn't started within x seconds (something short like 5 seconds). With the new Xgl server running, it takes a few extra seconds to load up (10 possibly) so GDM would just kill the X server </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114503056954273138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114503056954273138&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114503056954273138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114503056954273138'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/gnome-214.html' title='Gnome 2.14'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114494668341251286</id><published>2006-04-14T02:12:00.000+10:00</published><updated>2007-01-07T16:36:51.436+11:00</updated><title type='text'>Java swing the right way!</title><summary type='text'>Ever since I did enough Java GUI work to realise the correct way to use swing components it bugs me every time I see example code floating around that doesn't follow the rules.

"Swing components are not inherently thread safe, and as a general rule, after Swing components have been made visible on the screen, you can only safely modify their data from the event thread."

Ok, so a good rule of </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114494668341251286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114494668341251286&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114494668341251286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114494668341251286'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/java-swing-right-way.html' title='Java swing the right way!'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114492326928104936</id><published>2006-04-13T20:05:00.000+10:00</published><updated>2006-04-15T03:24:03.200+10:00</updated><title type='text'>What's in a category?</title><summary type='text'>I have now added a categories (look under links) section to my blog making tracking previous articles a bit easier. It has been annoying me lately that blogger does not support this feature and thought it high time to address the problem. Whilst there are many blogger hacks that exist including using del.icio.us for tagging, and extra blogs for categories, this proved to be the simplest yet most </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114492326928104936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114492326928104936&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114492326928104936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114492326928104936'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/whats-in-category.html' title='What&apos;s in a category?'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114476982190870425</id><published>2006-04-12T11:24:00.000+10:00</published><updated>2006-04-21T21:09:45.050+10:00</updated><title type='text'>When a cube is just not enough...</title><summary type='text'>
You can change the amount of desktops in compiz by changing a value located in your gconf xml file in your home directory.

josh@trinity ~ $ cat .gconf/apps/compiz/general/screen0/options/%gconf.xml | grep -i size
value="4"The value of note (sorry about the pun) here is value.  The sky is the limit where sky &lt;=  16. Personally, any more then four desktops and productivity goes down hill for me. </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114476982190870425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114476982190870425&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114476982190870425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114476982190870425'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/when-cube-is-just-not-enough.html' title='When a cube is just not enough...'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114458215086450337</id><published>2006-04-09T21:02:00.000+10:00</published><updated>2006-04-15T03:41:20.170+10:00</updated><title type='text'>Gnome-Launch-Box</title><summary type='text'>I've just discovered gnome-launch-box. It's an interactive launcher that updates in real time. The box at the top left is the currently selected program to launch, with the box on the right showing how it will be launched. For example, if you were looking at a document it might be launched in a text editor or open office itself.

This search was brought up by typing in 'of'. You can see in the </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114458215086450337/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114458215086450337&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114458215086450337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114458215086450337'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/gnome-launch-box.html' title='Gnome-Launch-Box'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114457538435711070</id><published>2006-04-09T19:01:00.000+10:00</published><updated>2006-04-15T03:38:24.296+10:00</updated><title type='text'>Compiz Update</title><summary type='text'>There has been quite a lot of work contributed to the Xgl/Compiz effort by the community. Not only is code becoming more stable and usable, but we are actually starting to see some new plugins surface. Development is fast paced and if I had time, I'd be syncing my repository every couple of days but for now weekly is all I can manage. This code is experimental and when things do break in future </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114457538435711070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114457538435711070&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114457538435711070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114457538435711070'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/compiz-update.html' title='Compiz Update'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114395937621770612</id><published>2006-04-02T15:58:00.000+10:00</published><updated>2006-04-15T03:42:18.623+10:00</updated><title type='text'>Vista Build 5342</title><summary type='text'>My last look into Windows Vista was build 5307. Microsoft has now made available build 5342. At this stage I do not think I will be installing this build so you can check out some pictures and info in the link provided at the end of the article. You can likely expect some performance improvements, a few new gadgets for the sidebar and some other minor changes here and there.

As already stated in</summary><link rel='related' href='http://bartysblog.be/content/vista-5342' title='Vista Build 5342'/><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114395937621770612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114395937621770612&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114395937621770612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114395937621770612'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/04/vista-build-5342.html' title='Vista Build 5342'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114318822720834879</id><published>2006-03-24T18:02:00.000+11:00</published><updated>2006-04-15T03:44:51.216+10:00</updated><title type='text'>Xgl, Compiz &amp; Gentoo</title><summary type='text'>
For those of you paying attention there has been much hype in the linux community around Xgl &amp; Compiz. I stumbled across a Kororaa distribution of Gentoo linux that was started, and continues to be maintained by Chris Smart. Kororaa, in a nutshell, is Gentoo linux at its heart with a bunch of install and configuration scripts to get the system up and running a bit quicker. For those of you that </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114318822720834879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114318822720834879&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114318822720834879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114318822720834879'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/xgl-compiz-gentoo.html' title='Xgl, Compiz &amp; Gentoo'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114275912391856151</id><published>2006-03-19T19:48:00.000+11:00</published><updated>2006-04-15T03:44:09.976+10:00</updated><title type='text'>Firefox 2.0</title><summary type='text'>It appears now that my initial blog on Mozilla's timeline was correct. Or rather, Mozilla's timeline was correct. The first alpha release of Firefox 2.0 will be made publicly available in March.

Futhermore, it would appear some 2.0a1 (alpha) screenshots have been uploaded to flickr. You can check them out here. Keep in mind I cannot guarantee the authenticity of flickr photos, that is for you to</summary><link rel='related' href='http://wiki.mozilla.org/Firefox2/StatusMeetings/2006-03-14#Release_Issues_.26_Timing' title='Firefox 2.0'/><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114275912391856151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114275912391856151&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114275912391856151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114275912391856151'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/firefox-20.html' title='Firefox 2.0'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114215755655860062</id><published>2006-03-12T20:36:00.000+11:00</published><updated>2006-03-13T23:20:18.953+11:00</updated><title type='text'>Paint.NET</title><summary type='text'>
If you are like me I am always on the lookout for a new image editor; something simple to use, yet functional and preferably free. Paint.NET is all of these. Think of Paint.NET as Photoshop for everyone. It has many common features otherwise found in Photoshop but doesn't take a degree to use.

I have been a long time fan of Microsoft's early incantation of paint that comes bundled with Windows.</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114215755655860062/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114215755655860062&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114215755655860062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114215755655860062'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/paintnet.html' title='Paint.NET'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114209174078398831</id><published>2006-03-12T02:09:00.000+11:00</published><updated>2006-04-17T01:11:30.260+10:00</updated><title type='text'>Windows Vista on NForce Raid</title><summary type='text'>
So what is different about this Windows picture from my previous Vista posts? This one was snapped on my desktop that utilises NForce Raid. Anybody who has used NForce Raid (not si3114r) can atest to how annoyingly complicated it sometimes can be installing windows on a raid partition.

As there are still no Nvidia NForce raid drivers for Windows Vista it is not possible to install it on a </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114209174078398831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114209174078398831&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114209174078398831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114209174078398831'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/windows-vista-on-nforce-raid.html' title='Windows Vista on NForce Raid'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114207119791596404</id><published>2006-03-11T20:40:00.000+11:00</published><updated>2006-03-12T21:14:27.140+11:00</updated><title type='text'>Office 12</title><summary type='text'>
It looks like Office 12 has received yet another design change late in development. Whilst I have yet to get a hold of beta 2, it should finally move us away from the past decade that was the crusty old grey file menu. Brad Weed on his blog writes "...I guess if it took 20 years to challenge old-school menus it will take at least another five or 10 years to challenge the tab".

So, it would seem</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114207119791596404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114207119791596404&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114207119791596404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114207119791596404'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/office-12.html' title='Office 12'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114205422649569796</id><published>2006-03-11T16:16:00.000+11:00</published><updated>2006-03-12T21:12:42.773+11:00</updated><title type='text'>Desktop Earth v 2.0</title><summary type='text'>
If you haven't already seen it be sure to check out Desktop Earth. Version 2.0 now inlcudes cloud overlapping :) and supports larger picture sizes for multi-monitor displays.

You can find a more detailed overview here. For now, I leave you with this nice screenshot of my desktop :)</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114205422649569796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114205422649569796&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114205422649569796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114205422649569796'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/desktop-earth-v-20.html' title='Desktop Earth v 2.0'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114156570843328319</id><published>2006-03-06T00:07:00.000+11:00</published><updated>2006-04-22T09:19:15.136+10:00</updated><title type='text'>Iterable Interface</title><summary type='text'>The Iterable interface is a new interface that has been added in Java 5.0. Similar to the Iterator interface the Iterable interface exposes your data structure to the 'for each' command. Thus allowing you to perform not just the standard Iterator syntax on it, but the new collection style traversal. How? Read on.

Looking at the Java API the only method that needs to be implemented is 'iterator()</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114156570843328319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114156570843328319&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114156570843328319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114156570843328319'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/iterable-interface.html' title='Iterable Interface'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114156161383918133</id><published>2006-03-05T22:39:00.000+11:00</published><updated>2006-04-17T01:09:46.036+10:00</updated><title type='text'>Palm Video</title><summary type='text'>

I finally found some good video software to run on my Palm T3. The default player on Palm OS is Kinoma. Whilst I believe there is a new version that handles other formats, earlier versions would not play more popular industry standards like avi and mpg. I wanted a solution that would allow me to run xvid or divx movies on my Palm without having to convert to a proprietary standard for Kinoma. </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114156161383918133/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114156161383918133&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114156161383918133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114156161383918133'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/palm-video.html' title='Palm Video'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114136351670686503</id><published>2006-03-03T15:58:00.000+11:00</published><updated>2006-03-03T16:52:36.046+11:00</updated><title type='text'>Kids Programming Language</title><summary type='text'>I just discovered a wonderful programming language designed to produce super geeks. Well maybe not, but it teaches basic skills at a very young age and encourages creativity. The Kids Programming Language (KPL) is absolutely amazing. It runs on top of the .NET framework. At the moment version 1.0 of the software is running on .NET 1.1. However, version 2.0 for .NET 2.0 is in the works. As you can</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114136351670686503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114136351670686503&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114136351670686503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114136351670686503'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/kids-programming-language.html' title='Kids Programming Language'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114130190663181642</id><published>2006-03-02T23:18:00.000+11:00</published><updated>2006-03-03T03:28:11.330+11:00</updated><title type='text'>Eclipse Shortcuts</title><summary type='text'>For all you keyboard junkies here are a few handy shortcuts for the Eclipse IDE 

Ctrl+Shift+E - Fast switch to open editors (good for projects with many files)
Ctrl+Shift+R - Quick resource open (good for projects with many files)
Alt+Up Arrow - Moves currently selected line or block up
Alt+Down Arrow - Moves currently selected line or block down
Alt+Shift+S+R - Create getter and setter methods </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114130190663181642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114130190663181642&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114130190663181642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114130190663181642'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/eclipse-shortcuts.html' title='Eclipse Shortcuts'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114129027924897448</id><published>2006-03-02T19:28:00.000+11:00</published><updated>2006-04-22T09:22:59.676+10:00</updated><title type='text'>Java 5.0</title><summary type='text'>Finally, now I get to use Java 5.0 compliancy when compiling; last year at work I was still stuck on 1.4 for compatibility reasons. Some of the nice new features are:
Generics &amp; auto boxing/unboxing
Enhanced for loops (.NET style)
Proper typesafe 'enums'
A new 'static' keyword import
MetadataFrom time to time I will post examples of using some of the new features. For now, I'll give a brief </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114129027924897448/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114129027924897448&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114129027924897448'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114129027924897448'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/java-50.html' title='Java 5.0'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114128317468359814</id><published>2006-03-02T17:21:00.000+11:00</published><updated>2006-04-17T01:06:39.046+10:00</updated><title type='text'>Visual Studio Visualisers</title><summary type='text'>Visualisers are just one of the nice new features to be found in Visual Studio 2005 alongside the enhanced debugger and a myriad of other things I have yet the time to explore. Visualisers however can be registered for all different types of variables. Some visualisers come 'built-in' and others you can write yourself. In short, a visualiser allows you to customise the way data looks as you are </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114128317468359814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114128317468359814&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114128317468359814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114128317468359814'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/03/visual-studio-visualisers.html' title='Visual Studio Visualisers'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114085196259483642</id><published>2006-02-25T18:12:00.000+11:00</published><updated>2006-03-03T03:48:16.893+11:00</updated><title type='text'>Firefox 2.0</title><summary type='text'>It looks like Mozilla is working on a new version of our favourite web browser, Firefox 2.0. Initially scheduled for June 27. I'm interested to see what goes into Firefox 2.0 as I have been a log time user and advocate of it's predecessor. As much as I hate to admit it I have been spending a lot more time in IE 7 when testing Windows Vista and am considering changing from Firefox 1.5. Will </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114085196259483642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114085196259483642&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114085196259483642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114085196259483642'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/02/firefox-20.html' title='Firefox 2.0'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114084448746367475</id><published>2006-02-25T15:54:00.000+11:00</published><updated>2006-03-03T03:57:14.073+11:00</updated><title type='text'>Gadgets</title><summary type='text'>

The gadgets available in February CTP release 5308 along with the sidebar look to be quite promising. Theoreticaly there isn't much a gadget can't do if it is given the appropriate permissions. At the moment rss readers, application launchers, email notifers, slideshow/picture viewers, tetris and weather gadgets are available but I suspect many more types of gadgets will begin to surface now </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114084448746367475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114084448746367475&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114084448746367475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114084448746367475'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/02/gadgets.html' title='Gadgets'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114078065731798792</id><published>2006-02-24T22:09:00.000+11:00</published><updated>2006-04-17T01:05:12.063+10:00</updated><title type='text'>Channel 9</title><summary type='text'>I have just recently discovered the phenomenon that is MSDN channel 9. Thousands of people tune in to (Webcast) or download videos of interviews conducted within Microsoft. More specifically, interviews conducted with development heads and respective teams around a whole host of current and future Microsoft tools &amp; technologies. Much buzz at the moment appears to be centred around Windows Vista, </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114078065731798792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114078065731798792&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114078065731798792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114078065731798792'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/02/channel-9.html' title='Channel 9'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114077929225746291</id><published>2006-02-24T21:55:00.000+11:00</published><updated>2006-04-17T01:00:48.986+10:00</updated><title type='text'>Windows Vista</title><summary type='text'>I've been playing around with Windows+Vista CTP (5270) over the last week; exploring, trying to find out what all the hype is about. For those of you that don't know, it seems Microsoft are now using Customer Technology Previews instead of their old beta-&gt;release candidate model. I think with the CTP model Microsoft's aim is to keep the community (MSDN and alike) in much closer contact with the </summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114077929225746291/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114077929225746291&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114077929225746291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114077929225746291'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/02/windows-vista.html' title='Windows Vista'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22946021.post-114077792458434659</id><published>2006-02-24T21:38:00.000+11:00</published><updated>2006-02-24T21:45:24.586+11:00</updated><title type='text'>Welcome</title><summary type='text'>Welcome to my new geek blog. This is primarily a place for me to publish links to interesting things going on in the wonderful world of IT and other geek related things.
 
 I no longer maintain my msn blog I kept up in Canberra so all blogging will now appear here :)</summary><link rel='replies' type='application/atom+xml' href='http://joshuahayes.blogspot.com/feeds/114077792458434659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22946021&amp;postID=114077792458434659&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114077792458434659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22946021/posts/default/114077792458434659'/><link rel='alternate' type='text/html' href='http://joshuahayes.blogspot.com/2006/02/welcome.html' title='Welcome'/><author><name>Joshua Hayes</name><uri>http://www.blogger.com/profile/01904313260142778894</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
