Quantcast October 2006

OffBeatMammal

Searching for monkeys in Cyberspace

Comment Spam - why do they bother?

clock October 31, 2006 23:54 by author OffBeatMammal

I had to give up on my previous blog solution because the comment spam was getting out of control and it was hard to manage. That led me to Community Server which has a better approach to spam control.

That now means that with the basic out-of-the-box facilities and a couple of excellent add-ons [6 rules and Akismet] I've not had a single spam comment get published, and almost no collateral damage.

But, even though the spam comments are not getting published they keep on coming. Today alone I've had to make about 80 entries for one site go away. What's even stupider is that the site isn't currently promoting viagra, breast enlargements or unlimited free porn.... it's spruiking badly worded investment tips in (in some cases) companies who don't even match the claimed stock ticker!

Makes me wonder why they bother! They're getting no benefit from their efforts and I could certainly do without the time wasting while I hit delete on their quarantined rubbish.

They keep trying to fill my mailbox up as well. Luckily a combination of SpamCop.net and Outlooks junk filters means that it's very rare that I actually see anything that's too time wasting. And I feel good because I report almost every one of the spam emails I get via SpamCop. For good measure I also install the Project Honeypot spambot catcher on pretty much any site I work on.

Currently listening to: Driftkikker What



Interface free computing

clock October 29, 2006 06:17 by author OffBeatMammal

Face it. Interfacing with your computer hasn't improved much in the last 20 years.

We're still tied to the keyboard, mouse, monitor metaphor. Sure, the keyboards have media keys, gaming keys, light sensors and coffee maker attachments, the mice have laser tracking systems that the Dept of Defense would be proud of and the monitors are improving in resolution and latency to a point where the next breakthrough will probably be predictive pixel colouring...

But the GUI metaphor is pretty stagnant and common across most of the major platforms. 3D spinning windows are a cool way to waste CPU cycles, but will they really help people interface with their computer?

Hope is at hand thanks to a number of innovative projects like BumpTop but it needs to be more than just a software solution - it has to be something which addresses the logical and physical interaction with the system in a way that transcends the current object / pointer interaction.

Example of the Multi-Touch Interaction desktopJeff Han, a research scientist at the New York University has started to address the project in a practical, real-world way. The first tangible fruits of the Multi-Touch Interaction Research project, quite literally, have to be seen to be believed...



I think I'm addicted...

clock October 26, 2006 13:11 by author OffBeatMammal

I vowed to avoid the sudoku craze. Not just because it was French! ... but it turns out I couldn't escape.

I had to travel interstate the other day without my PC and so I thought to keep me amused I'd grab a Sudoku app for my K-Jam. I assumed I'd try it out for a few minutes and then happily throw it away still convinced that sudoku wasn't for me.

Well, the folks at Ludimate have a great implementation they called Sensible Sudoku which not only got me over the hype but had me buying a licence within an hour!

I think I'm hooked! But I'm sure my brain is getting a great workout smile_regular



MaxLength on a Textarea

clock October 26, 2006 11:14 by author OffBeatMammal

Although HTML is very clever (and there are lots of very clever things hidden if you go looking) there's one thing that's bugged me since I first started putting forms together in a webpage.

Why is there a maxlenth parameter on an <input type="text"....> field but no maxlength attribute on a <textarea....>....</textarea>

Now I know it's possible to write some javascript and attach it to a text area that you want and control user input that way. But it requires thought and effort and it's not a very elegant solution.

But, as you can see... the problem can be solved:

I came across the concept of CSS behaviours (or is that behaviors) thanks to a really handy script 'behaviours.js' from Ben Nolan which allows you to assign a behaviour to a CSS rule. I then applied that to allow me to add a couple of extra attributes to the Textarea HTML tag. Specifically the Maxlength and showremain function. Adding them to a page is as easy as this (the hardest bit it to remember to include the two scripts!)

<html><head><script type="text/javascript" src="/scripts/behaviour.js"></script><script type="text/javascript" src="/scripts/textarea_maxlen.js"></script></head><body><p>Limit 120 Characters: <TEXTAREA rows="5" cols="30" maxlength="120" showremain="limitOne"></TEXTAREA> <br>Chars Remaining:<span id="limitOne">--</span></p><p>Limit 50 Characters: <TEXTAREA rows="2" cols="30" maxlength="50" showremain="limitTwo"></TEXTAREA> <br>Chars Remaining:<span id="limitTwo">--</span></p></body></html>

 The logic to check the length of the selected object, enforce it and (if required) update the span showing the remaining characters is within the textarea_maxlen script. It registers functions against the onkeydown, onkeyup, onpaste and onblur methods for the CSS textarea attribute.

var CSSrules = {
'textarea' : function(element){
element.onkeydown = function(event){
return doKeyPress(element,event);
}
,
element.onpaste = function(){
return doPaste(element);
}
,
element.onkeyup = function(){
return doKeyUp(element);
}
,
element.onblur = function(){
return doKeyUp(element);
}
}
}
 
Behaviour.register(CSSrules);

the actual javascript to check and enforce the length and update the progress is all pretty standard stuff - in fact, it's probably not that elegant but it was more a case of getting it working in a hurry and having it work in IE (PC), FireFox (PC, OSX and Ubuntu) and Safari (OSX) - the test platforms for the project (if you can tidy it up, please leave a comment here!) The biggest problem I encountered was the different event handling models for IE and Gecko based browsers - both in when events were triggered and how to stop them bubbling further!

var detect = navigator.userAgent.toLowerCase();// Keep user from entering more than maxLength characters
function doKeyPress(obj,evt){
maxLength = obj.getAttribute("maxlength");
var e = window.event ? event.keyCode : evt.which;
if ( (e == 32) || (e == 13) || (e > 47)) { //IE
if (maxLength && (obj.value.length > maxLength-1)) {
if (window.event) {
window.event.returnValue = null;
} else {
evt.cancelDefault;
return false;
}
}
}
}
function doKeyUp(obj){
maxLength = obj.getAttribute("maxlength");
if (maxLength && obj.value.length > maxLength){
obj.value = obj.value.substr(0,maxLength);
}
sr = obj.getAttribute("showremain");
if (sr) {
document.getElementById(sr).innerHTML = maxLength-obj.value.length;
}
}
// Cancel default behavior and create a new paste routine
function doPaste(obj){maxLength = obj.getAttribute("maxlength");
if (maxLength){
if ((window.event) && (detect.indexOf("safari") + 1 == 0)) { //IE
var oTR = obj.document.selection.createRange();
var iInsertLength = maxLength - obj.value.length + oTR.text.length;
try {
var sData = window.clipboardData.getData("Text").substr(0,iInsertLength);
oTR.text = sData;
}
catch (err) {
}
if (window.event) { //IE
window.event.returnValue = null;
} else {
//not IE
obj.value = obj.value.substr(0,maxLength);
return false;
}
}
}
}

In order for this to work in your own page remember: you must go and download the behaviour.js file from Bens site, and the textarea_maxlen.js script from here.

With a bit more imagination and time you could extend this to enforce rules like MaxLength="500" MaxWords="150" to lock down how much data can be entered, or MaxCaps="15%" to stop them SHOUTING.

The maxlength attribute is part of a proposed HTML5 standard, but it'll be interesting to see if we ever get there with the directions devolving to XHTML and microformats an rich internet application technologies such as Silverlight.



MaxLength on a Textarea

clock October 26, 2006 11:14 by author offbeatmammal

Although HTML is very clever (and there are lots of very clever things hidden if you go looking) there's one thing that's bugged me since I first started putting forms together in a webpage.

Why is there a maxlenth parameter on an <input type="text"....> field but no maxlength attribute on a <textarea....>....</textarea>

Now I know it's possible to write some javascript and attach it to a text area that you want and control user input that way. But it requires thought and effort and it's not a very elegant solution.

But, as you can see... the problem can be solved:

I came across the concept of CSS behaviours (or is that behaviors) thanks to a really handy script 'behaviours.js' from Ben Nolan which allows you to assign a behaviour to a CSS rule. I then applied that to allow me to add a couple of extra attributes to the Textarea HTML tag. Specifically the Maxlength and showremain function. Adding them to a page is as easy as this (the hardest bit it to remember to include the two scripts!)

<html> <head> <script type="text/javascript" src="/scripts/behaviour.js"></script> <script type="text/javascript" src="/scripts/textarea_maxlen.js"></script> </head> <body> <p>Limit 120 Characters: <TEXTAREA rows="5" cols="30" maxlength="120" showremain="limitOne"></TEXTAREA> <br>Chars Remaining:<span id="limitOne">--</span></p> <p>Limit 50 Characters: <TEXTAREA rows="2" cols="30" maxlength="50" showremain="limitTwo"></TEXTAREA> <br>Chars Remaining:<span id="limitTwo">--</span></p> </body> </html>

 The logic to check the length of the selected object, enforce it and (if required) update the span showing the remaining characters is within the textarea_maxlen script. It registers functions against the onkeydown, onkeyup, onpaste and onblur methods for the CSS textarea attribute.

var CSSrules = { 'textarea' : function(element){ element.onkeydown = function(event){ return doKeyPress(element,event); } , element.onpaste = function(){ return doPaste(element); } , element.onkeyup = function(){ return doKeyUp(element); } , element.onblur = function(){ return doKeyUp(element); } } } Behaviour.register(CSSrules);

the actual javascript to check and enforce the length and update the progress is all pretty standard stuff - in fact, it's probably not that elegant but it was more a case of getting it working in a hurry and having it work in IE (PC), FireFox (PC, OSX and Ubuntu) and Safari (OSX) - the test platforms for the project (if you can tidy it up, please leave a comment here!) The biggest problem I encountered was the different event handling models for IE and Gecko based browsers - both in when events were triggered and how to stop them bubbling further!

var detect = navigator.userAgent.toLowerCase(); // Keep user from entering more than maxLength characters function doKeyPress(obj,evt){ maxLength = obj.getAttribute("maxlength"); var e = window.event ? event.keyCode : evt.which; if ( (e == 32) || (e == 13) || (e > 47)) { //IE if(maxLength && (obj.value.length > maxLength-1)) { if (window.event) { window.event.returnValue = null; } else { evt.cancelDefault; return false; } } } } function doKeyUp(obj){ maxLength = obj.getAttribute("maxlength"); if(maxLength && obj.value.length > maxLength){ obj.value = obj.value.substr(0,maxLength); } sr = obj.getAttribute("showremain"); if (sr) { document.getElementById(sr).innerText = maxLength-obj.value.length; } } // Cancel default behavior and create a new paste routine function doPaste(obj){ maxLength = obj.getAttribute("maxlength"); if(maxLength){ if ((window.event) && (detect.indexOf("safari") + 1 == 0)) { //IE var oTR = obj.document.selection.createRange(); var iInsertLength = maxLength - obj.value.length + oTR.text.length; try { var sData = window.clipboardData.getData("Text").substr(0,iInsertLength); oTR.text = sData; } catch (err) { } if (window.event) { //IE window.event.returnValue = null; } else { //not IE obj.value = obj.value.substr(0,maxLength); return false; } } } }

In order for this to work in your own page remember: you must go and download the behaviour.js file from Bens site, and the textarea_maxlen.js script from here.

With a bit more imagination and time you could extend this to enforce rules like MaxLength="500" MaxWords="150" to lock down how much data can be entered, or MaxCaps="15%" to stop them SHOUTING.

The maxlength attribute is part of a proposed HTML5 standard, but it'll be interesting to see if we ever get there with the directions devolving to XHTML and microformats an rich internet application technologies such as WPF/E.



Implementing a Sleep function for VB.NET

clock October 26, 2006 04:50 by author offbeatmammal

I encountered an interesting problem today. A function that needed to be run on a webserver (as an aspx page) but it did a huge amount of processing based on the users input - lots of file reads and database updates. It was dragging performance on the rest of the site down while it ran.

In a normal scripting environment for a Windows application it's easy - the sleep({seconds to sleep}) command is your friend. But you can't do it in VB.NET for a webpage.

Unless, that is, you have SQL Server 2005 or another database that supports the WAITFOR DELAY {time to delay} command. 

Sub sleep(sec as integer) Dim con_timeout, sql ' indicate a number of seconds, up to 59 ' if you need more than 59 seconds, you will need to adjust the SQL below If sec > 59 then sec = 10 End if ' make sure timeout doesn't expire! ' assumes we have an already active connection to the database called "con" con_timeout = con.commandTimeout con.commandTimeout = sec + 5 sql = "WAITFOR DELAY '00:00:" & right("00" & cstr(sec),2) & "'" con.Execute(sql,,129) ' put the timeout back con.commandTimeout = con_timeout End Sub

Now the script may take a fair bit longer to operate, but the judicious use of sleep(2) within the more tightly looping and time consuming bits of code means that the server can spare some cycles to answering other demands on it.

Of course, you then need to make sure that your script doesn't timeout, so careful use of Server.ScriptTimeout to balance it is also called for



Implementing a Sleep function for VB.NET

clock October 26, 2006 04:50 by author OffBeatMammal

I encountered an interesting problem today. A function that needed to be run on a webserver (as an aspx page) but it did a huge amount of processing based on the users input - lots of file reads and database updates. It was dragging performance on the rest of the site down while it ran.

In a normal scripting environment for a Windows application it's easy - the sleep({seconds to sleep}) command is your friend. But you can't do it in VB.NET for a webpage.

Unless, that is, you have SQL Server 2005 or another database that supports the WAITFOR DELAY {time to delay} command. 

Sub sleep(sec as integer) Dim con_timeout, sql ' indicate a number of seconds, up to 59 ' if you need more than 59 seconds, you will need to adjust the SQL below If sec > 59 then sec = 10 End if ' make sure timeout doesn't expire! ' assumes we have an already active connection to the database called "con" con_timeout = con.commandTimeout con.commandTimeout = sec + 5 sql = "WAITFOR DELAY '00:00:" & right("00" & cstr(sec),2) & "'" con.Execute(sql,,129) ' put the timeout back con.commandTimeout = con_timeout End Sub

Now the script may take a fair bit longer to operate, but the judicious use of sleep(2) within the more tightly looping and time consuming bits of code means that the server can spare some cycles to answering other demands on it.

Of course, you then need to make sure that your script doesn't timeout, so careful use of Server.ScriptTimeout to balance it is also called for



Does your Mojo need some Moka?

clock October 25, 2006 04:44 by author offbeatmammal

There's been a lot of talk about how virtualisation and portable apps are going to change the way that the world works recently. Everywhere I look there are new initiatives and technologies that are going to bring about a revolution in ease of use, safety and stability.

I agree that the wave is coming, but I'm not sure it's here just yet.

I set myself a little challenge. To build a totally portable environment that could live on my iPod and plug into a friends computer, a spare machine at home or an internet cafe and allow me to work as though I was at my desk.

That meant I needed:

  • IIS: or similar webserver, capable of delivering ASP.NET 2.0 - so needed all the relevant frameworks etc
  • SQL Server 2005: Pretty much any of the editions, as long as it had the management console and was 100% compatible with the features we're using in our live environment
  • Development IDE: Visual Studio would be a major bonus, but EditPlus would have cut it.
  • Browsers: IE (6 or preferably 7) and Firefox are a must for testing. ideally independent from the host OS so I know what plug-ins and add-ons are in place
  • Drawing tool: Designers insist of making me look at graphics. Apparently the world looks prettier in technicolor and with curves. Don't they realise how much overhead that puts on the text! Luckily for y'all I'm in the minority and I bow to Cats wisdom when she tells me that a picture is worth a thousand words (and if I build websites that don't have pictures I won't get paid for those words either!). Luckily for me Paint.Net is simple enough for me to use and good enough to do what needs to be done
  • MS Office: Or something 100% equivalent. OpenOffice and Evolution come close but I did say 100% didn't I! Specifically the 2007 B2TR version because I just don't want to go back to its predecessor
  • Music player: Because I can't work in silence. Ideally able to access the music stored on the iPod without needing duplication. SongBird, iTunes or WMP are all acceptable for this
  • Utilities: Windows Live Writer, Messenger, Skype, Anti virus/spyware to keep the device safe and the ability to connect to the office VPN are all a must for the environment to receive the final tick.

So... how did they do?

The first things to spring to mind where VirtualPC and Parallels. I've used VirtualPC on the Mac before to set up a Windows environment and it was okay. I've also used it for testing on the PC. But VirtualPC and Parallels don't give me a portable environment... I still need to lug the laptop around so they're not contenders for this little challenge. I would have included VMware in the write-off but for the Moka5 tool. But more of that in a moment.

So next I had a look a the mindset leader - U3. And wrote it off (along with PowerToGo and Ceedo) very quickly. Not because it was bad but because most of what I wanted to run wouldn't in that environment (though if you can use the portable versions of OpenOffice, Firefox, Evolution etc they are a perfect answer)

The Linux LiveCDs (and also the BartPE WinXP LiveCD) also didn't make it because the former is Linux and the latter requires a reboot of the host (and being CD based limits me in what I can do/run)

That left me with two contenders. MojoPac and Moka5.

MojoPac has a lot of promise. Works with any USB 2.0 device. Supports most Windows applications. MojoPac works as a new virtual user on the host PC so you use a lot of the underlying PCs functionality (browser, operating system, shared apps etc) but keep your settings and data totally separate. You can also install applications on the MojoPac so they are always available. While it did work fine on my iPod it was very limited. It doesn't support Vista (I know it wasn't a requirement but it's a worry nevertheless), IE7 on the host machine (in fact ever IE6 seemed temperamental) and anything that messes with the OS - including things that need specific services to be running, or to install new services (IIS and SQL have problems there), or that check to see if your copy of windows is valid - WGA won't run (in fact, the entire Windows Update function is unavailable).

After a lot of wasted time I got the .Net 2.0 frameworks, Paint.Net and Office installed. But I was still without a database or a webserver and I was bored of being right on the bleeding edge. Given their claims I thing for a US$30 product (and no early-adopter discounts, life-time licence's etc) it's rather limited. You don't need to buy a Windows licence to use it, but it doesn't offer much over the U3 / Portable Apps type setup for it's price. Maybe by release 2.0 it'll be what I need.

That left me with Moka5. A very interesting idea, and potentially pretty limitless. Moka5 is an extension on the VMware virtualisation player. They allow you to use shared streamed (pre-tested and configured) environments on your local device, storing updates/personal data locally but always having access (assuming you're online) to the latest build of the environment itself. If you're offline a lot you have the ability to cache the environment. You can also build and manage your own environments.

I set up a WinXP Pro environment within the player and fairly quickly was able to install pretty much everything from the list above (I stopped when I'd proved that the hard things worked!) Because it's a virtualisation engine it creates and manages a dedicated stand-alone environment. Just for fun I also created a Ubuntu 6.06 environment on the same iPod so that I could toggle between them. At the moment it still needs a Windows host machine, but as VMware player is cross platform it will be interesting to see if that evolves over time...

The downsides of Moka5 are cost - because it's a full WinXP environment you're into the world of licensing fees which may preclude this option for some. I also found the Windows environment to be very slow (part of the reason for the Ubuntu install was to compare the two) - In Ubuntu the mouse moved fairly smoothly and menus were responsive. With the WinXP virtual machine I often found myself  ducking back to the host to check my email while I waited for something to happen.

So sadly for the moment at least I'm still lugging my laptop. Both Moka5 and MojoPac show great promise for portable developer/testing environments.

MojoPac would also be great for students of people who are able to use Open Source portable apps (but then again they may be better off with a standard USB key and a free portable versions of those Open Source apps).

Moka5 is an awesomely flexible platform. I'll probably keep working on trying to get acceptable performance out of the WinXP install, and I'll certainly keep the Ubuntu installation there for testing.

Both Moka5 and MojoPac are early iterations of this technology and both show great promise. I'll be watching with a keen eye.

What I'd love to see however is something that lets me carry an ultra portable device (either one of the new UMPCs, or a more contemporary replacement for my Vaio C1MT Picturebook, or something the size of my K-Jam that can run WinXP Tablet Edition!) but plug into a network/USB connector/Docking Cradle at home/the office/client site/internet cafe and have the data immediately available on the more powerful machine and carry on working with the resources of both machines at my disposal...

The final irony. The Internet Cafe were I normally testing things like this for real portability have just 'upgraded' their kiosks... they no longer have customer accessible USB ports! Now that's a major crimp in my plans for world domination!



Does your Mojo need some Moka?

clock October 25, 2006 04:44 by author OffBeatMammal

There's been a lot of talk about how virtualisation and portable apps are going to change the way that the world works recently. Everywhere I look there are new initiatives and technologies that are going to bring about a revolution in ease of use, safety and stability.

I agree that the wave is coming, but I'm not sure it's here just yet.

I set myself a little challenge. To build a totally portable environment that could live on my iPod and plug into a friends computer, a spare machine at home or an internet cafe and allow me to work as though I was at my desk.

That meant I needed:

  • IIS: or similar webserver, capable of delivering ASP.NET 2.0 - so needed all the relevant frameworks etc
  • SQL Server 2005: Pretty much any of the editions, as long as it had the management console and was 100% compatible with the features we're using in our live environment
  • Development IDE: Visual Studio would be a major bonus, but EditPlus would have cut it.
  • Browsers: IE (6 or preferably 7) and Firefox are a must for testing. ideally independent from the host OS so I know what plug-ins and add-ons are in place
  • Drawing tool: Designers insist of making me look at graphics. Apparently the world looks prettier in technicolor and with curves. Don't they realise how much overhead that puts on the text! Luckily for y'all I'm in the minority and I bow to Cats wisdom when she tells me that a picture is worth a thousand words (and if I build websites that don't have pictures I won't get paid for those words either!). Luckily for me Paint.Net is simple enough for me to use and good enough to do what needs to be done
  • MS Office: Or something 100% equivalent. OpenOffice and Evolution come close but I did say 100% didn't I! Specifically the 2007 B2TR version because I just don't want to go back to its predecessor
  • Music player: Because I can't work in silence. Ideally able to access the music stored on the iPod without needing duplication. SongBird, iTunes or WMP are all acceptable for this
  • Utilities: Windows Live Writer, Messenger, Skype, Anti virus/spyware to keep the device safe and the ability to connect to the office VPN are all a must for the environment to receive the final tick.

So... how did they do?

The first things to spring to mind where VirtualPC and Parallels. I've used VirtualPC on the Mac before to set up a Windows environment and it was okay. I've also used it for testing on the PC. But VirtualPC and Parallels don't give me a portable environment... I still need to lug the laptop around so they're not contenders for this little challenge. I would have included VMware in the write-off but for the Moka5 tool. But more of that in a moment.

So next I had a look a the mindset leader - U3. And wrote it off (along with PowerToGo and Ceedo) very quickly. Not because it was bad but because most of what I wanted to run wouldn't in that environment (though if you can use the portable versions of OpenOffice, Firefox, Evolution etc they are a perfect answer)

The Linux LiveCDs (and also the BartPE WinXP LiveCD) also didn't make it because the former is Linux and the latter requires a reboot of the host (and being CD based limits me in what I can do/run)

That left me with two contenders. MojoPac and Moka5.

MojoPac has a lot of promise. Works with any USB 2.0 device. Supports most Windows applications. MojoPac works as a new virtual user on the host PC so you use a lot of the underlying PCs functionality (browser, operating system, shared apps etc) but keep your settings and data totally separate. You can also install applications on the MojoPac so they are always available. While it did work fine on my iPod it was very limited. It doesn't support Vista (I know it wasn't a requirement but it's a worry nevertheless), IE7 on the host machine (in fact ever IE6 seemed temperamental) and anything that messes with the OS - including things that need specific services to be running, or to install new services (IIS and SQL have problems there), or that check to see if your copy of windows is valid - WGA won't run (in fact, the entire Windows Update function is unavailable).

After a lot of wasted time I got the .Net 2.0 frameworks, Paint.Net and Office installed. But I was still without a database or a webserver and I was bored of being right on the bleeding edge. Given their claims I thing for a US$30 product (and no early-adopter discounts, life-time licence's etc) it's rather limited. You don't need to buy a Windows licence to use it, but it doesn't offer much over the U3 / Portable Apps type setup for it's price. Maybe by release 2.0 it'll be what I need.

That left me with Moka5. A very interesting idea, and potentially pretty limitless. Moka5 is an extension on the VMware virtualisation player. They allow you to use shared streamed (pre-tested and configured) environments on your local device, storing updates/personal data locally but always having access (assuming you're online) to the latest build of the environment itself. If you're offline a lot you have the ability to cache the environment. You can also build and manage your own environments.

I set up a WinXP Pro environment within the player and fairly quickly was able to install pretty much everything from the list above (I stopped when I'd proved that the hard things worked!) Because it's a virtualisation engine it creates and manages a dedicated stand-alone environment. Just for fun I also created a Ubuntu 6.06 environment on the same iPod so that I could toggle between them. At the moment it still needs a Windows host machine, but as VMware player is cross platform it will be interesting to see if that evolves over time...

The downsides of Moka5 are cost - because it's a full WinXP environment you're into the world of licensing fees which may preclude this option for some. I also found the Windows environment to be very slow (part of the reason for the Ubuntu install was to compare the two) - In Ubuntu the mouse moved fairly smoothly and menus were responsive. With the WinXP virtual machine I often found myself  ducking back to the host to check my email while I waited for something to happen.

So sadly for the moment at least I'm still lugging my laptop. Both Moka5 and MojoPac show great promise for portable developer/testing environments.

MojoPac would also be great for students of people who are able to use Open Source portable apps (but then again they may be better off with a standard USB key and a free portable versions of those Open Source apps).

Moka5 is an awesomely flexible platform. I'll probably keep working on trying to get acceptable performance out of the WinXP install, and I'll certainly keep the Ubuntu installation there for testing.

Both Moka5 and MojoPac are early iterations of this technology and both show great promise. I'll be watching with a keen eye.

What I'd love to see however is something that lets me carry an ultra portable device (either one of the new UMPCs, or a more contemporary replacement for my Vaio C1MT Picturebook, or something the size of my K-Jam that can run WinXP Tablet Edition!) but plug into a network/USB connector/Docking Cradle at home/the office/client site/internet cafe and have the data immediately available on the more powerful machine and carry on working with the resources of both machines at my disposal...

The final irony. The Internet Cafe were I normally testing things like this for real portability have just 'upgraded' their kiosks... they no longer have customer accessible USB ports! Now that's a major crimp in my plans for world domination!



SongBird - music to my ears :)

clock October 25, 2006 03:44 by author OffBeatMammal

I used to think iTunes was the best media player (for both Windows and my Mac). It had a clean interface, low resource requirements and (with the help of a couple of add-ons talked to the media keys on my Vaio and kept my Last.FM account up-to-date and scrobbled)

Then along came release 6 and the rot set in. Release 7 is bloated, slow and no fun any more. I know 7.01 fixes a lot of that (and I'm sure they're hard at work) but that, and things like the fact that new iPod functions like the fast selection won't be available as firmware upgrades to older players, has pretty much soured me on the iPod (anyway, I've found a better use for it now and I use my K-Jam to listen to music)

Around the time I was losing faith in iTunes WMP11 went into Beta and became a firm favourite. Worked with my media keys, supported Last.FM plug-in and even the Windows Live Writer "Currently Listening" functions, low system, overhead and it looked darn good.

But it didn't support .m4a audio tracks properly (I know there are some tag reading plug-ins, and it does import the tracks into an "other" part of the library). Music is music. Leaving aside the DRM issues I don't care if it's Ogg, m4a, mp3, WMA or whatever the next greatest thing is going to be (I hear Vinyl is making a resurgence these days!). And of course it can't keep my iPod up to sync (I know I said it wasn't important, but I still have some music on the old half-brick)

Get SongbirdEnter my new friend SongBird. It's fairly lightweight. It runs on WinXP, OSX and various Linux flavours. It's based on the Mozilla foundation products (you know, that other browser... firefox). It includes support for Audioscrobbling to Last.FM and a whole bunch of other extensions (Wikipedia artist lookup, Shoutcast streaming audio directories etc). It supports my media keys and is very agnostic about audio formats (happily playing .m4a as well as other formats, and even imports my iTunes playlists). It even has an extension to allow me to sync my iPod should the mood ever take me.

It doesn't support the "Currently Playing" add-on for Windows Live Writer yet though :(

Update:the Currently Playing support rocks ;)

The only real downside for most people is that SongBird is very much a fledgling product. As I write it's at it's 0.2 developer preview release and it wasn't people that it may explode. It's not exploded for me yet but your mileage may vary. At the very least I hope the iTunes and WMP teams take a look at it and see what they can do in the war to win the hearts and minds of their users...



Search

Calendar

<<  December 2008  >>
SuMoTuWeThFrSa
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

Sign in


Blogroll

Archive

Tags

Categories