Wednesday, October 14, 2009

Wavey Davey

Cool, just got accepted into the Google Wave beta. As with Gmail, they give users the ability to invite other users. I have a few invites left, if you'd like one then leave a comment. The invites will be distributed on a first-come first-served basis. Good luck.

Sunday, September 06, 2009

GAE Revisted

Since I'm not gaming at the moment, see previous post, had another go getting the Polar Uploader to work, but still suffering with the same SimpleDateFormat problem that I described here.


Been playing Shaiya from Aeria games over the past few months. It's quite a good Fantasy MMO and I can spend a few hours over the weekend playing it.

However, this weekend the servers are suffering massive lag and disconnect problems. Aeria are blaming it interest generated by the PAX event that they are involved with. Doesn't quite ring true to me, as how does an event with a few thousand people cause issues for an MMO game that can host hundreds of thousands? But what do I know ;)

Monday, August 31, 2009

Snow Leopard Upgrade

Upgraded to the latest Mac OSX release, Snow Leopard. In the main all went OK, can't say that there's anything in there that's useful, or killer. Certainly not noticed the speed improvements that were being touted, my Mac still takes 3 minutes to boot :(

The only remedial action I needed to take was to reinstall Boinc and install some Python libraries that went awol.

Wednesday, May 27, 2009

Metatrader Connection Problems.

Metatrader is one of the platforms that allows you to trade on the Foreign Currency Exchange. It's a great tool, especially as you can automate the trading process.

I leave Metatrader running in the background most of the time, and have occasionally lost the connection to the broker. It's usually not a problem, unless you happen to have some open trades! I wrote a simple Expert Advisor that would periodically check the connection and email you if there was something wrong. You can read more about it, and download the EA, from this thread in the PipCop forum.

Thursday, May 21, 2009

Old Projects Never Die

Just had an email from someone enquiring about the changes I made to StatCVS. Wow, that was back in 2005.

StatCVS gives you various statistics about your code in the CVS repository. It's a great tool and provides some real insights into who's doing what. But it always amazed me that it only worked off the head branch. Since the project I was working on did most of the development in a branch, I couldn't run StatCVS on it.

No real problem though, as this is an Open Source project meaning that I could get the code and change it to work with branches. Try doing that with commercial products ;)

Sunday, May 17, 2009

Chrome on the Mac

Following on from my earlier post, then you can download builds directly from the Chromium project here.

Java Google App Engine Updated.

A new version of the Java GAE is out. Whilst there is nothing specific that hints and fixing the problems with JSF, it might.

Monday, May 04, 2009

Google Chrome on Mac OSX - Download Available

I've been waiting for Google Chrome to be released on Mac OSX since I tried the Windows versions last year. Since Google are still developing the code, I thought I'd try to build it myself from the open source Chromium project and see how it goes.

And it goes reasonably well. Doesn't support Flash yet, and other features are missing, but it's worth a look. You can download the application I built from here. Bear in mind that this is a 'alpha' build and it could easily crash or worse.

If you want to build it yourself, then download the free Mac compiler Xcode and download the Chromium source, see the details here. Good luck.

Saturday, May 02, 2009

XP Stupid Mouse

I use a Mac for most stuff, but for Java development I tend to use Windows. One real feature I miss in Windows is the Mac's ability to scroll the window contents when the mouse is over the window, even if the window is not selected.

Windows doesn't do this and it's a pain. Even in the explorer view where there is one window with two panels, you have to click in one panel before you can scroll it. Truly sucktacular.

However, there is a useful utility called KatMouse that gives you the 'over window scroll' feature of the Mac, and most unix OS'es.

Monday, April 27, 2009

Forex and the MetaTrader Platform

The MetaTrader platform allows clients to place buy/sell trades on the Forex market. It's quite a nice product, but is it 'fair'? There is a plugin, shown in this thread, that allows the broker to 'tweak' the settings on their side to, possibly, rob you of your cash.

So, if you see some unexplained spikes, or wonder why every trend just hits your SL before reversing, then maybe your broker is using this plugin.

Wednesday, April 22, 2009

JSF 1.2 on Google App Engine

Seems like this guy has got it working. I'll have to try it when I get time.

Work sucks ;)

Sunday, April 19, 2009

Forex EA's (2)

Here's a site with a decently written EA ;)

Forex EA's

Yet another forex Expert Advisor I've developed based upon an indicator that shows great trend following capabilities in hindsight. Needless to say it's not very good at generating profits. The code is great though :)

I've slowly amassed a library of Metatrader trading methods that simplify the writing of an EA. This EA above took 2 hours to write including testing and debugging. Hmm, I could make a career of this ;)

Friday, April 17, 2009

Field Initialisation in Google App Engine

Had a weird problem that took a while to resolve. I'm still not sure what the issue really was, perhaps its a problem with GAE itself. Here are the details:

I have a class that is packaged within a Jar and included in the applications WEB-INF/lib directory.

I was struggling with the following errors:

javax.servlet.ServletException: [Ljava.lang.String;
at org.mortbay.jetty.handler.HandlerWrapper.handle(
at org.mortbay.jetty.Server.handle(
at org.mortbay.jetty.HttpConnection.handleRequest(
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(

Nested in javax.servlet.ServletException: [Ljava.lang.String;
:java.lang.ArrayStoreException: [Ljava.lang.String;
at Source)
at Source)
at Source)
at Source)

The class I was using has an instance field initialised as:
private SimpleDateFormat sdf = new SimpleDateFormat("MMddyyHHmmssSSS");

If I remove the field initialisation and initialise the field in a method, then all works fine.

I'm not sure what the problem is, it works fine under Tomcat, but is there some instance field initialisation issue within GAE? Or is it just SimpleDateFormat has a problem, perhaps a locale issue?

Anyway, thought I'd post it here as it took a lot of trial and error to find this issue. It may save someone else the time.

If there's an 'real' answer to the problem then it may appear here.

Thursday, April 16, 2009

Turbo Lister

I've used Turbo Lister in the past to allow me to create eBay entries 'off-line' and upload them when I'm ready. I haven't used it for a while and when I cranked it up was told that I needed to phone 'this number' to prove my identity. wtf? Is this the internet or not? Do I have an eBay ID that is secure or not? wtf do I need to phone up eBay?

Stuff that, I'll just do it online instead with my obviously insecure eBay ID.

So, Macs Never Crash?

Er, yes they do. Mine crashes frequently. Hard crashes equivalent to the Windows Blue Screen of Death, program crashes and awful performance when memory is tight.

Currently I'm battling against a hard crash that happens when I use two competing Virtual Machine products, Parallels and Sun's free Virtual Box.

For those who've never experienced a Mac hard crash, or kernel panic to give it it's proper name, then here's a picture:

Tuesday, April 14, 2009

Forex Factory and Enthusiastic Admins

I like Forex Factory, a place to post trading related questions and start trading related threads. I've started a thread on trading using Inside Bars, you can read it here.

But for a while now things have started to smell a little off. Threads and people getting binned and banned for, seemingly, spurious reasons. Mostly it's due to trying to sell stuff, which is funny in a way as that's what Forex Factory does, it sells advertising and makes money by having an active community. Nothing overly wrong with that, just a little 'double standards'.

What really bothers me though is that there seems to be a concerted effort to ban people who use certain indicators, specifically ones written by Avery T. Horton, Jr. aka "The Rumpled One". Avery, or TRO as he is known, has a strong following and you either love him or hate him. He's been banned on virtually every forex forum going. If you want a closer look at the typical reasons, then go to BabyPips for this explanation. TRO can be found posting at this site.

Now, I've been chatting with a user on Forex Factory called Money4Nothing who was banned, it appears, because he posts stuff with TRO indicators on them. If that was all he was banned for, then shame on Forex Factory.

Interestingly though, in researching this blog comment, I've noticed that some of the users banned, including Money4Nothing and Toddfx, have very similar posting styles. Both use TRO indicators and embed large images in the post by IMG tags, rather than the more common way of using attachments. This was a feature used by TRO on the BabyPips site, referenced earlier. Hmm, makes me wonder if these users were indeed TRO in disguise and it's not the fact they're using TRO indicators that got them banned, but more a case of this being TRO himself. If that's the case, then perhaps TRO should vary the way he posts :)

JSF Issues on the Google App Engine

Run this query to see the outstanding/requested JSF issues with the Google App Engine. Add your vote to the list :)

JSF and RichFaces on Google App Engine

A previous commenter noted that JBoss' RichFaces (Ajax4JSF) didn't work for them. I had a plan to use that so I initiated a simple test.

In fact, all I had to do was included the RichFaces 3.1.6SR1 jars and it blew up straight away with the following error:

org.apache.myfaces.webapp.StartupServletContextListener initFaces: Error initializing ServletContext
at javax.faces.FactoryFinder.newFactoryInstance(
at javax.faces.FactoryFinder.getFactory(
Caused by: java.lang.NoClassDefFoundError: javax.imageio.ImageIO is a restricted class. Please see the Google App Engine developer's guide for more details.
at org.ajax4jsf.resource.ResourceBuilderImpl.<clinit>(

Oh well, scrap that.

If you are interested in using RichFaces on GAE, then register a vote here and get Google to lift some of the restrictions on what classes can be used.

Sunday, April 12, 2009

Experts Exchange

No not Expert Sex Change, this is the IT site that you have to pay for to see answers.

It uses a form of cloaking that allows search engines, like Google, to see the answers so that they appear high in the search engine listings. However, when you visit the link you can see diddly squat until you pay. Since cloaking is a disingenuous way of getting high up in the search listings, a few people have taken exception to this and found a work-around that allows you to see the answers without registering (and paying).

Find a link from EE and type it into this website. Now you can see what Google sees.

Nice one folks.

Thursday, April 09, 2009

JSF on Google App Engine with Facelets

Having tried JSF on Google Java App Engine, how about Facelets and JSF?

Works OK with MyFaces 1.1, see here for a test.

Wednesday, April 08, 2009

Looking for Classes?

Looking for a particular Java class? Can't find it anywhere?

Try this site as a starting point.

JSF on Google App Engine

OK, so Java on GAE is straight forward. See the previous post for a quick demo using GWT.

How about JSF? Hmm, not as straight forward if you are trying to use JSF 1.2 and MyFaces. In fact, I can't get it to work. I get as far as this error:

java.lang.NoSuchMethodError: javax.servlet.jsp.JspFactory.getJspApplicationContext(Ljavax/servlet/ServletContext;)Ljavax/servlet/jsp/JspApplicationContext;

Which would suggest that there is something wrong with the version of JSP that is being used? GAE uses Jetty under the covers, but I'm not sure which version. I would have thought it was a version that supports JSP 2.1, but who knows. The SDK comes with Geronimo JSP 2.1 and Servlet 2.5 jars, so you would think it would work.

Anyhoo, JSF works with MyFaces 1.1 and you can see a quick demo here. It doesn't do much at the moment, but I'll play around with it and see if I can do something a little better.

I have a Java/Swing application that uploads old Polar HRM data to the new Polar web site. This is an ideal application to convert to JSF/Facelets/RichFaces and host on GAE. Watch this space (well, come back in a few months ;) )

Java on Google App Engine

Cool. Google now host Java applications for free.

Here's my first app.

For more information, see this post for running Java in Eclipse. Very easy, very cool, very Google ;)

Monday, April 06, 2009

Facebook's a Crock....

Why do you have to register to search for people on Facebook?

Why do you have to register to read user generated content on Facebook?

Why? Because they want to sell your details, make money off the content you write and inflate their user numbers. There can be no other reasons.

Wednesday, April 01, 2009

James Young - Internet Vigilante

There have been a number of notices issued by:

James Young
Internet Investigator
on behalf of Microsoft Corporation

Which request that websites or forums remove allegedly infringing material.

The emails come from Microsoft Anti Piracy Investigator #2 ( which doesn't appear to be a Microsoft owned site at all. Whilst a number of sites have fallen for the threats and removed content or completely closed, more and more of them are beginning to ignore these as they seem to have no legal backing at all.

Click here for further reading

Tuesday, March 31, 2009

Forex Trading using Inside Bars

There are a few good threads on that use Inside Bars.

See this and this.