- 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
Which would you rather be: The company that got it right, or the company that made (I'm assuming) several times the money?
Admin
sqrt(1^2) + 1 (damn captcha)
:D
Admin
Not getting it - the WTF is a poorly written obsolete system???
OIC
WTF??
Admin
It wasn't Purdue, by any chance?
Admin
The former. I find that having a reflection in a mirror helps greatly with shaving.
"middleware" seems too often to have the wrong initial vowel. "muddleware" would be a better fit.
Sincerely,
Gene Wirchenko
Admin
I would like to be the company that got it right cause when the university needs some maintenance or other systems created then I will be the company that made several times more money.
Admin
Mother of g*d! Now I understand why I'm having trouble getting into the building every day...and all this time I just though the guards didn't like me.
Admin
I've been reading this site for a while now and pretty much every posting has this in common: they either don't know of a tool or if they do then they don't know how to use it.
But both paths can be quite comical though.
Admin
Wow; a company that lands a contract for an enterprise-level job, and they seem either ignorant of the advantages of a database, or suspicious of using one.
I would like to see the inside of one of those 'text_files'.
Admin
I would hope it wasn't Purdue. The students there could do 10X better than this.
That is, however, exactly what this sounds like. It sounds like the quality of work you would get with a mediocre school's senior project.
Admin
Many genuinely frightening things happen with these school card systems. I was still in school in 2003 when my school rolled out it's new ID card. I took mine to work, ran it through a magstripe reader, and low and behold, the only thing on the card was my student id number, and a counter so it read something like 99999999901. The student id is printed on the card itself, and not something that is kept secret because it was no longer the SSN. If the student lost their card, the system was 'secure' because the new card was issued as 99999999902. You've gotta love that security.
Admin
Good lordy, how would they explain this to other places they were going to work ..Hey we can code just don't expect any new fancy, I make you life easier stuff!!!!
Admin
the company that got it right because reputation is very important in the long term and could lead to highly paid contracts in the future.
Admin
Were the original "programmers" former students?
Admin
s/it's/its
Admin
I don't think there was anything in the files themselves...they just represent values that SHOULD have been inserted into columns...in a table...in a [fill in the blank here].
Admin
The former. They have a good reference and a future source of income. Meanwhile, the latter has killed their golden goose and damaged their credit with the goose vendor.
Admin
You've heard "to a hammer, every problem's a nail." Well, this company has a nail, but no clue what a hammer is.
Admin
And I took all of that stuff for granted when I was going to school.
The bit about the students figuring out that debits weren't processed until the next day is funny. The closest we had was an ATM that spit out $10s and $20s and some dolt put $20s in the $10 container. People were allowed to do 3 withdraws before going to the end of the line (well, until the party was broken up).
Admin
It depends, if work was scarce in my area I would rather be the one that made more money. You can always pack up, move on and leave your reputation behind.
Admin
I'm assuming the numbers are file names (that roughly correspond to a 'primary key'), and the contents would be column names - values represented in some way. For example, in the file '3040557', the content (in accounts/balances, for example) might be:
balance=124.75
last_transaction_date=03/04/2005
or maybe just
124.75
03/04/2005
I hope students would do better.
Admin
Well, at least you're honest. Remarkably so, given your username. :D
Admin
Overall the University would have been better off if they let the students write the system. Make a part of large project in a software development or engineering class!
Admin
There's nothing contradictory about an honest jackass.
Admin
Admin
I would like to be the company that got it right cause when the university needs some maintenance or other systems created then I will be the company that made several times more money.
Good for you. But now, every day *I* go lauging all the way from the beach to the bank...
Admin
Of course a DBMS is the right tool for this job, but I don't think you can lay the problems of this system on the choice
of flat files in a directory tree.
You can go pretty far with a directory tree (it is a tree index, after all) as long as you keep the size of the directories small.
For example, if user id #0123456789 was kept in the file
01/23/45/67/0123456789
Wasteful of space, but not horribly slow. Subsecond access should be no problem at all. And you could distribute this system nicely by user id, eg the last digit of the id is the backend server number, 0-9, to send the scan to, so there need be no problems with immediately debiting the user account.
Sounds like the performance problem was due to the muddleware.
Admin
My personal guess...
"Wait a minute, we have to pay a licensing fee to use a database in production? Screw that, we can implement one on our own."
Admin
The latter, because everyone else chose the former and I'm cool like that.
Admin
Admin
I am almost certain that the clients never specified the response time in the original specifications.
Poor specifications == poor product == client's fault.
Admin
Purdue Chicken has a University WTF!
Admin
The real WTF is that this is how Visual Sourcesafe worked up until the VS 2005 release.
Admin
Hmm... where does SQL Server store its data? Where does Oracle store its data? I thought the existence of the Ether was disproven almost a century ago, and yet modern RDBMS's seem to be storing their data there...
Oh no, wait, they store it ON THE FILE SYSTEM! Wow, revelation!
I say we blame the OS vendors for this whole quagmire... obviously, if they had written better-performing disk IO code, this never would have been an issue.
(Sorry, forgot to wrap that all in <sarcasm> tags)
Admin
Apparently problems with card-scanner-systems are kinda common. "My" uni had one building all students (some odd 11000) were supposed to have access to. The system was unable to handle that amount of people (in a single node/scanner?).
Anyway, the problem was resolved by only giving students with "special reasons" access. (The doors were open daytime, though).
Admin
Well, that's the key. Small directories. That's why this system worked at first, then started slowing down as the directories grew larger. Nobody saw that they had a bad design until it was too late.
Directories with >10,000 files in them are slow because they are usually stored unsorted, and must be searched linearly.
Putting the data into a DBMS makes it easy to keep the data sorted. All you have to do is add an index and you'll be able to handle a lot more data, without having to resort to tricks to keep your directories small.
Admin
The best part was making the users swipe all of the readers with punch-cards. Who needs these fancy whatsits with the magneto thingies. That is sooo 1950's.
Admin
So you are saying that the client has to specify that the vendor has to build something that "isn't retarded" in the specifications?
Admin
The customer's job is to tell us what they need.
Our job is to work out how to give them something that will actually do what's necessary.
We write the specifications. We create the product. If the product makes the customer unhappy then it's our fault because our job isn't to do the bare minimum we can get away with.
If the customers don't know that they need to decide on an acceptable minimum response time, then a responsible professional would tell them so.
Admin
Nah, you got it wrong. An apostrophe token means "here comes an 's'!!"
Admin
I want to be the one who has the greater take-home pay, with which to buy stuff for myself.
The company that charged less probably also required less actual work in order to get the system up and running, which means lower overheads, and less income going on expenses. Revenue doesn't matter - the real question is who made more profit.
Admin
blaming the client for bad specs == making lame excuses == a really, really bad consultant
Admin
I'd much rather be the company that got it right, as that may help to guarantee future contracts...
Admin
Just don't expect them to know what "hexidecimal" is...
Admin
Right, this should be in a DBMS no question.
But it could have been designed so that the directories never had more than 100 entries in them, no tricks required, just more directories in the tree from the start.
Admin
Well, to reduce the number of files in each door directory, they should have put all the valid IDs into a text file, instead of one file for each student, and then used some sort of O(1) regex to search the text file! ;)
Admin
gotta love relational batch files, too
some OS's slow down once you have a few thousand files in a single folder. I remember one system I saw with about 75000 files in a folder (again, a folder/file-based 'database') and that was slow to read or write, had file locking issues and generally got replaced as soon as humanly possible.
the "xml->text->process->xml->text" is fancy :)
Admin
It's amazing howoften marketing doesn't understand that. And that Engineering really needs to treat marketing like that.
"Yes, I hear you say you want X. What that actually means is that you want Y. Trust me on this."
They seem to hate it when they remember that you know more about writing code/designing systems than them.
Admin
Right.... that would be great, each student on the project would have their own backdoor/easteregg/prank on the system. it may run faster, better, etc, but it'd be worthless as far as the programmers, their friends, their friends friends, the girl in the next dorm... etc
Yah... that'd be great....
Erik of Ekedahl
Admin
I studied at FSU in Jena, Germany for a semester a couple of years ago. They actually did have their own chipcard system produced by their CS dept. They had a few professors in charge of the thing, but the bulk of it (as I understand) was written by students. It worked great. It was deployed across the campus, and I never had any problems, nor heard of anyone who did.
Backdoors/easter eggs/etc? Do you really think that anyone would be foolish enough to take code from random students and put it in a production system without checking it first? Besides, you'd presumably only allow students to work on it that 1) you trust and 2) understand that inserting a backdoor into real software is typically illegal. Illegal electronic entry, criminal negligence, etc.