Slashdot is powered by your submissions, so send in your scoop


Forgot your password?

Comment Re:Rail games (Score 2, Interesting) 177

Someone did think of it first: Konami. Notice that they mention Beatmania and DDR as inspirations, but curiously omit Guitar Freaks and Drum Mania...

GFDM are on something like their eighteenth release in Japan at the moment. Konami has been pumping out all manner of wonderful music games for over a decade now, they just really suck at publishing their shit abroad, much to the chargrin of the Western Bemani fanbase (which exists despite their best efforts, and believe me the use of 'despite' in that sentence was intentional).

Comment Re:So why (Score 1) 191

To answer your question:

SQL Server's development tools are top notch. Admittedly, that says more about the quality of the competition than anything else, which I'll come to in a moment. The DBMS itself is a bit iffy though. SQL Server 2000 and below are just a complete joke in terms of features and performance (and some shops still run it!). 2005 is pretty good, but they bolted on MVCC sideways and it shows. You can turn on MVCC on most operations, but I've had such a lot of hassle trying to alleviate weird locking issues that you end up just sprinkling SET TRANSACTION ISOLATION LEVEL SNAPSHOT; and WITH (ROWLOCK) or WITH (NOLOCK) everywhere just to get things done. That and it just does really unusual things sometimes. For instance, the latest performance tweak I had to apply was to add an index to a 30MB table which was for all intents and purposes read-only, . This is on a database server with 8GB of RAM installed, and that table is read from a _lot_. Why doesn't it live inside the block cache?

Oracle, on the other hand, have a very powerful database engine at the core. I get far fewer instances of query planner strangeness than I do with SQL Server. However, it is completely and utterly bloated beyond belief... I suppose that's to be expected from a codebase that's probably older than I am, but some omissions are really quite annoying. For instance, you can't, as far as I am aware, create temporary tables on the fly, you need a DBA to create them for you, despite the fact that most heavyweight queries are going to end up scribbling into the tempdb anyway, so I don't see why this needs to be a priviledged operatoin. Also, returning result sets from stored procs is just painful. SQL Server just lets you SELECT like normal, with Oracle you have to use SYS_REFCURSOR OUT variables, which is a lot more cumbersome, particularly from an administration frontend.

Oh yeah, Oracle doesn't come with any decent frontends of its own, so you have to use third party ones. In our shop we use a couple, but one of them is TOAD and it the one piece of software I hate the most, out of everything I have ever used. This is enterprise software at its finest, with about four or five toolbars full of shit and a catalogue of features that I'm sure their victim^H^H^H^H^Hclients' purchasing executives absolutely drool over. This thing has an HTML editor built into it. It's got _x86 assembly syntax highlighting functionality in its text editor_, for crying out loud. You know, just in case you fancy writing a nifty bootloader in between bouts of PL/SQL (I was rather disappointed to note that it only supported 16-bit real-mode instructions and registers. Oh well). It has an absolutely dizzying array of knobs and dials and options in its settings menu, which as a whole are about as clear as mud. But forget doing any sort of actual basic SQL work with this thing, because it's not going to happen. There are three ways to issue an SQL command, for no particular reason, and a whole bunch of crazy rules to pick which one to use. Sometimes, none of them even see fit to tell you exactly where the PL/SQL error is in the package body you just tried to compile. Some of these invocation modes block the UI while it's talking to the db. It likes to hang on db operations a lot in general; during autocomplete, during result set seeking, during some completely unrelated operations whose nature I cannot fathom. Also, it seems to get wedged if you enable DBMS_OUTPUT to one of its multitudinous window panes, but maybe I was just doing something wrong there. Urgh. I hate this utter piece of crap.

But yeah, as for Oracle itself, it's extremely powerful, if a little verbose and unwieldy. A consultant's dream, I suppose. Given the choice though, I would actually use PostgreSQL for most projects as opposed to either of those two. It's got MVCC built in from the ground up, it's not blazingly fast but its performance is a lot more consistent than some of its competitors, in my (admittedly very) limited experience with the database, its tools are clean and lean, and generally it seems well engineered and no more complicated than it needs to be.

Slashdot Top Deals

Adding features does not necessarily increase functionality -- it just makes the manuals thicker.