Skip to content

The Wheel Is Turning

Perhaps?

Here’s a great post that states the obvious: Homegrown solutions: The good and the bad.

Gotta love an article that includes stuff like:

“…nontechnical management gets the heebie-jeebies when presented with a plan that includes homegrown, self-supported solutions. Many executives would rather have a passel of slightly technical folks and vendor support than highly skilled and highly paid technologists to keep the trains running on time. … you may be able to measure your savings in terms of the electrical bills and IT payroll, but the hidden costs can make those savings disappear. … When you need to “make things happen,” you simply can’t — you get stuck in months of apathetic meetings and general buffoonery from every angle. That’s not even touching the problems inherent with outsourcing help desk and general computing tasks.”

I wish this didn’t match my experiences so exactly, I really do!

Tags:

The Gr8 Technologies, Macau 2011

Thanks to all at The University of Macau that came to listen to me rabbit on about Groovy and the Gr8 Technologies a few days ago.

I hope it was interesting (and understandable!).

The slide deck for “The Gr8 Technologies” (PDF) is now available.

Feel free to take a look around the rest of the G*-related content on this site. The tag cloud on the right of this page will help you navigate. I’d suggest you take a look at the GroovyMag articles on this site first: they are the most fully worked and carefully worded of all my materials.

May you never type another unnecessary semicolon!

Tags:

Groovy-WSlite

Library for Groovy that provides no-frills SOAP and REST webservice clients.

No huge depencency list. Quite appealing.

From the front page:

@Grab(group='com.github.groovy-wslite', module='groovy-wslite', version='0.1')
import wslite.soap.*

def soapClient = new SOAPClient("http://www.webservicex.net/WeatherForecast.asmx")
def response = soapClient.send {
    version SOAPVersion.V1_2
    body {
        GetWeatherByZipCode(xmlns:"http://www.webservicex.net") {
            ZipCode("93657")
        }
    }
}

assert "SANGER" == response.GetWeatherByZipCodeResponse.GetWeatherByZipCodeResult.PlaceName.text()
assert 200 == response.http.statusCode
assert "OK" == response.http.statusMessage
assert "ASP.NET" == response.http.headers["X-Powered-By"]

Looks good. The Groovy/Grails webservices stack has been in need of a bit of love for a while, so it will be interesting to see how this develops.

Its probably worth keeping an eye on the topic at Nabble.

When I think about everything I went through with OSB to do much the same actual work…

Tags: ,

A Pattern to Simplify Grails Controllers

So I don’t let this little nugget slip through the mesh:

A Pattern to Simplify Grails Controllers

As John Fletcher says on the Grails mailing list, this ‘creates one of those “why didn’t I think of that?” moments. Definitely should be abstracted into a plugin if not core.’

Nabble has the full discussion thread.

Tags: ,

Adopting Agile in an Environment of Fear

A quick discussion on Adopting Agile in an Environment of Fear over at infoq.

It has often occurred to me that ‘fear’ (in many, many different guises) is actually an ever-present and sometimes overriding–yet still subtle and often unacknowledged–term in the decision-making equation.

Fear manifests as inertia and paralysis, as a defence mechanism, as an incongruous response to a stimulus, as detachment and in many other ways.

It’s good to see a few comments that address this.

How to transition the workplace from one based on “Darwin selection based on resistance to fears” to ‘”fear free” places.’ There’s the question!

Tags:

Enabling load balancing and failover in Apache CXF

An excellent blog post at NoBlogDefFound.

Here’s the premise:

A while ago we’ve faced the requirement of load-balancing web services clients based on Apache CXF. Also the clients should automatically fail-over when some of the servers are down. To make it even worse, the list of servers target addresses was to be obtained from external service and updated at runtime. …If we only knew Apache CXF already supports all these features (almost) out of the box?

Well worth remembering for future projects.

Tags: ,

Wireless Is For The Birds

I know this has been around the ‘net for a fair while, but it still gives me a giggle:

Let this be a reminder to us all of the law of unintended consequences.

As far as I can tell, the original (in Danish) is at www.fruholm.dk.

The Agile Coach Toolkit

Games, sessions, presentations themed as “Agile Every Day…Transforming Work into Play” and released under the Creative Commons 2.0 license.

Tags: ,

Groovy/Grails Live Snippets

Thanks to Ivo Houbrechts & (ixor) for the livesnippets – Reference Documentation.

To quote:

The goal of Live Snippets is to bring code snippets and documentation together in a live demo.
Live Snippets targets all Groovy and Grails related stuff.

The source code is available on github

The application is currently deployed on Cloud Foundry

Enjoy!

There’s some really good stuff there covering Grails Webflow (including AJAX) and Grails Extended Validation.

Tags: , ,

A Great JBoss Resource

I am sure that I will be visiting http://www.mastertheboss.com/ a fair bit.

So should you, if you are a JBoss developer.

If you aren’t a JBoss developer: what’s holding you back?

Tags:

C, Java Enterprise Edition, JEE, J2EE, JBoss, Application Server, Glassfish, JavaServer Pages, JSP, Tag Libraries, Servlets, Enterprise Java Beans, EJB, Java Messaging Service JMS, BEA Weblogic, JBoss, Application Servers, Spring Framework, Groovy, Grails, Griffon, GPars, GAnt, Spock, Gradle, Seam, Open Source, Service Oriented Architectures, SOA, Java 2 Standard Edition, J2SE, Eclipse, Intellij, Oracle Service Bus, OSB