- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
Admin
I was thinking "Why update the resume?" A job I spent a few days at would hardly be worth mentioning. If I must mention it, it would be: WTF, Inc. 123 Main St. Hired as a [jobtitle1] Job requirements changed such that I was not expected to be a [jobtitle1], but [jobtitle2].
Admin
And, I just noticed I just said the same thing as most others... here's for coming late to the party.
Admin
Perhaps we should show to you the myriad horror stories associated with having 2 or 3 (OMG!) Access db's linked together! I don't ever recall having more used one.
Admin
There really isn't any tax advantages here and it is mostly about making staff miserable.
Somebody read about this in a "Management for Dummies" book, and the idea of Shared Services was born and considered the greatest thing since sliced bread.
I believe the intended purpose was to somehow calculate the true costs of building and supporting applications so that the ROI could be calculated and work thus prioritized.
My own experience when I worked for a company that did this. I spent about 30 hours a week asking for work to do. Meanwhile my bosses were telling people submitting business requests that there simply weren't any resources to work on their project and they would need additional funding so they could hire a consultant.
So any new work that came along was farmed out to consultants, and I was miserable.
So to answer your question, yes it is about making staff miserable. That's why I became a consultant. :-)
Admin
Correction: I don't ever recall having used one.
Admin
Actually I think I worked on this project. :-)
Back in '96 there was something similar at an investment bank I worked at. It'd grown to two Access databases 2 gigs in size.
They hired a developer to work on it, but corporate IT wouldn't allow him to have admin permissions on his box so he couldn't run any of the development tools. He eventually quit.
Admin
It is a tool and every tool has its purpose. Now, I need to take my rock tied to a stick and go hunt some woolly mammoth for dinner.
Admin
Admin
You've never actually used MathCad, maybe? The absurd assumption that the user wants his equations to look like perfect artwork is bad enough. The fact that you can place an equation anywhere on the page, but order of execution depends on the exact vertical pixel position, will lead to major grief sooner or later. Don't even get me started on the collection of super-secret symbol translations...
Admin
Admin
THIS. He had selected a database system and was making plans for the migration before even letting his boss know what he had in mind. He appears to have a good solution in mind, but anybody who will even entertain the notion of migrating data should realize that it's important to run this idea past a few people on an official level, especially the person who gave you the task, before committing yourself to a particular platform. I don't care how crappy the system is you're migrating away from; people are actively using it, the data on it is important, and the WTFery of its implementation means that migration is not likely to be a simple matter.
Now, he does admit that it's "a little cowboy coder". Which means he knew better. He can't have guessed the beaurocratic nightmare that would prevent using Oracle, but really, his bosses' first clue that he was planning a migration shouldn't have been his database request.
Admin
The real wtf is the IT department not supporting finance. Just sayin'
Admin
"He should have discussed what he was planning to do"
Again, its all about the lies. He was probably told to do whatever he needed to make it work.
Admin
Admin
As an IT ex-employee of a Fortune 50 company, there are actually valid reasons for these billable hours and charge-backs. It is an attempt to keep crazy WTF-ness from the business end from happening.
When I started at that company, I was in the IT department of one of its subsidiaries, which didn't have any of that. We've had cases where our business will go "We have this project and we need blah blah blah NOW!!!!" with some insane pie in the sky demands that IT simply would not have resources for. Business then gets mad and threatens to "submit a list of IT employees to the CIO for immediate termination". Arguably, if IT leadership is strong, these things should not happen, but that was not the case.
When we got integrated into the IT team of the fortune 50 company, there was less noise on that end (doesn't stop them from trying!). IT can come back and say, "Sure, if that's what you want, it'll cost you $$$$$", and force our "customer" to rein in their estimates and requests what they actually need.
Admin
Note to Tom: When signing a contract, ALWAYS read the title of your job. If you're a developer and your contract states "accountant", start running!!! Then again, if your contract did properly state "developer", just show it to Karen.
Admin
"Cap'n! The applications cannae take much more of this! They're already at Access Factor 9. If we add another database they're gonna blow!"
Admin
"... since Karen was not interested in giving Tom technical direction..."
Did that. Passed go. Still got cheated out of the $200.
Admin
In a simple world with sane, intelligent users you would be right, but here in the real world not doing so results in IT becoming an all-you-can-eat buffet for the rest of the organization. YMMV, but that's the way it is in every organization I've ever worked for...
Admin
Admin
Not quite bait and switch but I chatted with a company about a position that was posted for a developer with SQL and Access experience. Turns out their product is entirely written in access, as pretty as access can get but hundreds of items on each form. Anyways ... not for me. Good thing I didn't waste their or my time with an interview. So you know SQL Server, check, can do .Net development handling millions of transactions a day, check. Okay so here is the VBA editor go to town, duh.
Admin
That is exactly it. Without charge backs you end up with one department with never ending projects that eat up IT resources like crazy. At the end of the year you end up trying to justify the 10 devs you have with no records of what was done how long it took etc. Or you did collect that info but didn't inform anyone how much these projects were costing. At the end of the year, WHAT finances new dashboard cost us $200k to implement?
Admin
Incidentally this is also why I am leery of any job using VB.NET. Nothing wrong with VB.NET as a language, but your average PHB thinks that VB.NET = VB6 = VBA = VBScript so you run the risk of a shop that uses Access or VB6 and "thinks" it's VB.NET. There's a lot less ambiguity if you're applying for a C# position and they can't try to weasel you into supporting Classic ASP or whatever because "You know VB, right?"
Admin
Mordac the Preventer lives!?!
Admin
Odd. All enineering shops I know of are rife with Access applications. I can confidently say this based on my sample size of one.
Admin
Correct. I will do this only.
Admin
IT probably said they weren't going to support this application because they took one look at it and saw that it would be easier to write it from scratch than to support it. But finance doesn't want to pay for writing it from scratch. Hence, the hiring of the developer/accountant, who they think can "fix" it for cheaper.
Admin
I would do the same thing. Unless they were paying me in the high 6 figures, life is too short to have to deal with crap like that. I just wouldn't put the job on the resume.
Admin
And a manager willing to lie about how someone was classified is probably also willing to lie about what they'll be doing. Plus, if you're the developer for a non-technical group, asking those things isn't that helpful, because they aren't going to be able to answer you.
Admin
A lot of this happens as a result of many years of mistreatment of IT, and so someone finally stands up for themselves and says they're not going to be the doormat of the company. Usually a good thing, but in many cases, it can go too far, and you end up with...
It's both a tax scheme and a profits scheme. The subsidiary IT group bills the rest of the company, and is able to show "profit" (although it's not actual profit, as it came from the rest of the company).
I also wonder if it isn't some kind of scheme to try and weasel developers out of benefits or something.
Admin
Exactly. Sometimes you just have a scumbag manager that lies. I had this happen twice:
Company said it was a .NET position. Turned out to be all Classic ASP spaghetti and only the Lead worked with .NET on the new stuff. I quit within a week because they lied and had tons of red tape for everything (this was a small dev shop).
Company said they used modern source control, did testing, etc. What they really meant is they knew how to commit code (but not how to branch/merge) and they did testing by poking around an app in IE. Stayed nearly two years trying to improve and was ultimately fired because the CTO and "star" developer got tired of my mentioning how we needed to improve the code quality so the app was stable instead of crashing 5+ times a day. After they got rid of me they went on blissfully ignoring everything I had mentioned.
I'm sure if he had asked about those things he would have gotten bogus answers:
Q: Do you guys use Source Control? A: Uh huh (real answer: We control the source code, don't we?)
Q: Is this a .NET job? A: Sure (real answer: It's all VB, isn't it?)
Q: Can you promise me there is nothing to do with Access and I won't really be listed as an accountant because your crazy corporate policies won't let you get a developer, and that I won't be able to use any real tools? A: Sure (real answer: Trollolololol...)
Now of course any real answer like that is a big red flag, but if you're out of work or similar you might not pick up on the huge WTFery until it's too late...
Admin
Well, I suppose that depends on your definition of "sane". This statement is almost surely totally false if you leave that word out. That is, I sincerely doubt that it is true that "In most dev shops, developers have free reign," etc. I've never worked for a company where that was true.
In every company that I've ever worked for, there is a fixed set of tools that the developers are expected to use. And personally, I don't think that's insane at all. Suppose we have twenty developers all highly skilled in, say, Java. Then a new guy is hired who prefers PHP. So he develops an app in PHP. Then he quits. Then the company needs to update that app. No one else knows PHP. Sure, assuming your developers are reasonably competent, someone else could learn it. But that could easily turn a two-day job into a multi-week job.
Suppose one developer likes Java, another likes VB, another likes C#, another like PHP, another like Ruby. One likes Oracle, another likes MySQL, another likes Postgres, another insists DBase III is coming back. Etc. Is every developer supposed to learn 4 OS's, 20 languages, 10 database engines, and 8 web servers so they can support each other? That would be crazy.
I'd agree that in a sane dev shop, if you hit a situation where the favored tools don't work well, they would be willing to discuss alternatives. But everybody use whatever they feel like today? Umm, no.
Admin
Perhaps we should show to you the myriad horror stories associated with having 1 (OMG!) Access db!
I still wake up screaming at nights from the times I've had to use Access.
Admin
I should have worded that better, I meant more like in sane dev shops you can use the right tool for the job without a lot of red tape. Not something like a Java shop allowing someone to come in and use PHP.
Admin
The codewords nowadays are "development" and "implementation". Learn them well.
Admin
If Tom wasn't so stuck in his Microsoft world he could have migrated the application to MySQL and his choice of any number of languages. So his greatest failings are a lack of imagination and an inability to think outside of his MSDN DVD stack.
Admin
But corp won't approve anything unless it's blue! That's not enterprisey enough!
Admin
Sure. If done right, it can make a lot of sense.
All resources are finite. You only have so many developers, so much money for development tools, etc. You can't build every system that anybody in the company thinks might be useful. You have to prioritize.
The rational way to prioritize is to analyze costs and benefits. How much time and money will it take to build this new system? What advantage will we gain from having it? Will it bring in more sales? Reduce costs? Improve customer service? How much is that worth? Etc. Then we decide which projects to pursue based on which give the most benefit versus cost.
Of course some requested systems are plain stupid: they will never do anything useful for anybody. But even of those that are of value, some are more valuable than others.
If we take the cost of developing the system out of the budget of the department requesting it, then they have an incentive to realistically weigh the costs of getting this system built versus the cost of other options. "Other options" including putting up with the stats quo, hiring more people, buying off-the-shelf software to do the job, etc.
Sometimes the reality is that hiring an outside consultant to do a job is cheaper or otherwise better than doing it in-house. Maybe your internal IT department isn't skilled in this particular type of system. Maybe this project is huge compared to your normal workload, and you really don't want to hire a bunch of people for 6 months and then lay them all off. Etc. A smart company doesn't just assume that because we CAN do something in-house that therefore that is the only solution to consider.
Of course internal charge-back schemes can be implemented badly. I'm sure that given the reality of human fallibility, you could find flaws with any scheme that exists in the real world. The question is not, Is this scheme perfect? But, Is it better than any alternative that we could realistically expect to implement?
Admin
It may be one of those IT departments that require 18 months to do the smallest project with no concept that a result may be required (by legislation) in, say, 3 months time.
I have often been hired to do the end run around the IT department and on one occasion they managed to block me - they would not supply any developer tools and forbade me to bring my own.
Admin
seems like an interview fail by Tom... should have asked what he would be doing.
Admin
In my sane shop, devs all have admin access and can install what we want. But we don't just hire a PHP developer and ask him to do the work. We assign Java developers to Java projects, and PHP developers to PHP projects. And within the project, the tech lead calls the shots for the languages and frameworks used.
But they don't care if you use Eclipse vs. Netbeans vs. VisualStudio as long as you deliver good results and mesh well with the project team.
Admin
TRWTF is places where you still don't need any formal credentials to be an accountant.
Admin
As everyone has pointed out --- that might work for you, but it's not the correct thing to do. It's not so bad with an interpreted language like PHP I guess.
How do you handle environmental issues? How do you pair program? How do you train new developers?
All of those things are time sucks. A well oiled machine uses fitted parts.
Admin
When I got hired to DBA/Develop for a bunch of accountants, I got to pick my own official job title (official job titles were also managed by the DB I worked on...) I went for "Finance Systems Analyst"
Admin
How about Java and MsSql? Or Scala/Lift? Or whatever. There's a lot of things in this world that do not require any purchase order.
Admin
Wow... this would be like my personal hell.
Admin
Admin
While there are open source alternatives, but it comes with the assumption that Tom knows these languages/technologies. My guess is that he is probably a .NET developer thru and thru. Forcing developers to learn something else on the fly deploying it in a mission critical app is a bad idea, and that bad code will probably show up here one day.
Someone already mentioned this up-thread, but it seems strange that a fortune 500 company business unit is allowed to go rogue and hire their own IT people and develop their own solution on the down low. Are they running these Access databases/applications on a desktop machine? There's no way an organized corporate IT unit will give the business a server to do whatever they want. When it inevitably blows up, there will be some uncomfortable conversations between high level execs as to what happened.
Admin
He's the kind of guy that would fight a speeding ticket by saying that "Speed Limit" could refer to a minimum limit.