Prepend
Date Formats for Web Services
Today, I discovered that my project was using three different date formats for various services used throughout the enterprise. In the past, our Java SOA just used java.util.Date objects and serialized them through remote calls and everything was fine.
Now, with Web Services, you run into different services that use different date formats. So you're stuck with some String representation. I've seen milliseconds from epoch, dd-MMM-yyyy, yyyyMMdd, dd/MM/yyyy, etc etc. And it varies a little partner by partner.
The W3C actually has a
date data type defined in
May 2001 Recommendation which looks like yyyy-mm-dd. So my project will be standardizing on the W3C format, but I hope that all the other projects out there will standardize on it too.
Really, the date format can be specified in the service schema, but usually I just see it as a String and it's up to the developer to read through documentation to figure out the appropriate format.
Viewing ASCII files on zOS
So, through an altogether comical chain of events, I am my project's "z/OS WebSphere guy" sort of. So I frequently spend time working on our apps on z/OS and/or WebSphere (we've also got some instances on other OSes). The cool news is that I got to go to
WebSphere training in Denver, the downside is that I have to work with WebSphere on z/OS.
One of the most interesting things that you come upon with WebSphere is that it runs Java in ASCII mode, reading and writing out files in ASCII. z/OS stores its files in EBCDIC. So this basically means that if you are telnetting into USS, you can't really view or edit files. If you try to view an ASCII file through USS using vi, you get something like this:
^T^Z^78_%^20^76^65^72^73^69?>^U^22^31^F^30^22^20
^69?>^U^22^V^F^30^22^20^78_%>^73^3A^78_^69^U^22
?>^U^22^V^F^30^22^20^78_%>^72^3A^78_^69^U^22^68
Not too useful. So, a fellow developer who has since left the company found out how to use iconv pretty well and added to a bunch of our ant scripts. I made some shell scripts that basically run:
iconv -f ISO8859-1 -t IBM-1047 file.name | more
so I can actually view the file and it shows up properly. Of course this sucks because I haven't figured out how to tail a file live, but it's better than ftping the files down to windows in binary mode.
Other than that, WebSphere is pretty normal. The different I've seen between z/OS and Unix/Windows is that the z/OS WAS has a control jvm process that launches and controls 1 or more servant jvm processes. Unix/Windows just has a single jvm process that does all the work.
Also, I just upgradeds my IntelliJ 3 to version 5 and now it spends a few minutes a day indexing my project files. This is a little annoying. I guess with version 3, it would index while it was minimized/backgrounded. But now, with version 5, it waits until I switch to it to start indexing. Oh well, I guess those smart Russians will fix this soon.
Presentations and Funny Manager Stories
So I got asked by a biz dev guy to help out and give a presentation at my company's
sesquiannual product trade show/ conference. I'm giving a presentation on performance tuning and monitoring of the architecture my company uses to build and run application stacks.
So, I'm you're typical geek guy who is pretty bad at PowerPoint. I follow all the normal rules (you know, 3-4 points per slide, don't put sentences, don't read off the slide, etc etc), but my ppts just aren't as flashy as some of the really cool ones I've seen. From a knowledge standpoint they're ok and I've got the whole public speaking thing down, but I hope the audience isn't expecting cool graphics and lots of clip art.
But this leads me to some really terrible presentations I've seen by brilliant developers and architects. Sort of the ones where you can tell how bad it is because even the people without blackberries start having
thumb wars to pass the time. I'm hoping it won't be that bad.
Someone at my company recently resigned. He's a pretty funny guy who will be missed, but he was telling stories of previous programmers from time long passed. This guy was pretty outspoken and once exclaimed to his manager "Who makes these decisions? Are you a manager or a damager?" (the manager had just told the Board of Directors that we were using an arbitrary technology). So I love the word "damager" and hope I never encounter one (so far I've been blessed with skillful and caring managers).
For all the crazy managers I've worked for many years ago, I'm at a bit of a loss for stories right now. All I can think of is the CEO I worked with who didn't want me to hire someone "Because he's from Ohio." and another guy because his palm had perspiration.