The Co-operative Bank online banking… again (!)
The uselessness of Co-op Bank’s online business banking is a long running saga on my blog.
The latest twist, which I noticed some weeks ago, is as follows. Previously lots of problems with CORBA_NO_RESOURCES errors coming back to you when you try to do stuff.
It doesn’t take an IT consultant to guess this means their servers are overloaded.
Which is why I am a little cynical when I see that they have changed all the payment reporting screens to default to show only payments from TODAY by default. Where you used to see a history of recent payments immediately, you always have to select a date range and do a report now.
Why cynical? Well you could argue that this was a cheap way to further inconvenience customers reduce load on the database systems.
Dear Co-op bank. I’m getting more and more people contacting me via blog comments saying how fed up they are. You are going to lose a lot of business if you don’t sort this out.
So wrong its not even funny
I just read this at Wired, about US Military desire for a robot that children of servicemen and women can “talk” to, to reduce the anxiety of their loved one being away killing or being killed in some conflict.
They obviously envisage some delivery problems with fighting robots for the battlefield, so this smaller more attainable robot project is going to tide over loved ones until such a point robots fight the wars for us.
Oh, but do you get to keep the little robot once your loved one returns home, or worse dies in the field? Does it become some kind of sick stand-in for them?
These people are nuts. If you have to go out of your way to try to make things OK, you have to think about what was wrong in the first place.
Functional testing in Grails just got a bit sexier
Ok so here’s the 1.0 release in the spirit of “don’t worry be crappy” (can’t use that phrase enough these days) of a new functional testing plugin for Grails.
Actually its far from crappy already.
I have developed this partly as part of my work for my generous client Historic Futures Ltd. who agreed to open source this.
I plan to continue improving and maintaining it personally. It’s surely a bit rough around the edges but the benefits should be pretty obvious to those who use it.
So what are you waiting for? Run:
grails install-plugin functional-test
…but in a nutshell it is HTTP testing with HtmlUnit under the hood but the rest is pure groovy smarts, leveraging standard JUnit.
Example:
import functionaltestplugin.*
class TwitterTests extends FunctionalTestCase {
void testSearch() {
get('http://www.twitter.com')
click "Search"
assertStatus 200
assertContentContains "search"
form('searchForm') {
q = "#grails"
click "Search"
}
assertStatus 200
assertContentContains "#grails"
}
}
What’s special about this?
- Simplicity and “elasticity” by default = less fragile functional tests as a result
- Simple compact DSL/methods to learn – it tries to “do the right thing”. Let’s face it writing tests is really boring.
- Ability to get/post directly without browsing to a page first. eg REST testing
- No .properties configs
…and one more thing URL stacktrace. When a test fails the report includes a stack of the URLs at the point of failure. The xxx-out.txt file contains request parameters+headers, content received etc. This feature will be expanded in future to allow a proper request/response chain autopsy.
Caveats – things I definitely want to sort out pronto:
- currently test output is a bit ropey, I would like to do much nicer stuff with custom output xml and rendering
- no simple way to set post body
- no simple way to parse out json/xml responses yet
All this and more will come, with your support! Contribs also welcome!
ENJOY!
UI Widgets… oh for something pure Grails
I feel like there is a mismatch in the grails/rails opinionated software approach and the apparent lack of a de facto and impressive UI library for javascript based web-apps built with these frameworks.
Sure, Grails has more than its fair share of UI plugins. However they all pull in other libraries, and frankly not even Yahoo UI stuff looks good enough to me. Libs such as YUI are supposed to be skinnable but the docs on actually creating skins are non-existent.
Even without those issues, you have the thorny problem that choosing a UI widget library usually dictates what JS/DOM helper library your application will use. This is infuriating if say you have an investment and passion for library X (eg Prototype) but the best UI widgets use a different underlying library.
Mixing and matching libraries in the same app is extremely unattractive. Download times become a factor as do compatibility (what if you need to use two in the same page) and last but not least your dev teams have to be fluent in more than one API.
There has to be a better way. I personally feel that out of the box one library should be chosen, and there should be great home-grown widgets. Let’s be opinionated but have something top quality out of the box.
I mean, Grails enthusiasts like me will happily point out how Rails is not on par in terms of available libraries and enterprise infrastructure stuff, and gloat at the apparent inability to create apps that don’t leak memory and hence need many restarts – but you have to admit that a great deal of Rails sites have good widgets, and good clear designs. I believe most of these are home-spun from Prototype+Scriptaculous and cunning use of CSS.
Our Javaland/Grailsland equivalents tend to reuse the standard square tables and buttons and tiny fonts so familiar to Windows users, but anathema to people who have made the switch to Mac.
This is unfortunately what you get when people are knocking together joyless enterprise Java apps and the key thing is to get something work NOW – rather than create something that is a pleasure to use. The latter is something that the smarter businesses in the Rails crowd know all about (see the excellent Harvest, Co-op, Beanstalk or Radiant), and from which all developers, Java enterprise or otherwise, can learn. Its not OK to scrimp on the UI. Who cares if your manager doesn’t get it. Take pride in UI!
Call me a snob but universally silver, sharp-edged and small fonted UIs are aesthetically offensive to me!




















