Skip to Content Skip to Search Go to Top Navigation Go to Side Menu
Search on Site

"Technology" Category

got API?

Monday, May 22, 2006

http://www.gotapi.com/

Neat.

Popularity: 11% [?]

Black MacBook

Tuesday, May 16, 2006

I’ve just had a look at a photo stream on Flickr of the new MacBooks.

I think this Slashdot comment says it all:

I mean, it’s really not that great value for the black ones. It’s quite an expensive price bump for the black finish and an extra few gigs of hard dr….OH GOD I WANT A BLACK MACBOOK!

I am weak.

Popularity: 11% [?]

Power Poop

Tuesday, May 16, 2006

I just went to a seminar about Power Point where the trainer said (to an audience of career PAs), “creativity cannot be taught, it is a gift, if you don’t have creativity may be someone else in the office should be making your presentation.” At which point I thought, a) why are you bothering with this seminar at all? and b) where is the creativity in using Power Point?

Be prepared, I am now equipped to unleash spinning exploding text on the world.

Ugh.

Oh, and Alex, can I ask two questions in a blog? Although the questions are rhetorical, so I expect it doesn’t count…

Popularity: 17% [?]

Wii-wease Wodger!

Friday, April 28, 2006

I’d just like to chime in with the Monty Python reference.

Honestly, this and Mac Book Pro, where did all the good product names go this year?

Update

I’d just like to add Core Duo 2 Extreme to the list of this year’s silly product names. Which will probably be followed by Core Duo 2000 Extreme Hyper Ultra Edition For Gamers and Core Duo 2 Grey and Inoffensive for the budget desktop version. I mean, really…

Popularity: 10% [?]

Winamp at OldVersion.com

Monday, April 24, 2006

I just thought I’d share this:

OldVersion.com - Because newer is not necessarily better.

Too bloody right.

Versions 0.2 to 5.1

(I’m writing a bit on Winamp and Geiss in particular for my dissertation, and am harking back to the halcyon days of WinAmp 2. Ah, yes… You can also get the Geiss screensaver from here. I’d long thought it unavailable. It’s good to be wrong).

Popularity: 13% [?]

JSThing - fun with JavaScript

Tuesday, April 18, 2006

I’ve just posted JSThing on the stuff page. It’s a bit of JavaScript in the form of a favelet that allows you to edit the window object of a given web page and interact with your changes. It works well with Firefox but is a bit too long for IE.

JavaScript is a wonderful little language. When you load a page with some JavaScript in it, the objects and functions that are created exist for the duration of the page in your browser. Some of the data may have been used, some may not. JSThing allows you to examine and change that data.

Here’s a little example. If you add JSThing to your links bar (get it from the link above), then head over to http://www.google.co.uk and activate JSThing, you’ll see that the fourth item in the window object is a function called qs(). It looks like this:

function qs(el) {
if (window.RegExp && window.encodeURIComponent) {
var ue = el.href;
var qe = encodeURIComponent(document.f.q.value);
if (ue.indexOf("q=") != -1) {
el.href = ue.replace(new RegExp("q=[^&$]*"), "q=" + qe);
} else {
el.href = ue + "&q=" + qe;
}
}
return 1;
}

Examining the source of Google’s home page reveals that this function gets called when you click the Images, Groups, etc links above the search box. In JSThing, hit the little red hat next to the the name and type of the item (qs function) and it will appear in the boxes at the top. Change the function to read:

function qs(el) {
window.opener.alert(el);
return false;
}

and hit ‘Go’. Some text should appear saying ‘Value changed, hit refresh’. Click the ‘Refresh tree’ link above where the text appears and the list of properties should update to reflect your changes.

Now go back to the Google window and click one of the Item, Groups, etc links. An alert box should appear with a URL in it.

This sort of behaviour should be possible on pretty much any page. AJAX applications in particular should be quite fun to play with.

Also, inspecting code to debug your own programs should be much easier with this - for example, ensuring proper namespacing (as proper as you can get with a language where everything is global by default) is a doddle.

Try it out and let me know how you get on.

Update - It now treats arrays slightly differently from other objects in order to parse them properly.
Update - Slightly better error handling when trying to access properties it shouldn’t.
Update - Human readable source now available.

Popularity: 10% [?]

Peekaboo!

Tuesday, April 11, 2006

Ladies and gentlemen, the peekaboo bug*.

Quite a compelling reason as to why Internet Explorer is teh_stupiderer.

What is it? Position something absolutely, float something inside it and poof, seemingly random chunks of your content are belong to the void until you click, select or otherwise massage the seemingly blank area, or one nearby.

The fix? Give the absolutely positioned thing a line height value. Any line height value. line-height: 1; if you want.

Doesn’t it just make you want to stab yourself in the eye with a fork?

* = No, it’s not new. I just needed to vent some steam, okay?

Popularity: 10% [?]

Detecting Opera

Monday, April 10, 2006

A.K.A. - You can run, but you can’t hide

Mmh, object detection. Assuming JavaScript is turned on (a rather large caveat, granted), it seems to be a pretty reliable method of figuring out which browser your user is, uh, using.

Much like you can code CSS for certain browsers by exploiting holes in their support for various bits any bobs, different browsers support different bits of the ECMAScript standard, and other add their own extensions into the mix.

There’s a wonderful page on object detection over at dhtmlnirvana.com (don’t be afraid of the name), but there is one problem. If you are piddling about with AJAX, you’ll need some way of distinguishing between Opera >= 8 (which supports xmlhttprequest) and Opera < 8 (which doesn’t).

The dhtmlnirvana page has the following:

//Opera 7
opera7 = window.opera &amp;&amp; document.createComment

//Opera 6 and below
oldopera= window.opera && !document.createComment

Which presents a problem:

if(window.opera &amp;&amp; (document.createComment || !document.createComment))
{
// Opera &lt;= 7
}
else
{
// !(Opera &lt;= 7)
}

which boils down to:

if(window.opera)
{

}

neatly ghettoising all those poor Opera users.

Thankfully, some helpful chap (or chapess, it doesn’t specify) has put a page up on the window.opera object (an object provided by Opera for fun things like JavaScript debugging), and first on the list?

# opera.addEventListener(string: type,function: handler,bool: phase)

* Opera 5&6&7-7.6: No support
* Opera 8+: Registers an event listener for a User JavaScript event. This method only has any effect in User JavaScript files.

Genius. Now we can use:

if((window.opera &amp;&amp; !window.opera.addEventListener))
{
// Opera &lt; 8
}
else
{
// !(Opera &lt; 8)
}

Throw in some other bits and bobs and you have:

function checkAJAXCapable()
{
if( // non dom browsers
(!document.getElementsByTagName || !document.getElementById)
// ie 5/mac
|| (document.all &amp;&amp; !document.mimeType &amp;&amp; !window.opera)
// opera &lt; 8
|| (window.opera &amp;&amp; !window.opera.addEventListener)
)
{
// put something here to deal with non-supported browsers
}
}

Popularity: 10% [?]

CSS Naked Day

Wednesday, April 5, 2006

It’s CSS Naked Day, time to bare the nether regions of your markup, flop it onto the table and feel the air running through it.

That rather disturbing metaphor aside, I initially thought that this was a rather silly idea as all it’s going to do is confuse people (god forbid anyone would actually read what’s on the page, which seems to explain what’s going on on all the sites participating), but on reflection it’s really a bit clever. At least, it’s getting me to take a good, long look (the kind of good, long look you can only take when you’ve got far more pressing things to attend to like, oh, revision) at how even though I try my best to use only valid structural markup and keep all the presentation stuff in CSS, a few decisions are made purely based on layout. For example, occasionally, just occasionally, I’ll do the following (minus all those point obscuring tag attributes):

<label>
<input /> text:</label>

Define a height and width for the label, make it display: block, give the input a width and float: right and bang, beautifully aligned forms with minimal code. However this is very lazy and the method used on this site is much better (even though it looks a bit silly today with no styling, but hey - that’s the point, eh?) and will be all I use from now on I’m very naughty sorry sorry sorry.

Popularity: 9% [?]

Maps

Thursday, March 23, 2006

I’m going for short and sweet today.

Type “map” into Google. The Google Maps site only comes out fifth on the result list. Surely they could skew that kind of thing. However, I am pleased that the tube map comes out higher. It is certainly one of the most iconographic designs in existence. Then again, give it 50 years and people will probably be saying the same of Google’s logo.

Popularity: 16% [?]

Yet another PHP framework

Saturday, March 11, 2006

http://framework.zend.com

However this one is written by Zend (who are pretty important the PHP sphere - a Redhat to your Linux, an IBM to your Java - not an inventor but a significant contributor), so it’s probably worth checking out.

I’m never sure about frameworks. If documentation is limited, it may be quicker to knock your own version up rather than try to understand someone else’s code - you also get the added bonus of a deeper understanding of the issues involved which can greatly speed up debugging and make you sound knowledgeable in the pub. There’s also usually quite a big overhead in terms of code that’s included which won’t get used. You also get tied to their way of doing things and as such your app becomes subject to the whim and fancy of their developers. On the other hand, they are often much more thoroughly debugged than your own code (particularly the open source ones due to the amount of feedback they are likely to receive) and probably written by someone a lot better at it than you are.

Some frameworks seem to do more than just add a few short cuts, syntactic sugar and convenience methods though, and these are the ones that really interest me. At the moment I’m eyeing up the rather fabulous looking Prototype for the pet project (which barring a few silly layout issues which will be fixed in the Great Refactoring and Redesign over the summer, now works in Internet Explorer, hurrah! - Ah, how coursework deadlines wonderfully focus the mind on other things), as it actually extends the JavaScript language in a genuinely useful way. For example, it adds a method called getElementsByClassName to the DOM. Why wasn’t it there in the first place? Exactly.

It’s not all roses and plum pudding though - the word ‘extends’ nearly brings me out in a cold sweat, as that’s exactly the sort of thing Microsoft and Netscape were doing at the end of the last century, and we all know how that ended up. But to get a sense of perspective back, the Prototype library is just a JavaScript document that you add to your page, no more, no less. It’s not some sort of browser plugin, extension, hack or other massive change inducing thing. The code is there to see and they take particular pains to get it to function identically on whatever platform.

Hmm..*

* = I can’t think of a suitable closing sentence and I’ve got a compiler to write, so ‘hmm’ will have to do.

Popularity: 9% [?]

Last.fm

Thursday, March 9, 2006

Today, in the office studio, we have mostly been listening to the rather excellent social networking/Internet radio/music recommendation service Last.fm.

It rocketh, pwns all your demographic base and conveniently is available for Windows, OS X, Linux and even BSD.

Those clever chaps have even developed a plugin for your media player that collects data used to recommend songs. Supported media players include not only the usual suspects (iTunes, WinAmp, etc), but even XMMS, RythmnBox, Noatun, SlimServer and the Xbox Media Center.

Crikey.

Popularity: 9% [?]

Pretty, huh?

Monday, March 6, 2006

It’s what a drum roll accompanied by a repetitive bass drum beat looks like.

Popularity: 10% [?]

Spyware

Saturday, February 25, 2006

I’ve been having a lot of trouble with spyware recently. I bought a new monitor for the desktop which has spurred me on to using it more often and the more powerful 3D card (vs my laptop) is useful for my final year project as well.

It seems trying to keep a couple of desktops from getting infected is a full time job. I swear, I was *this* close to breaking out the Gentoo install CDs on the desktop the other day.

Fucking Windows. Why is drive by installation of software so easy, even with FireFox? You don’t even get prompted for any bizarre downloads or for any files to be run, it’s insidious. Some of the software is just plain aggressive (I’m looking at you, CoolWebSearch).

What a pain.

The only upshot of all this is that it seem that it can’t infect your machine/spread the infection if you are logged in as a limited user rather than an administrator. At which point any readers using Linux/Mac OS/BSD/anything !Windows slap their foreheads and go

Common sense, duh!

Yes, indeed. Although have you tried running Windows without Administrator access on a home machine? It’s next to impossible. I always find myself switching accounts to install this or change that. Not exactly good for the work flow.

Apparently Vista will have a feature similar to sudo or gksudo which should ease the pain of working as a non-privileged user on a home desktop, although saying that sort of stuff kind of makes me feel a bit faint. It’ll be fixed in the next version, Microsoft will save us, ooh, a novel new feature, etc. Not much use right now, is it? Particularly when the *NIX-a-likes of the world have had this sort of facility for, what - 20 odd years?

Grrrmrmmhmh mutter mutter…

Popularity: 10% [?]

Spiderman joystick

Thursday, February 23, 2006

http://xbox360.ign.com/articles/690/690449p1.html

Blimey. I nearly spat very mayonnaisey chicken and bacon ciabatta over my monitor (it’s at the bottom of the page).

It’s something to do with the way he’s holding it and that episode of Red Dwarf where Lister says the pleasure gelf that making love to a complete stranger is a very serious business, so she relax while he changes into his Spiderman costume.

*shudders*

Popularity: 10% [?]

Wired Apple keyboard

Tuesday, February 21, 2006

I never thought it would be so difficult to buy a wired Apple keyboard in South London at short notice.

Really quite incredible.

I keep being met with ‘A what keyboard?’ or just ‘Buuugh, we don’t sell them here. Have you looked at the Logitech ones? They’ve got lots of media buttons!’. Yes, yes they do. If I try really, really hard, I might even press one, one day.

Update

There’s an Authorised Apple reseller in Bulwagh. Well I never. Not that they’ve got any stock of wired keyboards, mind…

Popularity: 9% [?]

Do you know how much several Web Designer earns

Friday, February 10, 2006

Got this in my inbox the other day:

Do you know how much several Web Designer earns?
120-170 K bucks per year!

Don’t believe? Visit http://www.jobsearch.com/ , http://www.JobMonster.com/ or any other famous job site!

Don’t you want to change your job now? :-P

Learn the best and the most effective web designer’s tools first:

Photoshop 7
It is an integrated design environment that combines the most complete upgrade - featuring full, new versions of the tools you rely on most for image editing, illustration, page layout, and cross-media output - with innovative file-management features, and comprehensive design resources.

Dreamweaver MX 2004
It is the professional choice for building web sites and applications. It provides a powerful combination of visual layout tools, application development features, and code editing support, enabling developers and designers at every skill level to create visually appealing, standards-based sites and applications quickly. From leading support for CSS-based design to hand-coding features, Dreamweaver provides the tools professionals need in an integrated, streamlined environment. Developers can use Dreamweaver with the server technology of their choice to build powerful Internet applications that connect users to databases, web services, and legacy systems.

Macromedia Flash MX 2004
It is the industry standard tool for creating effective rich content across desktops and devices. Designers and developers use Macromedia Flash MX 2004 to accelerate projects while maintaining a high degree of creative control. Take advantage of the vast Macromedia online Resource Library. Speed workflow by directly importing media including digital video, PDF and EPS files. Add interactivity with powerful scripting and enhance content with custom effects from third-party extensions.

All these program include full “Help” (F1 key) and can be easily learned by any advanced PC user.

Only on our site you can find all soft with 75% discount!
*link would have been here*

Very odd. I particularly like the F1 key bit.

Popularity: 16% [?]

BBC Bitesize

Monday, February 6, 2006

Verity ‘Cruft Force‘ Stob opens up a can of whupass on the BBC Bitesize revision website covering ‘ICT’, whatever that is. Genius.

http://www.regdeveloper.co.uk/2006/02/06/bitesize_gcse/

I particularly like the programme/program bit. That always irritates me.

Popularity: 49% [?]

IE7 Beta version available

Wednesday, February 1, 2006

Looks like you can download a beta preview version of Internet Explorer 7.

My first impressions, typed as I’m using it

  • Looks good. Has a built in search box like, well, pretty much every other browser.
  • Gets the box model right.
  • Tabs are controlled by the same keystrokes as in Firefox and Safari.
  • Most sites look the same as before, not much should be needed to whip sites into shape.
  • Ooh, the File, Edit, View menu has gone. Isn’t that bad from a UI familiarity point of view?
  • ‘This site might required the following add on: ‘Microsoft (R) HTML Viewer from ‘Microsoft Corporation’. Click here to allow the control to run…’. Huh?
  • Where’s the reload page button?
  • Oh, it’s on the other side of the address bar, along with the ’stop loading page’ button.
  • Those back/forward buttons are pretty ugly. Almost jagged around the edges.
  • Hmm. You can only close a tab by first selecting it
  • To change the default search engine in the browser, you have to go to Microsoft’s site to do it. That’s a little creepy.
  • Ooh, support for the alpha channel in 24 bit PNG images. About fucking time.
  • Coffee and feeds still doesn’t work. Must be my shitty code then.
  • Pretty neat built in RSS reader. Lets you filter the feed you are currently reading.
  • Uses the same RSS icon as Firefox. Good. It’s not as intuitive as it could be (looks like a wireless logo), but it’s better than the XML one.
  • The status bar is on by default.
  • A pop up blocker is on by default.
  • It doesn’t offer to remember your usernames/passwords by default. This, I think, is a good thing.
  • Hang on. The reload button turns into the ‘Go’ button when the contents of the address bar doesn’t match the URL of the page we are on, but doesn’t change back to reload if you change what’s in the address bar back. All this time, the stop button can still be clicked. That’s silly. Safari does this much better - when the page is loaded, the stop button turns into the refresh button. Why would you want to stop a page from loading that has already loaded. Considering they seem to have tried to minimise what’s outside the web page display area, it doesn’t look like they’ve thought that bit through.
  • The quick tabs feature is pretty neat. It will show you selectable thumbnails of all the tabs currently open. Although having said that, I’ve just uninstalled an extension from Firefox that does the same thing because I never used it…
  • Built in reference book search? Wha?
  • Still a pain in the arse to disable Javascript
  • Really don’t think much of the shiny gem type buttons and tab backgrounds. Makes the page titles a little hard to read.
  • While we’re on the subject of buttons, there’s not much to distinguish between the ‘Favourites Centre’ and ‘Add/Subscribe’ button. Why not use the new RSS logo for ‘Add/Subscribe’.
  • The dwarf ‘New Tab’ tab should always have it’s icon visible. Why am I clicking on a tab to open a new tab? I want to be clicking on a button.

Meh, back to work.

Popularity: 10% [?]

Billwatch II

Friday, January 27, 2006

Another gem of an article from Bill Thompson.

This time he’s ranting about Google, which recently agreed to censor search results typed into their Chinese portal - words like ‘democracy’, ‘freedom’, ‘falun gong’, etc.

The funny thing is that his article comes out in favour of this censorship.

Supporters of free speech and open societies should be supporting Google rather than lambasting it.

Obviously. This makes perfect sense.

Amidst all the fuss about Google’s decision to comply with local law in China it is easy to overlook the fact that internet (sic) content is censored and controlled almost everywhere.

Which apparently makes it okay.

He then launches into a massive rant about how companies in the UK censor online content - using the example that BT have a ‘service‘ which denies access to pages which may contain images of child abuse without letting you know that you’ve requested banned content. Google, he argues, are okay because at least they will tell you that access to the resources returned as results of your search terms are banned by local law. The technology parallels may be there, but from a social context his argument seems a little warped.

Then follows a little bit of ‘I art Googlier than thou’ (he’s been following the company for some time) and a bit of Microsoft bashing (an easy target?). But then he completely loses the plot and turns his little tirade into a call for Western powers to extend the olive branch of diplomacy to China, comparing sanctions imposed against South Africa to encourage the end of apartheid to Internet companies not dealing with China in an attempt to promote free speech.

Never mind that earlier in the article he establishes that this is not the case, by pointing out that many online based companies (Yahoo, MSN and yes, even Google) are already operating in China, making his point redundant.

As if Google or MSN withholding their search engines from China are even remotely comparable to UN imposed economic sanctions.

Honestly, this kind of egotistical technocratic drivel really irritates me. I’m surprised he didn’t manage to fit Web 2.0 into the article somewhere.

Popularity: 10% [?]