<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-28136632</atom:id><lastBuildDate>Mon, 21 Jul 2008 00:44:05 +0000</lastBuildDate><title>Pelicans Are Evil</title><description/><link>http://www.pelicansareevil.com/blog/</link><managingEditor>noreply@blogger.com (Ben Rowe)</managingEditor><generator>Blogger</generator><openSearch:totalResults>36</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-5620479299776011463</guid><pubDate>Wed, 02 Jul 2008 11:33:00 +0000</pubDate><atom:updated>2008-07-02T21:57:55.188+10:00</atom:updated><title>Restricting passwords is a no-no!</title><description>It's this simple. Please don't enforce maximum length passwords, or specific characters in passwords. I like my random 14 character password.  It's 14 characters for a reason, and it's random for a reason. I hate being told you have to simplify your password and absolutely no justification as to why &lt;span style="font-weight: bold;"&gt;I&lt;/span&gt; have to lower my security standards so it can work with someone else's website. I agree passwords should have a minimum length of 6-8 characters (generally), however restricting the maximum is like punishing you for trying to do the right thing and having a decent password.&lt;br /&gt;&lt;br /&gt;People who do this should at least have the "minerals" to explain why they are enforcing such a stupid policy.&lt;br /&gt;&lt;br /&gt;Of course if you still continue to enforce this practise I'll be forced to eat your babies!</description><link>http://www.pelicansareevil.com/blog/2008/07/restricting-passwords-is-no-no.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-5445173885127951831</guid><pubDate>Thu, 19 Jun 2008 12:40:00 +0000</pubDate><atom:updated>2008-06-19T22:43:38.983+10:00</atom:updated><title>SVN Exporter 1.0.1.5 released</title><description>I know I've only just released 1.0.0.4, but I've quickly added in some missing functionality that I've needed. There are 2 new additions that didn't quite make the 1.0.0 release:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Output window with a list of exported files (+ there paths)&lt;/li&gt;&lt;li&gt;Better svn.exe detection.&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://pelicansareevil.com/projects/svn_exporter/SVN_Exporter.1.0.1.5.zip"&gt;SVN Exporter 1.0.1.5&lt;/a&gt; (348 Kb)</description><link>http://www.pelicansareevil.com/blog/2008/06/svn-exporter-1015-released.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-4087015355742684259</guid><pubDate>Thu, 19 Jun 2008 10:09:00 +0000</pubDate><atom:updated>2008-06-19T20:17:09.041+10:00</atom:updated><title>1.0.0.4 of SVN Exporter Released</title><description>It seems like my last release of SVN Exporter was missing some dependencies from the installer. If you downloaded the previous version and were unable to install it please download the newer version linked below. If you're fortunate enough to install the previous version without any hickups you don't need to upgrade, as there is no other bug fixes or features.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://pelicansareevil.com/projects/svn_exporter/SVN_Exporter.1.0.0.4.zip"&gt;SVN Exporter 1.0.0.4&lt;/a&gt; (332 Kb)</description><link>http://www.pelicansareevil.com/blog/2008/06/1004-of-svn-exporter-released.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-242905476568483640</guid><pubDate>Fri, 13 Jun 2008 06:11:00 +0000</pubDate><atom:updated>2008-06-19T20:17:58.160+10:00</atom:updated><title>SVN Exporter: Export between revisions</title><description>The lack of native exporting options has led me to create SVN Exporter. Simply it allows you to export your svn url between specific revisions.&lt;br /&gt;&lt;br /&gt;While you can achieve this function manually, this simple application takes all the hard work out of it. All it requires is that you have .NET installed (the installer should handle this if you don't have it).&lt;br /&gt;&lt;br /&gt;I've styled the interface like TortoiseSVN, so it has that familiar feel. In a future version I hope to be able to hook into tortoise's log viewer to help with specifying a correct url/revision numbers.&lt;br /&gt;&lt;br /&gt;Edit: Sorry, ive updated the url to the correct file. Also there seems to be a VS2008 problem which may cause an error when installing.&lt;br /&gt;&lt;br /&gt;Try &lt;a href="http://pelicansareevil.com/projects/svn_exporter/svn_exporter.1.0.0.2.zip"&gt;downloading my first release&lt;/a&gt;!</description><link>http://www.pelicansareevil.com/blog/2008/06/svn-exporter-export-between-revisions.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-7447851567653552930</guid><pubDate>Thu, 12 Jun 2008 12:27:00 +0000</pubDate><atom:updated>2008-06-12T22:31:29.488+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>.NET</category><category domain='http://www.blogger.com/atom/ns#'>C#</category><title>Changing mouse cursors in .NET</title><description>This one is very easy to achieve!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;Cursor = Cursors.WaitCursor;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;Cursor = Cursors.AppStarting;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;Cursor = Cursors.Hand;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;Cursor = Cursors.Default;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;There's a lot to choose from. Cursors are a simple way to show what your application is doing (especially if there's a lot of work going on in the background, but no other visual representation of what's happening).</description><link>http://www.pelicansareevil.com/blog/2008/06/changing-mouse-cursors-in-net.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-8440723614986779596</guid><pubDate>Fri, 06 Jun 2008 10:05:00 +0000</pubDate><atom:updated>2008-06-07T00:01:28.050+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>plugin</category><category domain='http://www.blogger.com/atom/ns#'>jquery</category><category domain='http://www.blogger.com/atom/ns#'>release</category><category domain='http://www.blogger.com/atom/ns#'>addtolist</category><title>Add To List released</title><description>As I previously promised, I have just released my first version of Add To List. It's the first time I've publicly released a JQuery plugin &amp;amp; I've had  a lot of fun writing up demos &amp;amp; documentation.&lt;br /&gt;&lt;br /&gt;I've posted it at &lt;a href="http://www.pelicansareevil.com/jquery/addtolist/"&gt;http://www.pelicansareevil.com/jquery/addtolist/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you want to download it directly you can from &lt;a href="http://pelicansareevil.com/jquery/addtolist/jquery.addtolist.latest.js"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you use the plugin don't forget to post a comment!</description><link>http://www.pelicansareevil.com/blog/2008/06/download-add-to-list.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-7125193195130017536</guid><pubDate>Thu, 22 May 2008 14:13:00 +0000</pubDate><atom:updated>2008-05-23T00:30:28.896+10:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>dynamic</category><category domain='http://www.blogger.com/atom/ns#'>plugin</category><category domain='http://www.blogger.com/atom/ns#'>option</category><category domain='http://www.blogger.com/atom/ns#'>jquery</category><category domain='http://www.blogger.com/atom/ns#'>list</category><category domain='http://www.blogger.com/atom/ns#'>select</category><title>AddToList Jquery extension</title><description>AddToList is the plugin I wrote to solve a very simple problem: being able to add new &amp;lt;option&amp;gt; items to a select list. &lt;br /&gt;&lt;br /&gt;The reason behind wanting this functionality is also simple: If you have a &amp;lt;select&amp;gt; list thats generated from a database, you'll be able to add new items to this list without having to break your current work flow. It's really anoying when you have to stop what your doing, to add more items to your list of options because they're currently not created. This plugin makes the process of adding a new item, and selecting that new item (automatically) easier&lt;br /&gt;&lt;br /&gt;Being a jquery plugin, there's a few options i've included to help you out.&lt;br /&gt;&lt;br /&gt;triggerValue: allows you to set a value from the list that will trigger the form opening action. This means you could create a dummy &amp;lt;option value="-1"&amp;gt;add new&amp;lt;/option&amp;gt; and use -1 as the trigger value. You can also trigger the open form using an event.&lt;br /&gt;&lt;br /&gt;form: this is a jquery selector string that specifies the dom element for the form that will open up when the trigger value is detected.&lt;br /&gt;&lt;br /&gt;Those are the two main options (there's others, but they're not that important).&lt;br /&gt;&lt;br /&gt;The plugin is not released. It's in a very rough form at the moment. I need to test, clean it up, and trigger some more useful events (currently theres form-open, form-close, form-success, form-success-inserted, form-fail that you can tap into using .trigger or .bind).&lt;br /&gt;&lt;br /&gt;Once I get a 1.0 version ready &amp; documented I'll post it to http://plugins.jquery.com</description><link>http://www.pelicansareevil.com/blog/2008/05/addtolist-jquery-extension.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-8935375099351346440</guid><pubDate>Tue, 20 May 2008 13:55:00 +0000</pubDate><atom:updated>2008-05-21T00:07:20.944+10:00</atom:updated><title>Bind and trigger; adding custom events to existing dom elements</title><description>I've known about the bind and trigger methods for a while now, but I've never really bothered with them until tonight.&lt;br /&gt;&lt;br /&gt;I've been developing a 'add to select' plugin that allows you to dynamically add a new element to the select list, and that also ajax submits the new item. Anyway I needed a way to externally open and close the new item form. Externally the code looks something like this.&lt;br /&gt;&lt;br /&gt;$('select').trigger('closeForm');&lt;br /&gt;&lt;br /&gt;From within my plugin I have dynamically binded the closeForm event to a internal function that handles closing the form and tidying things up.&lt;br /&gt;&lt;br /&gt;My code sample is something like this:&lt;br /&gt;&lt;br /&gt;$('select').bind('closeForm', function() {&lt;br /&gt;    // logic to run to close form&lt;br /&gt;});&lt;br /&gt;&lt;br /&gt;All i did was add the trigger code above to an external button to close the form dynamically. Sweet!</description><link>http://www.pelicansareevil.com/blog/2008/05/bind-and-trigger-adding-custom-events.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-5940834665278927915</guid><pubDate>Fri, 16 May 2008 13:07:00 +0000</pubDate><atom:updated>2008-05-16T23:24:31.980+10:00</atom:updated><title>Sorry Firefox</title><description>I've just uninstalled firefox 3 not due to the browser itself, but I need a stable version of firebug, and the alpha (which is the only version I could get to work with B5) is buggy and causes the browser to crash. Tis a bit of a shame, but I guess I'll have to wait like everyone else. At least I won't be cursing so much this time around.&lt;br /&gt;&lt;br /&gt;My suggestion is if your not using firefox/firebug for development reasons then go ahead. Crashing and all it's not too bad.. unless your debugging.</description><link>http://www.pelicansareevil.com/blog/2008/05/sorry-firefox.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-8538439864939330115</guid><pubDate>Tue, 13 May 2008 05:53:00 +0000</pubDate><atom:updated>2008-05-16T14:19:17.271+10:00</atom:updated><title>Action Script 3's static initializer</title><description>Actionscript 3 has a handy undocumented feature called &lt;span style="font-style: italic;"&gt;static initalizer's&lt;/span&gt;. These nifty little buggers allow you to execute code when a &lt;span style="font-weight: bold;"&gt;class&lt;/span&gt; is loaded into memory, before any objects are initalised from the class. Unlike a constructor which is executed every time a object is initialised, &lt;span style="font-style: italic;"&gt;static initalizer's&lt;/span&gt; only execute once. This means they are perfect for the singleton pattern!&lt;br /&gt;&lt;br /&gt;The &lt;span style="font-style: italic;"&gt;static initalizer's&lt;/span&gt; code is placed within a class, however like a namespace, class or method there are NO keywords describing it. Here's some basic code to show you how a static initalizer works.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;package&lt;br /&gt;{&lt;br /&gt;  class ExampleStaticInitalizer&lt;br /&gt;  {&lt;br /&gt;      public static const test:String = new ExampleStaticInitalizser('test');&lt;br /&gt;&lt;br /&gt;      private var test:Boolean = false;&lt;br /&gt;      private var value:String;&lt;br /&gt;&lt;br /&gt;      // start static initalizer&lt;br /&gt;      {&lt;br /&gt;          test = true;&lt;br /&gt;      }&lt;br /&gt;      // end static initalizer&lt;br /&gt;&lt;br /&gt;      public function ExampleStaticInitalizser(label:String)&lt;br /&gt;      {&lt;br /&gt;          if(test) {&lt;br /&gt;              throw new Error('unable to init');&lt;br /&gt;          }&lt;br /&gt;          value = label;&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;      public function toString():String&lt;br /&gt;      {&lt;br /&gt;          return value;&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;The code above creates a enum object that you access though the static constant. The following code uses ExampleStaticInitalizer as the enum object.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;var enum:ExampleStaticInitalizer = ExampleStaticInitalizer.test;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;However if you try to create a new instance of ExampleStaticInitalizer via:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;var enum:ExampleStaticInitalizer = new ExampleStaticInitalizer();&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The runtime will throw an error!&lt;br /&gt;&lt;br /&gt;I'll be posting an example later of a Enumerate package that will help you build Enumerate objects that parse various types of data (strings, numbers, objects).</description><link>http://www.pelicansareevil.com/blog/2008/05/action-script-3s-static-initializer.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-4036247696996801547</guid><pubDate>Thu, 08 May 2008 14:50:00 +0000</pubDate><atom:updated>2008-05-09T01:03:09.589+10:00</atom:updated><title>Refactoring is fun!</title><description>My uber lite &lt;s&gt;m&lt;/s&gt;vc framework which I use to develop the refresh retreat registration application is going though a moderate refactoring that includes htmlhelpers, collections &amp;amp; a few other bits and peices. I'm actually enjoying the entire process. Using my friend regexp, I'm hardly making any actual coding changes by hand. The hardest part of the process is how to refactor.&lt;br /&gt;&lt;br /&gt;I struggled with a few things during the refactor but I put my brain into oo mode and pulled out some semantic (i think) methods for handling the most basic things. Take for example select, radio &amp;amp; checkbox groups. Each requires a list (value/label) item. My first thought was just to use a simple array, but I caught myself on how to use the array (associative arrays, multi-dimentional with specific associative key's to define the value/label.&lt;br /&gt;&lt;br /&gt;I almost commited to the array idea, before I remembered my friend collections! So i quickly whipped up 3 new classes, Collections, ListCollection &amp;amp; ListItem. By storing the list of data in a standardised collection I can easily swap between radio groups, selects or checkboxes just by changing the primary method.. Ahh I love inheritance!&lt;br /&gt;&lt;br /&gt;The only problem I still have is thats a php4 framework (it was all that was available on the server at the time of me writing the framework). It's a shame to jump back into php4 land after using languages like c#, php5 (it's oo isn't the best but it's leaps and bounds over php4), and actionscript 3. Oh well!&lt;br /&gt;&lt;br /&gt;Anyway I've still got more refactoring to do and im looking forward to it.&lt;br /&gt;&lt;br /&gt;Till next time!</description><link>http://www.pelicansareevil.com/blog/2008/05/refactoring-is-fun.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-4628307550909934992</guid><pubDate>Tue, 06 May 2008 12:49:00 +0000</pubDate><atom:updated>2008-05-09T01:05:36.978+10:00</atom:updated><title>The honeymoon is over...</title><description>I've been using Firefox 3 now for over 2 weeks and it was fan-bloody-tastic up until today. I'm a hardcore firebug user and I it was the deciding factor in upgrading to FF3.. No firebug, no upgrade. (I curse IE/opera/safari for not having a comparable tool when im forced to debug on those 'other' browsers). As i was saying fan-bloody-tastic.... I had to do some jquery debugging for a small search component I wrote. The combo of having FF3b5 and Firebug 1.1 installed caused the browser to crash for the following reasons:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Clicked a 'button' tag while a error existed in the log.&lt;/li&gt;&lt;li&gt;an error existed in the error log (this didn't happen all the time..)&lt;/li&gt;&lt;li&gt;random mouse movements (What the!)&lt;/li&gt;&lt;li&gt;Random reasons for which I couldn't give a crap to find out why. (-sigh- apparently alt-tabbing crashes FF3)&lt;/li&gt; &lt;/ol&gt;It was getting to the point where it crashed every 10 seconds for over 15 minutes. I was made worse by the fact I had a youtube tab open with a song that started to grate on me by the end of the day by the constant repeating.. (yes I'm that lazy to close the damn tab!)&lt;br /&gt;&lt;br /&gt;I'm sure it's not Firefoxes entire fault. I think there's something not quite write about firebug 1.1 on FF3. Then again it was me who installed both app/extension so I'm really to blame :(&lt;br /&gt;&lt;br /&gt;I also tried upgrading to firebug 1.2 alpha (which is really unstable). It was so good it wouldn't even allow me to inspect a dom element....! Needless to say I'm back to 1.1.&lt;br /&gt;&lt;br /&gt;After today I'd almost say im ready to back to FF2, however the fear of losing my settings/favs + that damm adictive/productive address bar has me coming back for more.&lt;br /&gt;&lt;br /&gt;Cya</description><link>http://www.pelicansareevil.com/blog/2008/05/honeymoon-is-over.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-5361403712772195261</guid><pubDate>Tue, 06 May 2008 11:53:00 +0000</pubDate><atom:updated>2008-05-06T21:53:55.043+10:00</atom:updated><title>Audio is the most underused UI element</title><description>Audio would have to be the most underused UI element within a web application. In fact it&amp;#39;s virtually never ever used! Many people I talk to about UI design don&amp;#39;t even acknowledge audio as a UI element. They see it as &amp;quot;music&amp;quot; or that audio should NEVER be used in a web page.&lt;br&gt; &lt;br&gt;I&amp;#39;m not refering to audio for mouseOver events in flash animiations.... I think just about everyone hates those. I&amp;#39;m talking about using audio for push &amp;amp; pull (aka polling) operations, that may occur while the application is not in focus.&lt;br&gt; &lt;br&gt;Email is a great example of this. A tradional mail application like thunderbird will poll your mail account every x minutes. When it detects a new email it shows a new window pane in the lower right hand corner of your screen and &amp;#39;ding&amp;#39;. I think this is a perfect example of when you should use audio. In fact gmail/hotmail would benefit greatly from this as a lot of people leave gmail open all day. Of course there are some people that just hate &amp;#39;noise&amp;#39; from web pages, or they don&amp;#39;t want to interfere with their music in the background. These are valid reasons not to, but if you get them the option everyone should be happy.&lt;br&gt; &lt;br&gt;Like any UI element, it can be abused. When the web became trendy, circa 1995, people who &amp;#39;programed&amp;#39; web pages thought it would be trendy to include anoying audio snippets when mousing over links (primarly in flash) and I guess this has stuck around in a lot of peoples minds. I hope that developers can get over this mentality and use audio in a productive way.&lt;br&gt; </description><link>http://www.pelicansareevil.com/blog/2008/05/audio-is-most-underused-ui-element.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-6216101426472465821</guid><pubDate>Thu, 24 Apr 2008 01:43:00 +0000</pubDate><atom:updated>2008-04-25T12:28:19.106+10:00</atom:updated><title>Please use more button tags</title><description>I love good UI design. In fact it's the thing I love most about the application design process. With HTML there are some great tags that most people have never even heard about, let alone actually used before. The first tag I'd like to bring to your attention is the button tag.&lt;br /&gt;&lt;br /&gt;I've been using these tags on and off since I've been learning html (over 10 years now). I realised how powerful they are when I needed a way to underline characters in a button (with conjunction with the accesskey property). The default input tag didn't allow me to underline characters, so the button tag quickly and easily allowed me to acomplished this. Since then I've used when whenever I needed something special out of a button.... But not any more.&lt;br /&gt;&lt;br /&gt;Icons. This is now the reason why I use the button tag over the input tag.&lt;br /&gt;&lt;br /&gt;There's a tastey tutorial on how to style button tags with icons at http://particletree.com/features/rediscovering-the-button-element/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="display: none; visibility: hidden;" id="wikEdSetupFlag"&gt;&lt;/span&gt;&lt;span style="display: none; visibility: hidden;" id="wikEdDiffSetupFlag"&gt;&lt;/span&gt;</description><link>http://www.pelicansareevil.com/blog/2008/04/please-use-more-button-tags.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-6224072416111915628</guid><pubDate>Thu, 24 Apr 2008 00:22:00 +0000</pubDate><atom:updated>2008-04-24T13:05:17.549+10:00</atom:updated><title>Firefox 3: My Thoughts</title><description>I installed Firefox 3 Beta 5 the other day, and I've had a few good days to play around with it. So far the experience has been great. There have been a few extension problems that have caused the browser to crash, but that's probably because I'm forcing certain older extensions to run on the beta, or running beta versions of extensions myself. Even while it's still in beta I wouldn't go back to FF2. It's that good.&lt;br /&gt;&lt;br /&gt;Firstly the performance side of things. You've probably heard a lot about this from other blogs, and it's all true. The program is a lot quicker. Leaving it open over night doesn't result in a daily restart of Firefox (yay). Tabs appear to load quicker and I no longer have the tab stalling issue I previously had (loading content in a tab froze the program for a few seconds).&lt;br /&gt;&lt;br /&gt;The UI changes have been subtle and over all it's a improvement. It's still consistent with the FF2 UI so don't expect many changes.&lt;br /&gt;&lt;br /&gt;The main thing I wanted to point out is the new address bar. In FF2 you used the address bar to type in urls, and if your url matched a previously visited site, it also displayed a list of matching urls in a list under the address bar. Firefox 3 takes this to the next level. You can now search your history/bookmarks from the address bar. The search functionality includes the page title, parts of the url (not the start of the url like FF2). I love the idea of this, however I'm still getting used to it. I'm so used to typing in urls that I only realise after I've opened the site that it would have been quicker to type part of the name. Getting to phpmyadmin by typing &lt;b&gt;phpm&lt;/b&gt; instead of &lt;b&gt;localhost/phpmyadmin&lt;/b&gt; is a lot quicker!&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;img src="http://pelicansareevil.com/blog/uploaded_images/ff3_addressbar-785155.jpg" align="center" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;There are plenty of other changes I love about Firefox3, but I just wanted to point out a few. I would strongly suggest that if you use Firefox 2 to at least read up on Firefox 3. If your game try installing the Beta, I'm sure you wont go back.&lt;span style="display: none; visibility: hidden;" id="wikEdSetupFlag"&gt;&lt;/span&gt;&lt;span style="display: none; visibility: hidden;" id="wikEdDiffSetupFlag"&gt;&lt;/span&gt;</description><link>http://www.pelicansareevil.com/blog/2008/04/firefox-3-my-thoughts.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-3907309574582822489</guid><pubDate>Thu, 03 Apr 2008 12:36:00 +0000</pubDate><atom:updated>2008-04-03T23:37:02.035+11:00</atom:updated><title>Flex: 3 months in</title><description>&lt;div&gt;It&amp;#39;s a pity flex is an Adobe product.&amp;nbsp;Don&amp;#39;t get me wrong, I&amp;#39;m loving flex, however if flex/flash was an open source standard it would have replaced html years ago.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;Having said that It wouldn&amp;#39;t be such a awesome platform to build from if it wern&amp;#39;t for the likes of macromedia &amp;amp; now Adobe.&lt;/div&gt; &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;I&amp;#39;ve only experienced flex for just over 3 months, however I love just about everything about it. I could ramble about it for hours, but I won&amp;#39;t bore you. A quick search on google provides with plenty of information.&lt;/div&gt;  &lt;div&gt;&amp;nbsp;&lt;/div&gt; &lt;div&gt;All I will say however is that if your in the business of making web based interfaces (for either web applications or web sites), then you should check out flex. As someone who has had a lot of experience with making html/css/javascript work cross-browser, it&amp;#39;s a breath of fresh air..&lt;/div&gt; </description><link>http://www.pelicansareevil.com/blog/2008/04/flex-3-months-in.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-4418910250932528652</guid><pubDate>Thu, 31 Jan 2008 03:44:00 +0000</pubDate><atom:updated>2008-01-31T14:45:26.055+11:00</atom:updated><title>New Car</title><description>&lt;p class="mobile-photo"&gt;&lt;a href="http://www.pelicansareevil.com/blog/uploaded_images/pologti-726057-726371.jpg"&gt;&lt;img src="http://www.pelicansareevil.com/blog/uploaded_images/pologti-726057-726230.jpg"  border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;font size="-1"&gt;&lt;font face="Century Gothic"&gt;It's been a pretty busy week. I picked up my new car last Friday (25th).&lt;br&gt; &lt;br&gt; :)&lt;br&gt; &lt;/font&gt;&lt;/font&gt; </description><link>http://www.pelicansareevil.com/blog/2008/01/new-car_31.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-1983620231542915821</guid><pubDate>Thu, 31 Jan 2008 03:43:00 +0000</pubDate><atom:updated>2008-01-31T14:43:07.353+11:00</atom:updated><title>Find Chuck Norris!</title><description>&lt;font size="-1"&gt;&lt;font face="Century Gothic"&gt;Try this&lt;br&gt; &lt;br&gt; 1. Go to &lt;a class="moz-txt-link-freetext" href="http://www.google.com"&gt;http://www.google.com&lt;/a&gt;&lt;br&gt; 2. Search for 'Find Chuck Norris'&lt;br&gt; 3. Click the I'm Feeling Lucky Button&lt;br&gt; 4. Enjoy&lt;br&gt; &lt;/font&gt;&lt;/font&gt; </description><link>http://www.pelicansareevil.com/blog/2008/01/find-chuck-norris.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-9048706649028300360</guid><pubDate>Mon, 21 Jan 2008 00:14:00 +0000</pubDate><atom:updated>2008-01-21T12:01:58.451+11:00</atom:updated><title>New Car on Friday?</title><description>Last Friday I was delighted to receive a phone call from Sutherland VW. My car had been pulled off the boat in QLD, compliance, etc and was ready to be hauled down to Sydney. I was told the latest of the last week in January. Possibly Friday.&lt;br /&gt;&lt;br /&gt;I'm not trying to excite myself too much at this point, but if I can get my car on Friday that would be totally sweetas. Realistically it'll be next Tuesday/Wednesday. I'll post some pictures up when i pick up the beast.</description><link>http://www.pelicansareevil.com/blog/2008/01/new-car-on-friday.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-4536530968901167687</guid><pubDate>Sun, 13 Jan 2008 07:00:00 +0000</pubDate><atom:updated>2008-01-17T12:36:56.996+11:00</atom:updated><title>New Car</title><description>Due to new year goals, and trying to motivate myself (I've been in a anti-motivational slump) I set myself a reaslist goal of purchasing a car before my birthday. I've been umming and r'ing about new vs used, small sports vs ute.&lt;br /&gt;&lt;br /&gt;All these problems vanished today when i signed a contract for a new VW Polo GTI in Candy White. I'm really happy with my decision. It looks freakin awesome + it has leather seats! It's just what I need in a car (small, quick, able to transport my bike to places).&lt;br /&gt;&lt;br /&gt;I did a great deal of research before making a decision. I also looked at a Holden UTE (the sales guy was a complete tosser), toyota yarris yrx (what was i thinking!), also the suzuki swift sport, ford fiesta XR4, and the Peugeot 207 GTI. Quite a mix eh? It was generally the styling, price and array of possible modifications that made the Polo GTI my fav.&lt;br /&gt;&lt;br /&gt;Also if you're interested in VW's/Audi's check out http://www.vwwatercooled.org.au. Awesome club site/forums.... however unfortunately I can't get to it from work (?).</description><link>http://www.pelicansareevil.com/blog/2008/01/new-car.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-4005702749639729844</guid><pubDate>Fri, 17 Aug 2007 06:57:00 +0000</pubDate><atom:updated>2007-08-17T17:03:34.333+10:00</atom:updated><title>jQuery: It's freakin sweet!</title><description>I don't recall how i found jQuery. Everything before that was kind of a blur.&lt;br /&gt;&lt;br /&gt;jQuery is a javascript library that will make your heart race when you first discover how powerful it is. I've been using it for 4 months and have converted a few friends and workmates to the idea that javascript frameworks rock!&lt;br /&gt;&lt;br /&gt;There are a few other javascript libraries out there, but for me jQuery sticks out with its dom selector approach and plugins (making the framework lighter). It's totally changed the way i write javascript and how i look at dom objects.&lt;br /&gt;&lt;br /&gt;Writing javascript for the jQuery framework helps promote your javascript as a seperate layer. You no longer need to add javascript events to your html. Your html code remains dedicated to data and structure.&lt;br /&gt;&lt;br /&gt;Just to tickle your programming tastebuds ive included a more complex example, which i will explain below.&lt;br /&gt;&lt;br /&gt;$('div').click(function() {&lt;br /&gt;alert('you have clicked me');&lt;br /&gt;}).hover(function() {&lt;br /&gt;$(this).css('background', '#EFEFEF');&lt;br /&gt;}, function() {&lt;br /&gt;$(this).css('background', '');&lt;br /&gt;}).css({color: 'red'}).hide().fadeIn(1000);&lt;br /&gt;&lt;br /&gt;That looks pretty complex, but jQuery is doing a lot of different things. It breaks down into:&lt;br /&gt;&lt;br /&gt;$('div')&lt;br /&gt;&lt;br /&gt;This is the dom selector. This is where 99% of your jquery code will start from. The selector supports css 1, 2 &amp; 3 + xpath. This returns every single div element from the page.&lt;br /&gt;&lt;br /&gt;From there is a matter of apending (method chaining) the methods that will have some sort of effect on the selected dom elements. (If thats too messy for you, you don't have to chain them.)&lt;br /&gt;&lt;br /&gt;In this example the click() and hover() methods are events. Hover is a special method that combines mouseover &amp;amp; mouse out (both are available seperately). These events fire your own defined function to do exactly what you want.&lt;br /&gt;&lt;br /&gt;Appended to those events are a css update, hide the elements and a animated fadein that occurs over 1 second.&lt;br /&gt;&lt;br /&gt;Pretty cool eh?&lt;br /&gt;&lt;br /&gt;jquery also has support for ajax, and a really good form plugin that will allow you to convert a standard form into a ajax request.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.jquery.com"&gt;Check it out!&lt;/a&gt;</description><link>http://www.pelicansareevil.com/blog/2007/08/jquery-its-freakin-sweet.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-3679564835304202539</guid><pubDate>Fri, 17 Aug 2007 05:27:00 +0000</pubDate><atom:updated>2007-08-17T15:32:48.884+10:00</atom:updated><title>So I've been lazy</title><description>A lot has happened since I've last posted. I've moved to Windows Vista, getting into javascript frameworks &amp;amp; interface design more, writing yet-to-be-released jquery extensions, ASP.NET (I had a major breakthrough with this today so it's now back in my good books).&lt;br /&gt;&lt;br /&gt;It's been busy.&lt;br /&gt;&lt;br /&gt;I'm hoping I can write more articles/tutorials, even though I'm not a natual 'writer'.&lt;br /&gt;&lt;br /&gt;I have lots to post about but ill trickle out the details over the next week or so. This way i'll have something to write about.</description><link>http://www.pelicansareevil.com/blog/2007/08/so-ive-been-lazy.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-8467587880998416310</guid><pubDate>Wed, 28 Feb 2007 03:52:00 +0000</pubDate><atom:updated>2007-02-28T14:52:57.363+11:00</atom:updated><title>I'm still alive</title><description>I&amp;#39;m posting to prove that I&amp;#39;m not dead. I&amp;#39;m not much of a writer &lt;br&gt;(constant writers block; I rewrote this damn post so many times!), but &lt;br&gt;I&amp;#39;m going to start to make a serious attempt to post regularly.&lt;p&gt;My plan is to write a tutorial/article on web development every week. &lt;br&gt;Here&amp;#39;s hoping!</description><link>http://www.pelicansareevil.com/blog/2007/02/im-still-alive.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-115621892718511593</guid><pubDate>Tue, 22 Aug 2006 03:46:00 +0000</pubDate><atom:updated>2006-11-16T12:04:45.745+11:00</atom:updated><title>innerHTML and Internet Explorer</title><description>Jagshemash!&lt;br /&gt;&lt;br /&gt;There is a "bug" in IE that will stop innerHTML working when you insert data that contains &lt;a href="http://www.course.com/downloads/newperspectives/crweb2/comp/HTMLBlock-level.htm"&gt;block tags&lt;/a&gt;. I have read on other forums that its caused by inserting block tags into inline tags (which is not actually an error as you shouldn't insert block tags into inline tags. It's not valid XHTML). However I had a problem where I was using ajax to obtain code for a html table, then inserting that table into a div tag using innerHTML.&lt;br /&gt;&lt;br /&gt;When I tested my ajax in IE, I got a runtime error. After hours of thinking it was my ajax I discovered that it was caused by innerHTML.&lt;br /&gt;&lt;br /&gt;Lets take a look at an example shall we?&lt;br /&gt;&lt;code&gt;var div_tag = document.getElementById('div_tag');&lt;br /&gt;div_tag.innerHTML = '&amp;lt;table&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Hi there&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;';&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now your probally thinking that the previous code should work in IE. Well it doesn't. IE will kick you to the curb with a runtime error if you tried that. It's because IE (in all its wisdom) does not like you!&lt;br /&gt;&lt;br /&gt;However its pretty easy to get around, just a few extra steps are needed!&lt;br /&gt;&lt;br /&gt;&lt;code&gt;var tmp_tag = document.createElement('div');&lt;br /&gt;var div_tag = document.getElementById('div_tag');&lt;br /&gt;tmp_tag.innerHTML = '&amp;lt;table&amp;gt;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Hi there&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;';&lt;br /&gt;div_tag.appendChild(tmp_tag);&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This basically creates a new div tag (via createElement), adds the html into that tag and appends that tag into the span tag.&lt;br /&gt;&lt;br /&gt;This works in both IE &amp;amp; FireFox.&lt;br /&gt;Enjoy.</description><link>http://www.pelicansareevil.com/blog/2006/08/innerhtml-and-internet-explorer.html</link><author>noreply@blogger.com (Ben Rowe)</author></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-28136632.post-115443594236343465</guid><pubDate>Tue, 01 Aug 2006 12:39:00 +0000</pubDate><atom:updated>2006-11-16T12:04:45.648+11:00</atom:updated><title>Movie Manager plugging along</title><description>We'll in one short weekend I've accomplished so much! I can't believe how close Movie Manager is to being at a stable release with its core functionality working. &lt;br&gt; &lt;br&gt; After reworking the final specs of 1.0 and getting motivated to do some programing I've knocked off almost 2/3s of the 1.0 roadmap. I know there are a few people already interested in it and I'll be very glad to get this project finished after many months laying dormant. &lt;br&gt; &lt;br&gt; I've started to briefly look into a website for Movie Manager and decided to go with &lt;a href="http://www.mediawiki.org/wiki/MediaWiki"&gt;mediawiki&lt;/a&gt;. It's the software that runs &lt;a  href="http://en.wikipedia.org/wiki/Wikipedia"&gt;wikipedia.org&lt;/a&gt;. I'll also put up a forums.&lt;br&gt;</description><link>http://www.pelicansareevil.com/blog/2006/08/movie-manager-plugging-along.html</link><author>noreply@blogger.com (Ben Rowe)</author></item></channel></rss>