
Assessment of Technical Resolutions for 2014
It is with great pride I announce I have met a record 20% of my technical resolutions for 2014. In a feat of raw courage and perseverance I gave serious consideration to the other items well into the spring.
I never learned to use Gatling, failed to get on the NoSQL bandwagon, and never got around to working with a mocking framework. I did, however, stop using Eclipse for day-to-day work and am working on a non-trivial Android project I hope to release by Summer. So a half-point for this last one.
Dropping Eclipse for web development was like a breath of fresh air. Eclipse is great at a lot of things, but it still doesn’t play nicely with Maven. I switched to NetBeans and found it does everything I need it to. In particular, they did a great job with the Maven integration. NB has a reputation as being a rinky dink toy for junior Code Warriors, and this may have been true several years ago, but recent releases are solid. No tool is perfect, however. I found some weirdness about not being able to set character encoding when running TestNG tests, and the way it handles VM options for Tomcat needs some work.
On the android front, I learned LibGDX and am making progress on a game-like application to help kids organize their homework. The major difficulty is finding the time, and there’s more to life than sitting in front of a computer.
So what did I spend the last year doing?
- Process automation with Groovy
- Small steps toward real-time reporting
- Lots of XSL. Lots.
- Reimplementing legacy processes with Talend.
- Writing a LibGDX applicaiton.
Groovy is swell for running simple processes to generate graphs and reports. There’s none of the usual Java boilerplate, but you have access to all the goodies like JMX and graphing libraries. I set up a number of reports to generate simple graphs of application usage and grinding though content XML. They are run by Jenkins, so people can fetch the artefacts whenever they want them. Not a big step in itself, but it was important to get business users used to automation and self-service.
I inherited a number of legacy applications for transforming thousands of XML documents and am actively working to replace the lot with Talend jobs running in Jenkins. Replacing the various transformations with Talend was easy, but the lion’s share of the work went to validation and managing the cut-over to the new system. Each process has to run in parallel to the original long enough to be validated from end to end. This requirement means a set of validation scripts had to be written to do semantic comparison of XML, and additional Selenium tests to verify there is nothing unexpected in the application.
Which brings us to my technical resolutions for this trip around the Sun:
- Release an Android applicaiton. (On-going. Real soon now.)
- Make a dashboard for real-time application session tracking with JMX.
- Get on the NoSQL bandwagon by doing something useful with Mongo or CouchDB. (hold-over from 2014)
- Write a Cordova application, with particular attention to content update strategies.
- Visualizations of XML documents (interconnections, relative size, etc.) with D3.
How hard can it be?