
Howfuckedismydatabase - malvosenior
http://howfuckedismydatabase.com/
======
Mc_Big_G
<http://howfuckedismydatabase.com/nosql/>

Bob: So, how do I query the database?

Ed: It's not a database. It's a key-value store!

Bob: Ok, it's not a database. How do I query it?

Ed: You write a distributed map reduce function in Erlang!

Bob: Did you just tell me to go fuck myself?

Ed: I believe I did, Bob.

~~~
urssur
that is rather hilarious !

------
maukdaddy

      Warning: oci_connect(): ORA-$$$$: Insert coin to continue
    

Fantastic!

------
aplusbi
This reminds me a story...

At my last job we used Postgres on a Windows server. Whoever initially set up
the database pretty much stuck to the defaults.

Whenever we would read/write text to the db in code we were using functions
that basically returned raw data. All of our text was encoding using UTF-8.

When using the Windows Postgres Admin tool to run a query that returned text,
you'd occasionally see some weird characters (cafÃ©), sometimes you wouldn't
(café). Sometimes the query would fail due to invalid characters.

When I looked into it I quickly realized what was wrong - on Windows Postgres
defaults to Win1252 encoding (which is a form of extended ascii). Normally
when you are writing text to the database Postgres will convert the encoding
but since we were writing raw bytes we skipped this part.

Win1252 contains some undisplayable characters which occasionally show up in a
multi-byte UTF-8 character, explaining the failed queries. However it didn't
explain why sometimes we got cafÃ© and sometimes we got café.

It turned out that there were some scripts/apps that were reading file names
on Windows and inserting them into the database without converting it to
UTF-8. Windows uses UTF-16, although somewhere this was auto-magically being
converted to Win1252.

This meant that our Win1252 encoded database contained both Win1252 text and
UTF-8 text. I ended up doing a text dump of the database and writing a Perl
script that would run through it all byte-by-byte and convert all characters
above ascii 127 that were not part of valid UTF-8 sequences into UTF-8. This
was then used to create a new database correctly encoded as UTF-8. It actually
worked (although there were a few snags - we were getting some data from this
service that would randomly include the sub character (ctrl-z) occasionally
which would cause cat/split to stop running).

------
bradendouglass
I am a fairly large database nerd and this is epic. The comic on the NoSQL is
priceless.

~~~
Throlkim
I first read your reply as "I am a large database and this is epic" :|

------
TrevorBramble
Gosh, this is silly! You don't even have Excel listed. Amateurs!

(The Oracle < $1m answer is a RIOT.)

~~~
jacobolus
See <http://howfuckedismydatabase.com/letters/>

_“After reviewing your site, I'm so glad we are sticking with emailed Excel
spreadsheets for our mission critical database requirements.”_

And:

 _“Databases? Fuck that. I use Excel's pivot tables.”_

------
ibejoeb
The Storray Engine didn't make the list. Guess I'm safe.

<http://thedailywtf.com/Articles/The_Storray_Engine.aspx>

~~~
dlnovell
Hahaha, I can answer how to convert that to .NET! I worked for a while as a
web developer at a PR company. My predecessor had apparently heard of the
Storray engine and converted it to .NET. He stored all the product information
for one of our clients' sites in an XML file. Fortunately I only had to work
on some CSS for that site, I would have been pretty distraught if I had to
give up the awesome power of Storray for MSSQL.

------
maw
There's the old joke about finding an SO. Attractive, intelligent, available:
pick any two.

I recently realized that with programming languages, it's similar, but not
quite the same. Runs fast, has libraries, isn't totally frikkin braindead:
pick one, if you're lucky.

Just now I realized that much the same applies to databases.

~~~
shelfu
Used to apply that to PC builds as well.

Fast, Quiet, Cheap

------
quellhorst
I would say the people who made this site are fucked. Google is only showing
PSA ads.

~~~
nuclear_eclipse
What ads?

~~~
ambiate
Google Adsense is showing public service advertisements (freebies[solar
power|green stuff]) instead of database related ads in the footer. Be gone
with your no-script browsers!

Either it is: intentional -> High five for charity. an accident -> He really
missed out on the $2-$6 CPC of the glorious database keywords... especially
without having a button to go back. This page has what, 144 pts? That usually
rounds off to 10000+ page views from my perspective. 1429 tweets, so maybe
toss in an extra 7000 or so. That's at least $51~ he could have raked in based
on 17k views times $3 avg a mille. :(

~~~
sounddust
He can't run adsense on his site without having everything revert to PSAs.
Google automatically switches a page to PSAs if there are certain "trigger"
words in the URL related to sex, violence, profanity, tragic events, etc. The
fact that the word "fuck" is in the domain name makes 100% of his pages a
target for this filter.

------
famousactress
The mysql path ought to ask whether or not you're using Java, paying the 500$
license fee for the damned driver, and then remind you that you're
extrafucked.

------
paraschopra
Anyone else thought that the site will try SQL injection and stuff to tell you
how vulnerable is your database?

------
kscaldef
Could we stop pretending that "NoSQL" refers to a homogeneous set of
technologies?

------
Marticus
That's pretty unbelievably awesome.

If anything, I wish it was more complex though.

------
madhouse
A dBase III option would be neat. They're still using that in certain
places....

~~~
malkia
Oh gawd... I had to use it in high school, I've got B on that test. what a
horrible thing it was

------
RichClaxton
It probably should display informix as an option, but got a row lock error.

------
maukdaddy
Just realized there is not an option for FileMaker Pro.

------
jbhelms
Rather you than me. Warning: mssql_connect(): Cannot open connection: Timeout
expired. in /var/www/database/mssql/common.php on line 10

------
Kilimanjaro
I got "Massively fucked", dunno why...

~~~
ebtalley
wait for it, wait for it.

Microsoft JET Database Engine error '80004005' Table 'tblTable' is exclusively
locked by user 'Admin' on machine 'MyMachine'.

Ahhh there it is..

------
zavulon
This is great. Requesting Sybase!

~~~
dunk010
You should come up with a joke about it ;P

------
osipov
No DB2?

~~~
alttab
People who use DB2 don't need to go to howfuckedismydatabase.com

~~~
bkmartin
Exactly. Its rock solid. Especially when coupled with the lovely IBM i
operating system. I'm guessing few here have touched these systems, and the
younger crowd might not have ever even heard of them.

~~~
colinstrickland
True fact: The main reason we didn't include DB2, is indeed because none of us
have any direct experience with it. All the other jokes were informed by
hands-on experience.

~~~
NickPollard
I worked for IBM for a year a while back as a student, my predecessor had at
one point worked on some obscure DB2 fixes. He regaled me once with a story of
how when looking for the root cause of a bug, he found a comment saying
something along the lines of:

// Quick hack, will fix properly soon!

It was dated sometime in the 80's.

~~~
alttab
At some point I interfaced with a DB2 product and some of the code was
seriously 30 years old and had goto's as a best practice... really.

Really.

~~~
bkmartin
Yes, I believe it. I've come across the same. But, something to remember, that
code was written 30 years ago, and its still running. And the best part, its
could be 30 year old code running on the latest and greatest hardware. GoTo
isn't the right way to do coding, but at one point in time it was all a
programmer had. But it still works, like it or not (maintainable or not).

------
malkia
I chose sqlite, one concurrent user and I. Had this:

Warning: sqlite_open(): file is encrypted or is not a database in
/var/www/database/sqlite/common.php on line 10

------
MaysonL
MSSQL with the nuke option:

<http://news.cnet.com/2100-1001-270351.html>

------
arethuza
No Excel? :-)

~~~
ojbyrne
Nor text files.

------
dalore

      Warning: pg_connect(): Unable to connect to PostgreSQL server: FATAL: database "postgreserrors" does not exist in /var/www/database/postgres/common.php on line 10

~~~
frossie
That's the joke, dude...

Re OP: Ah, the joys of being a Sybase user, nobody even makes fun of us.

