- 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
The entire time I was reading this (until I got to this part), I was thinking they should just bite the bullet and rewrite the entire thing from scratch. It's a lot cheaper.
This reminds of the Scott Adam's Dilbert Principle. The most incompetent employees get promoted to the position where they can do the least damage: Management.
Admin
This I dare say is the difference between software engineer want-to-be's and the real deal. I think the industry in general is plagued by people who "think" or "want" to be software engineers just so they can make the money. I started seeing this in the late 90's when all sorts of people from different occupations flooded the industry. There is a big difference between Engineer and Developer.
I also see this with management. The managers that were real software engineers have a much better understanding of the right way to do things on software projects versus the ones who just want a paycheck and leave at 5.
Bob
Admin
No way. Impossible. Ridiculous. PROMOTED AS A MANAGER?!?! HE CAN'T EVEN SPELL DELETE! If this is true, then this is exactly what is wrong with the world. Incompetence getting rewarded. I'm starting to really hate capitalistic countries. If I were working for this company, I would have bolted in a split second, I don't care how much they would pay me to rework that in .NET. Of course, if it was a contract for 2 years at $1,000/hr, I might be inclined to stay for the collapse ;-).
Admin
<font size="2">I think developer interviews should include a spelling test as well as a test of coding ability. Misspelled variable names are bad enough, but when you have misspelled methods propagated throughout an entire project, it gets to be seriously annoying. My current project is littered with gems like "getDisplaySummery()". Makes me cringe every time I have to call one of them.
</font>
Admin
At least he's consistent throughout the application...the real problem with today's WTF's spelling errors, were the fact that it was two methods, one misspelled and one spelled correctly, did two wildly different things.
I can't spell either, but at least when I misspell something I stick to my guns, and I sure as hell wouldn't have one function misspelled and another one spelled correctly. Today's example seems more like Coding by Committee....
Admin
It amazes me how many companies use VBA "applications". I did some work indirectly for a large telecomm company that starts with a 'V'. Indirectly means I worked for a consulting company that did some work for the company.
This company handled all of its project planning and management with a horrible horrible collection of VBA apps. Anywhere from Excel(which acted as databases) to Access(which acted as the front-end). Yes, I got the order on those right. Somewhere, way in the back-end, there was an Oracle database. We never got to see that though. We were supposed to start working on a rewrite in .NET, but a couple of months after I started there, the project got canned. Thankfully I no longer work for the consulting company, and now work for a sane company that uses Excel for spreadsheets and Access for jokes.
Admin
Bah, get used to it. Us English programmers have been forced to misspell 'colour' and 'centre' for years.
Admin
Was the original developer's name Peter by any chance?
Admin
getDIsplaySummery isn't that bad. We've got code filled with "childs"...
Admin
Are you saying that you would rather work with Oracle than Access?
Bleh, call me a fan boy, but I Like both Access and MS SQL Server FAR better than oracle.
Admin
I wouldn't wait long before giving my 2 weeks notice. If someone created a trash like this he should be responsible for supporting it, I believe.
>> Shapes were stacked on top of each other and then hidden and shown at run time
That reminds me of the hotel system I was working on a couple of years before.........NEVER EVER AGAIN!
>> The original programmer had been promoted as a manager
And nobody quit as of this second? I wonder how much are they getting in this company...
Admin
Well, some people prefer porn to real sex. Same kind of thinking.
Admin
I would have let you go had you said MSSQL by itself, but adding Access is just plain ignorant.
No offense, but a real enterprise developer knows the difference between Access and an enterprise database/UI.
Also acceptable answers:
Postgres, Firebird, MySQL 5 (if you are doing lots of inserts with little transactions), DB2 (as long as it isn't on the AS400)
Unacceptable Answers:
Access, Open Office's Base
These are not databases. Please use the right tool for the job.
Admin
To be honest, I would probably LIKE working with Access better than Oracle. That doesn't mean I ever would though. Access is only appropriate for very small scale applications, or hobby apps. You would never want to have Access as your back end on an application of any decent size.
As for enterprise applications, I'll take MS SQL, Postgre, or Oracle(in that order). As to Yo, who mentioned MySql, that is also nothing more than a hobby database. It shouldn't ever be used for enterprise applications, regardless of the number of inserts, transactions, etc.
Admin
Using an access database is perfectly appropriate for testing and development work. I used an access database to develop a system that eventually used an Oracle or MS-SQL database for the real deal. The access database just acted as an easy and quick stand in where I could fiddle with the database when I needed to do so. And then when development was more or less finished, migrating it to virtually any real database was easy, since I had been forced to not use DB-specific features and since I used ODBC to access the data source in the first place.
Access would be perfectly fine for any system that has a smallish database (under a few gigs) that works entirely on a single computer. For anything where the data moves over the network at any point (or for any major production system), I'd be wary of using Access for anything other than development and testing.
Admin
Umm.. MySQL has come quite a ways, and yes, it's enterprise level. Not the free version, mind you, but you might take a look at http://www.mysql.com .
Admin
I would have fucking quit. [:@]
Admin
.NET? They should promote the whole team.
Admin
Oh goodness no. They are still a toy. Even the version 5.0. I spent some time reviewing it: http://weblogs.asp.net/alex_papadimoulis/archive/2005/10/26/428527.aspx
As far as your comments on using Access on your local machine and SQL Server on your server, you should use SQL Server Developer edition. It's free (I think) -- I know I have like 4 copies of it I keep getting from places. Oracle's is definitely free.
Admin
i looked grammar up in the dictionary but i only found gran'ma... close.
How does the comment link to the function name?
Maybe that's copy'N'paste (TM) to?
Admin
Alex: Checks and triggers? That's it? That all you can find to complain about? Two weird features that almost never get used in a real-world production system?
Most people use databases to, surprise, store and serve up very large amounts of data. MySQL can do that just as well as Oracle, and it's seeing lots and lots of "enterprise" use because of that.
MySQL may be 20 years behind some of the other big name players in the database game, but that's mainly because those big players are 20 years ahead of the actual software being developed for production use.
Admin
Nah, I'm pretty sure it was Brad. I inherited his gems on my last job.
Admin
You are joking, right?
I don't think it has to be very large amounts of data. A database of, say, 100 MB can be quite reasonable - though it easily fits into a pocket PC.
Even plain text files can store "very large amounts of data". But Oracle can do much more, and MySQL - with all its valid uses - is far from matching with the Oracle DB.
I know a lot of systems, built with Oracle, that make use of a number of features only found in the Oracle DB.
Admin
Umm.. MySQL has come quite a ways, and yes, it's enterprise level. Not the free version, mind you, but you might take a look at http://www.mysql.com .
That's as maybe. But for doing the kind of thing Access does well -- quickly developing forms and queries for small, small, small applications with little or no code and thus a low initial cost -- there's just no competition from any of these players. Your choices are packages like FileMaker (ugh), Foxpro (shudder) or PowerBuilder (stab me instead).
I know these are hack database for hack jobs, but Guess What -- nine times out of ten, for small to medium agencies, Access-like tools solve the problem. I don't like it either, but that's the goddamn truth.
Sure, when you outgrow Access there's a brand new problem. But the hope remains that by the time you've outgrown it your budget, requirements and domain knowledge have also grown, to the point where the cost of developing and managing a real transactional database system rather than clinging to a networked-file kludge makes sense.
Incidentally, I'd love to see MySQL and a decent framework replace Access. But by the time it solved the problem, it wouldn't really look like MySQL anymore.
Admin
Imhoff's Law of Bureaucracy - The organization of any bureaucracy is very much like a septic tank - the REALLY big chunks always rise to the top.
my corrolary - so does the scum :)
Admin
Alex: Checks and triggers? That's it? That all you can find to complain about? Two weird features that almost never get used in a real-world production system?
No, no he isn't. I've seen some MySQL based solutions and yea -- there's little data integrity in place there.
Most people use databases to, surprise, store and serve up very large amounts of data.
MySQL can do that just as well as Oracle, and it's seeing lots and lots of "enterprise" use because of that.
Enterprise use <> Enterprise class. Enterprise CLASS denotes a need for robustness and reliability -- the sort of thing you need for your financial records and customer data, but not necessarily your website's cache mechanism. MySQL is quick and cheap to deploy, which makes it perfect for sloppy little apps where we don't care about data integrity -- but keep it the hell away from my mainframe.
Admin
Huh??? Show me a real world production database that *doesn't* use triggers, even if its just for things like auditing, cascading deletes, or enforcing referential integrity. (and yes, I know there are other ways of handling these - but sometime a trigger works best)
Admin
Your post would've been much funnier had you committed the standard sin, and said "I looked grammer up."
[pi]
Admin
Granted that Yahoo runs "Yahoo! Finance" on MySQL. The Associated Press supports 11,000 _concurrent users_ on MySQL. Cox Communication runs MySQL databases with 3,600 tables and 2 Billion rows. (*)
But if you want to do anything _Enterprise_ level, who would rely on MySQL?
Footnote (*): Admitidly taken from MySQL websites. Interpret it as you will.
Admin
> I'd be wary of using Access for anything other than development and testing.
How about using MS-Access (that is not the MS-Jet file) as a front end to a real database server. Seems reasonable to me to make use of the form tools.
Admin
Wow, I have never used a realy-and-truly mission-critical app before that DIDN'T use triggers. They're not the be-all and end-all, but they're incredibly useful, if you're not dealing with web boards. And I can barely think of a real-world production application that doesn't work with checks. Heck, the forum website I run uses checks, and (for reasons that are ultimately silly) I am considering adding a couple triggers.)
Admin
Hehe - this had me cracking up for ages. so true... so true...
Admin
Speaking of the interesting spellings, I worked with a guy who pronounced 'calculate' as 'cac-u-rate'.
Any guesses on how he spelled it in comments?
Answer:
// Cacurate PI to 100 digits...
Admin
No comments about that particular gem? That one has me dying on the inside.
Admin
At least he only misspelled it in the comments and not in variable names. As people mentioned before, if you can't spell, at least be consistent and make the same spelling mistake every time you intend to use that variable.
Admin
I'm calling "shenanigans" on the misspelled comments section!
Some of those spelling errors are believable, but come on, I don't think there is a programmer alive that doesn't know how to spell "delete".
I'm thinking this was doctored up a bit. Too bad there's no ASCII code for a backwards R. :)
Admin
Now there is a parallel I never would have expected. Bravo, ammoQ, bravo.
Admin
I've ever learn that data, logic and ui should be as separate as possible. A database system, to me, is something to store only, and that's it, it's like a container. If you want checks, why don't you put them into the input treatment code? and in the the writedb() too?
Admin
I'm going to venture a guess that he's asian. I can spot "Engrish" from a mile away.
Admin
Once again, you are confusing "enterprise use" with "enterprise class."
Admin
The really only must-have for RDBMS are ACID transactions (which can MySQL do for years). The rest is just about design.
Normal applications have several layers -- at least presentation layer, bussiness logic layer, data layer.
Data layer is responsible for storing and retrieving data, it can check some integrity.
For Oracle, MS SQL etc. you can make data layer from the database server itself, implementing the needed things on server.
For MySQL you would simply have data layer implemented in some normal programming language and you will check constraints on this level, the db server will be visible only to this layer and all applications will connect through this layer (not directly to db!). It's not harder to develop and you can much easily change the db server.
Conclusion: the only problem with MySQL is that Oracle/MS SQL/etc. users want to apply design patterns which work for Oracle and than they are surprised that it doesn't work well. That's true. You must use different (develop new) design patterns.
Admin
Actually, I've never tried to surprise my data. On the other hand, I've often been surprised by data I've come across.
But it's all evolutionary. Before Excel, people used to think that they could use Word Perfect as a database.
Admin
Yeah, because no-one ever misinterprets / messes up / misses off the validation somehow, writes a stored procedure with bugs, runs SQL that'll result in bad data or feeds in data that's somehow invalid; hell, that's why I don't bother with referential integrity, I mean it's only storing data and I can check it in my higher tier.
Admin
VBA is the bane of programmers. I admit I have developed ""applications"" in Access with some VBA code on the backend handling some features such as barcode label printing on a seperate printer but in response to adding records to a table. However I quickly moved the data from Access to MySQL server, which in our case works fine, I don't want to use Oracle or MS-SQL, I don't know them and wanted something up now that would run on a PC, yet serve a couple of other PCs.
No as for the bane part of VBA, the system really needs to be rewritten, but because of the stunts I pulled with VBA I don't want to bite the bullet and rewrite a new front-end. Also, as for Access, the report tool is fairly handy, although I'm sure there is a better replacement, but you have to admit, at least Access gives you everything you need in one package, database, frontend, reports, and even a "scripting" language.
Admin
<font size="1" style="font-family: verdana;">
<font size="2">At one point we had both messageReceived() and messageRecieved(), until someone finally went through and corrected them. All together now: "I before E, except after C..."
</font></font>
Admin
It is easy. Just stick a "de" in front of "1337".
Sincerely,
Gene Wirchenko
Admin
MySQL? I dident know swedes could program.
Admin
Yeah...try telling that to google, nasa, ibm...you know...those chumps.
Admin
I swear I know this guy... [:S]
Admin
Well I am consultant who spends most of their working life doing Access jobs, and contrary to your ignorant and foolish beliefs it's quite good at what it does.
Access can be used quite nicely for small/medium inhouse databasing and is one of the nicest reporting tools out there.
Sure if you what a larger system you'll need to get a "real" database, but then you'll need to get a DBA to keep it running propperly and maybe a new server to put it on.
Funnly enough Access still exists as it fills a need in the market.
Of course like any platform there can be atrocities and I've seen my share.