Started working in an unclassified area of a government contractor. We are developing a web app using Java/JSF on Spring against an Oracle database. Pretty standard stuff.
The wierd part is the process must still work in a waterfall enviroment. Here we have a classic Agile development environment and the constraints of the company dictate against anything non-waterfall. Even a continuous build is a no-no. Heaven forbid any test driven devolopment ideas find their way into the system.
The rigidity is painful to the development manager. As the new guy, I looked over the progress to date (use cases, high level design, etc…) and pointed out a few skips. The skips can not be mentioned or written down anywhere. If they are recorded then the dev mgr is called to the mat as to why the process failed to catch the errors.
Looks to be an interesting experience.
Uncategorized
Process
While I think they did an admirable job coming up with such a rich UI product in Java, the inherent problems of Java attempting to do cool UI is apparent after any use: the single thread for running the UI and the almost completely random garbage collection completely croaks my installation every few minutes of coding.
I also would expect some of the UI transitions to work much cleaner as well. Again, because Java uses a standardized layout model, Windows wouldn’t.
I know it’s heresy: how can you give up write once? Easy, give me something that works all the time.
Uncategorized
Java
We have a younger guy hired to do graphics. He is pretty good. We have a regular need for graphics design or other. Seems like a pretty normal thing.
However, as little odd jobs have come up, he was somehow determined to be lower on the totem pole and allocated for these jobs. Not graphics or even computer stuff - put a chair together for a new developer, put up office panels for the new COO, put the coffee cups into the dishwasher, put up whiteboards in some of the offices. It’s not like any of the people that were getting these things done were handicapped.
Then there were the ‘computer’ tasks as well: gather all the emails we recieve from a client and look for any emails that were not recieved, manually perform some programming step a few hundred times to determine what the error was, evaluate a list of 100K names for duplicates.
He has been here 10 months and just gave notice that he is quitting and going back to live with his mother. Think about it, when you were 25 how bad would things have to be to agree to move back home with mom?
I wonder if Employee Abuse is a punishable crime.
Uncategorized
Practice
So, I have been working on contract at a small software company for about a year and a half. Most of it has been good. Near the end a tough client has been causing quite a fuss. I think the basic problem is the the smaller company, us, agreeing to whatever the bigger company, the client, comes up with. This lack of customer control filters down to developers getting yelled at regularly that we didn’t anticipate a need of the client. As a result internal relations with the existing programming staff is strained. Senior management hardly says Hi passing in the hall. (Again, this is a small place)
I agreed to hang on for one last big feature to get working. It took much longer than expected, again due to the client being very whimsical about requirements. Once it solidified I started looking for another contract and found one (really across the street from the current place). When I notified my supervisor things became even more tenuous - now they avoid eye contact.
Since this is a small place I expected some flak about wanting more than the standard 2 weeks to move on. Nothing.
Write down just current tasks/responsibilties, not including projects in progress. 15 pages of details. Meet with supervisor and other developers. Result is I expect 2 developers to be hired to replace what I was doing. However, COO is making noise about delaying hiring anyone to replace. But, still Nothing.
Just such a strange thing to realize there is no relationship whatsoever. They just use people as needed and move on.
Uncategorized
Hunt
While not strictly software, AMD does have an effect on the software industry. Yes, i know it should be AMD, but I left the ‘typo’ in on purpose. Just the title of this article bothers me. How can you spinoff the thing you do? The analysts are all excited about removing all this debt from the books of AMD. There are possible cost affects to the design process. Blah blah blah.
This makes no sense. AMD is in cut-throat competition with Intel to be fastest to market, low cost mass producer of chips. There is no elegant division of duties where ‘design’ or some other such group can be chopped out and premium priced. This assumes there is no value to the synergies of having your design staff walk down the hall to meet with the fab people to go over plans for some new chip. I just don’t believe that. Or even more likely having fab people on staff as part of the planning process years in advance.
Some ’software’ companies tried this with outsourcing development to the Far East. It really didn’t work unless your management was running the show over there - hiring, firing, just being across the hall to run a meeting.
Please, kick your CFO in the butt and get back to work.
Uncategorized
Outsourcing
We have a client that asks for changes to a portal regularly. They pay so we do pretty much whatever they want. Once in a while we can offer a better way of solving the problem.
Lately there have been a couple of changes that sounded difficult to pursue. Upon further investigation we realized: our software can do this now, we have the data needed to provide the solution and (this is the best part) we had originally developed the feature that way and the customer told us to shut off that part n months ago.
Of course, we turn the feature back on for them.
It just must be nice to have so many resources (time, money, us) available to you that whimsical changes are acceptable. And I thought you had to win the lottery to do that.
Uncategorized
Clients
We have a client that uses codes to organize their user hierarchy. They are consistenly re-using the same codes for different groups of people, concurrently. This, of course, wreaks havoc witht the user access layer as it tries to determine who-is-who. The lead developer has explained the problem and possible solutions at least a dozen times to the customer reps over the last year or so. And it happened again today with the follow on question from the lead developer about when this might be fixed and the automatic response from the customer rep as to why this is a problem.
It would be nice to be able to generate an automatic response (both from the customer rep and the lead developer) in this situation. The neatest piece would be having a meeting auto setup between the lead developer, customer rep and the CTO so the thing could finally get resolved. The bad thing is the customer, who has been in business for over a hundred years, is extremely unlikely to change their ways regardless of what we do.
The whole thing reminds me of the story of a comedian convention where commedians would catch each other in the hall, say something like “Joke 43″ and both would start laughing. At least they both found it funny.
Uncategorized
Practice