don't want to listen to Dirrty from that slut Christina Agulera (she even looks Dirrty on her album cover. ICK!).
I saw this video and I thought to myself, hmm, another 15-20 lbs evenly distributed, a shower and some nice clothes, and she might be quite attractive...
is the fact that Oracle won't allow benchmarks to be published without their written consent, and of course your not going to get their consent unless your benchmark shows them in a favorable light
No-one does, at least not anyone with a product that you can do a non-trivial amount of tuning to. It would be trivial, if you wanted to, to benchmark a deliberately misconfigured Oracle against a well-tuned MSSQL (or vice versa) on identical hardware to "prove" that one was better than the other. Only a qualified DBA would be able to spot it, if you also published the exact configurations of each system.
MySQL on the other hand is much more open. Maybe that's because they are faster in most situations, or maybe it's because they really do have a better philosophy
It's because there's almost no tuning you can do to MySQL. It's far too simple to be vulnerable to tricks. That might sound like a good thing, but all it means is that the developer made the tuning decisions for you, sure you can change them, but only if you recompile the server! Whereas with a real database, it's easy to have it tuned for OLTP during the day, batch at night, so you don't have to make any compromises.
I think MySQL will eventually be the dominant database for two reasons:
MySQL is in a funny position. It's too simple for real applications (no triggers, no stored procs, only get crude transactions and foreign keys, and even then only with a plugins, etc). But it's too complicated for grandmothers to use for their recipes. I think eventually MySQL will be driven out by SAP-DB, Interbase, PostgresQL etc - free databases that are actually feature-comparable with professional products.
The kinds of problems being attempted 20 years ago were much easier than the ones being done now, much less than the ones we still can't do.
What do most people use their machines for? Editing mostly text documents and sending and receiving email haven't changed much in the last 20 years. Yet somehow people need processors that are orders of magnitude faster to do it. Doesn't that strike you as a little strange?
Re:I find Mac OS X slow
on
Is Mac OS X Slow?
·
· Score: 1, Flamebait
I find it a bit slow, but I consider my hardware marginal.
I have a 500MHz G3 iBook, 384MB RAM, OS X 10.2. It is not really slow, but it is not as fast as my linux machine, a 750MHz Athlon, 640MB RAM, KDE3
What do you mean marginal?! That's an almost ridiculously powerful configuration. 20 years ago there were countries being administered with less processor power than that. It's more processor power than even existed in the world not that long ago. Any software that doesn't fly on that hardware is badly written, full stop.
Re:Slower because of file-based swap?
on
Is Mac OS X Slow?
·
· Score: 1, Troll
Anyone have opinions/stats on the idea that OSX might be slower because of file-based instead of device-based swap? From what little bits I've read/seen, OSX is using a swapfile instead of your typical direct-to-char-device swapdisk. And I do know file-based swap can be slower because it's going through both the filesystem and drive io layers.
It works that way because that's the way NeXTStep did it, and I can tell you for most everyday interactive tasks (light web browsing, editing mainly text documents, ssh to other machines, some compiling), my NeXTstation (33mhz 68040 32M) is just fine.
These kids with their 400mhz G3's and 256M of RAM have absolutely nothing to complain about. You need plenty of power for the very latest games, but not a top end machine because games are written for the most common configuration, not the most expensive possible. The only people who really need power are engineers, 3D animators, and the like. Computers these days are more powerful than the vast majority of users needs, so why not put at least some of that power to use with a fancy GUI?
Well, I have to infer a lot of what you want, but why not just hack on the dhcpd source to make it more scalable? Allow it to automatically process updates of the config file, using some locking method to keep things sane (or check a database that you control, for updates)
Umm, because he's in the ISP business, not the software development business?
Let me give you an example: Boeing probably have some fairly strong ideas about what sort of fuel you should put in their aircraft, but you won't see them operating oilrigs anytime soon.
No, they'll get Shell to do that for them, just as the original poster should get RADIUS/LDAP to do it for him.
Much software is not written to take advantage of the architecture of modern microprocessors. If you rewrite some of your software to take advantage of them, then it is not hard to double your speed.
It's worse than you think on PCs (whatever OS they're running). The article talks about "bus mastering" and "data tenure", but on real workstation-class hardware there is no bus (not even one with a "north bridge") there'a a proper switch, like Crossbow or GigaPlane. These give you point-to-point, non-blocking sustained peak I/O. On a switched system, if components A and B want to communicate they can do so at the switch's full speed, and so can components C and D, no contention at all. That means no wasted cycles for the bus to constantly change ownership.
If you're doing a job that requires heavy use of the "bus" on an x86 system (lots of storage I/O, lots of random memory access hence lots of L2 misses), then optimizing code for cache locality is the least of your problems, you'll never get around the fact that the inefficient design of the hardware itself is the bottleneck. Fancy FSBs and the like are just workarounds and don't address the real problem.
btw - middle tier all the way - what do you do in sql when you want to say, check db value a, based on return of C function b? run home to mom that's what. middle tier promotes code re-use, but it also promotes a _logical_ data schema over the _physical_ data schema which is exactly what putting logic in things like triggers and such in does not do.
Let's say you want to access the same group of tables from multiple places in your application, in different objects running on different hosts written by different people, and you don't have source to some of them. You've got 3 choices:
Write validation code into each object, or insist that the vendor writes it for you
Write a wrapper for all the underlying database objects to do the validation
Use triggers and constraints
Option 1 is just silly - impossible to maintain for all but the most trivial cases. Option 2 adds an additional layer of indirection, hitting performance, it's another layer to test and another point of failure in production, and it's functionally the same as a trigger anyway. Or pick option 3, which has been refined over 2-3 decades in some of the toughest transactional processing apps in the world, keeps all you code in one place, and guarantees integrity even if you can't in your objects.
As an experienced system architect, one of the mistakes I see newbies make all the time is that they think because their tiers are logically distinct, they have to be physically distinct too. In a professional shop, your logical design will be done by a theoretician who doesn't even know or care what the eventual platform will look like, then the physical design is done by a hardcore, grey-haired DBA who's been there and done that on a dozen major projects. The programmers who actually implement it almost always don't see the big picture, because they're the specialists that focus on their own personal bits of the code.
Re:The age old question...
on
SQL Fundamentals
·
· Score: 5, Interesting
It in fact is Postgres-Q-L and My-S-Q-L, but you use "sequel" to query both of those. I haven't seen anyone in a long time pronounce the language name S-Q-L, the names of the two products you mentioned are dictated by their respective developers, so it's a different matter. (incidentally, I'm as far from a Microsofty as it gets)
It is properly S-Q-L because Sequel is something different (Structured English Query Language, an IBM project that never went anywhere). But the term "sequel" for SQL has come into common use, so it's the de facto pronounciation.
Microsoft people just call the product "SQL Server" which IMHO is like calling Windows "Operating System" but it comes from the old days when Sybase and Microsoft cooperated (circa MSSQL 4-6/Sybase 10). Sybase's product was called "Sybase SQL Server", but people just call it "Sybase" (akin to calling Windows "Microsoft"). When they split, MS kept the rest of the name.
You can easily spot a hardcore elite database guru by the fact that these people pronounce it "squirrel".
Re:MySQL gains more users thanks to Apple
on
SQL Fundamentals
·
· Score: 3, Interesting
Let's stop dishing out tens of thousands of dollars a year to Oracle and let's just use this free RDBMS implementation
For the last few years, my career has largely been based on Oracle products, so I have as vested an interest as anyone (save maybe Uncle Larry) in seeing Oracle continue to be the #1 choice for corporate databases, but I've got to say, if you even can run your application on MySQL, you really shouldn't have bought Oracle in the first place, because you've completely wasted your money. Only buy a product like Oracle (or Sybase, DB2, etc) if you know that you need its capabilities. If your application doesn't need subselects, triggers, real transactions, etc, then you might as well use MySQL, or even CSV on the filesystem!
Oh, and the R in RDBMS means "relational". Correct me if I'm wrong, but MySQL needs a plugin to even do foreign keys - you should really say just DBMS.
Something to consider might be what SQL database you will be working with. If you'll be working with either Oracle or Access this book will be helpful. If not, I suggest looking at things like Managing Using MySQL by O'Reilly.
I would suggest not, because you will learn bad habits, and they will be hard to shake once you start working on a real database (Oracle, Sybase, SAP-DB, etc). I have seen MySQL programmers do massively inefficient (and stupid) things like retrieve a list of keys from one table, store them in an in-memory array, then loop through the array executing a select for each key in another table - because they didn't know about subselects. I've seen them put all sorts of redundant validation crap in the middle tier because they didn't know about constraints and triggers. I could go on and on...
If you want to learn SQL, you first need a solid general foundation like this (I have an earlier edition) then later study the extensions that each vendor provides (Oracle PL/SQL, Sybase T-SQL, etc).
I started to look for books, online material and other sources to help define a baseline for the Services Level Agreement for our intended customers.
Host a box at Exodus or Level3 and have a read of the SLA they give you. Beter yet, just call them up and ask for a quote and a salesman to call, no need to spend any of your own money. It's probably copyrighted so you can't just use it for your own customers, but it'll give you an idea of where to start.
The power of large companies, forcing customers in inferior products, stupid EULAS and contracts that are detrimental to their (customer) interests. Think Microsoft here.
The charitable group that Mr. Gates started with his wife, the Bill and Melinda Gates Foundation, is now giving away $1.2 billion a year. Mr. Gates said he was pleased that its first major philanthropic effort, the library project, had helped to narrow the digital divide.
Say what you like about Gates and Microsoft, but the fact remains that in dollar terms, he's done far more for worthy causes than the typical Open Source advocate:
I'm not going to minimize my attachments by giving it all away, though, so you evangelists for a zillion worthy causes can just calm down out there and forget about hitting me up for megabucks. I am *not* going to be a soft touch, and will rudely refuse all importunities.
You might as well as, "Why are/. posters afraid of criticizing Linux?". Because if you do you will be "audited" (modded into oblivion) by the Slashbots, of course!
The number of humans that can outcode GCC is vanishingly small, and even smaller when you have to do keep track of all sorts of parallel dependencies and such.
Yes, that's true, but the number of compilers that can outcode GCC is significant. Sun, SGI, Intel and Compaq/HP/DEC all have far superior compilers than GCC for their own hardware (generating binaries that run over 2x as fast for compute-intensive code). GCC is made for portability, and as such does not exploit many platform-specific performance techniques, particularly not on anything other than x86, where it has many developers working. Is there anyone even working on GCC on the R12000?
If you are going to make chips, you should concentrate your investment on designing and making the chips, not the software. I'm sure they could do another design cycle in more modern fab technology and get much more speed (or lower power if that is the priority).
Back on topic: TransMeta's problem was that they never exploited their code morphing technology in a useful way. Why emulate x86 only, when x86 is ubiquitous? Now if they could handle x86 and also morph Java bytecode into their native instruction set at the same time, then that would be a compelling advantage: full compatibility with legacy applications and no overheads for Java either. They made the classic mistake of going up against an incumbent on its own territory. As Jim Barksdale one said, if you have to fight a shark, be a bear and make sure the fight takes place in the jungle.
I don't know, but would you bet your company on Billy G. deciding to endorse tablets?
He already has. The relationship between MS and Intel is a strange one; they are depeneent on one another to a certain extent, but Microsoft are piqued that Intel actively support Linux also, and Intel face competition from AMD, which they can't even do much about (history: Intel were forced by the courts to license their tech to AMD). If Microsoft could gain leverage over Intel by developing on Crusoe, they just might.
Not if you care about performance. Code compiled with a vendor-written compiler like Forte or MIPSpro can be over twice as fast as gcc's. At present, for example, gcc cannot optimize for the MIPS processor family, but SGI's compiler is finely tuned (remember SGI's bread-and-butter is fast compilation).
Remember, gcc is the lowest common denominator. It'll compile you code sure, but that's all it will do, even with -O2. It might do a little better on Linux/x86 because it is the primary compiler on that platform, but I'd be very surprised if VC++ generated code doesn't outperform it, even allowing for the additional overhead of Win32.
This isn't a criticism of gcc, since performance wasn't its design objective, but it does ably illustrate that Open Source isn't always the solution, and commercial software is often better.
So what will probably happen is MS will rightly be found guilty, they will ignore the remedy
More likely is that MS will ignore the EU court, as most EU members do, and nothing will happen until national governments (most likely the Germans or Spanish, who seem to be the most unfriendly to MS) take an interest.
Unfortunately, they can only scale down to a preset speed (In fact, they can only go to that speed or max, nothing in between). IMO that speed is still too high - 1.2 GHz on my P4-M 1.7.
Are you sure about that? My PIII laptop, rated at 1Ghz does 730 or 500 Mhz on SpeedStep depending on how heavily I'm using it. It's a Dell.
Re:PDF Files arn't easily modifiable.
on
Microsoft takes on PDF
·
· Score: 4, Insightful
XDocs are based around the XML specification. Hence, wouldn't they be easily modifiable?
Let me just see if I understand Slashdot's position on all of this:
MS Office uses a closed, proprietary format and that's bad.
OpenOffice uses XML, and that's good.
Now Microsoft want to use XML too... but that's also bad
So my question to the Slashbots is, will you criticize everything Microsoft does - even if it's something you wanted them to do - just because it's Microsoft? Or is there a serious technical reason that this product is inferior?
Because, y'know, the best product should always get the support of the market. That's why Excel is so popular.
Their engineering culture pretty guarantees that this innovation will keep going.
People said great things about Netscape's engineering-led culture too. A culture where engineers can thrive is an advantage, but what matters at the end of the day is selling products. Nokia came out of nowhere to dominate the industry, just like Netscape in their day, but they're just as vulnerable as any other incumbent now. For example, even Nokia's engineers couldn't prevent the 3G debacle. If someone comes out with a working business model for ubiquitous 802.11b with VoIP, the game changes radically.
I would assume the Cable and DSL companies would be kinda pissed seeing everyone's money go to a wireless ISP with a T3 not through their wired lines. And since they have the bigger bank it means the little guys (dispite their good intentions) can get hurt real bad in battle
I don't think they'd mind a wireless ISP with a T3, because a T3 still costs quite a bit of money. From the perspective of an ISP, a wireless or wired service looks the same if it has a T3, they don't care what happens beyond the router at the ISP itself. What they would object to is running a "community" ISP off of domestic ADSL lines. No matter what your "good intentions", ADSL is as cheap as it is because of calculations done by the telcos of how many potential paying customers there are per exchange. If suddenly there are far fewer paying customers because everyone's piggybacking on a few who do pay (even if those people do give their service away voluntarily) then the price of ADSL will have to go up by a proportional amount. Imagine what happens if instead of 10 paying ADSL customers an telco gets 1 and 9 sharing it - ADSL will have to become 10x more expensive for those that do pay, and then will they be so willing to give it away for free?
The technology works - 512k down is a lot of bandwidth for sporadic network loads like web browsing and reading email (less for streaming video and file downloads, sure). Wireless access points are cheap, 802.11b PCMCIA cards are cheap, DHCP and no WEP means that administration costs are trivial. But the economics don't, and so-called community ISPs are going to kill the goose that laid the golden egg, if they're not careful.
Fast forward to the present. Microsoft Windows, as a platform, is insanely difficult to develop for (unless you are using VB). The learning curve to get started with C or C++ is insane. (eg: COM, COM+, OLE, OLE2, OLEDB, ATL, MFC, ADO, RDO, etc.) Not to mention the cost of getting your hands on Visual Studio.
FUD, FUD, FUD. For a start, most Microsoft developers are using VB. Slashbots may flame them as not being real programmers, but they're as much programmers as those Linux people working in Perl and Python. The learning curve for VC++ is no steeper than the learning curve for gcc, but VC++ has a lot of stuff to help newbies that gcc doesn't, like code-writing wizards. MFC is certainly no more difficult than say Motif. And the plethora of APIs where have I seen that before? Look at the arguments between the KDE and GNOME camps for desktop applications. And C# is about as easy (or difficult) to learn as Java.
Yes, Visual Studio Enterprise is expensive, but corporates pay for it; if you're a student it costs about $25. You can get a command line development kit including compiler and VM for.NET for free.
Linux, on the other hand, is easy to develop for. The tools are free, the compiler is free, and getting your code up and running is as simple as make, make install.
Developing is not the same as installing, my friend. After all, installing on Windows is as simple as double-clicking SETUP.EXE. I reiterate: writing a C or C++ GUI application is no easier on Linux than it is on Windows (and writing a tcl/app on Linux is no harder than writing a VB app on Windows).
Also, Java never worked out on Windows. Even with the WFC extentions, Windows developers never used it to code Win32 apps.
No, but Windows is the most common platform for developing Java applications.
Windows is dead..NET lives.
You're completely right. It's just like when Win32 replaced Win16. And we all know how that turned out.
I believe Microsoft will give away their operating system but will NEVER give their source code up. 3rd party companies would clean up and make their OS more efficient than Microsoft's bloated version, creating competition that Microsoft doesn't need. However, would Microsoft lose their footing in the OS department if other companies were releasing their own versions of Windows?
We have a case study of a sophisticated, commercial close source product being released to the open source community: Mozilla. Read what someone intimately involved with the project has to say here and here. (Summary: progress has been slower and quality lower than he ever expected).
don't want to listen to Dirrty from that slut Christina Agulera (she even looks Dirrty on her album cover. ICK!).
I saw this video and I thought to myself, hmm, another 15-20 lbs evenly distributed, a shower and some nice clothes, and she might be quite attractive...
is the fact that Oracle won't allow benchmarks to be published without their written consent, and of course your not going to get their consent unless your benchmark shows them in a favorable light
No-one does, at least not anyone with a product that you can do a non-trivial amount of tuning to. It would be trivial, if you wanted to, to benchmark a deliberately misconfigured Oracle against a well-tuned MSSQL (or vice versa) on identical hardware to "prove" that one was better than the other. Only a qualified DBA would be able to spot it, if you also published the exact configurations of each system.
MySQL on the other hand is much more open. Maybe that's because they are faster in most situations, or maybe it's because they really do have a better philosophy
It's because there's almost no tuning you can do to MySQL. It's far too simple to be vulnerable to tricks. That might sound like a good thing, but all it means is that the developer made the tuning decisions for you, sure you can change them, but only if you recompile the server! Whereas with a real database, it's easy to have it tuned for OLTP during the day, batch at night, so you don't have to make any compromises.
I think MySQL will eventually be the dominant database for two reasons:
MySQL is in a funny position. It's too simple for real applications (no triggers, no stored procs, only get crude transactions and foreign keys, and even then only with a plugins, etc). But it's too complicated for grandmothers to use for their recipes. I think eventually MySQL will be driven out by SAP-DB, Interbase, PostgresQL etc - free databases that are actually feature-comparable with professional products.
The kinds of problems being attempted 20 years ago were much easier than the ones being done now, much less than the ones we still can't do.
What do most people use their machines for? Editing mostly text documents and sending and receiving email haven't changed much in the last 20 years. Yet somehow people need processors that are orders of magnitude faster to do it. Doesn't that strike you as a little strange?
I find it a bit slow, but I consider my hardware marginal.
I have a 500MHz G3 iBook, 384MB RAM, OS X 10.2. It is not really slow, but it is not as fast as my linux machine, a 750MHz Athlon, 640MB RAM, KDE3
What do you mean marginal?! That's an almost ridiculously powerful configuration. 20 years ago there were countries being administered with less processor power than that. It's more processor power than even existed in the world not that long ago. Any software that doesn't fly on that hardware is badly written, full stop.
Anyone have opinions/stats on the idea that OSX might be slower because of file-based instead of device-based swap? From what little bits I've read/seen, OSX is using a swapfile instead of your typical direct-to-char-device swapdisk. And I do know file-based swap can be slower because it's going through both the filesystem and drive io layers.
It works that way because that's the way NeXTStep did it, and I can tell you for most everyday interactive tasks (light web browsing, editing mainly text documents, ssh to other machines, some compiling), my NeXTstation (33mhz 68040 32M) is just fine.
These kids with their 400mhz G3's and 256M of RAM have absolutely nothing to complain about. You need plenty of power for the very latest games, but not a top end machine because games are written for the most common configuration, not the most expensive possible. The only people who really need power are engineers, 3D animators, and the like. Computers these days are more powerful than the vast majority of users needs, so why not put at least some of that power to use with a fancy GUI?
Well, I have to infer a lot of what you want, but why not just hack on the dhcpd source to make it more scalable? Allow it to automatically process updates of the config file, using some locking method to keep things sane (or check a database that you control, for updates)
Umm, because he's in the ISP business, not the software development business?
Let me give you an example: Boeing probably have some fairly strong ideas about what sort of fuel you should put in their aircraft, but you won't see them operating oilrigs anytime soon.
No, they'll get Shell to do that for them, just as the original poster should get RADIUS/LDAP to do it for him.
Much software is not written to take advantage of the architecture of modern microprocessors. If you rewrite some of your software to take advantage of them, then it is not hard to double your speed.
It's worse than you think on PCs (whatever OS they're running). The article talks about "bus mastering" and "data tenure", but on real workstation-class hardware there is no bus (not even one with a "north bridge") there'a a proper switch, like Crossbow or GigaPlane. These give you point-to-point, non-blocking sustained peak I/O. On a switched system, if components A and B want to communicate they can do so at the switch's full speed, and so can components C and D, no contention at all. That means no wasted cycles for the bus to constantly change ownership.
If you're doing a job that requires heavy use of the "bus" on an x86 system (lots of storage I/O, lots of random memory access hence lots of L2 misses), then optimizing code for cache locality is the least of your problems, you'll never get around the fact that the inefficient design of the hardware itself is the bottleneck. Fancy FSBs and the like are just workarounds and don't address the real problem.
middle tier promotes code re-use, but it also promotes a _logical_ data schema over the _physical_ data schema which is exactly what putting logic in things like triggers and such in does not do.
Let's say you want to access the same group of tables from multiple places in your application, in different objects running on different hosts written by different people, and you don't have source to some of them. You've got 3 choices:
Option 1 is just silly - impossible to maintain for all but the most trivial cases. Option 2 adds an additional layer of indirection, hitting performance, it's another layer to test and another point of failure in production, and it's functionally the same as a trigger anyway. Or pick option 3, which has been refined over 2-3 decades in some of the toughest transactional processing apps in the world, keeps all you code in one place, and guarantees integrity even if you can't in your objects.
As an experienced system architect, one of the mistakes I see newbies make all the time is that they think because their tiers are logically distinct, they have to be physically distinct too. In a professional shop, your logical design will be done by a theoretician who doesn't even know or care what the eventual platform will look like, then the physical design is done by a hardcore, grey-haired DBA who's been there and done that on a dozen major projects. The programmers who actually implement it almost always don't see the big picture, because they're the specialists that focus on their own personal bits of the code.
It in fact is Postgres-Q-L and My-S-Q-L, but you use "sequel" to query both of those. I haven't seen anyone in a long time pronounce the language name S-Q-L, the names of the two products you mentioned are dictated by their respective developers, so it's a different matter. (incidentally, I'm as far from a Microsofty as it gets)
It is properly S-Q-L because Sequel is something different (Structured English Query Language, an IBM project that never went anywhere). But the term "sequel" for SQL has come into common use, so it's the de facto pronounciation.
Microsoft people just call the product "SQL Server" which IMHO is like calling Windows "Operating System" but it comes from the old days when Sybase and Microsoft cooperated (circa MSSQL 4-6/Sybase 10). Sybase's product was called "Sybase SQL Server", but people just call it "Sybase" (akin to calling Windows "Microsoft"). When they split, MS kept the rest of the name.
You can easily spot a hardcore elite database guru by the fact that these people pronounce it "squirrel".
Let's stop dishing out tens of thousands of dollars a year to Oracle and let's just use this free RDBMS implementation
For the last few years, my career has largely been based on Oracle products, so I have as vested an interest as anyone (save maybe Uncle Larry) in seeing Oracle continue to be the #1 choice for corporate databases, but I've got to say, if you even can run your application on MySQL, you really shouldn't have bought Oracle in the first place, because you've completely wasted your money. Only buy a product like Oracle (or Sybase, DB2, etc) if you know that you need its capabilities. If your application doesn't need subselects, triggers, real transactions, etc, then you might as well use MySQL, or even CSV on the filesystem!
Oh, and the R in RDBMS means "relational". Correct me if I'm wrong, but MySQL needs a plugin to even do foreign keys - you should really say just DBMS.
Something to consider might be what SQL database you will be working with. If you'll be working with either Oracle or Access this book will be helpful. If not, I suggest looking at things like Managing Using MySQL by O'Reilly.
I would suggest not, because you will learn bad habits, and they will be hard to shake once you start working on a real database (Oracle, Sybase, SAP-DB, etc). I have seen MySQL programmers do massively inefficient (and stupid) things like retrieve a list of keys from one table, store them in an in-memory array, then loop through the array executing a select for each key in another table - because they didn't know about subselects. I've seen them put all sorts of redundant validation crap in the middle tier because they didn't know about constraints and triggers. I could go on and on...
If you want to learn SQL, you first need a solid general foundation like this (I have an earlier edition) then later study the extensions that each vendor provides (Oracle PL/SQL, Sybase T-SQL, etc).
I started to look for books, online material and other sources to help define a baseline for the Services Level Agreement for our intended customers.
Host a box at Exodus or Level3 and have a read of the SLA they give you. Beter yet, just call them up and ask for a quote and a salesman to call, no need to spend any of your own money. It's probably copyrighted so you can't just use it for your own customers, but it'll give you an idea of where to start.
From an article in today's NY Times:
Say what you like about Gates and Microsoft, but the fact remains that in dollar terms, he's done far more for worthy causes than the typical Open Source advocate:
You might as well as, "Why are /. posters afraid of criticizing Linux?". Because if you do you will be "audited" (modded into oblivion) by the Slashbots, of course!
The number of humans that can outcode GCC is vanishingly small, and even smaller when you have to do keep track of all sorts of parallel dependencies and such.
Yes, that's true, but the number of compilers that can outcode GCC is significant. Sun, SGI, Intel and Compaq/HP/DEC all have far superior compilers than GCC for their own hardware (generating binaries that run over 2x as fast for compute-intensive code). GCC is made for portability, and as such does not exploit many platform-specific performance techniques, particularly not on anything other than x86, where it has many developers working. Is there anyone even working on GCC on the R12000?
If you are going to make chips, you should concentrate your investment on designing and making the chips, not the software. I'm sure they could do another design cycle in more modern fab technology and get much more speed (or lower power if that is the priority).
Back on topic: TransMeta's problem was that they never exploited their code morphing technology in a useful way. Why emulate x86 only, when x86 is ubiquitous? Now if they could handle x86 and also morph Java bytecode into their native instruction set at the same time, then that would be a compelling advantage: full compatibility with legacy applications and no overheads for Java either. They made the classic mistake of going up against an incumbent on its own territory. As Jim Barksdale one said, if you have to fight a shark, be a bear and make sure the fight takes place in the jungle.
I don't know, but would you bet your company on Billy G. deciding to endorse tablets?
He already has. The relationship between MS and Intel is a strange one; they are depeneent on one another to a certain extent, but Microsoft are piqued that Intel actively support Linux also, and Intel face competition from AMD, which they can't even do much about (history: Intel were forced by the courts to license their tech to AMD). If Microsoft could gain leverage over Intel by developing on Crusoe, they just might.
Couldn't you just use gcc across all systems?
Not if you care about performance. Code compiled with a vendor-written compiler like Forte or MIPSpro can be over twice as fast as gcc's. At present, for example, gcc cannot optimize for the MIPS processor family, but SGI's compiler is finely tuned (remember SGI's bread-and-butter is fast compilation).
Remember, gcc is the lowest common denominator. It'll compile you code sure, but that's all it will do, even with -O2. It might do a little better on Linux/x86 because it is the primary compiler on that platform, but I'd be very surprised if VC++ generated code doesn't outperform it, even allowing for the additional overhead of Win32.
This isn't a criticism of gcc, since performance wasn't its design objective, but it does ably illustrate that Open Source isn't always the solution, and commercial software is often better.
I don't see anything insidious, evil, or otherwise overly noteworthy about this...
You are exactly right. What's next, a Slashdot petition to ban Sun from including snoop with Solaris?
are suspicious--and rightly so--of any successful business
freedom from their oppression
a handful of ultra-rich masters ruling over millions toiling in poverty
harmonious cooperation
Lord, save us from teenage Marxist demagogues!
1) US courts regularly deny the authority of courts abroad
2) US courts regularly assume their rules apply abroad.
The EU courts don't always agree with the courts of the member countries, which is fortunate since it is far from unanimous amongst voters that the EU should take precedence over national sovereignty. And EU member countries freely ignore the EU courts.
So what will probably happen is MS will rightly be found guilty, they will ignore the remedy
More likely is that MS will ignore the EU court, as most EU members do, and nothing will happen until national governments (most likely the Germans or Spanish, who seem to be the most unfriendly to MS) take an interest.
Unfortunately, they can only scale down to a preset speed (In fact, they can only go to that speed or max, nothing in between). IMO that speed is still too high - 1.2 GHz on my P4-M 1.7.
Are you sure about that? My PIII laptop, rated at 1Ghz does 730 or 500 Mhz on SpeedStep depending on how heavily I'm using it. It's a Dell.
Let me just see if I understand Slashdot's position on all of this:
So my question to the Slashbots is, will you criticize everything Microsoft does - even if it's something you wanted them to do - just because it's Microsoft? Or is there a serious technical reason that this product is inferior?
Because, y'know, the best product should always get the support of the market. That's why Excel is so popular.
Their engineering culture pretty guarantees that this innovation will keep going.
People said great things about Netscape's engineering-led culture too. A culture where engineers can thrive is an advantage, but what matters at the end of the day is selling products. Nokia came out of nowhere to dominate the industry, just like Netscape in their day, but they're just as vulnerable as any other incumbent now. For example, even Nokia's engineers couldn't prevent the 3G debacle. If someone comes out with a working business model for ubiquitous 802.11b with VoIP, the game changes radically.
I would assume the Cable and DSL companies would be kinda pissed seeing everyone's money go to a wireless ISP with a T3 not through their wired lines. And since they have the bigger bank it means the little guys (dispite their good intentions) can get hurt real bad in battle
I don't think they'd mind a wireless ISP with a T3, because a T3 still costs quite a bit of money. From the perspective of an ISP, a wireless or wired service looks the same if it has a T3, they don't care what happens beyond the router at the ISP itself. What they would object to is running a "community" ISP off of domestic ADSL lines. No matter what your "good intentions", ADSL is as cheap as it is because of calculations done by the telcos of how many potential paying customers there are per exchange. If suddenly there are far fewer paying customers because everyone's piggybacking on a few who do pay (even if those people do give their service away voluntarily) then the price of ADSL will have to go up by a proportional amount. Imagine what happens if instead of 10 paying ADSL customers an telco gets 1 and 9 sharing it - ADSL will have to become 10x more expensive for those that do pay, and then will they be so willing to give it away for free?
The technology works - 512k down is a lot of bandwidth for sporadic network loads like web browsing and reading email (less for streaming video and file downloads, sure). Wireless access points are cheap, 802.11b PCMCIA cards are cheap, DHCP and no WEP means that administration costs are trivial. But the economics don't, and so-called community ISPs are going to kill the goose that laid the golden egg, if they're not careful.
Fast forward to the present. Microsoft Windows, as a platform, is insanely difficult to develop for (unless you are using VB). The learning curve to get started with C or C++ is insane. (eg: COM, COM+, OLE, OLE2, OLEDB, ATL, MFC, ADO, RDO, etc.) Not to mention the cost of getting your hands on Visual Studio.
.NET for free.
.NET lives.
FUD, FUD, FUD. For a start, most Microsoft developers are using VB. Slashbots may flame them as not being real programmers, but they're as much programmers as those Linux people working in Perl and Python. The learning curve for VC++ is no steeper than the learning curve for gcc, but VC++ has a lot of stuff to help newbies that gcc doesn't, like code-writing wizards. MFC is certainly no more difficult than say Motif. And the plethora of APIs where have I seen that before? Look at the arguments between the KDE and GNOME camps for desktop applications. And C# is about as easy (or difficult) to learn as Java.
Yes, Visual Studio Enterprise is expensive, but corporates pay for it; if you're a student it costs about $25. You can get a command line development kit including compiler and VM for
Linux, on the other hand, is easy to develop for. The tools are free, the compiler is free, and getting your code up and running is as simple as make, make install.
Developing is not the same as installing, my friend. After all, installing on Windows is as simple as double-clicking SETUP.EXE. I reiterate: writing a C or C++ GUI application is no easier on Linux than it is on Windows (and writing a tcl/app on Linux is no harder than writing a VB app on Windows).
Also, Java never worked out on Windows. Even with the WFC extentions, Windows developers never used it to code Win32 apps.
No, but Windows is the most common platform for developing Java applications.
Windows is dead.
You're completely right. It's just like when Win32 replaced Win16. And we all know how that turned out.
I believe Microsoft will give away their operating system but will NEVER give their source code up. 3rd party companies would clean up and make their OS more efficient than Microsoft's bloated version, creating competition that Microsoft doesn't need. However, would Microsoft lose their footing in the OS department if other companies were releasing their own versions of Windows?
We have a case study of a sophisticated, commercial close source product being released to the open source community: Mozilla. Read what someone intimately involved with the project has to say here and here. (Summary: progress has been slower and quality lower than he ever expected).