Beta

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Ask Slashdot: Which OSS Database Project To Help?

Soulskill posted about a year and a half ago | from the flip-a-coin-or-flip-a-table dept.

Databases 287

DoofusOfDeath writes "I've done a good bit of SQL development / tuning in the past. After being away from the database world for a while to finish grad school, I'm about ready to get back in the game. I want to start contributing to some OSS database project, both for fun and perhaps to help my employment prospects in western Europe. My problem is choosing which OSS DB to help with. MySQL is the most popular, so getting involved with it would be most helpful to my employment prospects. But its list of fundamental design flaws (video) seems so severe that I can't respect it as a database. I'm attracted to the robust correctness requirements of PostgreSQL, but there don't seem to be many prospective employers using it. So while I'd enjoy working on it, I don't think it would be very helpful to my employment prospects. Any suggestions?"

cancel ×

287 comments

Sorry! There are no comments related to the filter you selected.

Find better prospects? (5, Interesting)

ferrisoxide.com (1935296) | about a year and a half ago | (#42123081)

I've used Postgres commercially for years, with a number of employers. It's a great DB and having dealt with MySQL, SQL Server, Oracle, et al I'd never go back - though the softies tell me that SQL Server is much better these days.

I'd be surprised if you can't find plenty of work using Postgres. Maybe it's one of those things people don't feel comfortable talking about - like Delphi in the 90s. Plenty of people used it, but few would own up to what made up their "secret sauce".

Re:Find better prospects? (5, Informative)

Anonymous Coward | about a year and a half ago | (#42123413)

+1

You don't see lots of people saying they use PostgreSQL online, because, no one has to bitch about it. It works, it works great, and its documentation is astounding.

Everyone uses it, you just don't realize it, again, because no one bitches about it.

I'll never touch MySQL after having used it for a product, what a POS

we run a commercial website with Postgres (0)

Anonymous Coward | about a year and a half ago | (#42123787)

No complaints.

Re:Find better prospects? (2)

Nostromo21 (1947840) | about a year and a half ago | (#42124033)

Ditto. Delphi was the last time I actually loved programming, back in the mid/late 90s. Then I got a job using VB6 & raw C - bleh!
Progress wasn't a bad 4GL/RDBMS back in the day - wonder if it's still going...

Re:Find better prospects? (1)

sexconker (1179573) | about a year and a half ago | (#42123443)

I've used MySQL and (MS) SQL Server.
MySQL is trash, trash, trash.
I've never had a problem with SQL Server (though I've only touched versions up to about a decade old).

Re:Find better prospects? (2)

A bsd fool (2667567) | about a year and a half ago | (#42123495)

Agree. If you are going to help (or, damn, even use) an OSS DB, make it PG. MySQL is garbage. MSSQL is not bad though. It's still fast as hell and has great ACID compliance, just expensive.

Re:Find better prospects? (0)

Anonymous Coward | about a year and a half ago | (#42123669)

As far as OSS, yes, Postgre. My company has used it quite a bit, and a lot of our clients use it (SQL Server is also very common in our client base).

Of course, my company uses Sqlite more than anything else these days, but that's a combination of it being the best option for increasing amounts of our weird niche products these days, and then no central location that makes a good server-based database realistic enough beyond a few applications for the company-wide stuff (or rather, they don't think it's as realistic to give the other applications access at the database servers compared to just having a sqlite file on our file server... but that's a whole 'nother issue). Sqlite is nice, though. Not going to go as far as the likes of Postgre, but it has some nice applications.

Re:Find better prospects? (0)

Anonymous Coward | about a year and a half ago | (#42123739)

I've used Postgres, MySQL & MS SQL. I'd suggest learning Postgres & MySQL. They aren't so different that you're talking night and day. Most OSS languages and platforms support both.

Dabble in both. Your understanding of databases won't suffer, and you'll set yourself up for being able to work on both. Remember, if you know how to find the correct answer and/or syntax to solve your issue, you can work on either one. Platforms, languages, databases, et al are not mutually exclusive.

captcha: flexible

Re:Find better prospects? (1)

jellomizer (103300) | about a year and a half ago | (#42123955)

Postgres is my favorite as well. But in terms of employment. You should have strong database skills and less worry on the tool.

The differences between PostGre MySQL, Microsoft SQL isn't that huge. There are a different set of functions and more advanced features. But those are a google away.

Re:Find better prospects? (0)

Anonymous Coward | about a year and a half ago | (#42123963)

MS SQL Server is a lot better these days, but if you want consistency PostgreSQL is still a safer choice. For example SQL Server will let you do a SELECT FOR UPDATE where you cannot expect it to have exclusive lock on the selected rows, so it is possible that they can change underneath before the end of your transaction. If you try to execute an outer join where the left-side row joined to nothing on the right-side with PostgreSQL, it will throw an error.

MySql and Oracle acts similar to MS SQL Server, while DB2 acts more like PostgreSQL.

Re:Find better prospects? (2)

Kjella (173770) | about a year and a half ago | (#42124237)

I've used Postgres commercially for years, with a number of employers. It's a great DB and having dealt with MySQL, SQL Server, Oracle, et al I'd never go back - though the softies tell me that SQL Server is much better these days.

Feature wise I like Postgres better than SQL Server, intervals, arrays and being able to do all sorts of DDL in transactions is excellent. What seems to be the killer in the places I've seen it is Integration Services - being able to create easy workflows to get data into, out of and between databases. If all I wanted was a database to run an application against, I'd have no hesitation with Postgres. SQL Server has mainly been fighting Oracle and that's like Outlook fighting Lotus Notes, you don't have to be good just less awkward. Oracle can do extreme things but it's hard to administrate, hard to develop for and costs a ton of money. SQL Server is the okay database with fairly easy to learn management / integration / reporting / analytics tools. But if you mostly want to get your hands dirty and write SQL code Postgres is great. The only reason why I'd use SQL is if a web hosting provider offered it, as a backend database? No way.

Re:Find better prospects? (1)

Kjella (173770) | about a year and a half ago | (#42124277)

The only reason why I'd use SQL is if a web hosting provider offered it, as a backend database? No way.

Grr, that last sentence was supposed to say MySQL... redid the sentence, didn't notice.

Postgres (5, Informative)

Anonymous Coward | about a year and a half ago | (#42123099)

It's seeing a constant rise in usage. Also many projects (spacewalk!) have it as the only viable alternative to Oracle.
Small companies with small to mid sized applications use it (see Jira or Fisheye, at Atlassian) as their main development platform.
Also you shouldn't use your USA'ish perspective and only do something because it will benefit your job or future employer. OSS is about sharing, fun, knowlege and getting better. Getting better at your job is a welcome side effect.

use mysql (-1)

Anonymous Coward | about a year and a half ago | (#42123103)

All the stupid shit in that video has no effect in the real world of making money. No one seems to understand this.

Re:use mysql (1)

cheater512 (783349) | about a year and a half ago | (#42123177)

Yeah some of the quirks in that video are like Javascript's ones.
They appear to be major wtf's however real world usage never hits them.

The quality of a product isn't determined by the number of quirky edge cases it has.

Re:use mysql (2)

MrEricSir (398214) | about a year and a half ago | (#42123265)

The quality of a product isn't determined by the number of quirky edge cases it has.

Sure it is. But product quality has little to do with a product's popularity.

Re:use mysql (1)

Anonymous Coward | about a year and a half ago | (#42123307)

With respect, as a Javascript programmer, I can tell you that I hit a lot of WTF moments with Javascript on a regular basis. I'm pretty sure that web forms count as "real world usage"

Re:use mysql (0, Troll)

sexconker (1179573) | about a year and a half ago | (#42123471)

With respect, as a Javascript programmer, I can tell you that I hit a lot of WTF moments with Javascript on a regular basis. I'm pretty sure that web forms count as "real world usage"

With respect, as an actual programmer, I can tell you that "Javascript programming" is a misnomer for "Javascript scripting". I'm pretty sure that web forms don't count as "real world programming".

Re:use mysql (1)

Anonymous Coward | about a year and a half ago | (#42123655)

Maybe no one's bothered to tell you, but these days JavaScript is actual programming. Look at Node.js, for example.

Re:use mysql (1)

Anonymous Coward | about a year and a half ago | (#42123675)

With respect, as a Javascript programmer, I can tell you that I hit a lot of WTF moments with Javascript on a regular basis. I'm pretty sure that web forms count as "real world usage"

With respect, as an actual programmer, I can tell you that "Javascript programming" is a misnomer for "Javascript scripting". I'm pretty sure that web forms don't count as "real world programming".

With respect, as a real actual programmer who has programmed in more than 20 different languages in my 30+ year carrer, Javascript programming is real programming. Your inability to use it for more than just "scripting" is not a failing of the language.

Re:use mysql (1)

Joce640k (829181) | about a year and a half ago | (#42123509)

Wouldn't the perfect resume be, "I'm the guy who fixed MySQL"?

Re:use mysql (2)

ameoba (173803) | about a year and a half ago | (#42123579)

The problems with MySQL aren't bugs, they're decisions. Decisions that can't be reversed for the sake of backwards compatibility.

postgresql (5, Insightful)

silas_moeckel (234313) | about a year and a half ago | (#42123107)

You will probably be happier in the fewer postresql shops. Think about it do you want to get it done quick and dirty or the right way?

Re:postgresql (0)

Anonymous Coward | about a year and a half ago | (#42123547)

Learn to use punctuation

Re:postgresql (0)

Anonymous Coward | about a year and a half ago | (#42123853)

He like things quick and dirty.

Re:postgresql (-1)

Anonymous Coward | about a year and a half ago | (#42123941)

Doing it the right way with postgres, is impossible due to data size, performace, and server price requirements.

So if you do the things the right way, you either have a small data set, poor performance, or spend way too much money.

If you are an active member (5, Interesting)

Anonymous Coward | about a year and a half ago | (#42123117)

If you are an active member committing to a major database's code, then it will help your employment prospects no matter what. If you're committing to PostgreSQL regularly, that's strong evidence you are good at what you do.

Video (0)

Anonymous Coward | about a year and a half ago | (#42123119)

I don't want to WTFV. Does anyone have a transcript, so I can RTFA instead?

In other words, "what is wrong with MySQL?", and please give your answer in text form.

Re:Video (2, Interesting)

JonySuede (1908576) | about a year and a half ago | (#42123173)

Oracle

Re:Video (2)

frostfreek (647009) | about a year and a half ago | (#42123243)

The video shows a number of ways that MySQL seems to insert questionable data; ignoring NOT NULL, inserting default values when no default is specified, etc...

There are two databases that I have had to repair... Hypersonic and MySQL. MySQL I have to repair regularly in my MythTV box. Hypersonic states it should not be used in a production system. I have never had to repair Postgres, MSSQL, or Oracle.

Re:Video (1)

vlm (69642) | about a year and a half ago | (#42123425)

MySQL I have to repair regularly in my MythTV box.

What are you doing, that I'm not? I have a heavily used system for 8 years or something like that and have never had to repair it.

Re:Video (1)

jedidiah (1196) | about a year and a half ago | (#42123537)

Power outages perhaps?

MySQL is bad about dealing with unreliable hardware or power.

It has poor defaults in this regard that seem to indicate a culture that values performance over integrity. That kind of thing tends to turn off a lot of RDBMS users.

Re:Video (0)

Anonymous Coward | about a year and a half ago | (#42123603)

They could always enabled strict_all_tables and things like ignoring NOT NULL and so on will not happen. I will note that Postgres also inserts a default value of NULL (same as MySQL) when no value is given and the column has no default value.

Re:Video (1, Insightful)

Anonymous Coward | about a year and a half ago | (#42123935)

I will note that Postgres also inserts a default value of NULL (same as MySQL) when no value is given and the column has no default value.

So if the default value is NULL then Postgres uses NULL as the default? SHOCK AND FUCKING HORROR. If that's the only "complaint" you can make about Postgres then it's basically perfect.

Re:Video (2)

19thNervousBreakdown (768619) | about a year and a half ago | (#42123819)

I'm curious if those are still actually existent in >=5.0. I know I started avoiding MySQL in the bad old days, but from what I understand it's made a lot of strides in the conformance department.

I haven't bothered to look at it again since then, since Postgresql meets all of my needs, but I am curious. It can't still be that bad, can it? I can see all the bad old behavior being hidden behind default for legacy users, that's reasonable, but silent data corruption (and whether you're truncating strings or inventing dates when you hit NULL, you're corrupting data) doesn't seem like something people would put up with these days.

Re:Video (0)

Anonymous Coward | about a year and a half ago | (#42124067)

I actually ran into MySQL ignoring my NOT NULL also the other day and was puzzled as to why.

If "employment prospects" Are All That Matter ... (0)

l0ungeb0y (442022) | about a year and a half ago | (#42123143)

I recommend setting yourself about fixing some of that long list of fundamental flaws in MySQL. To potential employers it will show that you are a good little worker bee who can set aside personal preferences and feelings to endear himself to corporate drudgery.

A win/win in your case if you ask me -- I see a shared cube and a long task list of bug fixes in your future.

Re:If "employment prospects" Are All That Matter . (4, Informative)

vlm (69642) | about a year and a half ago | (#42123341)

I recommend setting yourself about fixing some of that long list of fundamental flaws in MySQL.

Traditionally, especially in 2012, this amounts to listing stuff like "doesn't have transactions" which was fixed back in Bush the Second's first term.
Shoveling thru obsolete FUD to find the truth is a harder job than you'd think, which also shows "good little worker bee" stick-to-it-ive-ness

Re:If "employment prospects" Are All That Matter . (2)

h4rr4r (612664) | about a year and a half ago | (#42123501)

Does it still silently drop data that does not match the expected input?

Can you easily delete a table with foreign keys yet?

I am sorry if I don't keep checking to see if they finally fixed based problems. Way easier to just use postgres.

Re:If "employment prospects" Are All That Matter . (3, Insightful)

Anonymous Coward | about a year and a half ago | (#42124021)

If employment prospects are all that matter, stay away from the major SQL databases. They're mostly feature complete, have large established developer communities that are hard to break into (sometimes requiring employment at the sponsoring company) and often have a lot of legacy baggage that limits what you can accomplish.

Meanwhile, in the NoSQL world, people are busy re-inventing the wheel. You can take decades-old techniques and apply them to new features of these databases. For example, Redis doesn't have true clustering support. There's a preliminary draft and some exploration, but it's still really nascent. If you've got the DB chops to implement it and do it well, there's a ton of places that would hire you.

The downside is, of course, that you end up working with NoSQL databases, but your employment prospects to actual work and knowledge ratio is a lot higher.

SQL Fairy (0)

Anonymous Coward | about a year and a half ago | (#42123149)

http://sqlfairy.sourceforge.net

Not sure what the status of the project is, but it's a noble cause.

Re:SQL Fairy (2)

Anonymous Coward | about a year and a half ago | (#42123321)

Their logo is awesome.

Re:SQL Fairy (1)

c0lo (1497653) | about a year and a half ago | (#42123411)

Their logo is awesome.

Nope. For awesome, it should wear boots and you gotta believe me, I tell you no lies.

Re:SQL Fairy (2)

vlm (69642) | about a year and a half ago | (#42123391)

0.11016 was uploaded six weeks ago, its not dead.

Its VERY popular internally to auto-generate DB diagrams from midnight cron jobs etc. I'm sure there's other ways to do it. But this was easy, fast, and the diagrams look good enough.

It can do a lot more than generate diagrams.

What it needs is a new artist. The dude in a tutu as a logo...

Hierarchical, er "NoSQL", DBs? (1)

xxxJonBoyxxx (565205) | about a year and a half ago | (#42123159)

>> Any suggestions?

Hierarchical DBs have been making a comeback recently, often reclothed as "NoSQL" databases specializing in "big data" analysis. There seem to be many opportunities to make these databases more applicable to current problems or just easier for relational DBAs to understand and implement.

Re:Hierarchical, er "NoSQL", DBs? (1)

Trepidity (597) | about a year and a half ago | (#42123249)

Or even, in some cases, to just work better in the regular bug-fixing kind of way. They're much newer and less well-tested on average, so there's a ton more low-hanging fruit than with Postgres.

Re:Hierarchical, er "NoSQL", DBs? (0)

Anonymous Coward | about a year and a half ago | (#42123273)

Take a look at Cache or one of the PICK like databases. If you understand those you will always get work simply because everyone else is applying for the relational DB jobs.

Re:Hierarchical, er "NoSQL", DBs? (2, Insightful)

vlm (69642) | about a year and a half ago | (#42123287)

Nosql DBs suffer pretty bad from Inner platform effect, where the users end up implementing their own classic SQL-RDBMS on top of the nosql. "I don't have joins... well I'll write on in ruby". You could probably do the community a huge service by PROPERLY re implementing at least a API compatible mysql system on top of a variety of various nosql services. That way devs could be buzzword compliant, while not actually having to change anything (well, the sysadmins will throw fits at the change for sake of change, but no one cares about them)

http://en.wikipedia.org/wiki/Inner-platform_effect [wikipedia.org]

The ones that don't inner-platform aren't really using them as "databases" so much as simple persistent stores. Like dumping data into a CSV file. Maybe persistent stores with advanced parallelization, but just persistent stores.

Step One: Lose the Ego (1)

Anonymous Coward | about a year and a half ago | (#42123161)

Maybe I'm reading what you're asking wrong, but I mean really, your base assumption of joining an OSS database project is to lend your self-admitted rusty expertise? No thanks.

If you want to get up to speed join a site like Stack Overflow and start ploughing through database questions, it'll exercise your brain and probably help some people who need it.

Then when you are in the groove again join a project.

Welcome to Life (2)

SledgeHammerSeb (520650) | about a year and a half ago | (#42123163)

Only you can answer that question. Good luck!

MariaDB (4, Informative)

jakimfett (2629943) | about a year and a half ago | (#42123187)

You might want to take a look at MariaDB [mariadb.org] , it's a continuation of the MySQL project by the original author of MySQL.

Salesforce.com is hiring PostgresSQL guys like mad (5, Insightful)

echtertyp (1094605) | about a year and a half ago | (#42123203)

I actually love MySQL, but FWIW, someone noted a while back that Salesforce.com has announced intent to hire about 50 top gun PostgreSQL guys in the coming year. It seems obvious that they are preparing to unhook the money siphon leading to Oracle. Assuming Salesforce follows through, all the herd-following executives in the U.S. will want to do the same. So I predict that demand for PostgreSQL talent will be pretty good for many years.

Thinly veiled stab at MySQL (0)

Anonymous Coward | about a year and a half ago | (#42123213)

Seriously? This is what passes muster for an Ask Slashdot these days? "Hey guys, I think MySQL sucks and Postgres rocks. Give me a job?"

Re:Thinly veiled stab at MySQL (1)

GingerDog (907579) | about a year and a half ago | (#42123277)

I couldn't help but think the poster/story was just looking to ignite the normal PostgreSQL vs MySQL comments.

Re:Thinly veiled stab at MySQL (5, Informative)

DoofusOfDeath (636671) | about a year and a half ago | (#42123449)

Actually I wasn't. I figured the /. crowd might have some knowledge about the relative acceptance and prevalence of the two databases in European business settings, and where things are moving.

For example, if the consensus was that PostgreSQL was so rarely used that it was a dead-end, then I'd suck it up and work on MySQL despite my misgivings.

But as long as PostgreSQL is showing some signs of life in a business setting, I'll perhaps try to pitch in on that.

I also figured that maybe there was some other up-and-coming database out there that I should take a look at. The /. community is good at bringing alternatives like this to light.

As far as flames, I should have been clearer about what I meant by "design flaws". I realize that it's somewhat subjective. What I should have said is that MySQL's behavior strikes me as a lot more surprising in some cases than does PostgreSQL's, and I didn't think that was going to chance. (Probably in a similar vein, I like strongly typed programming languages and compile-time correctness checks. I think it's a mindset kind of thing.)

Re:Thinly veiled stab at MySQL (2)

TheSpoom (715771) | about a year and a half ago | (#42123543)

While you're at it, do me a favor and add "ON DUPLICATE KEY UPDATE" to Postgres. (If necessary, also add it to an SQL spec.) Thanks!

Re:Thinly veiled stab at MySQL (1)

arkane1234 (457605) | about a year and a half ago | (#42123359)

Everyone knows the right answer is Couchdb... right guys? ... right? ... Hello?

What not to do (0)

Anonymous Coward | about a year and a half ago | (#42123285)

Don't go into either/any project as a new contributor with the attitude "you're doing it all wrong!" - MySQL may have some shortcomings, but if you determine that it's popular enough that you decide to contribute to it, it's good to start by making incremental changes and fixing existing bugs rather than trying to tackle what you see as the project/product's shortcomings.

If you go in with the attitude "I don't respect your project" or "you're doing it all wrong", expect not to be accepted by the community and also that you won't have much fun. OSS projects are a meritocracy (generally), and you have to start at the bottom, no matter how good you think you are. Your own opinions of your skills don't matter - what matters is that you impress those who run the project enough to have your voice merit being heard.

Postgres, Ingres, NoSQL (1)

dgatwood (11270) | about a year and a half ago | (#42123291)

I'm attracted to the robust correctness requirements of PostgreSQL, but there don't seem to be many prospective employers using it.

Apple is using it (in their Server OS, anyway), so that's one big Postgres-using prospective employer that's worth noting.

As for other Open Source databases, there's also Ingres and all the various NoSQL databases.

Big Data (1)

elliot.mackenzie (853463) | about a year and a half ago | (#42123295)

The real money these days is in Big Data, not RDBMS. If you are just starting out now, start with what's still big in five years, not what was big five years ago.

Re:Big Data (1)

sexconker (1179573) | about a year and a half ago | (#42123541)

The real money these days is in Big Data, not RDBMS. If you are just starting out now, start with what's still big in five years, not what was big five years ago.

"Big Data" is horse shit.
It's code for "stuff it all in a pile and maybe someday we can get some of it out, but not in any order that makes sense, and not in any reliable fashion".

Re:Big Data (2)

elliot.mackenzie (853463) | about a year and a half ago | (#42123691)

"Big Data" is horse shit. It's code for "stuff it all in a pile and maybe someday we can get some of it out, but not in any order that makes sense, and not in any reliable fashion".

The problem with arguments like this is that it overlooks the fact that there is a lot of value in data that doesn't need ordering in advance, and where any missing gaps in data are not critical failures. Not all data can or should be stored in such systems, but for that which can, there are much better ways to store it than RDBMS. RDBMS isn't going away, but it's certainly been commoditised. In time, so will Big Data type storage, but until then it's a good thing to make good money on if you are starting out in this field precisely because it is relatively new, and also is not going away.

Re:Big Data (0)

Anonymous Coward | about a year and a half ago | (#42123697)

Gosh, guess I should stop using Cassandra for time series data, and forget all the performance gains its given me on huge data sets. Maybe if you organize it like a pile, a pile is what you get?

Re:Big Data (1)

jedidiah (1196) | about a year and a half ago | (#42123573)

"Big" projects tend to limit the size and number of companies that are hiring. You may not actually like the sorts of companies that are in that group. "Big" projects can sound glamourous but often aren't all they're cracked up to be.

God told me (0)

Anonymous Coward | about a year and a half ago | (#42123299)

MySQL is better than Postgres

PostgreSQL. (1)

astro (20275) | about a year and a half ago | (#42123311)

I'm happily surprised to see that all the early comments are in support of PGSQL, with brief anecdotes to back it up. I 100% agree - even if your future hopeful employer uses MySQL (which has actually matured a great deal), everything you learn in PGSQL will teach you the underlying theory of WHY good databases are good. You can apply that to any roughly SQL database. Further, PGSQL is even closer to zero-cost than MySQL, in spirit. So, if you have to go up against beancounters advocating for your software, it still looks really good.

Pgsql (1)

Anonymous Coward | about a year and a half ago | (#42123323)

I work in a company in the growing wave (from single digit employer number to two digit, from two digits paying customers to 1000+) and we have choose PgSQL this summer after internal six months review between Oracle, Pgsql, MySql, two NoSQL. We liked PgSQL robustness, developing model, (enough) wide usage and other things which could start a flame here (like performance) and also for the decent offer of commercial third party support.

As every day user and admin I personally dislike some clues (like the 'philosophical' view about HINTs) but after some months of production usage (and some years spent with MySQL in past jobs) I would go for PgSQL again. Yes, it lacks mm replica but even for the most optimistic growing rate we are ok with this.

The developers planned mm replica in the next couple of years: what about giving a look at it ?

Re:Pgsql (1)

DoofusOfDeath (636671) | about a year and a half ago | (#42123521)

Thanks, that's very good to know.

Badmouthing MySQL? So brave! (0)

Anonymous Coward | about a year and a half ago | (#42123349)

-1, flamebait.

Re:Badmouthing MySQL? So brave! (1)

DoofusOfDeath (636671) | about a year and a half ago | (#42123499)

It was unintentional. My apologies. It would have been fairer to write that I find MySQL's behavior surprising, and am attracted to working on databases that have behavior that's more in line with what I'd expect.

The video I linked to is what convinced me that MySQL behaved in ways I don't like. I prefer system designs that kick and scream when something bad is entered. MySQL seems geared towards letting some operations succeed and just using defaults, in cases where I would prefer a loud error report.

There are lots of postgres employers (1)

h4rr4r (612664) | about a year and a half ago | (#42123363)

I have used it at several employers and know of some hiring right now.

Most of these jobs end up filled with people who are used to other DBs though, since candidates are so rare.

data errors (0)

Anonymous Coward | about a year and a half ago | (#42123379)

Mysql tries to operate with existing code written under various assumptions. It as modes to control things like null data. There is a strict mode if you prefer that. This isn't carelessness with your data, but practical tradeoffs on how to be the most useful.

Go to NewSQL (1)

tnn_dk (933235) | about a year and a half ago | (#42123401)

From what I can see in the market, the most interesting would be either VoltDB(H-Store is open) or NuoDB (closed). But after reading the initial paper on Hana (SAP), I could definitely see the purpose of a database with elastic capabilities NuoDB with the database engines from both H-Store (Relational in-memory), C-Store (Column disk) and an object/document storage. Right now everybody is installing three different types databases in their environment, because each are the most performant for their type of application. It's a great technology landscape however, very exciting to follow.

Trolololol (0)

Anonymous Coward | about a year and a half ago | (#42123429)

This is post is just a troll to promote postgres. Even the video has comments disabled to prevent any real discussion on the topic. Boring.

Forking and free software (1)

luckymae (2691983) | about a year and a half ago | (#42123435)

As if working without getting paid producing free software isn't bad enough, you have these wannabe who forks stuff and claim it as their code. Like Mambo and Joomla, B2Evolution and Wordpress, Ubuntu and Redhat. I'm sure writing OSS software is a very profitable way of making a living, much better than writing closed-source software!

"respect" is a curious term. (1)

Alex (342) | about a year and a half ago | (#42123437)

Do you think anyone who works with Oracle respects it ? This doesn't stop them earning a pile of cash though.

Stop being a prima donna and pick the one with the best employment prospects.

Alex

Re:"respect" is a curious term. (1)

DoofusOfDeath (636671) | about a year and a half ago | (#42123611)

I see your point, but the reason I asked /. is because I'm hoping it's not an either/or proposition. So I was looking to find out why MySQL is less problematic than I see it as, and/or why PostgreSQL is more used than I realized, or if there's some other DB I should be thinking about.

Re:"respect" is a curious term. (0)

Anonymous Coward | about a year and a half ago | (#42123857)

MySQL is "less" problematic than you see it as because most users of it don't understand databases - at least early on, then when they have figured it out their project is too established to change.

MySQL certainly could do with the help ;-) and you'd certainly get gigs using it, but really if you want the respect due to someone who understands relational algebra, functional determinants, ACID, etc then go for PostgreSQL and you'll be happier day to day not bashing your head against the desk dealing with MySQL and its adherants.

Not looked into the stae of the art of PG replication recently but there's probably stuff that could still be done there.

Re:"respect" is a curious term. (2)

abirdman (557790) | about a year and a half ago | (#42123921)

Oracle, the database and connection software is quite respectable. The problem with Oracle is the organization which sells and services it. They like to "partner" with their customers, and comport themselves like a criminal enterprise. They send auditors to their customers' sites to ensure license compliance (meaning shake-down money for Larry Ellison). Training is expensive, but so are trained Oracle specialists. They're risking ruining Java with slow updates, and MySQL development seems to have slowed-- probably a good thing. Larry Ellison doesn't really get open source.

There are many Oracle-like features in PosgreSQL, so it's helpful to learn, but here in the US, Oracle work pays very well-- probably the best in the industry. I don't know how many of those jobs are available. I do know there's some foreign competition, both from Europe and Asia. The company I work for has some excellent DBAs from India monitoring our servers.

Post is troll for a video (5, Informative)

Animats (122034) | about a year and a half ago | (#42123451)

The post is basically a troll for a video. The video is based on an old list of MySQL 4.x gotchas, [sql-info.de] many of which were fixed in the 5.x series. Most of them involve things like the semantics of NULL in special cases, truncation of indexed strings with trailing spaces, and similar stuff that an application shouldn't be relying on. There's a comparable list of PostGreSQL gotchas [sql-info.de] from the same source.

MySQL has political problems, because Oracle owns it and would prefer users buy their commercial products. The future of the free version is uncertain. The problems in the video aren't the ones to worry about.

Re:Post is troll for a video (2, Informative)

Anonymous Coward | about a year and a half ago | (#42123615)

There's a comparable list of PostGreSQL gotchas [sql-info.de] from the same source.

Only if "comparable" is code for "far shorter and less severe, with a greater percentage having been fixed in current versions".

Re:Post is troll for a video (4, Interesting)

DoofusOfDeath (636671) | about a year and a half ago | (#42123631)

I didn't mean it as a troll, but thanks very much for pointing out that some of the video's issues are fixed in MySQL 5.x.

PostgreSQL IMO (1)

GodfatherofSoul (174979) | about a year and a half ago | (#42123549)

If you need a database, use one that tries to be ACID compliant first, then efficient second. Not the other way around. When your database model starts getting more complicated as does your skill set, you'll be thankful later.

If the criteria... (1)

Lab Rat Jason (2495638) | about a year and a half ago | (#42123551)

...for working on a project contains the phrase "must be perfect", then why would the project need you? As has already been stated above: Your employer's code base is likely to suck orders of magnitude more than MySQL does, and they are probably looking for people less "high and mighty."

I wish postgres would just die already (-1)

Anonymous Coward | about a year and a half ago | (#42123561)

I am so tired of hearing about PostGres. I am reminded of Austin Powers saying "why won't you die?" Postgres has been popping up for the past 10 years in discussions like this. Give up. Use something with market share.

Fundamental Design Flaws (1)

skelly33 (891182) | about a year and a half ago | (#42123571)

I beg to differ - it's all a matter of philosophy. Do you want something that's a stubborn mule of a server that fights your every attempt to get something done, or would you prefer something that is more forgiving and let's you later discover your own personal logic flaws with a, "haha! whoops! There, fixed!" moment? The video for me only serves to further reinforce the reason I use MySQL. For one thing, I have never made any of the bone-headed programmer errors that the host illustrated, but I appreciate the way MySQL handles "strange" situations gracefully. My guess is that this has allowed Google to fill itself up with far more useful pages that have content on them than pages with an obscure error code because of yet another strict condition being broken with Postgres.

Postgres (2)

bradinthehouse (1054328) | about a year and a half ago | (#42123605)

http://en.wikipedia.org/wiki/Michael_Stonebraker [wikipedia.org] Have a look at what he's done with Postgres, Vertica, VoltDB, and the other systems he's working on. You may find that contributing to this project aligns you with some great, very intelligent people -- that's opportunity for learning, opportunity for contributing, and opportunity for good networking.

Embedded PostgreSQL (1)

Anonymous Coward | about a year and a half ago | (#42123635)

PLEASE PLEASE PLEASE -- build a good _embedded_ SQL DB. Specifically, please modify Posgresql so that it can run on a cell phone or other embedded device. Postgresql is the right choice but the developers are entirely focused on big iron. The most common solution is to use SQLite with a custom front end. SQLite is a great library but it is less than ideal in embedded system that need DB access from several running programs.

How about fixing MySQL? (1)

Anonymous Coward | about a year and a half ago | (#42123687)

It seems to me that if there are so many flaws with MySQL, perhaps that would be a good place to become an important contributor! Imagine walking into a job interview and explaining how you have fixed several major flaws in MySQL...that would look much better to a hiring manager than simply having updated some online help file or other trivial tidbit left over in PGSQL. Just my $0.02.

Invalid Assumptions (1)

rjstanford (69735) | about a year and a half ago | (#42123711)

You write: "I've done a good bit of SQL development / tuning in the past. ... My problem is choosing which OSS DB to help with."

That's akin to saying, "I've done a good bit of SCCA track racing in the past. My problem is choosing which engine builder to intern with." Or even, "I'm an amazing, although out-of-practice chef. Should I work on enhancing Viking or Maytag gas ranges?"

Using a database (or any product) very effectively often has little or not translation into working on the guts of the product.

Re:Invalid Assumptions (1)

Emunix (135320) | about a year and a half ago | (#42124261)

Using a database (or any product) very effectively often has little or not translation into working on the guts of the product.

However, knowing how to use a product effectively is one of the keys to writing useful documentation.

How about NoSQL database systems? (1)

twasserman (878174) | about a year and a half ago | (#42123763)

Not to take anything away from PostgreSQL and MySQL (and their forks), but these are mature systems with extensive communities and a very complex code base. If you want to learn the architecture of a new class of open source database systems, as well as to have the opportunity to make a significant contribution to a project, then you should consider joining a NoSQL project, such as Neo4j or MongoDB.

PostgreSQL FTW (1)

I+AOk (2264416) | about a year and a half ago | (#42123957)

Like others said, PostgreSQL.

I won't think of using any other DB.

-ié

Postgres is widely used in business (0)

Anonymous Coward | about a year and a half ago | (#42124029)

While MySQL has all the hype in open source projects and hosting companies my experience is that a great many companies are using Postgres instead - particularly those with a decent development and operations side to the business.

MySQL, PostgreSQL not the only options (0)

Anonymous Coward | about a year and a half ago | (#42124077)

Kinda missed mention of Firebird (the one that took the name before the browser), for example. There's probably a few more. sqlite is a bit of a developer's darling too.

Plenty of "NoSQL" options, though those tend to the "we want speed, so we drop ACID" only to find that various parts are so valuable that the users reinvent them in their applications.

There's also object databases. I can't quite recall its name, but there was one originally used for storing dna sequences of some flatworm or other. Plenty of the support scripts were in csh, and it was all-around academic code, so plenty of room for improvement. If you like that sort of thing, knock yourself out.

Though I have to say I dislike the "let's go 'contribute' so I can fill up the old resume and get laid^Wa job". You don't contribute to a project because of your job prospects. You contribute because you genuinely think it's fun to do and hopefully you know something about the subject, too. Of course you'll learn stuff, but you have to have something to bring to the project too. This often enough enables making money with your hobby, which can be great. But the way you're approaching it is bound to end in tears. So don't go about it that way.

MUMPS (1)

paugq (443696) | about a year and a half ago | (#42124103)

Try GT.M [wikipedia.org] for something different. It's a key-value database, dating back to the 60's, but still hitting hard in healthcare, vets and financial. Great performance. The underlying technology is called MUMPS [wikipedia.org] . Other MUMPS databases (such as Intersystems Caché, closed source) use MUMPS internally, then offer SQL, XML, object, etc layers.

Video is FUD? (5, Informative)

maitai (46370) | about a year and a half ago | (#42124153)

Pretty much all the test cases from that video fail on MySQL if the sql-mode is set to traditional. MySQL will throw an error when data would be truncated, throws an error when you try to insert a NULL value in a NOT NULL column, refuses to alter a table if the existing data would be truncated, throws an error on an invalid date, on select only returns a warning for division by 0 but throws an error on an insert of division by 0, throws an error if you try to insert a string into a numeric column and so on.

I understand of course that the strict modes aren't enabled by default but they're easy enough to enable if you choose to. Via my.cnf, the command line when mysqld is started up or while connected to the mysql server itself (for just that session, or globally for all sessions).

I didn't run through all their examples, but mostly because I got bored and all their examples that I did try were throwing errors (except the select 1/0 one, which issued a warning) with the sql-mode set to traditional on MySQL (postgresql is also a sql-mode option but I didn't play with that one since I've never used it before).

Technology Explorer (1)

Vandilzer (122962) | about a year and a half ago | (#42124267)

<Disclaimer> I am the maintainer of this project and the comments here are of my own and no one else's </Disclaimer>

I run a small project called the Technology Explorer (http://db2mc.sf.net).

The Technology Explorer (TE) is a light weight web based framework for prototyping interactive database applications. Being a flexible and customization interface (think phpMyAdmin meets Drupal or Lego for database administrators), the TE allows for rapid development of UI driven processes and visualizations of database information in hours, whereas tradition processes might take weeks or month. The TE is primarily used as a teaching tool for IBM DB2 users as well as demonstrating and prototyping new interfaces. It is also used as a management consoled across a multitude of databases and database vendors (DB2, Derby, SolidDB, MYSQL and ORACLE (Were just starting to add PostgreSQL support)).

Were always looking for help to expand our library of content for different database vendors. It take a lot of understand of a given DBMS to be able to produce useful material. I would be thrilled if someone would be interested in writing tutorial for other vendors as we are currently mainly focused around IBM DB2.

Well there you have it, my plug. Were a small project, easily accessible, low barrier to entry and contributions and still lots room for growth. If your interested come on over and take a look.

--
Kari: There are a lot of things we really don't want you to try at home!
Tory: Yes, try it at your neighbor's house.

Noseql (4, Insightful)

Donwulff (27374) | about a year and a half ago | (#42124271)

First I should probably burn some karma and say "what a load of garbage". The headline asks what OSS database to HELP with, but the article summary might as well read "Which free SQL-compatible database to learn to use". And on top of that it contains the answer already, along with questionable dirt-showing on MySQL which makes it read like a guerilla-ad for PostgreSQL.

But in any case, it makes a major, huge difference whether the question is "which database codebase to contribute improvements to" or "which free database to learn for best amployment chances". Sounds like it's the latter, and in that case a follow-up question is what kind of employment. The one correct answer is "whichever database your employee is using" - don't expect to be able to choose a job on the basis of what database engine they happen to be using in one of the departments at the time. Second best answer is go with both; and again it makes a huge difference whether it's for self-employed web-site design or financial analysis for stock brokerage firm.

And if you actually went with MySQL, next question is which database engine. Huh, you ask? Well you see, MySQL is not a single database engine, in actuality it's a front-end to pluggable database engines. The stock release fetures at lest MyISAM, InnoDB, Heap, BDB, NDB and Archive (and few variations). In general it's a choice between MyISAM or InnoDB which are whole different story. When most people say "MySQL has such and such problem" they're actually talking about MyISAM, but MySQL has defaulted to InnoDB engine for years.

But the third and best answer is "none of the above". In most cases everybody seeking employment in relevant job will be fluent in SQL and have at least some experience with both MySQL and PosgreSQL, and it'll be rare for the employer to be at all interested in your ability to actually "hack" the database source. NoSQL databases offer ample opportunity to differentiate both on the job-market, and on the business competitiveness arena by improving the source-code (and in most cases as long as the binaries stay in-house, so can the source which makes bosses happy, but consult your OSS license).

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?
or Connect with...

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>