- 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
Go to Erik's twitter account and you will find that he proclaims himself to be a writer.
Only, neither his "Hanzo" series nor his "Sergio" series have been good reads.
And he knows how his TDWTF articles are received. He claims not to read the comments left by his audience, because he has "a small but vocal hatedom [with the TDWTF readers]".
Admin
Sorry, I don't want to post the link here.
Admin
Admin
For the science pedants amongst us:
1 planck length = 1.61619926 × 10-35 meters
So you're only 10^212 smaller than anything possibly can be.
Or maybe their lat/long is in units of teraparsecs...
Admin
Rating: +6.02e23
But I'm completely certain, so long as you stay there for roughly 1.1e247 seconds :-)
Admin
One day this legacy code will be ported over to a document store like MongoDB if they hit performance issues, assuming they don't need ACID compliance. Nothing wrong with denormalization in the days of 64 bit computing but damn... what a nightmare to remember all the names of.
Admin
We only call that NoSQL, and although NoSQL has helped big data tremendously, just using a solution like Mongo doesn't mean you're big data. Far far from it.
Your first clue that somethings not 'big data' is if it can be managed in traditional relational databases, be backed up, be performant, and not collapse over on itself when someone tries to look at it.
Admin
Yup. We don't even know what role the CAI, INP, and DEG entities play.
Data normalization isn't about keeping the number of columns in a table down. A properly normalized table could have unboundedly many columns, if all of those columns are necessary to define the entity the each row represents.
Another snoozer from The Daily We're The Fuck.
Admin
Such demoralized structure of table make it easy to write reports.
Admin
I prescribe 1 bottle McCallen 18 year - STAT!
Consume entire bottle or stop when you pass out.
(You're welcome)
Admin
When it comes to storing things like dates and coordinates as VARCHARs, there's one clear-cut case where it's ok: when you need to store raw data and don't have a guaranteed input format. It may be possible that they get dirty data, store it in the GEOPOS fields, then try to clean it and put it in the GMAPS fields. Or maybe even use the address information and generate the GMAPS fields using Google Maps' Encoder library.
Same goes for dates. If you don't know what format to expect it in, and you don't need to do any calculations, just take any sort of string, and display that.
Admin
Discriminating against letter variables because they're not married! And you call yourself progressive.
Admin
Why is it that "xxxx left shortly thereafter" is always the end of the story? Maybe TRWTF is that the hapless employee doesn't have the interviewing skills necessary to determine whether the job is a good one or not, before accepting the offer.
I have to admit that I was one of those people, who accepted a job offer, not really knowing what kind of product I'd be working on or what the company environment was actually like.
But if WTFery is going on at a company, you as a prospective employee should be able to ferret that out before accepting the job.
At least these people know to get out before it affects their career.
Admin
Admin
You're thinking of "single letter variables", not "single-letter variables."
At least you're not ranting against them having punctuation out of caps lock.
Admin
Admin
Admin
Which RDB were you using? I've had issues before with third-party software on SQL Server since there's a limit on how wide you can make a table.
Admin
The letters create the punctation, and thus the caps lock refers to the letters. You don't want an "a" to bear children before it grows up to be an "A."
Admin
Admin
Yes, we have proper source control (translation: defined as copying the entire source tree to another directory and manually migrating changes)
Yes, we have proper documentation (translation: a local text file with some notes on Fred's PC)
Yes, we have requirements (translation: Charlie scribbled a picture of the UI on a coffee-stained napkin; build it from that)
Yes, we have a proper production support team so the developers can concentrate on their jobs (translation: the VP passes complaints to the dev team, and they take precedence; you can code after support ends at the end of the day)
The trick is to spot the problems as quickly as possible, while your second choice is still available, and be willing to jump.
Admin
I don't really see the WTF, the columns make sense to me.
This database table is about heritage sites and while a lot of information is maintained, it is all relevant to one specific site. The information contained falls into 3 categories:
Sure, there are some things that could be better such as duplicate rows for coördinates, but overall the table design is not really that bad. It wouldn't make sense to store the accessbility information in a different table, as this information is very specific to the site. The likelyhood of having two heritage sites that have exactly the same accessibility features is very low.
Admin
Why would denormalizing be a bad decision on a 32 bit processor whereas it would be a fine decision on 64 bit?
Admin
Admin
Are you being pedantic, or you just knew here?
Admin
This table must have been designed by the same people who created Salesforce.
Captcha: luctus - "Resistance be futile." -Luctus of Burg
Admin
joins, FK contraints, indexes all that just makes your DB go slow, what they need though is one table with Three columns
MASTER_CONTROLLER -ID -XML_DATA -RECORD_TYPE
Record type will of course be hardcoded into no less than 30 files
Admin
We have proper source control, but 80% of the devs are located in $thirdWorldCountry, and they don't know how to use it.
We have many source control systems. The architects use CVS for templates and assorted boilerplate. Development code is stored in git. QA releases code through VSS. Some code is generated automatically from specifications written in Excel spreadsheets; these are kept in our home-brew spec management system...
Admin
Admin
I will have denormalized nightmares.
Admin
I disagree that it has no further implications. It leads to bad models of what you are trying to describe. Or perhaps allowing representation of values that you deem invalid for some reason or another. By allowing those values, on a large team of people, you can introduce more unknowns in to the workplace.
Interestingly enough, there are definitely further technical implications as well:
http://stackoverflow.com/questions/2009694/is-there-an-advantage-to-varchar500-over-varchar8000/5654947#5654947
Admin
[quote user="Anonymous Will"][quote user="faoileag"] There is absolutely no way you're going to need 255 characters for a latitude or a longitude. A dozen is quite enough.[/quote]
What if you store it as XML?
Admin
you are all doing it so horribly wrong. you only need one table with two fields. One named 'key' and one named 'value'. you can save anything!
Admin
Turned out that "inhouse" in this context meant various subunits distributed all over the country, each specialized in their own respective domain.
And even at the unit where I (eventually) started, "inhouse" only meant: under the same roof. There was a "core" team and several teams customizing the product for, well, the customers.
I ended up in one of the teams doing the customizing and was not amused.
I wouldn't call it an outright lie though, more stretching the truth.
Admin
Admin
Admin
Uppercase punctuation sounds like a good thing.
Dramatic sentences can then end with uppercased exclamation marks, rather than that weak excuse we currently have.
Only then we can really express how we feel about these lame stories!!!!!!
Admin
nonsense! the real 'key' field obviously should be a combination of your 'objectid' and 'key' field. one of the nicest features of databases is that you can lump strings together into one field and then have the programmers figure out where one item ends and the next one begins. no need to let the computer worry about that.
Admin
I worked on a system once which was an internal development tool for generation and maintenance of the software which was the business of the company. This tool was written in java, using ejb technology and a swing front end, using a hybrid version of tomcat and jboss, in java 1.4 (it was all fresh and new at the time), and an Oracle database (the latter because we used it for our customer-facing apps). (All attempts to bring it up to version 1.5 of java or higher were met with the brick wall that was the inability to get the chosen configuration to function on anything higher than 1.4)
This internal development tool was, not to put too fine a point on it, overdesigned from a certain perspective, and horrifically underdesigned from others. The worst immediate bugbear was the one in which the maintenance history of any given customer app was stored on the system in a single VARCHAR(4000) (one for each customer app). All went well till certain mature apps would cause the tool to crash irretrievably when the developer updated that app's details. Yes, it turned out that when the maintenance record exceeded 4000 characters it triggered a SQL exception which was so appallingly handled that it caused all the user's work to be lost since last saving. The solution? "Prune some of the old maintenance history before you start, just in case. Oh, here's a list of those apps whose maintenance record is getting close to the limit. Carry on, folks ..."
Because of the bureaucracy that had recently been imposed upon the development team (they'd just got ISO 9000), combined with the micromanagement style of the person responsible for this tool, combined with the fact that my predecessor had committed some ill-thought-out and inadequately-tested changes while demob happy, combined with the fact that said predecessor considered documentation for cowards, I was unable to get clearance for the series of changes that I recommended in order to get this appalling heap of metaphorical scrap metal back into a state of adequate functionality. Fortunately I soon found a more rewarding position, and so that contraption lives on, as far as I'm concerned, in my memory only.
Admin
A? G! R. O, O K, I C. S. I L F 2 C F U L F T N M N X.
Admin
S, V F X.
Admin
When all you would have to to is create a new column, MaintHistOld = VARCHAR(8000), and then, every time you update the original column by adding X characters, removing those X characters from the beginning of the history string and adding them to MaintHistOld.
Then, by the time MaintHistOld is full, you have hopefully already left, or, in the best tradition of WTFery, you create MaintHistOldOld = VARCHAR(12000). And shift data twice on each update. ;)
Admin
Admin
now I am at initrode but that code was initechs' baby. Perhaps I should excavate my backup directory see if i can find some entries from those days see if Erik can type some story about a windmill around it.
Admin
Oh goodness me, you crack me up!
Admin
Admin
I had a somewhat similar experience at my first job with a table that contained multiple entities. This was convenient [sic] since it was 'easier to load it into the data warehouse'. I needed changes to the data model and I tried to convince the person responsible that I couldn't create foreign key integrity constraints without there being a unique key or a primary key. I just got a blank stare. And we couldn't do any changes to the datamodel anyway because there was no difference between test, quality or production. I WTF'd frequently on that job.
Admin
As someone else pointed out, the latitude and longitude data might be in raw format and converted later.
As for the dates, it might be indefinite such as:
Sincerely,
Gene Wirchenko
Admin
Did you fall asleep on your keyboard?
Admin
Hey, I could bet that it was written by my intern at his next job!
http://forums.thedailywtf.com/forums/p/9973/179888.aspx