This weblog has moved here [http://markallanson.net/wordpress/]. What you see here is an archive.

13

Jan

2006

Conditional Build Events in Visual Studio .NET

I ran across an situation today when I wanted to do a build event, but only if my solution was in a specific configuration. Specifically, when the project was in the UnitTest configuration, I wanted to copy a unit test assembly into the main projects output folder so that a number of plugin classes provided by the unit test assembly could be used by the main project. I also wanted to copy in some unit test based configuration.

Unfortunately Visual Studio .NET does not keep Pre and Post Build Events within a configuration's settings, they are stored globally across all configurations. Thankfully, given that build events simply get written to a batch file, then invoked you can use your 3L337 batch file skillz to perform conditional build events.

IF NOT $(ConfigurationName) == UnitTest GOTO end

:: copy unit test assembly to the service folder.
echo Copying "$(TargetDir)UnitTests.dll" to "$(ProjectDir)..\MyProject\bin\debug\"
copy "$(TargetDir)UnitTests.dll" "$(ProjectDir)..\MyProject\bin\debug\"

:end
echo Finished Post Build Event

So, what does this bit of script do? Firstly it compares the current configuration to the configuration that I want to perform my build event for. Secondly, it negates this comparison, so that if the configuration is not what i'm looking for the branch jumps to the end without executing the build event. Lastly, if the configurations match, it performs the real actions of the build event.

It is a bit of a pain having to write this within a build event. It would be less of a pain if they pointed out a way of doing it within the help file for the build event editor. Configuration-based build events would be perfect, so the logic is performed by Visual Studio!

Posted by Mark at 10:44 AM | Comments (0)

2

Dec

2005

Slide evolves beyond Flickr


Get Slide for your own webpage

Slide looks like the next evolution of photo sharing websites. It can make slide shows from RSS feeds too, so with a bit of modification to my galleries RSS capabilities, I should be able to get a slide show going for each of my galleries.

Posted by Mark at 11:10 PM | Comments (0)

28

Oct

2005

XBox.com - MyXBox has gone live!

Fantastic job! Head over to www.xbox.com to check out the new bits. Here is my gamer card!

Posted by Mark at 02:17 PM | Comments (0)

1

Sep

2005

Music Genome Project? How about Human Genome Project?

For the last few days I have been making use of the Music Genome Project's Pandora. The idea behind Pandora is to create a "Radio Channel" that is based on the musical qualities found in another song or the songs produced by a specific artist. So far I am more than impressed. Other than one song I wanted it to match that it didn't know about (Pass the Vibes by Definition of Sound), it has done a brilliant job at playing me music that is closely related to what I have selected.

The matching seems to be done by analysing the musical qualities of a particular song (for example synchopated rhythms, dark bass lines, fast beats, melodic vocals...) and then cross references those qualities against a database of songs to determine other songs that match the qualities of the selected song/artist. These guys have a blog that provides more information on what they do.

All that we need now is for someone to do the same with humans. For example you enter the name of a famous actress or model (or if you are femme, actor), and it then analyses the traits of that person and picks out a number of other people that match those qualities. In fact, this would be great for a dating service. When you sign up you have to take a picture of yourself (say, in your underwear), it is then analysed and stored into a database. You then look at a group of different people and choose that which is most desirable, those physical characteristics are then used to match you with people that match your preference. Anyone got a blank check? I might start this business up myself! :)

Posted by Mark at 09:13 PM | Comments (0)

29

Aug

2005

Jumboz, where are you?

Jumboz (mentioned in my post "Super Low Springs for the FTO"), where are you? Why are you not defending your reputation? Why are you not increasing the quality of your products?, or if you are increasing the quality of your products why are you not letting people know? Where is your blog? Where is your website!!!!!!!

I couldn't find a single post on any bulletin board / forum that said good things about Jumboz Springs (notice however that I did find lots of posts that didn't say a anything either way). The car modification scene would have to be one of the most active groups of internet users on the planet after geeks with their countless forums, bulletin boards and club websites. Not having a web presence here is almost an attempt at suicide.

PS. Sorry if this post sounds a lot like Scoble, but in an instance like this I can see exactly where he is comming from.

Posted by Mark at 09:23 PM | Comments (0)

19

Jul

2005

If you use GreaseMonkey... Please read this.

If you use GreaseMonkey then please please please read Mark Pilgrims post on a very severe, hugely easily exploitable bug in GreaseMonkey that could potentially send ANY file in your local hard disk to ANY url, ANYWHERE.

For full details: Full details on GreaseMonkey exploit.http://mozdev.org/pipermail/greasemonkey/2005-July/004022.html

Please please uninstall GreaseMonkey until this is fixed, either that or remove all * targets and replace them with targets only to trusted websites.

Posted by Mark at 09:36 PM | Comments (0)

6

Jul

2005

Xml Schema Editor refreshed in Whidbey

Thank you Microsoft!

After having to write and modify large schema xml files by hand due to the fact that the VS.NET 2003 Xml Schema Editor was so, so, so horrendously slow, Whidbey has refreshed the Xml Schema Editor in the following ways:

  1. Fast. Redraw of elements is quick. (as opposed to being so slow you could watch the redraw in progress bit by bit)
  2. Xml Schema Overview. This is like the Pan & Zoom window that comes in Visio. Excellent.
  3. Partial Redraw when scrolling using the Xml Schema Overview. Elements that come into view are drawn in a minimilistic fashion until you stop zooming, making the scroll very quick
  4. Left Rooted Tree. This is much nicer than the Top Rooted version in VS.NET 2003. Brings it into line with editors like oXygen and Xml Spy.
Its about time these changes were made, and I would like to personally thank the developer who did the work!

Posted by Mark at 09:25 PM | Comments (0)

3

May

2005

Project Post Mortem

Since July last year I have been working on the design, development and testing of a project designed to provide wireless data access to field workers for a resources client. My role was primarily focussed on the design, development and performance/resilience testing of the EAI solution in Microsoft BizTalk 2004 and our own custom made Resequencer software. This part of the project was initially planned as being a migration from BizTalk 2002 to BizTalk 2004, however as almost anyone tasked with this type of work has learned, there is no point in migrating from one to the other without redesigning your messaging system to take advantage of all the new bits that BizTalk 2004 gives you.

We went live 6 weeks ago, replacing the existing architecture over the course of a weekend, and handling circa 1000 users on the Monday morning without a hitch (bar a few minor things that cropped up in the following weeks). I know this is really classed as a relatively small enterprise application, however it is the biggest single thing I have been involved with to this point with relation to concurrent users on a single system. All my previous work was centered around smaller numbers of users on a site, but distributed among hundreds of individual clients.

I have now moved on to new things and have had time to reflect on the entire development cycle. I think now is a good time to share some of what I believe we did right. Of course there is things we should have done better too. I'll throw them in as well. I'm not such a good writer and I find it hard to squeeze these things out, so I will do this in a couple of parts.

Virtualized Development
This is the single best thing we did. For those who do not know what I mean by virtualized development, the simplest explanation I have found so far is in the first section of the VMWare manual. VMWare is the software we used to run our virtual machines.

"VMware Workstation is desktop software for developers and IT professionals that allows you to run multiple x86-based desktop and server operating systems simultaneously on a single PC, in fully networked, portable virtual machines—with no rebooting or hard drive partitioning required."
As an extension to this I would describe Virtualized Development as the process of developing, testing and building software within a virtual machine.

Our virtual machine runs Windows 2000 Advanced Server (as this was the main platform we were developing for), and contained the standard raft of development tools, SQL Server and BizTalk Server. A single contained environment that could operate the entire system.

The main benefits of running in this way were as follows:

  • Getting a new developer up and running was trivial. 1) Get a standard base build Windows box. 2) Install VMWare Workstation and finally, 3) Copy across the master virtual machine image.
  • The master development virtual machine was able to be controlled by a single environments / build manager ensuring that everyone had a consistent environment. This simplified configuration management of the master development environment
  • Automatic distribution of the nightly build via a scheduled task that ran overnight, ensuring that every developer had an up to date environment with the latest build ready when they needed it
I believe this really did help us quite a lot as our developers (myself included) were constantly up to date with the latest changes everyone else was working on. The process generally adopted from moving one build to another was.
  1. Fire up new Virtual Machine.
  2. Spend X number of days working on specific features / SIRs.
  3. Check in all changes to source control and do a build. (build would generally occur overnight)
  4. Get the new virtual machine generated by the build (with yours as well as everyone elses changes).
  5. Start working on new tasks.
Our build process made use of overnight builds, and due to this there was a period of time lapse between checking in changes and being able to get a new virtual machine with all the changes built into a virtual machine. Although we didn't use it, I would definatly recommend using a continuous build process using something along the lines of Cruise Control to reduce this latency to something more acceptable.

Fully Automated Build
Using the virtualized development concept above would have been completely impossible without having a fully automated build process. I'll post more on our automated build process in the next post.

Posted by Mark at 10:14 PM | Comments (0)

23

Apr

2005

Carmack on Cell Phone Games

John Carmack (if you really don't know who he is, think the genius behind Wolfenstien 3D, Doom and Quake Series') has been playing a bit with writing games on cell phones. He has some interesting views on Java on the cell and the BREW platform.

I have never understood why Java on more recent cell phones runs so slowly given the hundreds of megahertz they all run at. I can understand the need for a more unified development model for mobile phone platforms, given it would be impossible to write commercial software in any language that gets compiled down to native code unless someone comes out with a cross compiler, however then it has to be updated for each new phone and this is really is a physical impossibility.

I have not previously looked into BREW at all given I am not really seriously interested in developing on mobile [phone] platforms, however if, as Carmack says, code in C/C++, I would be incredibly interested to see what kind of performance can be extracted from BREW platform.

For the last 18 months or so now I have been living in a strong typed managed code world, and given C# 2.0 is taking this even further with generics, It might be kind of refreshing to get back into programming in nice weakly typed C again. I couldn't face developing in C on a Windows or Linux platform again for any kind of user-interactive software, but maybe mobile phone development under BREW might hit the sweet spot and allow me to scratch the itch.

Posted by Mark at 11:08 PM | Comments (0)

16

Apr

2005

Google Maps! How 2003?

For all those having wet dreams over google maps, then may I point you to MultiMap.com's Aerial View that has existed for at least the last few years.

Here is a the MultiMap Aerial view of central-ish London.

Notice, that the street map is overlaid on top of the sattelite imagery as you move your mouse around the map. It doesn't have the nice ajaxability of google maps, but it has been around for a while now, and the street map overlay is very cool. Aerials are only for the UK, though.

Posted by Mark at 10:48 PM | Comments (0)

15

Mar

2005

Converting Feeds to Feedburner

I have just swiched over to using FeedBurner for distribution of my RSS and ATOM feed. This looks quite interesting. Getting it working took a bit of fiddling though, with Feedburner at one point telling my my feed was eating itsself (recursive reference).

The trick is that you need to let Feedburner know when you update your feeds, however at the same time redirect any requests that are made for your original source file to the new Feedburner url. The problem being that Feedburner needs to access the original url for its source of information. My original attempt was just to add a bunch of lines to my .htaccess file so that all requests for the old urls got redirected to Feedburner instead, as below.

Redirect temp /markallanson.net/weblog/rss2.xml http://feeds.feedburner.com/Markallansonnet
Redirect temp /markallanson.net/weblog/atom.xml http://feeds.feedburner.com/Markallansonnet
Redirect temp /markallanson.net/weblog/index.rdf http://feeds.feedburner.com/Markallansonnet
Redirect temp /markallanson.net/weblog/index.xml http://feeds.feedburner.com/Markallansonnet

Now, Feedburner was configured to use my Atom feed as it's data source. The redirect was causing problems. The answer to this problem was simpler than I originally thought. Make my MovableType Atom template simply write to a brand new url, and make Feedburner consume the new URL. Redirects for the old ones will continue to be redirected to Feedburner which pulls new content from the new source.

Posted by Mark at 11:32 PM | Comments (0)

5

Mar

2005

Nokia 6630 + mReader + Plasma

I took ownership of a new Nokia 6630 phone this week. So far I haven't been able to find anything worth complaining about. Thankfully the memory card format remains compatible with the SD card reader on my notebook (thanks to the supplied card-extender).

I can also happily report that both mReader and Mark's Plasma both work without any problems on on the Nokia 6630, so go ahead and download them both. The performance of Marks Plasma is still relatively slow when running in full resolution, however when running in quarter resolution, it runs smooth enough to get the idea of what it should be looking like. I might try rewriting this application either natively for Symbian S60, or might try tweaking the algorithm to make it run faster.

Posted by Mark at 03:10 PM | Comments (0)

1

Mar

2005

Oh this is sweet, this is very sweet.

Someone has come up with a Windows XP shell extension that allows you to use your gmail account as an online storage device with full drag & drop functionality within explorer.

Posted by Mark at 10:16 PM | Comments (0)

21

Feb

2005

Introducing Rss Bandit 2 Plucker

If you are someone who uses Rss Bandit and use a PalmOS based device and have been lamenting the lack of decent offline Rss Aggregator then worry no longer. Grab a copy of Rss Bandit 2 Plucker, which works with both Rss Bandit and Plucker to synchronise your unread items in Rss Bandit to your device.

Rss Bandit 2 Plucker is not software that gets installed on your PalmOS based handheld, it gets installed on your PC and acts as a pipe that transfers and converts data between Rss Bandit and Plucker. Plucker automatically runs Rss Bandit 2 Plucker when you attempt to synchronise the channel (which can be automatically run on a schedule), so after setup has been completed, there is no manual intervention required.

It is so simple to use i've made a short video that demonstrates everything from running the setup program to performing your first synchronisation. This video runs through everything that you have to do to get up and running.

View the Demonstration Video (3.9 mb)
Download Now (82.5 kb)

Posted by Mark at 07:47 PM | Comments (0)

16

Feb

2005

PalmOne, The Best Customer Service Ever

I have just experienced the best customer service, ever.

During my move from the Oz to the UK late 2003 I lost the installation CD for my PalmOne Tungsten E handheld. Unfortunately this CD is the only way of installing the Outlook conduits (that allow me to sync my Outlook email and contacts etc), and other software (Versamail).

I sent a support request to PalmOne asking how I can get ahold of a new CD, and within a few hours had a response asking for my address, informing me they will send me a replacement product CD, free of charge.

Wow, I didn't expect that, I expected to have to pay £10.00 or so for a replacement CD. This was about 10 days ago.

This morning, what should arrive in the mailbox but a brand new product CD. Such a simple thing, but done so well! Thanks PalmOne, thats showing 'em how exceptional customer service is done!

Posted by Mark at 10:14 AM | Comments (0)

8

Feb

2005

Back into my PalmOne Tungsten E + Rss

So, whilst preparing to go to Barcelona last week I decided to fire the Tungsten E back into life (haven't touched in at least 6 months) so I could install the brilliant Metro for a bit of navi-help. As it turns out I didn't get around to syncing Metro, and lived without it (not enough time to sync), but I was once again wowed by how nice the screens are on the current gen PalmOne devices. The font is so smooth and readable.

So. I had to find a use and get back into the PDA thing, despite what Russell is preaching about the death of the PDA. I have had, and hated an Orange SPV E200, although I have never extensively used a Symbian based phone, I am thinking my next may be a Symbian.

Anyway I have gone off topic. So what it comes down to is there's no good free Rss aggregator / Offline Rss reader for PalmOS. I challenge someone to prove me otherwise. I don't want no Java, I want native. Oh, I also want it to sync my unread items with Rss Bandit.

So, Plucker is pretty cool it will let me sync online content to my Tungsten, but that alone aint going to do the job, it doesn't understand xml. It certainly doesn't understand Rss. Luckily however you can provide a "Pre-Spider" program to run before the spidering engine does it job. and the spidering engine can spider local content. This smells do-able to me.

RssBandit2Plucker Screenshot
Enter RssBandit2Plucker.

When performing a sync of a channel in Plucker, it will automatically launch RssBandit2Plucker, which will analyse Rss Bandit's unread items, and generate a collection of HTML on the local disk that is representative of the unread items in Rss Bandit. From here Plucker takes over, processes the HTML, downloads the images from the web and dumps it out as a palm database file (pdb) that, once synced will appear within the Plucker application on the device.

It's not quite ready yet, the setup program is mostly done, however I have a few things left to sort out with auto configuration of Plucker. My aim is to make it seamless, no manual configuration (Other than selecting a PalmOS device to sync to which is asked the first time you attempt to sync the channel in Plucker.

Im not sure how big the audience is for this (its pretty specialised, linking in only with RssBandit, though im sure it could become quite extensible to handle an arbritrary desktop aggregator without too much effort.

Posted by Mark at 10:38 PM | Comments (0)

30

Dec

2004

This is now a no-www Class B site

After stumbling across no-www.org, I have added no-www Class B support to markallanson.net.

What does this mean? Well its really quite simple, any request that comes in to markallanson.net with the www prefix will politely be redirected to its no-www equivilant. For Example, "http://www.markallanson.net/" will be automatically redirected to "http://markallanson.net". This is done via modifications to the apache .htaccess.

Head on over to no-www for more information...

PS: I will have a bit of work ahead of my to change all my hyperlinks to remove the www., however I will get around to this in due course. (Note however, that the apache redirection works for the hyperlinks too)

Posted by Mark at 07:45 PM | Comments (0)

15

Dec

2004

I Hereby Refer Myself to My COM Interop Golden Rule #1

I hereby refer myself to My COM Interop Golden Rule #1 and formally slap myself on the wrist.

Posted by Mark at 10:42 PM | Comments (0)

14

Dec

2004

Browser Usage Chart

Seeings as others seem to be doing this at the moment, its an interesting statistic to track I guess. Here is my browser usage chart since May. This chart covers 2 domains, those being *.ftowa.com and *.markallanson.net. Given that FtoWA.com is a completely non-tech site, this gives a reasonable cross-section of society.

Im not sure if you can glean anything from these charts other than IE is still completely owning the market, despite the fact that Mozilla is slowly edging up. The "Unknown" section on this chart is sources that AWStats can't classify, and all the RSS news aggregators generally get lumped in here. "Others" are those that I couldn't be bothered breaking down into individual sources as they would basically be a straight line at almost zero, this list includes (but is not limited to) Netscape, most Mobile Phone browsers, LibWWW (general purpose http library), Safari, Gaelon, Konqueror, Lynx, etc...

I think out of everyone, Opera seems to be taking the biggest hammering, poor little guy, up and down like a rollercoaster. Without further ago I present my graph.

PS. I tried to do some neat sparklines for this post, but excel sucks to much at creating nice resolution charts. In fact, I even tried generating a nice big graph, then sampling down to a very small one in a photo program, but I don't think I actually have enough samples to generate a nice sparkline. Maybe if I had daily, or even weekly samples since May I might have enough data for some sparklines.

Posted by Mark at 12:19 AM | Comments (0)

7

Dec

2004

Cleaning up your Xml Serialization output

Serialization is a great thing, except when you can't get it to do what you want it to do. Case in point: I was serializing a small class that was going to be farmed off to a logger, which took the data and stored it in a logging database sitting on SQL Server. If you have ever done any serialization before, you will know that when you use the System.Xml.XmlSerialization.XmlSerializer to serialize a class you get a number of artifacts in the resultant xml, something along the lines of that below: (note I was serializing a class called ContextItem)

    1 <?xml version="1.0" encoding="utf-16" ?>
    2 <ContextItem
    3     xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    5     MatchRule="0"
    6     TimeStamp="2004-12-06T12:39:42.0951250-00:00"
    7     FixType="Retry"
    8     FixTime="2004-12-06T12:39:42.0951250-00:00"
    9     RetryCount="1" />

The artifacts are the xml processing instruction as the root node of the serialized class, and the declaration of the xsd and xsi namespaces within the ContextItem node.

In the case above, serialization was done using an System.Xml.XmlTextWriter combined with the XmlSerializer, and the artifacts are due to a combination of the two working together. The Xml processing instruction is placed in the resultant output by the XmlTextReader, and the xsd and xsi namespace delcarations are placed in the resultant output by the serializer.

   97     public static string Serialize(ContextItem i)
   98     {
   99         // Write the serialized result to a string builder
  100         XmlSerializer serializer = new XmlSerializer(typeof(ContextItem));
  101         StringBuilder sb = new StringBuilder();
  102         StringWriter sw = new StringWriter(sb);
  103         XmlTextWriter tw = new XmlTextWriter(sw);
  104 
  105         // get rid of xml Processing Instruction declaration
  106         tw.Formatting = Formatting.None;
  107         tw.WriteRaw(String.Empty);
  108 
  109         // get rid of xsd/xsi declaraions
  110         XmlSerializerNamespaces xsn = new XmlSerializerNamespaces();
  111         xsn.Add(String.Empty, String.Empty);
  112 
  113         // serialize and return the result
  114         serializer.Serialize(tw, i, xsn);
  115         return sb.ToString();
  116     }

Removing the xml processing instruction

Seeings as the XmlTextReader is responsible for writing the xml processing instruction at the top of the above document the trick here is to fool it into not writing the xml processing instruction. This is done by lines 6 and 7 in the above code snippet. Setting the formatting just tells the XmlTextWriter not to apply any type of formatting to the output document (the serialized output will be one long string). Line 7 however, puts the XmlTextWriter current node into mixed mode (the node can contain both text and child xml nodes), therefore causing the xml processing instruction not to be output.

Removing the xsd and xsi namespace declarations

I am not sure if the method I have used to remove the xsd and xsi declaraions is actually embedded in the implementation of the XmlSerializerNamespaces class or if it is an unintended side effect of the implementation. Maybe Dare could clear this up?

An overloaded method of the XmlSerializer.Serialize() function takes a third argument, specifically an XmlSerializerNamespaces object which is normally used as a container for a collection of namespaces and prefixes to use in the serialization of the object. To remove the xsi and xsd namespace declarations you need to create an empty XmlSerializerNamespaces class and add a single entry, specifying an empty namespace prefix and namespace uri as shown in lines 110-111 in the above sample.

Output after these two operations cleans up the xml nicely, ready for logging into a SQL server thousands of times if required. Final output is shown below.

    1 <ContextItem
    2     MatchRule="0"
    3     TimeStamp="2004-12-06T12:39:42.0951250-00:00"
    4     FixType="Retry"
    5     FixTime="2004-12-06T12:39:42.0951250-00:00"
    6     RetryCount="1" />

Posted by Mark at 10:18 PM | Comments (0)

24

Nov

2004

PInvoke.net

For later: P/Invoke Community Wiki for sharing P/Invoke signatures.

Posted by Mark at 11:58 PM | Comments (0)

openSubscriber : Make mailing lists accessible via RSS

A long time friend of mine recently founded openSubscriber. It is a simple way to create a public archive of a mailing lists that will be accessible to the general public long after it has dissapeared from the harddisks of the subscribers.

This is a neat idea by its self, however the coolest thing about the site is it allows you to subscribe to the mailing lists via RSS, so you can now syndicate any mailing list feed into your favorite aggregator without having to rely on mailing list software authors.

All he needs to do now is find a nice way to allow replying to mailing list posts via the subscribed RSS feeds.

Posted by Mark at 11:13 PM | Comments (0)

19

Oct

2004

Some MSMQT Mechanics

This thread in the Biztalk.General newsgroup explains some of the dynamics behind MSMQT operation and also makes clear why the active/dehydrated instances of MSMQT receive locations stay in the HAT tool once all orchestrations and messaging instances have finished with it. To quote the important part in this regard:

Second, InReleaseT. Because MSMQT needs to guarantee ordered delivery, at any point in time only one thread on only one computer in the group must process messages that are delivered to a specific queue. This thread works on some persistent data that is saved and loaded from the database. We call this a MSMQT instance. When the thread is running on a specific computer, we say that the MSMQT instance is "Active". When the data is persisted in the database and there is no one working on it we say that the instance is "Dehydrated". An active MSMQT instance maintains a lock on the queue object in the database, so that no other active instance on any other computer can work on this queue. For load-balancing purposes and to save memory, active MSMQT instances are dehydrated if the queue wasn't used in a while.

Good to note this information comes straight from the horses mouth.

Posted by Mark at 01:54 PM | Comments (0)

15

Oct

2004

Google Desktop Search

Damn this thing rocks. Google has beat MS to the punch! Google Desktop Search indexes a bunch of common file formats and allows you to search you entire computer very quickly. Inside documents, outside documents etc. It is hosted in your web browser, and runs on port 4664. Effectively you could search your own PC from outside a firewall if you open up the port. Not that this would be recommended of course due to security concerns.

Posted by Mark at 09:59 AM | Comments (0)

24

Sep

2004

Mark's COM Interop Golden Rule #1

When capturing a COMException (in my case specifically it was an Automation Error) inside .NET managed code always check the ExcepotionObject.Source parameter as this will contain the error text generated by the COM component that has generated the error.


Don't waste your time checking the Message or Stacktrace parameters as you are just wasting your time (they won't give  you any usefull information).

Posted by Mark at 05:21 PM | Comments (0)

20

Sep

2004

10

Aug

2004

Biztalk Blogs Aggregation

Last Updated 08/09/2004
The RSS feed was for aggregation was getting very large (almost 1 meg), so the feed now only publishes the latest 20 items to the site, and size has dropped to about 200kb, much more managable.

I've started searching for Biztalk related blogs recently given that it is now my primary focus at work. I found a few and decided to make use of Addy Santo's excellent Blogwave to create an aggregated version of the weblogs I have found. Effectively this creates something similar to Longhorn Blogs, an aggregated site on a specific topic.

So. You can point your aggregator to my "Biztalk Blogs" aggregation which is updated every 30 minutes (so long as I leave my workstation on at the office, which is almost always). I will try and add an xslt stylesheet to this at some point aswell (Addy, feature request, allow linking to an xslt stylesheet?).

If anyone knows of any Biztalk Blogs I am missing, drop me a line

The List so far:

Note that I do know about Martijn's blog - E-Commerce, EAI and Biztalk, however he only has an ATOM feed available and currently Blogwave only supports RSS.
Posted by Mark at 09:54 AM

17

Jul

2004

Biztalk 2004 Training

On Sunday I'm jetting off to Chicago for a Biztalk 2004 training course from IMG. I've been maintaining an existing Biztalk 2002 implementation for a while now, and have just been recruited to help a transition to Biztalk 2004, so its time to go on some formal training as there are currently no books available anywhere!

I have WiFi in my hotel room so will be contactable via email and will be on MSN Messenger at various times over the week. If anyone wants to get together for dinner drop me an email, i'm staying at Club Quarters, Wacker at Michigan (75 E Wacker Drive), near the river on the Magnificent Mile. Training venue is One IBM Plaza.

Posted by Mark at 07:10 PM | Comments (0)

18

Jun

2004

New Photo Gallery Implementation

I have finally had the time and inspiration to dump my 2 year old perl scripts that were running my photo gallery and install and configure the free/open source Gallery software.

I intially tried out this program about 8 or 9 months ago however I found it quite cumbersome to use, and the windows java based client was pretty un-user-friendly. Something that I didn't notice, that was pointed out to me today by Tolli, is that you can install a registry patch that allows you to publish your photo's directly into gallery directly from your local machines file system using the Microsoft Windows XP Web Publishing Wizard. Using this feature of Windows XP updating your photo gallery is a matter of going to the folder that you want to publish as a photo gallery, enter the publishing wizard, follow a few steps that include selecting that you want to publish to Gallery and voila, done.

So, you can now visit the new and improved photo gallery. I still have not migrated over all the old photo galleries, and have not yet migrated over any of the photo descriptions or commentary, but I will get them done soon. Also note that I have published the photo's from our New York City visit. Note that you can also comment on the photo's so if you have something to say about a particular photo please punch it in.

Posted by Mark at 11:03 PM | Comments (0)

2

Jun

2004

mReader Breathes!

After laying dormant since August 23rd last year [mReader 1.01], I have finally got around to decompiling the mReader from binary form and have thrown it all into the Eclipse 3.0 IDE. Wow, was I blown away by the new version of Eclipse. What a great IDE. I have been using the version 2.xx incarnation at work to do Java work and while great, the new Eye-candy in the version 3.0 incarnation is truly fantastic.

Now, back on topic. For those who don't know, I lost the mReader souce in a Windows incident about 3-4 months ago. I used Jode (Thanks, Rich Fuller for pointing me to it) to decompile the mReader binaries, and it has done a servicable job. After about 10 minutes of playing around Eclipse is finally happy with the java source. I have had to chop out some bits that didnt decompile properly, and will have to re-implement them in the next few days. Jode also pulled some very interesting little things out of its decompiler hat, for example:

public void ImportOPML() {
   object = object_1_;
   break;
}
public void Add(RssItem newItem) {
      object = object_0_;
      break;
}
public progressCanvas(Display display) {
   this.display = display;
   screen = screen;
   if (!this.isDoubleBuffered())
      offscreen = Image.createImage(this.getWidth(), this.getHeight());
}

So where to from here? I am going to clean up the code, replace the chunks that didn't decompile correctly and put it all up in a sourceforge project. I have had a lot of requests for the source over the last few months and I may aswell give something back.

Ill keep you posted.

Posted by Mark at 11:27 PM | Comments (1)

11

May

2004

Notepad2 - A lightweight Notepad.exe replacement

There's not many things more important for a software developer than a great lightweight text editor. Something that sits between the Windows standard notepad.exe and an advanced editor such as UltraEdit32 and TextPad.

That search is over, Notepad2, from my intial usage it is extremely quick and provides customisable syntax highlighting, Simple to access ("Windows-R, notepad2.exe" instead of "Windows-R, notepad.exe"), as well as a few other nice features.

Seems to be a keeper.

Posted by Mark at 09:44 PM | Comments (0)

29

Apr

2004

Mark's Asp.Net Journals

I am a reasonably accomplished C#.Net Software Engineer, however one part of the .Net Framework and technologies that I have not explored is those in the area of Asp.Net. In order to learn this part of Microsoft's technology offerings I have embarked upon a small(ish) but extensible project that I can do in stages, and hopefully make use of a wide subset of the technology available.

Rather than discuss the project that I will be developing (as I am sure most are not interested in this), I will instead post a series of writings on the problems that I run into while developing with Asp.Net. Hopefully by having these on a blog with higher google juice may save some people the time I waste with my own occasional stupidity.

Journals

  1. Beware of the comment devil: How to save hours of time
Please check back on this post for an index of what I write about, alternatively just subscribe to my weblog in your news aggregator(ATOM) and never come back here again.

Posted by Mark at 10:48 PM | Comments (0)

Asp.Net: Beware of the comment devil: How to save hours of time

You are experiencing the following symptoms when trying to use an <asp:LinkButton> inside a Repeater, DataList or DataGrid.

Javascript Error: Error On Page
Line: 1
Char: 1
Error: Object Expected
Code: 0
URL: Your URL

When you place a LinkButton inside one of the databound repeating controls, asp.net generates a javascript function to deal with the OnClick event of each LinkButton it ends up placing on the page. (Note the number of LinkButtons will depend on how many items of data you are displaying)

function __doPostBack(eventTarget, eventArgument) { ... }

Please, oh please make sure that you have closed off all comments in your html <head> section. By failing to close off your comments in your head section you are effectively commenting out the javascript code that asp.net creates to handle your events on the Repeater/DataList/DataGrid Control. By commenting this function out it is now inaccessable during the processing of the OnClick event of the LinkButton, hence your page is broken.

Props to Mun for helping me find this one.

Note: You can visit my Marks Asp.Net Journals Post for an index of all the Asp.Net tips and tricks I have painfully learned during my Asp.Net Adventures.

Posted by Mark at 10:46 PM | Comments (0)

24

Mar

2004

Egads Lockergnome pointed to me

I know its hardly a slashdotting but Lockergnome pointed at my aparently "new" v1.0 posting of mReader from last August. Along with it cometh the comment spam!

Thank god for mt-blacklist.

Posted by Mark at 10:34 PM | Comments (0)

12

Mar

2004

The Challenges of Accenture, and Java

Whatever anyone says about Accenture, whether current employee's or alumini, you can't debate that in the development roles you are never going to be short of challenges.

At the end of last week I got reassigned to some system testing and debugging on some middleware we have implemented for a utilities company here in the UK. This may sound a bit dry at first, until you realise that so many consulting companies have their finger in this utilities pie that the integration layers we have developed and are testing are very sensitive to the politics that go along with the situation.

I have had my hands deep into J2EE and EJB over the last week, debugging, ironining out issues, recoding badly implemented portions (thanks to some of the other consulting companies that have managed to get their grubby mitts into the code). Its been an interesting challenge given my skill track is .NET and my Java experience has been quite limited.

After coding in C# for the last umpteen months, coding in Java is like taking a step back in time. It feels ancient, its syntax is clumsy and long winded. Java makes _you_ do all the work, instead of providing mechanisms for simplifying the construction and readability of code.

So, hopefully, when the switch is thrown on > 1100 field workers, everything goes without a hitch and I can move back to a nice modern language created for this millenium, not last.

Posted by Mark at 09:47 PM | Comments (0)

6

Mar

2004

Sorry Foxy, the Birdy is better

Thats right, I am dumping Mozilla Firefox 0.8 in favor of Mozilla Firebird 0.7.

FireFox is just too buggy. I am experiencing hangs, high cpu usage, lockups. Nasty stuff, especially when you have 10-20 tabs or so open.

Maybe I could live with the FireFox hangs if they provided a "restore to previous state" like the current build of Opera has so that when you restart you don't have to do _everything_ again!

Posted by Mark at 08:03 PM | Comments (1)

23

Feb

2004

First day @ Accenture Technology Solutions

Orienation day 1 provided a mix of presentation, gifts, food and good company! We have a fantastic bunch of new joiners (about 24 in total from memory).

Luckily I have been placed on some London based .NET and .NET Compact Framework projects. Can't wait to get my hands dirty on the Compact Framework work, it is a very interesting little project even if I am being pulled in only for a short amount of time to finish off some UI elements. My base of work will be in PC based .NET however, and after my short stint of compact framework work I will start that full time.

Its going to be an exciting entrace into the world of Accenture!

Posted by Mark at 08:06 PM | Comments (0)

18

Feb

2004

Orange and Mobile MSN Messenger

I just got myself a new Orange SPV E200 Windows Mobile 2003 Smartphone. Consequently I had to update my MSN Messenger Mobile profile so messages sent to me while offline would go to my new phone.

Upon selecting the new Country (UK) and new Providor (orange), I had to agree to the terms of service which state that Orange can charge ME 10 pence for each message I _RECEIVE_. Yes, thats right, they want to charge me for receiving messages.

Fat chance! Service disabled, sorry!

PS. This smartphone rocks!

Posted by Mark at 04:34 PM | Comments (0)

12

Feb

2004

Password Storage Applications

I have passwords coming out of my ears, so many in fact that I went to download a trial version of Macromedia Fireworks MX this morning and i couldn't for the life of me remember my password for the Macromedia site.

Time to find a password storage app for Windows. I found Password Keychain, but seeings as i'm a sucker for sexy apps and I have a week or so before I start work it's time to roll my own .NET password storage application, and make it integrate with Mozilla Firefox, and maybe Internet Exploder too.

Keep an eye out.

Posted by Mark at 11:42 PM | Comments (0)

9

Feb

2004

RSS 2.0 and ATOM Feeds now Available

Tonight I have finally updated my ageing feed standards and you can now subscribe to my blog using RSS 2.0 or ATOM (See subscription links above). I also made use the new "feed:" URI scheme so if you use a compliant News Aggregator a simple single click should subscribe.

I will maintain the RDF, RSS 0.91 and RSS 1.0 feeds in their old locations so nothing will break.

Posted by Mark at 10:34 PM | Comments (0)

Mozilla FireFox 0.8 Released

Get Firefox
I'm sure almost everyone knows about this, but if not, Mozilla FireFox (Formerly Firebird) has released their new preview version 0.8. Go get it today and free yourself from Popups, Incorrectly displayed web sites and vulnerabilities!
Posted by Mark at 05:11 PM | Comments (0)

7

Feb

2004

Found another Accenture blogger...

Keep an eye out on this post I will add them as I find them. When I have a few more I will create an OPML.

Mike Klein : http://www.happycynic.com/
Chris Mann : http://www.bigmansun.com/

Posted by Mark at 10:26 PM | Comments (0)

6

Feb

2004

DayPop.com

I wonder why I haven't run into DayPop before? Interesting analysis of word and topic trends amongst webloggers and news makers, as well as search.

Posted by Mark at 02:06 PM | Comments (0)

5

Feb

2004

Accenture Interview Hits

Very much like Mun i've recently starting getting a lot of search engine hits for "Accenture+Interview" in my referrer logs recently. Accenture Technology Solutions (ATS) must be on a massive hiring drive, or at least they must be in the UK!

I'm not sure that there is much help either of us can give to anyone that is interviewing with ATS at the moment. If you know your stuff and are a good communicator then you should have no troubles acquiring a position with ATS. The HR interviews are the same you will experience at any medium-large enterprise. The skills interview will catch you out if you don't know your stuff, so shy away from applying for positions that you are not qualified for, and be wary of padding your CV with falsehoods. (I know this is a "durr" type moment but im sure there are people out there that do it :) )

On another note, Mun, maybe we should set up "Accenture Bloggers" OPML file and create a synthetic feed using Feedster along the lines of what Alex Hoffman has done for Australian .NET bloggers? If anyone is interested drop a comment onto this post (if any accenture bloggers actually find my blog).

Posted by Mark at 10:49 PM | Comments (2)

1

Feb

2004

My NewsGator Render Template

This template (sort of) makes the Post view within Outlook look like the "News Page" displayed when you select the root NewsGator folder.

To Install:

  1. Download the template [Marks_NewsGator.zip] (3kb).
  2. Unzip the files into your Newsgator\Render folder.
  3. Inside Outlook, Press the NewsGator button on the NewsGator toolbar, then select Options... from the drop down menu.
  4. Switch to the Rendering tab, and select "Marks_NewsGator" from the drop down list. (Note you can also set the rendering template up on a feed-by-feed basis, look at the NewsGator documentation for info on how to do this)
  5. Restart Outlook.

To get the text centered next to the NewsGator logo at the top I have had to use a 12px top margin. For some reason I couldn' get the vertical-alignment: middle; CSS style working. If someone wants to have a look at the CSS and XSLT files for the template and tell me what i'm doing wrong I would greatly appreciate it, i'm still an infant when it comes to CSS.

Posted by Mark at 11:43 PM | Comments (0)

Testing my Newsgator XSLT and CSS

Well it seems that NewsGator allows you to create custom transforms for feeds (and even on an individual feed basis!). Unfortuantely the XSLT transform happens very early on right when data is stored into the PST file, which sorta negates the whole concept behind XSLT, doesn't it?

Anyway, this is a post to test my transform. I will post up the files when i'm done.

Posted by Mark at 07:23 PM | Comments (0)

31

Jan

2004

New Design: Frosty Zoom

As you can see (if you are viewing in a browser) I have created a new website design. Not much of the MovableType templates are left.

The new design is a pure CSS based design. There should be no font tags anywhere, and the only table that exists on the entire site is the standard MovableType calendar. I don't think i'm quite ready to try and de-tablify that yet.

I have tested this site design in Mozilla Firebird 0.7 and IE 6.0.2800. It /almost/ looks the same on each browser, the only difference being the menu bar at the top (which is actually an unordered list). On Mozilla there is some padding between each menu item that i'm not quite sure how to get rid of (maybe some css guru out there can give me a point in the right direction?). It wasn't to hard getting both browsers looking very similar, but by the same token my design isn't exactly pushing the boundaries of CSS.

For best effects you should have the Lucida Grande font installed on your system. If you don't have Lucida Grande (which incidently is one of the fonts that makes OSX look gorgeous) it will default to Verdana.

To give the transparent effect I have had to use a halfscreen light grey image. I can't wait till you can do something like this though:

.blogbody
   {
   background-color: #666666;
   background-opacity: 20%;
   }

If anyone notices anything that doesn't work on their particular browser (havent tested on opera yet, or any mac or linux browser like konqeror) then please drop me an email so I can have a look at the stylesheet.

Update: I am still working on the photo gallery template page. Note that although it doesnt currently fit together very well, it does actually work.

Posted by Mark at 08:14 PM | Comments (0)

30

Jan

2004

World66 Maps

World66 is nifty. It lets you enter the countries, and states within the US that you have visited and produces a world map highlighting the countries visited in red.

Here is my World map:

And here is my US States map (not bad for an Aussie :), I think):

Posted by Mark at 11:58 PM | Comments (0)

29

Jan

2004

Frasier Font

Anyone got any idea what font is used in the short black scene descriptors in Frasier?

Posted by Mark at 12:04 AM | Comments (0)

23

Jan

2004

Testing BlogJet

Ugh, Blogjet inserts masses of font tags, and paragraph tags. I think I'll stick with w.blogger.

Posted by Mark at 01:45 PM | Comments (0)

New RSS Aggregator

Oh I thought I should mention, I have been using a new aggregator for about the last month now, IntraVNews, which runs inside Outlook.

It is very handy having RSS inside of outlook, though theres a number of limitations that I have found with outlooks standard display of items that I don't like. Unfortunately these can't be changed.

  1. When I used to use SharpReader I would select a folder somewhere in my hierarchy and read all unread messages for that branch of my tree. Can't be done in Outlook.
  2. The space bar in SharpReader moves between unread items, and moves between feeds when unread items in the current feed have been exhausted. This behaviour is totally different in Outlook.
  3. Memory. I figured the one thing that I would gain by putting all my feeds into Outlook was to curb SharpReader's horrendous memory usage. Outlook is now using almost 60mb of RAM.
  4. When my folder tree is collapsed in Outlook I can't see which branches contained unread items, or how many unread items.

I have a feeling that standalone aggregators will eventually clearly distinguish themselves as a force to be rekoned with, however for the moment despite the reasons not to use an Outlook embedded aggregator, the convenience wins out and I will be sticking with IntraVNews.

[iTunes: See The Sun - Dido - Life For Rent (10:35)]
Posted by Mark at 11:13 AM | Comments (0)

31

Dec

2003

TextAmerica an Mozilla Firebird 0.7

Not sure whats going on with TextAmerica when using Mozilla 0.7. I created a Moblog earlier on today (http://markallans.textamerica.com) for use with Sarah and my new UK website (http://uk.markallanson.net/). Any TextAmerica webpage that is longer that one screen has no scroll bars and does not allow you to scroll. Is it just me that is experiencing this behaviour?

Seems to work fine if I fire up IE though.

Posted by Mark at 03:13 PM | Comments (0)

22

Dec

2003

Winamp vs iTunes CPU Utilisation

I just downloaded and installed WinAmp 5.01, in an effort to compare CPU usage with iTunes. iTunes uses (on average) a ghastly 15-20% of CPU when playing my ripped tracks (Ripped in iTunes), WinAmp on the other hand uses (on average) about 5-7% of CPU). This is on a 1.2Ghz Pentium-M CPU with 384mb RAM.

Posted by Mark at 10:29 PM | Comments (0)

9

Dec

2003

Intellisense makes you lazy

I just completed an online technical assessment for a job that I recently applied for using .NET technologies. One thing that I have learnt from the test is that Intellisense makes you lazy. The test asked some quite specific questions regarding individual classes that I couldn't remember purely because Intellisense in a way removes the need to remember specifics about individual classes.

Needless to say I'm not confident with my test results. I will find out soon enough.

Posted by Mark at 02:07 PM | Comments (0)

3

Dec

2003

Free Fonts

I know how frustrating it is to find good quality free fonts, but if you are into typewriter style fonts, and want to browse about 300 different types from old style broken typewriters to the just plain wierd typewriter then check out the Free Typewriter Fonts Website. I have been sitting on this link for about 12 months but only just figured it might be helpfull for others. The typewriter style font I use on this website is 1942 Report.

Posted by Mark at 08:52 PM | Comments (0)

15

Nov

2003

Wireless Access Connection Process

This is pretty cool, here is the process I had to go through to connect to the hotspot.

  1. Enable my wireless adaptor
  2. Let it find the hotspot, Its a telstra hotspot.
  3. Fire up your browser, you will be taken to the Telstra WiFi access point loigin page.
  4. Enter details about how you wnt to pay. If you have a Telstra mobile you can use that as access.
  5. An SMS is sent to your telstra mobile, with a token number
  6. Enter the token number into the browser form
  7. You are authenticated, full internet access!

I sorta expected it to be free-for-all, but I can understand why its not. At least the registration process was incredibly simple.

Posted by Mark at 10:41 AM | Comments (0)

Perth Airport, First Wireless Blog

Well I am waiting in the departure lounge of Perth Airport, laptop in lap, connected to my first wireless hotspot. I wasn't really expecting to find a hotspot here at Perth Airport, but i'm stoked that I did :)

Its a good way to kill some time, however I just need to get my longer battery, I have a long flight ahead of my (about 25 hours in total including stopover time). and my battery that lasts 2.5 hours just isn't going to cut the mustard.

Anyway, Wish me a good flight. I will try and blog again in Brunei :)

Seeya

Posted by Mark at 10:34 AM | Comments (0)

2

Nov

2003

iTunes Update

I decided to give iTunes a fair go. Seeings as I am moving to the UK this month and the last thing I needed to was haul 150 or so CD's globally I decided to rip them all to my laptop as mp3s. This task was entrusted to iTunes.

I can honestly say that there was not 1 hiccup over the few weeks that I was ripping the cds. All of them encoded in sweet 160kbps quality (in my opinion the best compromise between size and quality). I love the jukebox features, smart playlists etc.

Despite the fact that It doesnt act like all other well behaved Windows apps i have now uninstalled Winamp and am using iTunes exclusively.

But the best Windows app ever? Hardly.

PS. This is my first post written in Zempt. Seems to work okay, they just need to eye-candy it up a bit :)

Posted by Mark at 10:25 PM | Comments (0)

1

Nov

2003

Mozilla Calendar

Oh, btw, I thought that I should mention that about a week (give or take) after posting about my problems getting the Calendar to work with Mozilla Firebird 0.7 it just started working. I didn't touch a thing, honest! (I had almost given up on it and had started re-entering my calendar into OutlookXP)

Posted by Mark at 02:56 PM | Comments (0)

27

Oct

2003

SharpReader Display Issue...

SharpReader display issue? Luke! you don't use standard windows font colors for all yours texts. Using an iTunes WindowsXP theme, I cant see the address text. Click the below image for a larger version of the screenshot. Maybe this could be fixed in the upcoming release?


Posted by Mark at 10:11 AM | Comments (0)

20

Oct

2003

Mozilla Calendar on Firebird 0.7, Crash and Burn...

Okay maybe i'm doing something wrong. Am I the only person that can't get Mozilla Calendar running on Firebird 0.7?

I even installed 0.7 in a fresh folder and reinstalled calendar over the top. What gives?

Posted by Mark at 09:06 PM | Comments (0)

19

Oct

2003

mReader Usage

I know that a fair amount of people have downloaded mReader, but I dont know exact figures for downloads.

So, if you have downloaded and are using mReader, please drop me an email to let me know what you like, and what you think sucks. I know people using the SonyEricsson P800 have been having some problems, so if someone is successfully using mReader on this device I would be interested to know how you got it working.

Posted by Mark at 03:44 PM | Comments (1)

18

Oct

2003

I'm sorry, but iTunes for Windows Sucks

Despite being a Win32 developer and user, since OSX was released I always had an interest in Mac's. However, when it came down to the crunch and had to by a Laptop, I went for a Win32 ultralight over the 12" powerbook, purely because im too ingrown into windows to change.

However I was excited to see that apple had released iTunes for Windows. I figured that all apple software was cool, so I went and downloaded it to give it a try.

Boy does it suck. Here's why:

  1. It doesnt support WMA. I am moving to the UK and am half way through ripping all my CD's to WMA so I can listen to them on my nomad and laptop.
  2. It doesnt adhere to your selected windows theme, it goes ahead and uses an ugly grey (the grey color reminds me of windows98 grey), with aqua style scrollbars. This might look at home on a mac, but in windows it looks different to every other program
  3. You can only buy music if you are in the US. Hello, there are more people outside the US than inside, let me buy music from anywhere, its not like your shipping it to my home address, its digital delivery.
  4. [Ed: 19/10/2003] The maximize/restore button on the title bar doesn't adhere to the same standard as (almost) all other windows apps on the face of the planet. Come-on Apple, if your going to write windows software make it behave like windows software, There is literally no way of maximizing the iTunes window.
  5. [Ed: 19/10/2003] There is no system menu on the iTunes window, so you cant right click on the title bar.
  6. [Ed: 19/10/2003] Re-size icons when you are dragging in and out the window panes are a little hand instead of the standard vertical/horizontal resize bar.

I will use it for a while longer and see if there are redeeming features, but for now its a 1/10 rating. It's a shame, I really wanted to like this.

Posted by Mark at 06:55 PM | Comments (8)

14

Oct

2003

Mozilla Calendar / iCal

I have dumped my Opera / Outlook combination for my web apps on the new laptop and have gone for the following OSS alternatives.

1. Mozilla Firebird (Browser)
2. Mozilla Thunderbird (Mail & News)
3. Mozilla Calendar (Events / Tasks)

I have used mozilla a lot in the past (but not firebird), and opera was starting to get on my nerves with random crashes etc.

The beauty of using Mozilla Calendar though, is that it follows the open calendar format released by Apple with iCal. This means that I can subscribe to any iCal calendars I find on the web. Mozilla Calendar also allows you to publish your own calendar to an FTP or WebDAV server just in case anyone wants to keep in touch with your whereabouts.

So, now I am sorted! If anyone wants to subscribe to my calendar then click this link.

Posted by Mark at 10:33 PM | Comments (0)

11

Oct

2003

New Notebook Arrived

Wow, I'm impressed. I always figured that packages you are waiting for the most always tend to arrive the latest.

I was pleasently surprised on Thursday to have my Dell Lattitude X300 arrive 5 days ahead of schedule. So, from the time my order was placed till the time that the notebook arrived (including approval of finance) was only 6 days. That was even though I made a number of changes to the spec of the notebook.

Dell has a system that works, and im very impressed.

Posted by Mark at 06:12 PM | Comments (0)

8

Oct

2003

Testing new Server

I have finally got everything worked out with the new server. I almost lost my Movable Type mysql databases on the old web host. After fiddling around with different control panels I finally managed to get a dump of the old databases using phpMyAdmin. After that I uploaded the exported sql using MySQL Control Centre. Thank god for some excellent open source tools. Thanks to all who work on these tools, you saved me lots of work.

If this post works, it means everything is back to normal!

Posted by Mark at 10:38 PM | Comments (0)

3

Oct

2003

Another Big Move

I will be moving www.markallanson.net from its current server to a new server during the weekend. You may get a bit mixed up between old/new depending on how quickly your DNS gets updated. Hopefully there will be no downtime.

Posted by Mark at 10:48 PM | Comments (0)

2

Oct

2003

New Gadgets

Now that I have resigned I must get everything ready for the trip to the UK. My 2 main preparation items are of course, gadgets. Sold is my old Kodak DC3800 Point-and-click camera, replaced with an Olympus C-740.

3.2Mp, 10x Optical Zoom 3x Digital zoom (max zoom 30x). This camera rocks! Image quality is fantastic.

Second is the fact that I cannot live without a computer, seeings as I cant really ship my desktop over to the UK (well I can, but I dont want to), I have jumped in and bought a new Laptop. Pre-requisites: 1. must be an ultra-light. 2: Must have 802.11b/g.

So I splashed out on a new Dell Latitiude X300 Ultralight.

this thing is awesome. only 1.3kgs and 0.8" thick. Unfortunately it won't arrive for 10-12 business days.. Of course, being a geek I couldn't leave it at the base specs so I chopped and changed it a bit

  • Out goes the 30gb HDD, replaced with a 60gb HDD
  • Added an extra 256Mb Ram, taking it to 384Mb
  • Out with the Intel PRO 802.11b mini PCI card, in with the Dell TrueMobileTM 1400 WLAN (802.11b/g)
  • Swapped the CD drive for a DVD/CD-RW Combo drive

I already can't wait and I still have 9-11 business days left :)

Posted by Mark at 11:04 PM | Comments (0)

Clarion Article coming Soon

Look for a Clarion 6 XML Primer that I am writing up, its going into the bits that the current release candidate doesnt document including how to access the DOM, plus some other tricky bits that are hard to pick out.

Should be done this weekend.

Posted by Mark at 09:53 PM | Comments (0)

30

Sep

2003

Longhorn Blogs

Scoble has a new blog over on Longhorn Blogs.

I've had my own Longhorn Blogs RSS stream for a while now. Its called Feedster. Subscribe to this Feedster Search: http://www.feedster.com/rss.php?q=longhorn&sort=date&ie=UTF-8

It will give you a balanced mix of Longhorn information.

Posted by Mark at 02:28 PM | Comments (0)

24

Sep

2003

A Funny Story

This post over on eric's blog gave me a bit of a laugh. Its funny who we can blame for the things that go wrong in our lives :)

Posted by Mark at 01:28 PM | Comments (0)

19

Sep

2003

Socket Progamming in .NET

I am trying to write a simple tracert program in .net and have come across a problem. Assume that the rest of the packet data is correct.

I set the sockets TTL to 10 using the following code:

socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.IpTimeToLive, 10);

Then send data out of the socket using an Echo request, then receive data from the socket. Now effectively the ref EndPoint remoteEP should now be set to an end point matching the 10th hop on its route to the destination, instead it contains an end point matching the actual destination.

Anyone got any idea on this?

Posted by Mark at 11:30 PM | Comments (0)

SharpReader Memory Usage

I have been using SharpReader for about 6 Months now and with my modest list of feeds SharpReader now takes up well over 100meg of RAM when loaded. I wonder if Luke has any plans to fix this by using a database store instead of XML, or some smarter XML handling?

Posted by Mark at 09:16 AM | Comments (0)

26

Aug

2003

Monkey Island 4 Graphics

After completing Monkey Island 2 and 3 from the collectors edition boxed set I bought last month I have begun to dig into the 4th in the series, Escape from Monkey Island.

Initially I was looking forward to the 3d graphics and new UI, however after the gorgeousness of Curse of Monkey Islands hand drawn 2d, the 3d was blocky and edgy, I was disheartened to say the least, until I decided to force anti-aliasing on in the nVidia driver, and suddenly the graphics became so so silky smooth.

If you're playing EFMI and are dissapointed in the graphics, go to your display properties and force your graphics driver into the highest Anti-Aliasing mode possible, its a dream.

Posted by Mark at 09:00 PM | Comments (0)

The clothed baby

Raymond Chen has an interesting blog post regarding how software needs to be tolerant to various cultures around the world, citing an example of the two different Windows 95 box holograms, one featuring a topless baby, another featuring a clothed baby. Aparently the topless baby was offensive to a certain unnnamed government.

Aparently topless babies can almost be considered a collectors item. Unfortunately my Windows 95 box has a clothed baby :( Ohwell no riches for me!

Out of interest, my Windows ME box, and my Windows 2k box both have no hologram. I wonder if that is a consequence of the above? Any idea on that Ray?

Thankfully where I work we haven't ran into these issues yet (other than currency display problems). Interesting stuff!

Posted by Mark at 08:52 PM | Comments (0)

24

Aug

2003

Using Feedster to keep updated

I know this is probably not news to most people, however for those who don't know, Feedster provides an excellent mechanism for keeping updated on what the blog world is saying about things that interest you in your standard RSS aggregator (yes, including mReader).

When you perform a search in Feedster, you get provided with an XML link to those search results. By using that XML link as a feed in your RSS aggregator you will get new posts that match your search criteria appear in your aggregator whenever feedster indexes. Feedster even provides quick subscription buttons for common desktop aggregators to the right side of your search results.

For example, if you want to know when I release a new version of mReader, aswell as whenever someone writes something about mReader then you can perform the following steps

  1. Go to Feedster
  2. In the search box, type "mReader".
  3. When the results page appears, right click on the XML button, and select your browsers "Copy Link Address" button. (link address will be http://www.feedster.com/rss.php?q=mReader&sort=date&ie=UTF-8)
  4. Switch to your RSS aggregator, and create a new feed, using the address you copied to your clipboard.

It's as simple as that. You should now have a new feed in your RSS aggregator, and it should be titled something similar to "Feedster RSS Search Results for mReader". Whenever someone writes something new about mReader, you will know about it. Note that this also works with mReader itsself. You can enter the XML link provided by Feedster as a new feed in mReader itsself, now whenever you load the "Feedster RSS Search Results for mReader" in mReader, you will have the latest 10 things written about mReader.

Thanks Scott&Co. Thanks for providing us with an awesome tool!

Posted by Mark at 08:57 PM | Comments (0)

23

Aug

2003

mReader 1.01

mReader 1.01 is now ready for download. You can download both the JAR and the JAD file. Note that I don't think the Jad file I supply will work directly with the Sun Jar->JRC PalmOS converter. As with the previous version, point your wireless device's web browser to http://mobile.markallanson.net/ to download it using OTA.

Changes in this version:


  • Feed support attempts to be really generic, so most RSS and similar formats should work (any RSS version, RDF, etc).
  • More tolerant to RSS feeds. You should never get an empty list of feeds anymore.
  • Formatting of basic HTML commands (ordered / unordered lists, paragraphs, line breaks) and &..; pairs.
  • Threading, hence progress windows for feed downloads.
  • Revised and improved menus to make feed navigation easier (Note that the UI has been tested on the Sun wireless toolkit default emulators, the UI may be a pain on your individual device, if it is, tell me whats wrong).
  • Out of Memory Error handling so you know if a feed is to big to view.
  • Feeds are now sorted in alphabetical order.
  • You can delete a feed from your feeds list.
  • Importing an OPML twice will no longer create duplicate entries in the feed list.

Things that are still annoying:


  • Still No progress bar on importing an OPML.
  • 50 entry limits still apply across the board.

All my testing has been done on the default emulators supplied by Sun with their Wireless toolkit, and the Nokia 7210 and 6310i emulators.

If you have any problems or feedback please email me.

Posted by Mark at 10:32 PM | Comments (0)

22

Aug

2003

mReader PRC for PalmOS Midp

Thanks to Omer Trajman there is now an mReader 1.0 binary (PRC) for PalmOS devices. This can be downloaded onto a PalmOS handheld running Sun's J2ME VM.

If you have a PalmOS Device and want to use mReader on it, Check it out.

Omer, Thanks again!

Posted by Mark at 01:29 PM | Comments (0)

20

Aug

2003

Progress Update

I've been doing some work on mReader and should have a version 1.1 ready to release sometime during the next week. The following things have been addressed so far:

1. More tolerant to post content in general. You shouldn't get any more empty lists of posts when you try to load a feed.
2. an attempt to translate some HTML tags and &...; codes into something readable on Midp devices (ie lists are given asterix's etc).
3. Proper Progress Indicators and Threading to make the device look like it is doing something, not just telling you it is doing something.
4. An out of memory exception catcher so that you know if a feed is too big. (ie .Net Notes)

If anyone has some feature requests give me a holler.

Posted by Mark at 11:39 PM | Comments (0)

21

Jul

2003

TechEd Bloggers Australia

I won't be at TechEd Australia but ill be looking forward to reading what the bloggers have to say about the event. Is anyone setting up TechEd Bloggers for the Australian TechEd?

Posted by Mark at 10:38 PM | Comments (0)

19

Jul

2003

mReader v1.0 online

[Update: If you have come from Lockergnome you might want to know that v1.0 of mReader is deprecated and version 1.01 has been available as of 23rd August 2003]

Okay, I have put a version of the mReader jar online. To get a copy of it point your J2ME midp enabled devices web browser to http://mobile.markallanson.net, alternatively the direct link to the jar file is http://mobile.markallanson.net/j2me/mReader.jar.

The jar file is 42kb in size, most of this comes from the kXML2 and XmlPull libraries I am using for XML processing. I might try and cut out a bunch of functionality from these libraries in the future to make the jar smaller.

Features so far
1. Processing of RSS 0.91, 1.0, 2.0, RDF. In case you are interested, the processing for each of the above formats is identical.
2. Importing of an OPML outliner file from the web. For SharpReader users (and any others who use a reader that can export to OPML), ftp your exported OPML to a website and point mReader to it to download a list of existing feeds.
3. HTML tags are stripped out of post descriptions. Later versions will have a "link list" functionality for a post so you can see what links the post contains.

Limitations/Annoyances at the moment
1. You can only store up to 50 Feeds in your feed list.
2. mReader will only allow you to view the first 50 items in a downloaded feed.
3. Once a feed is in your list, you can't remove it. (this will be fixed in a later version)
4. mReader doesnt handle some feeds too well due to the way I currently make use of the kXML2 parser. If you try to load a feed and you get a blank list of items, then mReader has most probably had an error trying to download. Email me a copy of the RSS file (or weblog URL) and I will see whats going on.
5. mReader does not display any "I am currently downloading" type messages. Once you have selected a Feed, wait a while, I can assure you it hasn't crashed!
6. mReader currently doesnt look at content:encoded fields for post text. it uses the description tag instead. For memory reasons.

I have currently tested this jar on the default color phone provided with Sun's Wireless toolkit, aswell as the Nokia 7210 emulator (the phone I use).

Note that there is currently minimal error checking in the app, so you may get an exception every now and then.

If you have any problems, please email me the details.

Posted by Mark at