Posts in the "Technology" Category

ELO – Encapsulated Load Object – The ultimate way to handle window load events

Updated April 11th

Changed so it will work fine under https as well in Internet Explorer.

If you like this, you might also be interested in DOMAssistant.

Most people who have worked with JavaScript has cursed the time it takes to apply JavaScript to the document (events, for instance) because you’ve waited for the whole document to load. The problem is that we have relied on the onload event to be triggered and that doesn’t happen until all HTML code and every image and other dependency has loaded. In most cases, we want to have our scripts as soon as the DOM has finished loading and not wait for images and their likes.

Therefore, I have with great interest followed the work of Dean Edwards, together with Matthias Miller and John Resig, and the exciting conclusion they came to in window.onload (again).

I really like the gist of it and the implications it brings, but I wanted to make it more flexible for any number of load events. Therefore I created ELO – Encapsulated Load Object.

Continue reading

Win a 1 GB iPod Shuffle – Name your favorite HTML element

The competition is now closed: we have a winner!

First, let me sincerely tell you that I’ve thoroughly read every motivation, and many of them were outstanding! You are really smart and funny people, and you all deserve one iPod Shuffle each (no, it’s not going to happen :-)! Thank you for all your wonderful contributions!

In the end, I went for something simple and a bit philosophical, and would proudly like to announce Barry Allison and his motivation the winner of this contest. Congratulations Barry!

Ok, here’s the deal. For the next couple of days I will be very busy, so I don’t find it likely that I will be able to find the time to write. But don’t worry, I think I’ve found a way to make it up to you: a contest!

Continue reading

Web 2.0 winners and losers

I very rarely use the term Web 2.0 because to me it’s almost every time about misused to create a non-existent hype, a company’s excuse for creating an inaccessible AJAX web site and other similar things. With that said, I recommend reading Paul Scriven’s two articles:

GLT – Good-Looking Tooltips

Updated September 27th 2006

Apparently Opera’s claim to support document.all in conjunction with not mimicking it exactly like IE led to some problems in Opera 9 when I use my getElementsByAttribute function. Thanks to Ash Searle who tipped me about this and also explained what the problem was. The code in the JavaScript file to download has been updated.

Also, Harmen asked an interesting question about nested elements with the title attribute. It didn’t work initially, but now I’ve updated the GLT JavaScript file with support for that as well.

Updated September 28th 2006

I did some thinking how to address the faulty technical implementation in IE to display values in the alt attribute as a tooltip, and if I should suppress it on images that have a title attribute as well. I decided to implement a setting for it and then it’s up to you to choose. The GLT JavaScript file now contains one more setting: suppressAltTooltipsInIE : true.

Updated September 29th 2006

I’ve done a very minor change to the event handling to cover up for a bug in IE’s garbage collector (something I hear will be addressed automatically in IE 7). In 99,9% of the cases you won’t notice any difference, but if you use it in a very advanced web site/web application it might make things better and less resource intensive.

Updated October 1st 2006

Just as Chris commented, the script didn’t consider if the custom tooltip would disappear if it was positioned too far to the right. It is now updated with a fix for this.

Updated October 19th 2006

A side-effect happened in Firefox when using GLT for any link; the status text wasn’t shown in the web browser status field. This issue has now been addressed.

Updated October 25th 2006

Just as Jordan Ambra pointed out to me, there were cases when you could mouse out from the element just when the GLT element was shown, and making it stick and not fade out. This was just because of a tiny typo by me in the code, but it has now been fixed.

Updated January 5th 2007

Bob pointed out a typo of me in the code, where the result was that you couldn’t turn off the fading in through the fadeInTitle property. The code has been updated and can be downloaded in the GLT web page.

Updated April 15th 2007

Added an extra check to prevent any eventual error that occurred when hovering a GLT element in the middle of the loading of the page.

As of lately it seems like I’m giving you a new JavaScript library every second day. But don’t worry, I will be fairly busy in the upcoming months so this one is probably the last one for a while. 🙂

Anyway, tooltips in a web page, maybe more commonly known as what will be displayed when using the title attribute on an element, have some shortcomings that I wanted to address.

Continue reading

Let OS X free!

I use a PC with Windows at work and a Mac with Mac OS X at home and I like them both. They each have their distinct benefits but also shortcomings. What does annoy me in the computer market is when one company, no matter which company it is, gets such a monopoly that it can basically do or produce anything and the end users have no choice but to happily get into line and accept it.

So, therefore I urge: Let Mac OS X Free!

Continue reading

FaT-Focus at This – advanced JavaScript focusing library

Updated September 29th 2006

I’ve done a very minor change to the event handling to cover up for a bug in IE’s garbage collector (something I hear will be addressed automatically in IE 7). In 99,9% of the cases you won’t notice any difference, but if you use it in a very advanced web site/web application it might make things better and less resource intensive.

When I added the lightbox-like feature to JaS I was talking to my friend Teddy Zetterlund explaining how it worked. His response was:

I know a lot of situations that this could be useful in then.

I agreed with him and have now created the mother of all focusing scripts: FaT – Focus At This! 🙂

Continue reading

Select specific tag add-on to JaS

A friend of mine using JaS said that he sometimes had the scenario that he wanted to load all the images but then preload a certain tag, hence initially hiding all the pictures that doesn’t match that criteria. I though it was a simple task so I created an add-on script for those interested.

Continue reading

IE 7 – is catching up good enough?

It seems likely that at the end of 2006 Internet Explorer 7 will be released. First, let me say that the IE team has undoubtedly done some great work when it comes to fixing the numerous flaws in IE 6 as well as adding a heap of new CSS support (more detailed in Details on our CSS changes for IE7), although I think it’s a joke that display:table still isn’t supported.

But, my main question is: is catching up good enough?

Continue reading

Lightbox feature added to JaS – JavaScript Slides

Updated September 17th, 2006

After doing some extensive testing, due to some error reports that the overlay layer didn’t cover all parts of the web page if it had a scroll, I’ve now updated the script to take that into consideration as well. A positive effect of this is that, during a slideshow, it will automatically adapt the overlay size if the user resizes the web browser window or scrolls within it.

Also, one of the biggest upsides to this is that I’ve eliminated the need to add CSS specifically for Internet Explorer to handle overflow scenarios. The CSS code below has been updated accordingly.

So, I sincerely ask of you to download the example package (ZIP file link) to get this important fix, or if you already have your own custom CSS, to re-download the JaS JavaScript file and simply replace your current one.

Looking at nice features like Lightbox JS and what my friends at Particletree did with Lightbox Gone Wild!, I found it to be a given to add this functionality to JaS – JavaScript Slides. Now the image view, as well as the slideshow feature, supports it in different combinations.

Continue reading

Event handling in JavaScript – an alternative addEvent solution

Event handling in JavaScript has been an issue for many web developers, and countless of people have made their stab of solving it. When I wrote my post AJAX, JavaScript and accessibility some commenters were asking for a follow-up post explaining event handling in JavaScript. My idea here is to give you a basic background and to also tell you about a new and interesting solution.

Continue reading

Is tagging an obligation?

With us now living in the midst of the so-called Web 2.0, social networking and tagging, tagging, tagging, I’ve come to question, or rather ponder, some of the things that goes with this. These are:

  • Can we trust people to add valid tags to their content?
  • Has tagging become an obligation?

Continue reading

My MacBook Pro – first-time Mac owner

First and foremost, let me tell you that I don’t abide to the poor labeling of being a Mac fanatic or a Windows user. I’m a computer user, period. I use the programs and computers and programs that are good, no matter what their eventual name might be.

With that said, I hope this post will be balanced and fair instead of just trying to take sides, and informative no matter from what angle you’re coming.

Continue reading

Yeah, Nyman’s back

Yes! I’m back! And let me tell you that I’ve missed you, and I’ve missed writing. There’s something extraordinary about writing blog posts and then get in touch with and make friends with people from all over the world. To have discussions with like-minded people about topics which we share an interest in.

This post will be filled to the brim with various information; from a new feed URL and other changes to what I’ve been doing this summer, so please read on.

Continue reading

Do we really need antivirus software?

Forgive me if I’m missing some basic point here, but something I truly wonder over is if we actually need antivirus software. I mean, no matter the name of the operating system, isn’t there something fundamentally wrong with it if has got security holes that allows one to infest your computer in such a way that it becomes unusable?

Firewalls I buy. Naturally no one should get unapproved access to your computer. Same thing if you download some installation package from a dodgy web site: you’ve got yourself to blame.

But, in the case of Windows at least, you need to have some antivirus software running all the time that eats a lot of performance from your computer, and writing/downloading files to the hard drive takes forever since every file has to be scanned, it needs to constantly update its definitions etc.

Out of curiosity, I’ve unplugged the network cable on some computers and just tried doing some basic tasks and also transferring files over USB from an external hard drive. The performance experience is staggering!

And part of me starts to wonder if all these antivirus software vendors are riding the wave of people’s fears, that their product will be bought just out of “better safe than sorry”-panic. Sure, certain operating systems have some serious flaws, but shouldn’t those be fixed by the operating system vendor before the system is released to begin with?

Sure, of course there can be some glitches in a product, but none should be as serious as to threaten your computer in the ways it is now possible.

 

PS. If anyone knows of any good light-weight antivirus program for Windows (free would be great :-)), then I’m all ears. DS.

An important lesson learned about AJAX and accessibility

Yesterday I went to visit some fellow consultants at their assignment for a sub company/department of one of Sweden’s largest banks. We had a talk about AJAX in general and different ways of how to implement it, and one of them opened his web browser to navigate to some AJAX-based web sites.

Something interesting followed next that really baffled me. Most web sites he went to had empty white patches where no content showed up, and some web pages even went completely blank. We knew for sure that JavaScript was enabled in his web browser of choice (IE, but still almost a real web browser… ;-)) so that couldn’t be the problem.

Then, naturally, we had to go test my ASK script to see what was going on. The version that we got there was the fallback version that works without JavaScript, but instead with regular links reloading the entire web page, meaning that no JavaScript events were applied.

After some digging, we found out that the JavaScript file was completely blank! The reason for this, apparently, is that the proxy server they had to go through to access internet totally cleansed any JavaScript file that contained this text:


	new ActiveXObject

So much for object detection and every other approach we recommend to web developers. Not a single line of code was left behind in the file. And the problem is that it won’t throw an error or show the content of a noscript tag either; everything just stops working.

My initial reaction was that if they have such a tight security environment doing that, I really don’t want to care to cater to them. But as my boiling blood got calmer (kind of an exaggeration), I realized that this company was too big to ignore the fact that all their users got shut out.

Also, if they have a situation like this, it’s likely that many other large companies have a similar solution.

Conclusion: if you want to develop AJAX apps, make sure that it works without JavaScript as well, apply all the scripts in an unobtrusive fashion. I’m just glad that ASK passed the test with its accessible groundwork and then building AJAX functionality on top of that (Actually, the Google Analytics code of the ASK page did in fact throw an error when we tested it, but I think it was just a consequence of the proxy server doing it’s job…).

The web 2006 vs. 2000

Is Web 2.0 as hyped as dot-com businesses were? Are some people in every company/organization/movement more interested in fucking each others’ butts patting each others’ backs than actually doing something worthwhile? Is the web still immensely exciting? Does Microsoft have a bad reputation? Are people still blinded by different technologies as opposed to focusing on the actual goals of a product?

Yes.

Evaluating Box.net

As all of our lives, or rather the services we use, become more and more web-based and moving away from being locked down to one specific computer, online storage capabilities is definitely a huge part of that transformation. Sure, one can drag an USB memory stick around or a MP 3 player with a hard drive etc, but I prefer just getting online and downloading things.

As of lately, I’ve been testing the Box.net service, which has a nice sleek interface and is easy on the eyes.

A picture of Box.net

The general features are:

  • 1 GB storage for free (with prices starting at $4.99 per month for 5GB)
  • Private sharing
  • Public sharing
  • Desktop Sync software (upcoming)
  • Work groups

Uploading

There are two basic ways to upload files: through Flash and through drag and drop, and since I’m a big fan of drag and drop, that’s the option I use.

Flash upload dialog

A picture of the upload dialog

Drag and drop upload dialog

A picture of the drag and drop upload dialog

Sharing

One great feature is sharing your files. You can either share them privately with other Box.net users or you can share them at a public URL for anyone to download, with optional password protection. Very handy, as opposed to e-mailing large files, sending them over IM or something similar.

The Public sharing dialog

A picture of the public sharing dialog

What I miss

I would love to have FTP access to my account, for easy and swift uploading. Sure, Desktop Sync might happen, but I’d like to have free access to my file structure and to use my FTP tool of choice.

 

Conclusively, I think Box.net is going places. They’re still working on some minor issues, but they’re also very humble and open for feedback, so just let them know if you have any questions.

Except from a good service, Goowy‘s file sharing is based on the Box.net API and they have also become a module in Netvibes, so they seem get their share of attention. 🙂

The creators of Box.net also blog about the service and what’s going on in terms of competitors’ services, for anyone wanting to stay on top of things.

Go try it out now!

Accessibility is so ’05

I mean, seriously, this is 2006.

Most web sites out there don’t abide to web standards, use table-based layouts and are JavaScript-dependant. If you work with web development and you still haven’t got a clue, I think all hope is gone. Then you must be sincerely devoted to not doing a good job, or stray from conventions just to spite.

If you write valid and semantic markup, and add JavaScript in an unobtrusive fashion, your web site has come a long way when it comes to accessibility and SEO as well. It’s all there, one big package of building something great.

If you don’t do it that way and aren’t willing to learn, I won’t bother you anymore. It’s your problem, and something you have to deal with.

Law enforcement

Maybe I’m naive, but I don’t believe in laws enforcing accessibility. They can never be a 100% fair and balanced, and it’s a highly subjective matter. What is truly accessible? On the other hand I understand that when it comes to the public sector there has to be some regulations, when we’re dealing with matters about informing and facts that every citizen has a right to be able to get to. That I support.

For the private sector, however, I sincerely hope that reaching more visitors – thus getting more customers, getting a better search engine ranking, goodwill and actually doing the right thing should be incentive enough.

In the end, if companies choose to make their web sites inaccessible, it has to be their call. It’s their web site and they can do whatever they want with it. They will probably get bad press, like with Target, but I don’t think suing helps. Ultimately, my belief (read: vision) is that the market will cleanse itself; if you do things bad, people will choose another company to do their business with. Easy as that.

Accessibility consultants

On the other hand, we have people fighting for accessibility. Most of them good people doing it for a good cause, but sometimes their critique gets too harsh or is taken as being elitist, and that doesn’t help. Instead, companies being pointed out in such context don’t take it as constructive criticism, but instead as an attack and choose to ignore the people pointing out their flaws. It has to be done in a more respectful manner.

Also, critique is always aimed at the companies who it feels good to point the finger at. I’ve never seen anyone lash out at Flickr or Google Maps, although they don’t work properly with JavaScript disabled. The slideshow just goes dark in Flickr and Google Maps redirects you to a web page telling you that your web browser isn’t fully supported

Flickr slideshow with JavaScript disabled

A picture of a Flickr slideshow with JavaScript turned off

The Google Maps redirect page if JavaScript is disabled

A picture of the Google Maps redirect page if JavaScript is turned off

Why people leave them be? My guess is that people like Flickr so much and that Google Maps has got such a great API for building mash-ups, that they’re willing to overlook such things. Don’t. Be consistent.

A great initiative

Accessibility is often looked upon as something holding web development back, which isn’t true if it’s implemented in a correct manner. Also, some think that trying to make a web site accessible for people with any disabilities and/or platform means that it has to work exactly the same for everyone. It won’t. But make sure it degrades nice so everyone can at least partake of the information being given.

To me, just bashing inaccessible web sites doesn’t seem to do the trick. The people responsible just seclude themselves in their own shell, and hope the problem will go away. Instead, I applaud such initiatives as Accessites.org, which is about premiering good looking and functionally-wise excellent web sites that are at the same time accessible. I think that’s the way to do it, to show that something can be great and accessible.

Testing Google Calendar

As of recently, I’ve had enough of trying to keep track of appointments and other assorted obligations. Fredrika writes things for hand in her little secret calendar, which means there’s no way I can stay on top of things going on or actually double-check when I’m not actually in the same room as here.

This led to me starting to look around for web-based calendar services, where one can enter data and it will be available from any computer at anytime, and also get reminders. Just as I was testing some services, Google were kind enough to apply to my needs and released Google Calendar.

Google Calendar has got the look and feel of GMail and other Google applications and you can just start using it with your existing Google account.

Different views

Google Calendar supports five different views:

Day
A picture of Google Calendar's Day view
Week
A picture of Google Calendar's Week view
Month
A picture of Google Calendar's Month view
Next 4 Days
A picture of Google Calendar's Next 4 Days view
Agenda
A picture of Google Calendar's Agenda view

Creating events

It is very easy to create an event: just click the desired date/time and enter a subject. You can then drag and drop existing events to move them to another date/time.

A picture of creating an event in Google Calendar

Notifications

It’s possible to get a notification through an alert box, e-mail or a SMS text message. I would love that last option, but it seems like it’s only available for US citizens.

Sharing

You can also share your calendar and events with others, which is a great thing! This lets you have your own calendar, share some or all events and then also color-code your and other calendars’ events to easy distinguish whose appointment it really is. Your calendar with the events labeled as public is made available at a public address, and there’s also a private address you can use in other calendar applications.

Missing features

I would love some way to synchronize the information with a PDA or cell phone and be able to use it offline.

 

All in all, a great service that is yet another step for me from being dependant on just one specific computer.

Chris Mills now writes

If you’ve ever met Chris Mills, you won’t forget him. His physical apparition is something that lingers in your mind for a while, and if you actually talk to him, it makes things even more exciting.

He’s tall, very beardy, eloquent, the Senior Editor of friends of ED, loves heavy metal, plays in two bands, has got a freakish sense of humor and is always up for adventures. What’s not to like? 🙂

And now he has started blogging with bloggEd, which, of course, is a very entertaining read. My only worry is that he’ll probably have more readers than I have within a week (if he doesn’t already), and that I’ll be superfluous very soon…

Oh well, I have to be the bigger man here and still say: go read! You won’t regret it.

JaS – like your own mini-Flickr

Lightbox feature added September 15th 2006.

Select specific tag add-on added September 21th 2006.

Updated September 29th 2006

I’ve done a very minor change to the event handling to cover up for a bug in IE’s garbage collector (something I hear will be addressed automatically in IE 7). In 99,9% of the cases you won’t notice any difference, but if you use it in a very advanced web site/web application it might make things better and less resource intensive.

Updated October 25th 2007

I get a number of e-mails asking how to start the slideshow as soon as the page is loaded. Add this code to the end of the jas.js to make it happen:

addEvent(window, “load”, function(){ setTimeout(” JaS.startSlideshow()”, 1)}, false);

(The setTimeout is to avoid a content parsing bug in Internet Explorer)

Pretty much everyone wants to display and show images to other people, right? So many use Flickr for it, and while I think it’s a great idea and that it has got some wonderful features, my main gripe is that if I present images, I want to do it in my own web site.

People who do it themselves, on the other hand, always think Flash is necessary just to have fading and a nice little slideshow. Not true.

Therefore, I created JaS – JavaScript Slides. It is a highly customizable JavaScript library for easily turning your images into a collection viewable as a slideshow, and with fading effects, if desired. It also supports automatic thumbnail creation and tagging of images, so the viewers can find the exact images they’re looking for.

Humbly described, it’s like your own little mini-Flickr that you can use wherever you want to, and skin and brand it the way you feel appropriate. It’s also a way to showcase the independence and separation of the interaction and the design of a web page.

So, go take a look at it! Submit your own design to the gallery or vote for which design you like the best.

Enjoy!

Debate article in Computer Sweden

Today I have a debate article in today’s issue of Computer Sweden, and already in page 2 (meaning that everyone will read it :-)). It can also be read here: LÃ¥t användarna pÃ¥verka webben In Swedish. Most of it is just stating the obvious about focusing on end users and caring to all different kinds of accessibility needs, but I also manage to throw in a little comment regarding what I feel about the Web 2.0 hype.

Nevertheless, reaching 130 000 readers is never bad. 🙂

Run Windows XP on your Intel Mac

As soon as the Intel-based Macs were revealed, people started to find ways to run Windows XP on them. The most spoken about resulted in a contest where the winner would get the money that a lot of people had contributed with. Naturally, it succeeded. To get down and dirty with the result, please visit OnMac.net.

I guess some people’s desire to run Windows XP on a Mac was to finally have a lean good looking computer with the OS they prefer; for some people it was about having it all, being able to dual-boot Windows and Mac OS X on the same machine. Some prefer one OS over the other, and some need both in their daily work.

An interesting twist came yesterday. Apple has officially launched a tool to run Windows XP on an Intel-based Mac. The days of wonder are apparently still here… The name of the tool is Boot Camp and for the moment it is in beta but offered for download by Apple. The final release is said to be shipped with the next major release of Mac OS X: Mac OS X Leopard.

What you also need to do in order to run Boot Camp is to update the firmware in your Mac. The different downloads are:

If things go terribly wrong, or if you have a change of mind, you can run the Firmware Restoration CD v 1.0

So, what are you waiting for? Get out there and get it all! 🙂

Related reading

Flash interaction disabled in Internet Explorer

Updated April 26th 2007

An alternative solution to this problem is my FlashReplace library.

Although news of this has been around for a while, many people seem to have missed it and/or didn’t think it was worth reading up on. On the contrary, the implications of this are huge and will most likely affect a lot of web sites. Due to the patent case with Eolas, Microsoft has been forced to update how ActiveX components behave in web pages.

This dreaded update, named Microsoft Security Advisory (912945), has been available for a couple of months, but on April 11 it will be forced out en masse through Windows Update so we have a few days till all hell breaks loose. If you want to test your web pages before that, you can download the patch and install it right now.

The gist of the patch is that no interaction with ActiveX elements will be initially allowed until the user has enabled the ActiveX by clicking it or tabbing to it and then pressing spacebar or enter. When hovering the ActiveX element the user is presented with a tool tip text that reads:

Click to activate and use this control

Examples:

A screen dump of the Harry Potter web site when hovering a Flash movie

A screen dump of the Harry Potter web site when tabbing to a Flash movie

Naturally, no one wants your Flash movies, videos and the likes to be presented to the end user like that. “Luckily”, there’s a fix for it, which I guess is because of some kind of glitch in the patent. If you create the ActiveX object, in most cases this means an object tag, through script, then you will bypass this security warning.

There’s an article on MSDN, Activating ActiveX Controls, which describes different techniques doing this. Noteworthy is that it won’t work with inline scripts in the web page, only external ones.

Updated April 6th

Tanny pointed out a serious problem when it comes to JavaScript solution; something I’d read about but hadn’t tested properly. If Disable Script Debugging is disabled in IE (the checkbox is unchecked), the script workaround won’t function either. However, I think the default setting in IE is that this is enabled, so it will hopefully not affect a majority of the end users. You find that option under:

Tools > Internet Options > Advanced, under Browsing.

A screen dump of the preferences dialog in IE

What I think of this

I don’t know any deeper details of the patent case, but I think the whole idea of this sounds ridiculous. My general opinions/fears are:

  • Using Flash or video in your web pages shouldn’t, in my opinion, be dependant on if script is available/enabled.
  • There will be so many cases of poor JavaScript practices trying to add content to a web page.
  • I’ve done some testing and ran into problems in IE when adding param elements to an object using DOM methods. Instead, writing out the same HTML code by using the innerHTML property worked… 😐
  • With this, XHTML web pages served as application/xhtml+xml will probably never see the light of day, since a lot of web pages will now depend on code like document.write and innerHTML (Note: innerHTML does indeed work in Firefox when the XHTML code is served as application/xhtml+xml).
  • What happens if/when Microsoft manages to appeal this decision and win in court? Should we all then change the code again?

If this sounds like too much to you and you want a library/tool to do all this for you when it comes to using Flash, you can take a look at FlashObject (although unfortunately it relies on innerHTML to render the content).

How to uninstall the update

As life on the web goes, many web developers won’t be aware of this, which will result in that you, as an end user, will have to allow every ActiveX movie you see. The solution to this is to uninstall the patch (thanks to City Of Rain for the heads up.):

  1. Go to the Control Panel
  2. Choose Add or Remove Programs
  3. Check the Show Updates box
  4. Find Update for Windows XP (KB912945) and choose Remove

A screen dump of the Add or Remove Programs dialog in Windows

 

So, whatever you do, please read up on this. It will affect you, as a web developer, end user or when supporting your grandfather’s computer usage…

When IE goes bad on you

Today has been just one of those days. I had some work I needed to get done as well as posting something very interesting. What happens?
Internet Explorer dies on my computer…

It started out with Firefox opening up every URL I tried to open in IE. I restarted the computer and set IE as the default web browser instead. This resulted in that every web page was just white, no dialogs worked and I couldn’t view source. Since IE has got such a tight grip on Windows, you can’t just uninstall it and then reinstall it again, so that wasn’t an option to easy fix it.

After some long time spent to try different approaches to fix the problem, I gave up and reinstalled Service Pack 2. Problem is, when the computer restarted and before I got into Windows, the installation contained some kind of wizard in, yeah, you guessed it: HTML. A dialog came up asking me if I wanted to open the file or save it. I choose open, which resulted in IE opening just a blank white page. I closed that window and got an error message. I was stuck.

I turned off the computer by pressing the on/off button and started Windows in Safe Mode. Removed Firefox just to play it safe and restarted it again. No wizard this time, everything seemed fine and I got into Windows. Opened IE: blank white page. Ready to scream words no man should ever utter, I bit my lip and went online once again to find the solution.

What I then found was this: How do I repair Internet Explorer in Windows® XP? and IEFix. I went with IEFix but they seem to do the same thing. Basically, here’s the guide (run IEFix.exe to skip the first three steps):

  1. Click the Start menu.
  2. Choose Run.
  3. Type in “rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 %windir%\Inf\ie.inf” and press enter/click OK.
  4. Locate IEXPLORE.EXE/IEXPLORE.EX_ on the Windows XP SP 2 CD (or download and extract SP 2 using WinRAR to your hard drive and point to that).
  5. Next, then locate mswrd632.wpc/mswrd632.wp_ which is located on the default Windows XP installation CD.

After that, my IE was actually whole again. All in all, though, with all problems I had, waiting, trying to find good guides etc I wasted about three to four hours of my day. The lesson is to never tie a web browser so tight to the operating system…

My feelings right now?

I.Hate.Internet.Explorer.

How much spam do you get?

Spam, spam, spam…

I guess most of you, if not all, get an annoying amount of spam every day. After being fed up with offers to buy Viagra, get a larger penis or larger breasts or to make an investment in a company based in Nigeria and run by some heir and relative to the king, you install spam filters. With that you also get the fear of what you might miss out on, wondering if that important e-mail got through or if it contained a word like “sex” and got thrown away before you got to even see it.

As a counter-measure though, you still have to browse through the e-mails in the spam filter folder to at least make sure none of the e-mails from your actual friends/colleagues got stuck, so handling spam is in one way or another something necessary evil that you need to waste precious time on.

And if you want to be nice and start blogging, writing things for free to share with the world, the price you’ve got to pay if the blog gets even vaguely successful is having to deal with loads and loads of spam comments. Oh, joy to the world.

I was trying do some research to see if I could find any estimation of how many e-mails are sent each month, but to no avail. All I got was a sponsored link (that means ad) in Google, reading:

Email Advertising
Send 81 Million Emails Monthly
Highly Effective Spam Law Compliant

I think that that just gives an indication of how bad things are… 🙁

I truly wonder how this will affect our beloved information society, what the situation will be like in, say, 2010. Will spammers be gone, or have they taken over? For the moment, I get between 20-30 spam e-mails every day.

How much spam do you get?

Swedish chain El-Giganten tricks their customers

The heading would read something like this in Swedish:

Svenska teknik-kedjan El-Giganten lurar sina kunder

Today my mother went to one of the large chains in Sweden that sell all kinds of home electronics to finally get herself a DVD player. She’s not interested in technology and doesn’t do any research before buying, but instead trust the sales staff in the store. Most likely, just as the majority of any people buying anything from these large chains.

Apparently that was a big mistake; let me explain why:

When mom got home she called and said that she had gotten a DVD player. I thought it was great, and asked her if it was region free, i.e. able to play DVD records in any of the different formats available for the different parts of the world.

She said no, that she didn’t know what region free was. I explained it to her and went online to see if her just-bought player was. I found that it wasn’t region free by default, but to my knowledge it’s a very easy task to enable that option on most DVD players.

Therefore I decided to call the store where she had bought it, El-Giganten (translated: The Electric Giant, and no, I won’t link to them since they don’t deserve it) in a suburb named Täby, to just ask them about how to make it region free.

I got to talk to a “sales man” of theirs’, and the conversation went like this:

– Hi! My mother just bought a LG DVD player from you today, but since she didn’t know anything about making it region free, I just wanted to ask you how to achieve that functionality.
– Yes, we can do it for you. It will cost you about 300 – 500 SEK (around 37 – 62 US$).
– Well, when it comes to most DVD players, it’s normally only about pressing a certain key combination on the remote control.
– Ah, if that’s the case, it will only cost around 100 SEK (≈ 12 US$).
– Oh, come on. We can definitely do it ourselves, I just want to know the key combination.
– Hmmm. Hang on, I need to talk to a technician here.


Yes, I can imagine this was way over your head…
I waited for quite some time listening to some horrible music, and finally he got back:

-Yes, it will cost you 295 SEK (≈ 36 US $).
– Are you kidding me? I’m sure all I need is a keyboard sequence. Every other store helps their customers right away with this with no cost whatsoever, what’s your problem?!
– The technician said it will cost 295 SEK (≈ 36 US $). A mantra he just kept on repeating no matter what I said.
– I will check this out, and if I can’t solve it, we will return the DVD player and buy it from someone who’s actually interested in helping their customers! Good-bye!

Angry as hell and just as determined to fix this, I went online to find out how to make the DVD player region free. After about 5 minutes, I had found what I would most likely need, and got into the car and drove to mom’s. After unpacking the DVD player I plugged it in and tested. Eureka! After one minute it was region free!

Let me tell you what it took:

  1. Open the disc tray
  2. Press the 0 key seven times

This is something they demanded me to drive to their store for, pay 295 SEK (≈ 36 US $) and then be eternally grateful. Horrendous!

My take is that, since more and more people buy technology products online, these gargantuan chains with their huge stores and endless number of employees have to do things like this just to get a bigger cut, since their margin for revenue on the products are probably so little to begin with.

What sincerely annoys me about this is that their customers go to them because they trust them! Most people don’t know that much, or anything, about technology, but just want it to work. They’re certainly not expecting the store’s sales staff to trick them into pay them a ridicilous amount for doing a fairly non-existant job.

But hey, my congratulations to El-Giganten! Don’t mind the fact that I’m writing this post which will show up in search engines showing off their true face, and that I will tell this story to anyone I know and recommend them to shy away from them as much as possible. I mean, they almost managed to pull of making an extra 295 SEK (≈ 36 US $)…

Have you had any similar experience?

Articles in Computer Sweden

Today is a happy day for me! I have a full page in the Swedish magazine Computer Sweden , it’s an interview that got split into two articles. One is about Web 2.0 and the different online services that are released, and the other one is about using web standards, semantic code and separation of content (HTML/XHTML), presentation (CSS) and interactivity (JavaScript) to target as many users as possible.

Why this is a big thing to me is because it’s the computer magazine with the widest spread in Sweden; an estimate of 127 000 readers! That’s about five times the population in the town I live in, Vallentuna, or about 1/70th of all the Swedes. 🙂

Another thing that makes me happy is that the journalist that interviewed me is the same one whose article I expressed my opinions about two weeks ago. Kudos to him for understanding the constructiveness of my post and also seeing how I could contribute to his magazine.

If you have a web code for Computer Sweden, you can read the two articles here:

My video iPod

In December, after some serious thinking, I decided to get me a video iPod, the fifth generation of iPods. I already have a third generation iPod, but took some time to find arguments to convince me (and my dear Fredrika) that it was a good idea to get another iPod just one year and nine months after the first one.

How could I motivate this to myself? Well, there were some factors that pushed me over the brink:

Being able to watch video
I think the MPEG 4 format is awesome, and I love watching videos on it. To me, the screen size is just fine.
The color screen
Color is always nice, right?
The design and size
It looks oh-so-good, weighs practically nothing nowadays (4.8 ounces/136 grams) and is almost thin like a leaf.
The price
I got a 30 GB one, definitely sufficient for me, and it’s actually cheaper than most of its matching alternatives (not to mention that the alternatives usually weigh three times more and are five times as thick).
Commuting
I commute at least two hours a day (and if you meet me in real life, give me a hug and please tell me you share my pain) and watching videos is about the best way to kill time (perhaps for sex, but that isn’t really suitable on the suburb trains…).

I’ve also seen that there a number of porn movies available in iPod format. I sincerely don’t want to know what people are doing with an iPod in one hand and… shivers
Besides, if one would want to get off holding an iPod, the design of the iPod would be such a turn-on by itself. 😛

A disturbance is that the software isn’t perfect, it has a tendency of sometimes freezing when the battery goes low and you’ve just watched a video. Just remember to hold down the Menu key and the Play key to soft reset it and you will be fine. Aside from that, I wish they would’ve thrown in an AC adapter. One doesn’t want to fire up the computer only to charge something through an USB port (and why does the computer have to be on for that?).

Conclusively, if you’re looking for a MP3 player with a nice hard drive, I most definitely recommend getting an iPod. I hesitated for a while, took the plunge, and haven’t regretted it for a single second!

If you don’t have movies in the MPEG 4 format, you can use free tools such as the Videora iPod Converter for Windows and iSquint for Mac to convert it.

What is accessibility?

As soon as the word accessibility is mentioned very strong feelings and opinions come into motion and the discussions go on all night. Therefore, I felt the need to take a shot at explaining my view on accessibility.

To me, it is all about making web sites accessible to people with disabilities and at the same time to people using different operating systems, web browsers and devices. I’m sure that the general notion when the term accessibility initially was coined that it was to focus on, and cater to, people with special needs that don’t have all the prerequisites as everyone else. A very noble initiative and a corner stone if we ever want the web to be taken seriously.

But when making a web site accessible to people with disabilities, why wouldn’t we at the same time make it accessible to people who aren’t using Windows and Internet Explorer? It’s a mindset and an attitude that go hand-in-hand for me. Surely, everyone wants to reach an audience as wide as possible, right?

A thing that bothers me, though, is when accessibility advocates proclaim that we have to stay away from using JavaScript, Flash et al, all in the name of making it accessibility. Accessibility and using JavaScript, for example, aren’t mutually exclusive. It’s all about progressive enhancement. Build a common ground and then implement enriching features in an unobtrusive way that doesn’t rule out accessibility.

So, let’s stop bickering about what we read into the word accessibility, and instead start focusing on reaching as many people as possible with this wonderful medium called the Internet!

A closer look at Ma.gnolia

A while ago I got an invitation to beta test the new social bookmarking service on the block: Ma.gnolia. I was interested in it from day one I heard about it, however back then I had no idea what it was about. My reason for being biased is that I love magnolia trees, Fredrika and I used to go look at a huge one in a park close to where we first lived together and I also recently got her two magnolia trees for her birthday.

First, let me outright say that I’ve never really found a need for a bookmarking service, my main need and interest lies in following feeds; instant information and then it’s gone. If there’s anything I have a great need for finding again, I search on the web using Google and mix of suitable keywords. Therefore, it’s interesting to see that Ma.gnolia’s slogan is:

Found is the New Search

I personally don’t think that it will ever happen; I and a lot of other people do constant searching on the web and in applications. I’m sure a good service can complement searching, but it will never replace it.

A picture of the Ma.gnolia header and the navigation

Features

The idea is to save all your bookmarks and have them available on the web from any place. It’s also about tagging your bookmarks and finding other people’s. So far, just like del.icio.us but looking a lot better. There are, however some features and here’s a list of them:

  • Save bookmarks, publicly or privately
  • Tag bookmarks
  • Send bookmark to one or several of your contacts
  • Send bookmark to one or several of your groups
  • Find other people’s bookmarks
  • Join special interest groups
  • See your contact’s latest additions
  • See your groups’ latest additions

The factors I find very appealing is the ability to join certain groups covering special topics, and to add a few key people to your contacts’ list that you know will add interesting bookmarks. The nice thing with contacts is that it doesn’t have to be a two-way relationship. You can have anyone as a contact without getting permission and anyone can add you as a contact.

They way I see it, there’s no downside with people adding you as a contact without your consensus, all they can see is your latest bookmarks. However, I guess in the long run it might be interesting with closed groups that require an invitation, or perhaps a “Make this bookmark only available to certain contacts”.

There are also different views in the Tags section where you can browse your tags, your contact’s top tags, your groups’ top tags and everyone’s top tags, and they can all be viewed in a tag cloud or in an A – Z listing.

A picture of the Tags section

The start page

During the beta period, the start page consisted of your, your contact’s and your groups’ latest bookmarks. A good initial view that unfortunately was replaced with a Ma.gnolia Hot Bookmarks and a Ma.gnolia Featured Linkers section after it was launched February 15th. The hot bookmarks are fine, but I would definitely prefer seeing my contact’s latest bookmarks as opposed to the featured linkers that I haven’t chosen nor is interested in. Now you have to go to the Bookmarks section to get the beta start page view. Also, once you’ve left the start page, the only way of getting back is clicking the logo. Perhaps a Home link should be added?

A picture of the Ma.gnolia start page

Other sections on the start page, in narrower right column, are Recent Bookmarks, Hot Groups and Hot Tags (and also Hot Bookmarks for other pages than the start page). All valid, but I really miss a listing of my tags. I gather most people will use this service as an archive for their bookmarks, nothing more, nothing less, so I think it’s a waste of an extra click to go the Tags section first.

A picture of the right column sections, containing sections like Recent Bookmarks, Hot Groups and Hot Tags

Something that’s weird here, though, is that the start page just exclaims:

Welcome back

and then I go to the Bookmarks section that says:

Hello, Robert

Shouldn’t the start page be the most personal one?

Listings

Most bookmark listings contain three actions for every bookmark, with the addition of a fourth to easily switch your bookmarks between being private or public. The problem arises when I look at listing for a specific tag; then there’s no way to add it to your bookmarks and its name is linked to the URL itself. I missed it a couple of times, but the only way to add it is to choose the option View Details. I definitely feel an add functionality is missing there.

Another thing which I dislike is that the listing in the right column leads directly to the URL that the bookmark point to. I guess makes it easy to just go to that web page right away and see if it’s interesting, but there’s no way to add it from that list. Functionality I think should be added as soon as possible.

Another thing that would be nice to see right away in the listings is how popular a bookmark is, i.e. how many people have the same bookmark.

Design & code

The design is very nice with smooth and balanced colors. Default font size is good and it’s very easy to get a fast overview on what’s every page. Unfortunately, there’s a an ad space in the header, something that has to be there for revenue, most likely, but also something that ruins the cleanliness of the web site (it was so beautiful during the beta period :-)).

I also like the dimming of the entire web page when I want to delete something. Kind of hard to miss… 🙂

A picture of the delete dialog

Another thing that looked good during the beta period was the state of the code, but now there seems to be some minor flaws in every page and also a few inline events. All-in-all, though, the code seems to be well-structured and semantic, so there’s definitely hope.

Gripes

The web site is, most of the time, fairly slow. This is disheartening since it’s a very nice service otherwise, and I really advise them to look into this as soon as possible. Soon the honeymoon period is over with the service being new, so it should be addressed right away. Also, for performance and small usability enhancements, dare I *GASP* suggest using some AJAX (Pssst! Look at ASK…)?

The issues with the listings are annoying but minor. I don’t think it would be a big deal to change that.

 

Conclusively, I’m not sure that I have the need for a bookmarking service. But if I ever will, Ma.gnolia would be my choice. The good news is that Ma.gnolia is publicly available now for everyone, so I urge you to go check it out!

 

Related reading

AJAX and other rich media technologies patented?

This has to be a joke, some kind of twisted humor. Apparently the U.S. Government granted a patent to a web design company in California, one which:

…covers all rich-media technology implementations, including Flash, Flex, Java, Ajax, and XAML, when the rich-media application is accessed on any device over the Internet, including desktops, mobile devices, set-top boxes, and video game consoles…

Read the truly horrifying story at U.S. Grants Patent For Broad Range Of Internet Rich Applications (found through Zeldman).

Google Blog Search or Technorati?

When doing a web search and your search engine of choice (Google, for most of you, I presume) doesn’t return as accurate or useful results as you had hoped, you might decide that you just want search blogs. Reasons for this can be because blogs usually contain very interesting information, comments on the information and also that they are normally very up-to-date.

The way I see it, there are two major tools for searching blogs: Technorati and Google Blog Search. Google seems to be a little faster, although Technorati has really picked up lately. Technorati also offers ways to see how popular that blog is that contains the information you searched for while you also know that the information that is most up-to-date will be amongst the top results.

Personally, I use Technorati to see how many people link to me and which the latest links are. I never use Google Blog Search.

Do you use any? If you do, which one?

MSN Messenger censors links

I love instant messaging, and it’s a tool I use daily in my work and for keeping in touch with people. My weapon of choice is MSN Messenger and it’s all I need to communicate with a lot of people. I know, I know, MSN Messenger isn’t that nice on Macs, but most Mac users have Audium instead, so I get away with using a specific client since they usually have accounts for all different IM services.

What has really made me mad recently is that I found out that Microsoft is filtering links sent with MSN Messenger, all in the best interest of the end user. The approach consists of plainly just removing links with the text such as “download.php”, so the person in the end doesn’t get the message, without any information that something was blocked. This approach is so poor and annoying I want to scream!

If you want to force people to download something, apparently you just have to name the page “WindowsUpdate.asp” and it will always get through every filter… And the thing is, your MSN messenger contacts are your friends that you have personally approved, you can’t them and their messages to spam.

I haven’t found any good article in English with an official statement from Microsoft, but in an article in the Swedish MagazineComputer Sweden , a spokeswoman given the title Responsible for Communication Services at Swedish MSN has made this statement:

For the moment, through a real time filtering technology, we are testing to deactivate certain links, parts of link strings and files that have names that can pose a threat to the users. […] is suspected, it’s then filtered by our servers and isn’t delivered to the recipient.

Please, Microsoft, listen: We don’t want to be your guinea pigs! Except for the laughable approach with string matching to see if anything they perceive as dangerous should be removed from a message, there are number of things you should see to right away if this is to stay in the product:

  • If a message is filtered in any way, the sender and recipient must be alerted about this.
  • It should be a setting if the filter should be applied.
  • The filter should, per default, be off.

Jewel’s web lifestyle survey

My friend Jewel (not the artist, and not the Artist Formerly Known As Jewel) is conducting a small lifestyle survey about internet habits, and she needs more people to take it. It only takes about two minutes of your time to do it, so if you have the time, please help her out!

Eight different versions of Microsoft Vista?

In the CNET article Microsoft gives glimpse of eight Vistas, it is hinted that Microsoft Vista will come out in no less than eight (!) versions. While it isn’t quite as bad as it sounds, I really can’t understand this decision.

Sure, they need to keep different version with and without Windows Media Player bundled etc, but in the end my take is that they will just confuse the customers. Same thing happened with the new versions of Visual Studio 2005 and its different flavors like Visual Studio 2005 Team System. I think that by releasing too many versions of the same thing, their market, sales and support departments will have hell trying to explain it, and most people will have no idea what to buy…

Simplify, man, simplify!

A train of gadget freaks

Yesterday, on the train home to my lovely suburb of choice, Vallentuna, I decided to look up at the other passengers around me. Within a radius of 1.5 meter, there were three tech freaks sitting with their gadgets.

Just across to where I was sitting, a guy was sitting gaming away on his Sony PSP; directly on the other side of the aisle a girl was sitting writing in a focused way on her Apple iBook; and in the middle, your dear blogger was sitting with his Apple iPod Video, watching a movie (I’ll write more about my gadget another day). Interesting to see how technology can help people to kill commuting time…

When we reached Vallentuna and I got up to get off the train, I saw a woman carefully (some would say manically) folding the paper to her Fisherman’s Friend. I couldn’t help wondering if she envied us for our gadgets or if she indeed was happier doing her origami attempt than needing something with a screen to make her feel content.

Ignorant Swedish tech hype

This morning, when I read the headline technical article in Computer Sweden , I got upset, tired and saddened. Basically, the article is calling Swedish companies out of date just because they aren’t using AJAX for their web sites. It also somehow manages to convey the notion that AJAX = Web 2.0.

First, AJAX is not Web 2.0. A Web 2.0 company/solution might use AJAX, and that’s it. Using AJAX doesn’t automatically make it Web 2.0. Period.

Second, calling AJAX modern is just ignorant. The technical possibilities have been around for years, the only thing that’s “new” is the acronym and the hype.

Third, even if it were a modern approach, why would everyone benefit from it? The web is already filled to the brim with unmotivated AJAX solutions; web sites that have sacrificed accessibility and usability just to be doing the latest thing. Now this magazine, probably the technical magazine/paper with the highest amount of readers and vastest reach in Sweden, helps to spread the word that everything has to be AJAX-based, which will, without a doubt, lead to a lot of web developers out there start doing it right away, and managers will run to their employees proclaiming that they just can’t miss this.

The article is written by a reporter who, last week, published an article stating that web sites would have to be re-written for IE 7. Sure, if it were amateurs doing the job the first time around… So, needless to say, his track record reveals that maybe he hasn’t gotten a technical expertise. Which is fine, but then please do the proper research before publishing such pieces. With such a job, there’s a responsibility that goes with it.

One company that is mentioned and quoted in the article is hitta.se , who proudly announces that their AJAX-based preloading maps are so much better than their competitor Eniro’s are. Ok, let’s take a swift look at hitta.se and see for ourselves:

  • With JavaScript disabled, no maps are shown at all (compared to Eniro’s that at least show up initially, but then the navigation of the map doesn’t work).
  • The code is riddled with inline styles and inline scripts, completely forsaking the professional approach of having this in separate layers.
  • The word semantics doesn’t seem to have gotten through at all to the web developers; the state of the HTML code is appalling.

So, where does this leave us? They’re proud to be using the “new” technology AJAX, while totally forsaking everything else when it comes to good practice, accessibility, usability and proper web interface developing. If you implement such a simple thing as a map on a web page, and especially for such a popular service on the web, your responsibility is to make sure it isn’t dependant on JavaScript.

Does this mean that AJAX has to be inaccessible then? Absolutely not, it’s all about doing it the correct way. Also, I don’t have a problem with AJAX itself; on the contrary, I agree that used in a proper context, it can make using a web site a lot more interesting, useful and fast to use. But it should never be used at the cost of excluding users or normal web browsing behavior such as using the forward and back buttons in the web browser, bookmarking, reloading etc (this is all something I wanted to address with ASK – AJAX Source Kit).

Do I have a beef with hitta.se? Not at all, I just get tired when people make statements and say that they’re so much more in the loop than other companies, and then it’s obvious that they haven’t done their job correctly. In fact, I know the people behind specifying the concept, and I think it’s great! It’s just sad that the web developers implementing it didn’t have the skills to match it.

Conclusively, I’d advise hitta.se to make their next statement when you’ve done your job right. Till then, do your homework…