I don't think you can "abstract away transaction related stuff" from the RDBMS. Please correct me if I'm wrong; but I believe that you simply can not start with a RDBMS that does not support transactions; and slap a transaction processing middleware on top of it to instantly have a database application with transactions.
The standard transactional interfaces that are increasingly becoming popular nowadays (like JTA) depend on the database supporting transactions; most likely in the form of an XA-conformant programming interface.
Really? Microsoft Windows 1.0 was released in 1985; the first public release of X Window System happened in 1987. You might argue that MIT started work on X in 1984; but that still does not make it "long before" MS Windows..
Intel machines in the EDA market (Re:Megahurtz!)
on
Sun's Zippy New Chips
·
· Score: 1
This was an interesting remark, I started to hear similar things very often recently. My understanding is that most EDA software on the x86 platform is written for WindowsNT/2000. Isn't your productivity to some degree limited by the stability of the Windows operating system, especially for CPU-intensive, lengthy tasks like formal verification and transistor-level simulation? (But then, these things are most likely done on server farms in big companies, anyway) Are you using your x86 machines for these tasks; or are you mostly using them for HDL design entry/simulation; and synthesis?(which will admittedly be a lot more cost-effective on x86 systems)
It's just sad that many EDA companies tried offering their products on Linux; and had to pull them back because of low demand.
I'm fairly sure there are enough of us in the DC Metro area to roll out something like this. Perhaps we should start a small web site or a mailing list for a beginning?
Can you explain how exactly SIMD instruction set enhancements are "superinstructions"?? Virtually every SIMD extension from Intel(MMX/SSE, etc/), AMD(3DNow!), Sun(VIS) or Motorola(AltiVec) involve significant extensions to the hardware and/or additional resources at the microarchitecture level. SIMD instructions are handled with hardware that are specifically designed or modified to handle these instructions, period-MMX instroduced new registers and FU's to execute SIMD instructions in about the same number of clock cycles; and other SIMD enhancements followed suit.
If you're using "Superinstructions" to refer to hyped-up "pseudo-instructions" that do little more than call up a series of microcode routines; your post is misleading. SIMD instruction sets do actually enhance performance in a lot of applications (there is a good paper on this written by a group of academics using SUN VIS as a test case-check out www.citeseer.com to find this.), unfortunately compiler technology could not catch up, leaving it to the programmers to explicitly code against a given SIMD extension technology.
Can you enlighten us on how you can rig something to explode on detection?
The book just mentions that the submarines used in NSA-related operations, namely USS Parche, were wired with explosive charges that the crew would have used to destroy the submarine and sensitive equipment, along with themselves, in case they believed they would not be able to avoid capture by the Soviets.
I can assure you knowing Turkish gives you an extra leg up on learning Japanese. While reading and writing is still a challenge, the verb conjugation logic and use of adverbs is instantly familiar. Standard Romanization of Japanese is also phonetic and intonations are fairly similar; and a native Turkish speaker can pronounce Japanese a lot easier than an English speaker for example. I still remember amazing my Japanese teacher when I took an intermediate level class here in the US, and some poor American undergrads filed a complaint that said it was unfair for me to be in the same class with them since I "obviously knew how to speak Japanese at an advanced level" before I took the class.
No, RISC means Reduced Instruction Set Computing. Go check out Ditzel's (inventor of the RISC concept along with Hennessy & Patterson, later Transmeta founder) original paper of 1980. Also make sure you open that big Hennessy & Patterson book that has been lying (apparently) unopened on your shelf since you took Comp. Org.; and look up RISC again. Ironically your post deserves the "Misinformative" rating, too.
NSA has been a very heavy user of these for a long, long time now. Back when I was a fresh graduate student, a company in Annapolis, MD called Annapolis Micro Systems was hiring EE's with HDL/FPGA experience to work on their custom FPGA computing products. Needless to say, they were only looking for US citizens.
I don't see that company selling many FPGA custom computing boards to boat owners and Chesapeake Bay fishermen in Annapolis. NSA is only miles away, and I bet these boards have been developed specifically for their use.
Check out the company and their products, and you will see which products I'm taling about.
You can not do everything in "plain efficient PL/SQL"; and even when you can do it, it's simply reinventing the wheel. Try writing a millisecond-accuracy equivalent of the "SYSDATE" function in PL/SQL.
Oracle itself makes clear that it has never intended Java in the database to replace PL/SQL. Java on the database is here, it works very well, and it will be here for a long time to come. It's a pretty neat idea whose time has come.
This is really funny; and misleading; I might add. The average EE program contains a lot more, and more difficult math than the math that CS majors have to deal with.
In most US CS programs, all the math that a CS major ever sees after basic calculus is a course in discrete mathematics, a course in probablity and/or combinatorics. In the EE program, most typically a class on differential equations, a class on linear algebra; and most often a basic Signals & Systems class is required. The Signals class in itself is almost a math class with new concepts like Fourier analysis, frequency domain, etc.
Your friends who choose to go to EE because they "couldn't handle the math" will regret it when they take their first differential equations class. Both disciplines make use of math, but CS majors mostly deal with combinatorics/discrete math dealing with integers; whereas EE heavily depends on more advanced subjects like differential equations. CS majors who believe they are math geniuses simply because they understand the Bellman-Ford algorithm the first time are strongly encouraged to visit a senior level Antennas and Propagation class to bring themselves down to earth. Trust me, I spent a nice chunk of my life in both disciplines, taking a B.Sc in EE and moving on to get grad degrees in CE; being an assistant for CS students in between.
Jakarta is the name of the project, while Tomcat is the product.
I wouldn't touch Tomcat with a 10ft stick. Its performance is really sluggish; and its overall maturity level is remarkably behind the other free/commercial alternatives. IMHO, the best JSP engine you can get for free now is Resin; it also happens to be the easiest one to set up. It's available at Caucho's site. It's still possible to run Resin alongside Apache so Apache takes care of the static HTML pages while Resin handles the JSP. In my experience it was the ideal solution, and I scrapped JServ as soon as I discovered Resin.
I agree the Linksys router with built-in PPPoE support is a godsend for us underlings with Verizon DSL-only when it works. My Linksys router will work flawlessly for days and then just freeze-and the only solution is to reboot. Back when I was using Bell Atlantic DSL with static IP service (pre-Verizon days); I had a Linux box doing MASQ, and needless to say, it was never down. Not so with the Linksys, but it comes very close to being perfect.
The Athlon core has no relation to the Alpha whatsoever. They use the same EV memory bus architecture, and that's it. Athlon (K7) is strictly a 32-bit x86 processor, AMD's next generation "Sledgehammer" will be a 64-bit processor incompatible with Itanium.
Interesting family outing. A bunch of people in civilian clothing having the time of their life, riding and crushing hard drives in an M-109 155mm self-propelled howitzer.
I know the Swiss army is largely composed of reservists, but what I don't get is how you can get to drive an SPH out of the base, get civilians on it, and play funky games with it. If you're a Swiss reservist, can you keep a tank or SPH in your garage? How does it work? Don't you get reprimanded for allowing civilians near or in a military vehicle?
And people here in the US whine about lax gun control. Sheesh.
Mr. Greenspun,
My observation that you had a Ph.D fetish was largely based on your description of the ArsDigital workplace culture(at your Web site) back when I was checking your company out for applying for a job. I had significant experience working with some relatively savvy consulting companies roughly in the same space and caliber as ArsDigita; and it seemed weird how the ArsDigita site boasted about how many Ph.D's you had.
My 2 cents is: This is not Los Alamos Labs, for God's sake! I earn my living from server-side Java programming and Web application design, too; and my personal opinion is that any CS Ph.D actually writing Tcl/PL-SQL code for a Web application for a, say, pet food store or an online loan application site is woefully under-utilized. These people are supposed to be out there working on designing better cryptosystems, invent new methods to speed up object relational databases or who knows, perhaps prove that P=NP.
Perhaps my simple, Ph.D-less mind could not come up with a possible justification for employing MIT CS Ph.D's at a Web consulting company for any other reason but a Ph.D fetish. I totally agree the more influential engineers are the ones that are willing to write, but a Ph.D for just learning how to write results? Geez.
Other than this minor point, thank you for taking the time to write. I guess a major part is right-on.
I myself dropped out of a Ph.D program, having failed to develop a particular liking to having to drive a trashy car around; living on generic supermarket-brand pasta and cheap "locally grown" apples; using WWII-era furniture from the university's surplus store; pretending to understand the young, ambitious professors explaining how their brand new implementation of the Kalman filter will save the world and end the world hunger; and generally being treated like cr*p because you're a foreign grad student on a student visa. Having to suffer through all that for the privilege of adding the "Ph.D" title to your business card was simply too much.
That said, I do have a lot of respect for people who manage to live through all the suffering that is the typical US EE/CS graduate school and get their Ph.D's.
I agree that a huge improvement over their grad school salaries is definitely warranted and deserved; but I fail to understand why a manager would regard a Ph.D with no work experience more highly than an experienced programmer of the same age; except in a research-oriented institution. I know a bunch of CS Ph.D candidates that can talk for days on theoretical artificial intelligence, hypothesis proving and logic verification; but will stare at your face blankly when you say "design pattern". Unfortunately a lot of people are in grad school just to avoid real life a little longer.
Of course there is no shortage of managers with strong Ph.D fetish, like Greenspun, who will eventually hire them.
But I digress. He was right about the 3x-7x improvement, it seems.
Well, the ArsDigita link is slashdotted. Strange contrast to their claims of the reliability of their server/software architecture that they hype up to high heaven on their site. Perhaps overpaying programmers/sysdamins to crank out Tcl code or set up AOLserver boxes for 70 hours does not necessarily work for designing stable Web sites.
If the student finishes a PhD thesis, he or she is positively reinforced by being given a 3-7X pay raise.
I am not sure I get this. Is this a 3-7x improvement over the generally pathetic grad assistant salary? It surely can not be a 3x-7x improvement over a programmer with a similar age with no Ph.D who has chosen to work in industry instead of grad school.
Even then, I have yet to see a Ph.D that makes 7x his grad assistant salary, unless his grad assistant salary was in the 10K-12K range. Heck, if one can live with that salary for 4-5 years, then perhaps he really deserves a 7x increase.
Give me a break. You can generate dynamic GIF/JPG and PDF with all of the scripting languages in the article. PHP, being the kitchen sink of a language that it is, chose to bundle the GD library, and several PDF generation libraries into the language, and that's about all that makes it slightly advantageous in this respect. It's fairly trivial to create dynamic GIF/JPG images with JSP/servlets (Jason Hunter's servlet book had some examples), and there are at least three Java PDF generation class libraries that you can use to generate PDF from JSP/servlets.
I will no even get started about ASP and CF-both can readily access COM objects, which opens up a whole bunch of opportunities since there are so many libraries available. PDF and GIF/JPG is definitely not a problem with any of these technologies.
Whenever you're designing a comprehensive reporting application at work, coming up with a decent library to generate good-looking business charts is a problem with technologies like PHP, however. There is so much free and commercial Java and COM libraries available for JSP/Servlet and ASP or Cold Fusion developers, but not for PHP.
For some unknown reason, they chose Tomcat, the lamest JSP engine available. Had they chosen Resin or Orion in conjunction with the IBM JDK, the results would be quite different.
Meanwhile you will have ended up with two different languages to support in the same production environment. This may not be a problem for a small design shop where you have a couple developers that know both languages and the code that everybody works on; but in a big company environment, it makes life very difficult.
Despite being a useful "hack language" to create small, simple contraptions; PHP is not exactly the most readable/maintainable language on Earth. Add to that the thousands of Web designers who believe they became programmers by just writing some simple logic in PHP, and you have a lot of poorly written code in a poorly documented (yes, I know about the online manual. Go see for yourself how poorly Oracle functions in PHP are documented, for example.) language. Just like Perl, the flexibility and power comes at the expense of readability and maintainability.
I fail to understand why anybody would want to use PHP with JavaBeans if they know enough about Java to figure thise setup in the first place. I don't think there is anything in particular that you can do with PHP but not with JSP. I don't think the JSP functionality can extend any more, since anything that can be done on the server side in Java can be done in a JSP page.
I believe "Chiborashka" (I guess my spelling is wrong) used to be a Russian cartoon character who always manages to fal(incidentally also the nickname of the Mig-23 fighter plane among Russian pilots). Is that what your username is referring to?
Sorry for the off-topic question, just curious. --
I don't think you can "abstract away transaction related stuff" from the RDBMS. Please correct me if I'm wrong; but I believe that you simply can not start with a RDBMS that does not support transactions; and slap a transaction processing middleware on top of it to instantly have a database application with transactions.
The standard transactional interfaces that are increasingly becoming popular nowadays (like JTA) depend on the database supporting transactions; most likely in the form of an XA-conformant programming interface.
Really? Microsoft Windows 1.0 was released in 1985; the first public release of X Window System happened in 1987. You might argue that MIT started work on X in 1984; but that still does not make it "long before" MS Windows..
This was an interesting remark, I started to hear similar things very often recently. My understanding is that most EDA software on the x86 platform is written for WindowsNT/2000. Isn't your productivity to some degree limited by the stability of the Windows operating system, especially for CPU-intensive, lengthy tasks like formal verification and transistor-level simulation? (But then, these things are most likely done on server farms in big companies, anyway) Are you using your x86 machines for these tasks; or are you mostly using them for HDL design entry/simulation; and synthesis?(which will admittedly be a lot more cost-effective on x86 systems)
It's just sad that many EDA companies tried offering their products on Linux; and had to pull them back because of low demand.
I'm fairly sure there are enough of us in the DC Metro area to roll out something like this. Perhaps we should start a small web site or a mailing list for a beginning?
Can you explain how exactly SIMD instruction set enhancements are "superinstructions"?? Virtually every SIMD extension from Intel(MMX/SSE, etc/), AMD(3DNow!), Sun(VIS) or Motorola(AltiVec) involve significant extensions to the hardware and/or additional resources at the microarchitecture level. SIMD instructions are handled with hardware that are specifically designed or modified to handle these instructions, period-MMX instroduced new registers and FU's to execute SIMD instructions in about the same number of clock cycles; and other SIMD enhancements followed suit.
If you're using "Superinstructions" to refer to hyped-up "pseudo-instructions" that do little more than call up a series of microcode routines; your post is misleading. SIMD instruction sets do actually enhance performance in a lot of applications (there is a good paper on this written by a group of academics using SUN VIS as a test case-check out www.citeseer.com to find this.), unfortunately compiler technology could not catch up, leaving it to the programmers to explicitly code against a given SIMD extension technology.
and it was rigged to explode on detection
Can you enlighten us on how you can rig something to explode on detection?
The book just mentions that the submarines used in NSA-related operations, namely USS Parche, were wired with explosive charges that the crew would have used to destroy the submarine and sensitive equipment, along with themselves, in case they believed they would not be able to avoid capture by the Soviets.
I can assure you knowing Turkish gives you an extra leg up on learning Japanese. While reading and writing is still a challenge, the verb conjugation logic and use of adverbs is instantly familiar. Standard Romanization of Japanese is also phonetic and intonations are fairly similar; and a native Turkish speaker can pronounce Japanese a lot easier than an English speaker for example. I still remember amazing my Japanese teacher when I took an intermediate level class here in the US, and some poor American undergrads filed a complaint that said it was unfair for me to be in the same class with them since I "obviously knew how to speak Japanese at an advanced level" before I took the class.
No, RISC means Reduced Instruction Set Computing. Go check out Ditzel's (inventor of the RISC concept along with Hennessy & Patterson, later Transmeta founder) original paper of 1980. Also make sure you open that big Hennessy & Patterson book that has been lying (apparently) unopened on your shelf since you took Comp. Org.; and look up RISC again. Ironically your post deserves the "Misinformative" rating, too.
NSA has been a very heavy user of these for a long, long time now. Back when I was a fresh graduate student, a company in Annapolis, MD called Annapolis Micro Systems was hiring EE's with HDL/FPGA experience to work on their custom FPGA computing products. Needless to say, they were only looking for US citizens.
I don't see that company selling many FPGA custom computing boards to boat owners and Chesapeake Bay fishermen in Annapolis. NSA is only miles away, and I bet these boards have been developed specifically for their use.
Check out the company and their products, and you will see which products I'm taling about.
You can not do everything in "plain efficient PL/SQL"; and even when you can do it, it's simply reinventing the wheel. Try writing a millisecond-accuracy equivalent of the "SYSDATE" function in PL/SQL.
Oracle itself makes clear that it has never intended Java in the database to replace PL/SQL. Java on the database is here, it works very well, and it will be here for a long time to come. It's a pretty neat idea whose time has come.
This is really funny; and misleading; I might add. The average EE program contains a lot more, and more difficult math than the math that CS majors have to deal with.
In most US CS programs, all the math that a CS major ever sees after basic calculus is a course in discrete mathematics, a course in probablity and/or combinatorics. In the EE program, most typically a class on differential equations, a class on linear algebra; and most often a basic Signals & Systems class is required. The Signals class in itself is almost a math class with new concepts like Fourier analysis, frequency domain, etc.
Your friends who choose to go to EE because they "couldn't handle the math" will regret it when they take their first differential equations class. Both disciplines make use of math, but CS majors mostly deal with combinatorics/discrete math dealing with integers; whereas EE heavily depends on more advanced subjects like differential equations. CS majors who believe they are math geniuses simply because they understand the Bellman-Ford algorithm the first time are strongly encouraged to visit a senior level Antennas and Propagation class to bring themselves down to earth. Trust me, I spent a nice chunk of my life in both disciplines, taking a B.Sc in EE and moving on to get grad degrees in CE; being an assistant for CS students in between.
Jakarta is the name of the project, while Tomcat is the product.
I wouldn't touch Tomcat with a 10ft stick. Its performance is really sluggish; and its overall maturity level is remarkably behind the other free/commercial alternatives. IMHO, the best JSP engine you can get for free now is Resin; it also happens to be the easiest one to set up. It's available at Caucho's site. It's still possible to run Resin alongside Apache so Apache takes care of the static HTML pages while Resin handles the JSP. In my experience it was the ideal solution, and I scrapped JServ as soon as I discovered Resin.
For some reason people just would not stop calling it "Athalon". Never really understood why. Reading and spelling is just so simple.
I agree the Linksys router with built-in PPPoE support is a godsend for us underlings with Verizon DSL-only when it works. My Linksys router will work flawlessly for days and then just freeze-and the only solution is to reboot. Back when I was using Bell Atlantic DSL with static IP service (pre-Verizon days); I had a Linux box doing MASQ, and needless to say, it was never down. Not so with the Linksys, but it comes very close to being perfect.
The Athlon core has no relation to the Alpha whatsoever. They use the same EV memory bus architecture, and that's it. Athlon (K7) is strictly a 32-bit x86 processor, AMD's next generation "Sledgehammer" will be a 64-bit processor incompatible with Itanium.
No, this missile you're mentioning is the British BAe ALARM. It is similar in function to HARM.
Interesting family outing. A bunch of people in civilian clothing having the time of their life, riding and crushing hard drives in an M-109 155mm self-propelled howitzer.
I know the Swiss army is largely composed of reservists, but what I don't get is how you can get to drive an SPH out of the base, get civilians on it, and play funky games with it. If you're a Swiss reservist, can you keep a tank or SPH in your garage? How does it work? Don't you get reprimanded for allowing civilians near or in a military vehicle?
And people here in the US whine about lax gun control. Sheesh.
Mr. Greenspun,
My observation that you had a Ph.D fetish was largely based on your description of the ArsDigital workplace culture(at your Web site) back when I was checking your company out for applying for a job. I had significant experience working with some relatively savvy consulting companies roughly in the same space and caliber as ArsDigita; and it seemed weird how the ArsDigita site boasted about how many Ph.D's you had.
My 2 cents is: This is not Los Alamos Labs, for God's sake! I earn my living from server-side Java programming and Web application design, too; and my personal opinion is that any CS Ph.D actually writing Tcl/PL-SQL code for a Web application for a, say, pet food store or an online loan application site is woefully under-utilized. These people are supposed to be out there working on designing better cryptosystems, invent new methods to speed up object relational databases or who knows, perhaps prove that P=NP.
Perhaps my simple, Ph.D-less mind could not come up with a possible justification for employing MIT CS Ph.D's at a Web consulting company for any other reason but a Ph.D fetish. I totally agree the more influential engineers are the ones that are willing to write, but a Ph.D for just learning how to write results? Geez.
Other than this minor point, thank you for taking the time to write. I guess a major part is right-on.
I myself dropped out of a Ph.D program, having failed to develop a particular liking to having to drive a trashy car around; living on generic supermarket-brand pasta and cheap "locally grown" apples; using WWII-era furniture from the university's surplus store; pretending to understand the young, ambitious professors explaining how their brand new implementation of the Kalman filter will save the world and end the world hunger; and generally being treated like cr*p because you're a foreign grad student on a student visa. Having to suffer through all that for the privilege of adding the "Ph.D" title to your business card was simply too much.
That said, I do have a lot of respect for people who manage to live through all the suffering that is the typical US EE/CS graduate school and get their Ph.D's.
I agree that a huge improvement over their grad school salaries is definitely warranted and deserved; but I fail to understand why a manager would regard a Ph.D with no work experience more highly than an experienced programmer of the same age; except in a research-oriented institution. I know a bunch of CS Ph.D candidates that can talk for days on theoretical artificial intelligence, hypothesis proving and logic verification; but will stare at your face blankly when you say "design pattern". Unfortunately a lot of people are in grad school just to avoid real life a little longer.
Of course there is no shortage of managers with strong Ph.D fetish, like Greenspun, who will eventually hire them.
But I digress. He was right about the 3x-7x improvement, it seems.
Well, the ArsDigita link is slashdotted. Strange contrast to their claims of the reliability of their server/software architecture that they hype up to high heaven on their site. Perhaps overpaying programmers/sysdamins to crank out Tcl code or set up AOLserver boxes for 70 hours does not necessarily work for designing stable Web sites.
I am not sure I get this. Is this a 3-7x improvement over the generally pathetic grad assistant salary? It surely can not be a 3x-7x improvement over a programmer with a similar age with no Ph.D who has chosen to work in industry instead of grad school.
Even then, I have yet to see a Ph.D that makes 7x his grad assistant salary, unless his grad assistant salary was in the 10K-12K range. Heck, if one can live with that salary for 4-5 years, then perhaps he really deserves a 7x increase.
Give me a break. You can generate dynamic GIF/JPG and PDF with all of the scripting languages in the article. PHP, being the kitchen sink of a language that it is, chose to bundle the GD library, and several PDF generation libraries into the language, and that's about all that makes it slightly advantageous in this respect. It's fairly trivial to create dynamic GIF/JPG images with JSP/servlets (Jason Hunter's servlet book had some examples), and there are at least three Java PDF generation class libraries that you can use to generate PDF from JSP/servlets.
I will no even get started about ASP and CF-both can readily access COM objects, which opens up a whole bunch of opportunities since there are so many libraries available. PDF and GIF/JPG is definitely not a problem with any of these technologies.
Whenever you're designing a comprehensive reporting application at work, coming up with a decent library to generate good-looking business charts is a problem with technologies like PHP, however. There is so much free and commercial Java and COM libraries available for JSP/Servlet and ASP or Cold Fusion developers, but not for PHP.
For some unknown reason, they chose Tomcat, the lamest JSP engine available. Had they chosen Resin or Orion in conjunction with the IBM JDK, the results would be quite different.
Meanwhile you will have ended up with two different languages to support in the same production environment. This may not be a problem for a small design shop where you have a couple developers that know both languages and the code that everybody works on; but in a big company environment, it makes life very difficult.
Despite being a useful "hack language" to create small, simple contraptions; PHP is not exactly the most readable/maintainable language on Earth. Add to that the thousands of Web designers who believe they became programmers by just writing some simple logic in PHP, and you have a lot of poorly written code in a poorly documented (yes, I know about the online manual. Go see for yourself how poorly Oracle functions in PHP are documented, for example.) language. Just like Perl, the flexibility and power comes at the expense of readability and maintainability.
I fail to understand why anybody would want to use PHP with JavaBeans if they know enough about Java to figure thise setup in the first place. I don't think there is anything in particular that you can do with PHP but not with JSP. I don't think the JSP functionality can extend any more, since anything that can be done on the server side in Java can be done in a JSP page.I believe "Chiborashka" (I guess my spelling is wrong) used to be a Russian cartoon character who always manages to fal(incidentally also the nickname of the Mig-23 fighter plane among Russian pilots). Is that what your username is referring to?
Sorry for the off-topic question, just curious.
--
BluetoothCentral.com
A site for everything Bluetooth. Coming soon.