I'm not a C# programmer, but looking at the documentation it looks strikingly similar to java. Is the inclusion of the letter "C" just a marketing gimmick to make C# seem like a C or C++ successor? Seems like that to me. Espically since the non-programmers I talk to are under the impression C# is a C variant.
C has it's problems. You could complain about C all day, the problem is, it's the best thing we have right now. One of the problem with modern languages is, you can't write an operating system in them. One of the problems is half the new languages are scripting perl/python like langauges and the rest compile to byte code. Maybe C would go away if there was a compiled langauge that wasn't largely controlled by one company that produced fast code and was portable. The closest thing to that besides C is C++.
I would compare MySQL 4.1.x to Linux 2.6. Though 2.6 isn't really considered stable yet, if you stress test it and it works for you, there's no reason to hold back.
I don't know why everyone still insists MySQL doesn't support transactions. BDB and InnoDB tables have supported them for awhile, and myisam tables now have transaction support. BDB is more mature though and has been supported by MySQL for quite awhile.
That was the whole point of stress testing it. 5.0 passes MySQL's testing suite and passed mine. It's proxy log analysis software. Roughly 300,000 rows added daily. I inserted a few months worth of logs and compared to original logs to see if there were any failed inserts. MySQL data matched original data exactly. I also stress tested selects, updates, etc. etc.
4.1.x has been out for a long time. New installations should use 4.1.x. 5.0 is also already out. 5.0 was released in 2003. I'm using 5.0 on a new installation. I stressed tested it, benchmarked it, done everything I reasonably could to try and make it crash, drop data, or otherwise behave badly. It had no problems, so I decided to go with 5.0. These features are here. But like I mentioned before, MySQL has always been built for speed; thus it has been slower to implement certain features.
I don't see a problem with companies making money. Espically when it comes to large projects like MySQL. If you make money off your project, shouldn't MySQL AB make some cash too? There seems to be this bitterness against dual licenses on slashdot. Same goes for QT. MySQL and QT are both great software. If you write open source software you can use their software for free, 100% no charge. If your software is closed source and you are trying to make money off of it (also trying to make money off of mysql) MySQL AB folks should be paid for their hard work. It's what makes the world go round.
First off, almost all those things you mention aren't an issue in MySQL anymore. Maybe back in 3.23, but as far as 5.0 and 4.1 go, they've disappeared. MySQL has always been built with speed in mind. It deviates from the SQL standard when necessary and has been slower to implement all of the standard, but! Everything that's implemented is done with speed in mind. So it has a huge speed advantage over almost every database out there.
Also consider this, historically postgre supporters have had a history of omiting problems with it. There have been a lot of Postgre limitations in the past that the postgre crowd has n't exactly been forthcoming with. I compare it to the FreeBSD crowd, many of them are quick to bash Linux, but are also quick to omit their own limitations. Not to say that FreeBSD or Postgre are bad, but don't make your decision of what to use based on slashdot posts.
Not saying just use MySQL either. It really depends on what you need. The reason MySQL has become so popular for the web is it's speed. Each connection also has a very tiny footprint so you can have many connections without a huge penality (for comparasion Oracle uses almost 10 times as much ram for each connection that MySQL).
I'd like to compile a list of what Postgre has omitted over the years to show you why so many people have been burnt by it! The random data corruption was enough to piss off many!
The govt. has uncle fucked us there too. I remember rather recently proposed leglisation that would make commiting a crime and involving encryption to automatically have a stiffer sentence.
Pick any group of gamers. For every single one, they have a golden age of gaming. Talking to my young friends, they think the golden age of gaming was 5 years ago. My friends, 10 years ago. Older friends, 15 years. Talk to kids in a few years and they think the golden age of gaming is today. You could argue for hours reasons why games are going downhill, but it really just comes down to things are never as good as they used to be.
There isn't a demand for anything like that on linux though. Linux programmers tend to know a few different languages (a couple of high level perl/python like ones, C or C++, bash/tcsh/ksh/etc shell scripting, and sometimes Java) and use what ever one is appropiate for the job (I over generalized, I should say, that's what I do). You know pretty early on what language your program needs to be written in. The problem with just using C# is your still just using one language. You're not using the right tool all the time. It's the same reason I tend to disagree with Sun's attempt for Java to take over the world. You end up driving in a screw with a hammer.
This is really true for all people though. If someone believes something strongly, anything you tell them, they will intrepret it as a confirmation of their beliefs.
It really depends what you are doing. Only use Tie::File if you need your text file in an array. If you need to be able to access lines of the text file out of order and multiple times. If you just need to procees the text file through once then open a file handle and use while. That's the most efficent way to do it and is what you need to do most of the time anyway. Each line is stored in $_. A good example is, I wrote a program that has to enter a 50MB weblog into a database daily. The data needs to be in a form mysql can use so I grab what I want from each line and enter it into the database on the fly. An example of when you'd want to use Tie::File would be if you needed to bubble sort a text file.
Chappelle's show demonstrated it best. The internet was a shopping mall. The legal pay music store was tiny with no selection. The free music was a giant store with a huge selection. Then Dave had some net sex, ashy larry was there too I think.
I've worked with 4 gig text files with perl. It performs the same on 10 megabytes as it does 10 gigs...if you program it properly. The only way I could see you running out of memory is if you read the text file to an array. If you use while (filehandle) it reads the text one line at a time. And perl is written in C...
I don't really see this as flamebait, it's actually an interesting argument...
A lot of it has to do with history. Ever since the dawn of man... well maybe not that long; but for a very long time, any system script that was small was done in the bourne shell. Even today, most of those scripts are #!/bin/sh not #!/bin/bash (to evoke bash's bourne shell compatability mode). So a good deal of it has to do with history.
History aside, bash/bourne shell scripts are very easy to write. Someone can write a useful bash script with only a day's experience of shell scripting.
The old argument was "why take the time and memory to start a perl/python/ruby/etc interpreter..". This argument doesn't really apply anymore. With machines as fast as they are, a 1MB intrepter isn't going to break the bank.
You are correct though, there are many reasons it should be done. and in practice, really the only ones whom script strictly in bash are distributors and purists. If you go on most *nix systems, you'll find lot's of system scripts in the language of the administers choice.
Story about linux is posted, half say closed source is bad, half say it is good, we all agree to have a sexy party. I feel... I feel like I've experienced this somewhere before...
From the breakdown of those prices, the price for the cpu seems to be the one breaking the bank. 134 dollars!?! The crappy low end P4's and Celerons they throw in there are not worth 134 dollars. That's more than I paid for my high end Athlon XP without the OEM discounts they get. I paid about the same for my cpu and my ram. I'd say this is about average for most. This breakdown has cpu's at almost three times the price of ram!!! What kind of bottlenecked systems are they building!?! In real terms of relation, this would mean an Athlon XP 3000+ or P4 2.5 ghz and a stick of 256MB of ram.
I guess it's easier to market a high mhz machine, but I'd much rather have a system with balanced ram and cpu.
In related news, all terrorist data has magically turned into porn, warez, and mp3's
hmmm... that's odd because I've come to know Mozilla as quite fault tolerant. Even supporting IE's non-standard tags...
I'm not a C# programmer, but looking at the documentation it looks strikingly similar to java. Is the inclusion of the letter "C" just a marketing gimmick to make C# seem like a C or C++ successor? Seems like that to me. Espically since the non-programmers I talk to are under the impression C# is a C variant.
C has it's problems. You could complain about C all day, the problem is, it's the best thing we have right now. One of the problem with modern languages is, you can't write an operating system in them. One of the problems is half the new languages are scripting perl/python like langauges and the rest compile to byte code. Maybe C would go away if there was a compiled langauge that wasn't largely controlled by one company that produced fast code and was portable. The closest thing to that besides C is C++.
I would compare MySQL 4.1.x to Linux 2.6. Though 2.6 isn't really considered stable yet, if you stress test it and it works for you, there's no reason to hold back.
I don't know why everyone still insists MySQL doesn't support transactions. BDB and InnoDB tables have supported them for awhile, and myisam tables now have transaction support. BDB is more mature though and has been supported by MySQL for quite awhile.
That was the whole point of stress testing it. 5.0 passes MySQL's testing suite and passed mine. It's proxy log analysis software. Roughly 300,000 rows added daily. I inserted a few months worth of logs and compared to original logs to see if there were any failed inserts. MySQL data matched original data exactly. I also stress tested selects, updates, etc. etc.
4.1.x has been out for a long time. New installations should use 4.1.x. 5.0 is also already out. 5.0 was released in 2003. I'm using 5.0 on a new installation. I stressed tested it, benchmarked it, done everything I reasonably could to try and make it crash, drop data, or otherwise behave badly. It had no problems, so I decided to go with 5.0. These features are here. But like I mentioned before, MySQL has always been built for speed; thus it has been slower to implement certain features.
I don't see a problem with companies making money. Espically when it comes to large projects like MySQL. If you make money off your project, shouldn't MySQL AB make some cash too? There seems to be this bitterness against dual licenses on slashdot. Same goes for QT. MySQL and QT are both great software. If you write open source software you can use their software for free, 100% no charge. If your software is closed source and you are trying to make money off of it (also trying to make money off of mysql) MySQL AB folks should be paid for their hard work. It's what makes the world go round.
First off, almost all those things you mention aren't an issue in MySQL anymore. Maybe back in 3.23, but as far as 5.0 and 4.1 go, they've disappeared. MySQL has always been built with speed in mind. It deviates from the SQL standard when necessary and has been slower to implement all of the standard, but! Everything that's implemented is done with speed in mind. So it has a huge speed advantage over almost every database out there.
Also consider this, historically postgre supporters have had a history of omiting problems with it. There have been a lot of Postgre limitations in the past that the postgre crowd has n't exactly been forthcoming with. I compare it to the FreeBSD crowd, many of them are quick to bash Linux, but are also quick to omit their own limitations. Not to say that FreeBSD or Postgre are bad, but don't make your decision of what to use based on slashdot posts.
Not saying just use MySQL either. It really depends on what you need. The reason MySQL has become so popular for the web is it's speed. Each connection also has a very tiny footprint so you can have many connections without a huge penality (for comparasion Oracle uses almost 10 times as much ram for each connection that MySQL).
I'd like to compile a list of what Postgre has omitted over the years to show you why so many people have been burnt by it! The random data corruption was enough to piss off many!
The govt. has uncle fucked us there too. I remember rather recently proposed leglisation that would make commiting a crime and involving encryption to automatically have a stiffer sentence.
Pick any group of gamers. For every single one, they have a golden age of gaming. Talking to my young friends, they think the golden age of gaming was 5 years ago. My friends, 10 years ago. Older friends, 15 years. Talk to kids in a few years and they think the golden age of gaming is today. You could argue for hours reasons why games are going downhill, but it really just comes down to things are never as good as they used to be.
I'd like to see them stop me from wiping my ass with Rad Racer!!! *blows in cartridge first...*
There isn't a demand for anything like that on linux though. Linux programmers tend to know a few different languages (a couple of high level perl/python like ones, C or C++, bash/tcsh/ksh/etc shell scripting, and sometimes Java) and use what ever one is appropiate for the job (I over generalized, I should say, that's what I do). You know pretty early on what language your program needs to be written in. The problem with just using C# is your still just using one language. You're not using the right tool all the time. It's the same reason I tend to disagree with Sun's attempt for Java to take over the world. You end up driving in a screw with a hammer.
After a long time searching I found these alternative names they considered.
Foot gout
Genital Herpes
Oily discharge
Yeah, but they deserved it, because they say aboot.
thisOneINeedToDoThisBecauseOfThata bleNames
getsFlashesOfJavaProgrammersRefusalToUseShortVari
This is really true for all people though. If someone believes something strongly, anything you tell them, they will intrepret it as a confirmation of their beliefs.
>Porn was a driving force in every single growing means of mass-communication.
That, and lot's and lot's of jizz.
It really depends what you are doing. Only use Tie::File if you need your text file in an array. If you need to be able to access lines of the text file out of order and multiple times. If you just need to procees the text file through once then open a file handle and use while. That's the most efficent way to do it and is what you need to do most of the time anyway. Each line is stored in $_. A good example is, I wrote a program that has to enter a 50MB weblog into a database daily. The data needs to be in a form mysql can use so I grab what I want from each line and enter it into the database on the fly. An example of when you'd want to use Tie::File would be if you needed to bubble sort a text file.
Chappelle's show demonstrated it best. The internet was a shopping mall. The legal pay music store was tiny with no selection. The free music was a giant store with a huge selection. Then Dave had some net sex, ashy larry was there too I think.
I've worked with 4 gig text files with perl. It performs the same on 10 megabytes as it does 10 gigs...if you program it properly. The only way I could see you running out of memory is if you read the text file to an array. If you use while (filehandle) it reads the text one line at a time. And perl is written in C...
I don't really see this as flamebait, it's actually an interesting argument...
A lot of it has to do with history. Ever since the dawn of man... well maybe not that long; but for a very long time, any system script that was small was done in the bourne shell. Even today, most of those scripts are #!/bin/sh not #!/bin/bash (to evoke bash's bourne shell compatability mode). So a good deal of it has to do with history.
History aside, bash/bourne shell scripts are very easy to write. Someone can write a useful bash script with only a day's experience of shell scripting.
The old argument was "why take the time and memory to start a perl/python/ruby/etc interpreter..". This argument doesn't really apply anymore. With machines as fast as they are, a 1MB intrepter isn't going to break the bank.
You are correct though, there are many reasons it should be done. and in practice, really the only ones whom script strictly in bash are distributors and purists. If you go on most *nix systems, you'll find lot's of system scripts in the language of the administers choice.
Story about linux is posted, half say closed source is bad, half say it is good, we all agree to have a sexy party. I feel... I feel like I've experienced this somewhere before...
From the breakdown of those prices, the price for the cpu seems to be the one breaking the bank. 134 dollars!?! The crappy low end P4's and Celerons they throw in there are not worth 134 dollars. That's more than I paid for my high end Athlon XP without the OEM discounts they get. I paid about the same for my cpu and my ram. I'd say this is about average for most. This breakdown has cpu's at almost three times the price of ram!!! What kind of bottlenecked systems are they building!?! In real terms of relation, this would mean an Athlon XP 3000+ or P4 2.5 ghz and a stick of 256MB of ram.
I guess it's easier to market a high mhz machine, but I'd much rather have a system with balanced ram and cpu.