Google I/O 2010!

Posted on Jan 12, 2010 in Tech News, Training / Conferences | 0 comments

Just got my ticket for this year’s Google I/O conference in San Francisco. Can’t wait!

And in Google-related news, check out the following post on their relationship with China, having discovered sophisticated attacks on their company to extract information about Chinese human rights activists. Heavy stuff.

“These attacks and the surveillance they have uncovered–combined with the attempts over the past year to further limit free speech on the web–have led us to conclude that we should review the feasibility of our business operations in China. We have decided we are no longer willing to continue censoring our results on, and so over the next few weeks we will be discussing with the Chinese government the basis on which we could operate an unfiltered search engine within the law, if at all. We recognize that this may well mean having to shut down, and potentially our offices in China.”

Read More


Posted on Nov 24, 2009 in Tech News | 0 comments

Last night I came up with a grand plan to create a JS HTML serializer so I could create JSON representations of HTML markup. My goal was to completely do away with creating HTML markup via DOM or string building, relying instead on standardized JSON formatted objects and some parser functions to convert them to and from HTML.

Well, turns out it’s already done – at least in the abstract. Rats. All my good ideas are other people’s.

I’m going to do a little more digging, but a Prototype/jQuery extension to generate HTML markup based on that format seems like a real no-brainer. It could seriously reduce code clutter, plus it would abstract away the actual node creation into a library that could handle it in a way that’s most efficient for the JS framework being used.

IBM wrote an article on it way back in July 2007, which is worth a read:

Neat stuff! I’ll certainly investigate it for future DHTML work.

Read More

cfdump for PHP

Posted on Oct 10, 2009 in Tech News | 2 comments

cfdump is a catch-all Coldfusion function for debugging. It outputs the entire contents of the variable – regardless of variable type – into a webpage in a nicely formatted, coloured DHTML table. This is definitely one of ColdFusion’s better features…

I wrote this very same function a few years ago after using Coldfusion for a few months, except mine wasn’t half as good. This one’s an almost exact match of the Coldfusion function for use in PHP. Brilliant!

Unbelievable it’s only been downloaded ~900 times…! Try it out: you won’t regret it.

Read More

Why not to use @import

Posted on Apr 10, 2009 in Tech News | 0 comments

Here’s a very interesting article posted yesterday by Steve Souders on his blog, which outlines a disadvantage of using @import over standard the link tag. See here:Â

The crux of the article is that @import results in stylesheets being downloaded sequentially rather than in parallel, resulting in slower load times. It covers a variety of cases; multiple @imports, @imports + link tags, and more.

The article is entirely about IE, saying that the problem exists on version 6, 7 and 8. The conclusion is that standard link tags work consistently over all browsers and should be used instead.

Read More

IE8 Released

Posted on Mar 19, 2009 in Tech News | 0 comments

Howdy folks,

IE8 has been officially release today – download it here! It’s nice to see IE 6 get pushed further and further into the past.

I already posted about this stuff a long while back, but I thought refreshing my memory was probably a good idea. Here’s some of the new features, from a developers point of view.

JavaScript & the DOM

The previous IE release was mainly devoted to CSS compliance fixes, but IE8 has lots of nice new juicy features for JS.

  • Browser Nav: the browser’s query string hash property (#) is writable and any changes are logged for use with the browser’s back button. This will hopefully make external Ajax nav libraries like RSH a thing of the past.
  • Offline Save: ajax apps can save data locally if offline. This seems like a very basic version of some Google Gears functionality, but at least it’s built into the browser itself.
  • Increased number of connections to same host: IE 8 increases the # connections to 8. This could be handy for reducing response times for simultaneous Ajax requests.
  • Timeout requests: option to set timeout requests on server calls.
  • Sanitize HTML: remove event properties and scripts from HTML fragments with window.toStaticHTML. Kinda interesting.
  • Cross-document Messaging — Documents in different domains can securely exchange data using postMessage. Documents that receive messages listen for the onmessage event.
  • Cross-domain Request (XDR) — To allow developers to more safely combine services from different Web sites, the XDomainRequest object restricts and secures communication between untrusted modules in a Web page. The browser shields the user from potential threats while allowing powerful cross-site interaction.
  • querySelector and querySelectorAll. These allow you to select any DOM element based on the selector. For anyone who’s used any of the JS frameworks over the last few years, these will be less than thrilling; jQuery, Prototype, Mootools etc all have this already.
  • document.getElementById finally WORKS; i.e. (no pun intended) it returns elements by ID only (not “name”, arghhh!!) and it’s case sensitive at last.
  • DOM Storage. I posted about this a long time ago. Neat idea. From their site:

“The ability to store and retrieve large amounts of data directly to a user’s hard drive is important to browser-based applications that want to extend their reach beyond client-server interactions. Local storage is also comes in handy when disconnected from the Internet, and synchronize local changes when an active Internet connection returns. Scriptable online and offline connectivity events fire when connection status changes.”

  • setAttribute is now case-sensitive and works with “class” and “for” attributes. Nice! Lack of support for class was a bloody drag. All my DOM code assigns the class twice. Once for IE, once for the rest of the world.
  • button element now submits its actual VALUE, not innerHTML value.


Further CSS compliance.

  • display element now supports all the various table-related values: table, table-row, table-row-group, inline-table, table-cell and others.
  • :before and :after pseudo-elements now supported. Cool!
  • counter-reset and counter-increment added.
  • outline — Enables elements to be highlighted without affecting their size. The outline is a shorthand property for outline-color, outline-style, and outline-width.
  • Printing — The following properties have been added:
    – page-break-inside — Avoid page breaks inside an element’s box; if necessary, Internet Explorer will move the element to the following printed page.
    – widows and orphans — Control how many lines appear at the bottom and top of each printed page.
  • Additional pseudo classes — The following pseudo classes are supported by Internet Explorer 8:
    - :lang(C) — Selectors can match an element based on the lang attribute of an element or one of its ancestors. The default language of the Web page is set on the html element.
    – :focus — Applies while an element has the input focus.
  • browser-specific attributes — CSS properties that apply only to Internet Explorer are named with the -ms- prefix, such as -ms-writing-mode.
Read More

Windows 7 Beta available for limited download

Posted on Jan 23, 2009 in Tech News | 0 comments

Windows 7 Beta is now free to download for the first 2.5 million users. The New York Times has an interesting article on it here, outlining the various improvements. Worth a read.

What’s especially interesting is the content they’ve borrowed from Mac. I’m no raving Mac fan, but I do own one, and certain features like the dock – containing icons of all your favourite programs – are finally going to be implemented in Windows 7, replacing the old quick launch section. This is excellent. I use the quick launch section religiously, but I often click on the wrong tiny little icon.

If I had more time, I’d download and play around with the new OS – if only to test drive IE8 which comes with it.

Read More