This is certainly the wrong question, and civil liberties weigh prominently in my mind. But let's extend this a bit to include economic liberties. I don't like the underlying assumption of the question at all. To ask which presidential candidate is best for technology presumes that they should be involved. We assume that the government is correct to use violence (the threat of violence is violence) to seize capital. The government is then charged with distributing the capital "correctly" to the benefit of society. All that is left then is for us to determine the candidate who will distribute the seized assets in the best way.
So Barack Obama understands the technical differences between fiber and copper? FTTH, WiMax, xDSL? Or perhaps Mitt Romney the businessman. Yes, I understand he's done quite a bit of work on network protocols. Oh, darn. Hillary's the expert on UI design for mobile devices especially for the visually impaired. Oh, no! The true expert on copyright law is Mike Huckabee. It's getting worse! The only one that understands property rights as applied to wireless spectrum is McCain. Gosh, how can I choose the one expert that knows how to distribute the fruits of my labor better than me in all societal endeavors? To whom should I abdicate my responsibility as a citizen?
Come on. The president has no authority or standing to be a "good" or "bad" technology president. Any president that says otherwise is by definition bad for technology and probably a host of other things.
I guess I'm posting a little late to this. Maybe someone will read it.:)
My first graphing calculator was an old Casio. It was ok, but I switched the next year (11th grade) to an HP-48SX. I upgraded to a 48GX when they came out which I think was my sophomore year of college. I've also owned/used extensively a couple of TIs (81 and 83, I think). I've periodically browsed the current calculator offerings ever since just cause I'm curious.
The HP wins hands down. There is absolutely no comparison. In fact, when I was in college (92-96) at GaTech, the HP had almost 100% market share. It had a better screen, better processor, much more memory, expandability and about 7-8 times as many built-in functions. It was also far easier to program and exchange programs. I think the RPN detractors must not completely grok it. Once you master RPN, it's just so much simpler to use in the space-constrained (memory, screen and keypad) environment of a calculator.
I keep waiting for the next great calculator, but sadly calculators have not really advanced much since the early 90s. There has been a major focus on hand held computers and PDAs, but they don't replace the form factor of the calculator. HP has apparently ceased working on calculators and TI has done little more than increase memory and processor speed. Those are important, but a calculator is a special purpose tool that has far more to offer than processing speed.
I'm a little despondent about it because I wouldn't mind getting a faster, improved 48GX, but neither HP nor TI has offered such a beast. Why can't I have an HP that runs Mathematica?:(
Spring provides TestCase subclasses that provide a Spring ApplicationContext and a TransactionManager. Spring automagically starts a transaction in setUp() and rolls it back in tearDown(). They provide hooks to execute setUp() and tearDown() code both inside and outside the transaction. You can force the transaction to commit if you want, but that's not really what you want to do. I've found that this works really well for a number of reasons 1) initialize the database once, 2) unit tests are independent because they do not alter the database state permanently, 3) transaction management is independent of the production code and unit tests and 4) it performs pretty well - most RDMSes will keep uncommitted transactions in memory. There really shouldn't be a need to commit anything because _unit_ tests should not need to cross transaction boundaries.
I used Hibernate with Spring, and I think that helps a lot. I don't know if you have any control over that. Hibernate makes database manipulations much more terse, and it is actually pretty easy to write a little code to create a small bit of database state just for a particular unit test. Writing single use code to just toss in 15 rows using straight JDBC is, by contrast, more err, interesting.
The other thing Spring does for you is that it obviates the need for any hokey J2EE specific harnesses. One of the most sucky things about EJBs is that you have to have a running app server for them to be usable. Spring frees you from this burden. Your ApplicationContext(s) are valid inside and outside the container.
The other thing I would point out is that database schemas should not be such a precious resource. I develop on my laptop, so I don't want to be tethered to my corporate LAN (or any other LAN) in order to develop. Oracle XE is free, easy and quite reasonable resource-wise. MySQL, Postgres and other OSS databases are easy to run locally. Let everyone create their own local database installations. This is perfect for unit/integration/acceptance testing, anything functional in nature. If you deploy with the database on a dedicated server, you will still need to test that scenario, but that only impacts things like performance, high availability, etc. These are certainly important issues, so do test them, but for unit tests, just run a local database.
I'm not sure about this device. I just bought the Sprint 5740 card (PCMCIA) which is apparently sold by Verizon as well. Linux is not supported, but it is actually easier than Windows to setup. Some people claim you have to activate the card under Windows. I bought mine pre-activated, but I set it up in Windows anyway (had to borrow a laptop) to find out my user name to use in wvdial. I'm guessing if I knew that, Windows would not have been a requirement.
I used this post http://kenkinder.com/evdo-pc5740/ to configure. wvdial wound up working better than pppd for me (Dell Inspiron 9300/FC5). In any event, the cool thing is that under Linux there was nothing to install. My card was autodetected as a usbserial device, and I simply configured wvdial to use it as a modem. Who knew we would be going back to dialup and gladly at that?. I did have to apply a kernel patch to get a performance boost though.
I guess this doesn't directly answer the question, but it may give you an idea of what to expect and what to look for. The short answer is that these devices seem (mostly) to just work under Linux, but under Windows you have to install specialized software and drivers to use the cards which actually was a PITA.
(b) As used in this section, the term `enabling software' means software that, when installed on the user's computer, enables 3rd parties to store data on that computer, or use that computer to search other computers' contents over the Internet.
I'm surprised no one has mentioned this, but this seems to include web browsers too. For that matter, probably Network Neighborhood, not that I would ever use that filth. But still.
I mean you could really stretch this into the networking bits of the kernel.
Great law! Suberb grasp of technology! Everyone's a criminal. Let's all go to jail.
This sounds like a fanciful story. I have been using Linux for 7 years, and I've never had a system crash. I've used some unstable software (including stuff I've been actively developing), but the kernel's been solid.
Now take Unix. I've worked on Solaris, AIX, UX, Tru64 and SCO (pronounced SLOW). In the environments I've worked in, you could easily have 50 people running (unstable) development code on the same box, sometimes simultaneously. You see seg faults, core files, bus errors, etc., but those machines only go down for maintenance.
Contrast this to the Windows world. When I was an indentured servant, I had to do some VB and Access development. I had to "change the oil" every 3 months, not to mention multiple daily reboots. Why do you think Windows users have terms like "change the oil", "three-finger salute", and "BSOD"? There really is no equivalent in the Unix / Linux world. Why do you think Windows admins are so bitchy about end users running third party software in a corporate environment? Windows requires the "right" combination of software and sometimes even the "right" start up sequence. Any little deviation can topple that house of cards.
I've met an MCSE that considered uptime to be continuous if the box only went down for the nightly reboot. Now several companies *have* been able to achieve months of Windows uptime by rebooting nightly.
Face it, Windows does have a place, as a kiddy toy.
I worked for Georgia Tech in college, so I was technically a state employee. As such I had to go through a standard application that included these gems:
Are you or have you ever been a member of the Communist? yes/no Have you ever advocated that violent overthrow of the government of the state of Georgia? yes/no
Besides being useless screening tools, the first is irrelevant, and the second, well, what the hell would you do if you did violently overthrow a state government?
On another note, I've worked at two companies where you could not change your Windows network password; only an Administrator could do that. Both required frequent password changes, and the protocol was to send a clear text email to a sys admin with your new password.
The last place I worked allowed you to change the Windows password yourself (and required a new one), but there was no mechanism for changing the VSS password. Again the mechanism was to send your new password in clear text to the guy that administered SourceSafe.
And what about using proprietary VPN solutions that require a Windows machine to connect to Unix boxes? Talk about a backdoor. Now you are relying on the impregnability of Windows 98/NT/2000 to keep people from accessing your network.
I worked for another company that required you to shut off your machine every night (can't just logout) for security purposes.
I've had service from ATT and from Charter. Neither one gave me too much of a hard time about using Linux, but the ATT crew was comical.
I say crew, because they sent 2 guys. The hardware guy knew how to connect coax cable to a jack and how to plug in an RJ-45 connector. The software guy knew how to click 'Next' on the Internet Exploiter install.
The software guy sat down at my "DOS" prompt and asked me to get back into Windows. So I typed 'startx' and watched him squirm for a few minutes.:)
Using words like 'illegal' is a bit misleading. They are not debating the legality of any software at all. The Peruvian government is merely mandating that only a certain class of software should be used by the Peruvian government. Why shouldn't they be allowed to decide what they want to use. So if you decide to use only FreeBSD from now on at your house, should I be able to stop you?
As an aside, it seems to me that an open source environment would tend to provide low-entry-barrier employment opportunities for Peruvian developers. The M$ shrink-wrapped software only requires low-skilled 3-fingered workers that can run from machine to machine all day.
On the one hand, Sun appears to be lashing out at a competitor.
On the other hand, this article raises some legitimate concerns that IBM will have to address. But they don't have to convince me. They only need to convince their customers.
As far as I'm concerned, good business or not, running Linux in every possible context makes it stronger.
The commonality I see in all these threads is that if the project is well-implemented (design docs, code comments, good division of labor between modules, etc.), it is ok. Otherwise it will be a maintenance nightmare.
This can be said of almost any software project.
That being said, if you have a MASTERED, say, C, C++, Perl, and Java, you must have a compelling reason to switch languages for a particular subsystem. I don't advise it for the singular reason that it complicates the build process. That in turn complicates the automated testing process. And on and on.
Also, in the 4 languages I listed, there are few tasks that are not readily accomplished if you are not reinventing the wheel.
There are some exceptions to this rule, so it is soft, but I would be loathe to switch languages. I have developed on large-scale platforms in C, Perl, and Java, and I have had to write less than 10 functions in a language other than what I was using as the main development language.
Definitely. I hear people all the time saying, "I want lower taxes." People agree that we don't need to spend $300 B on defense, they agree that Social Security is rotten, they agree that they don't want to spend $50 K/yr on people that smoke pot, but they vote Democrat b/c they feel Clinton/Gore care about them, or they vote Republican because they believe that's good for the stock market.
They don't vote Libertarian because they don't feel like they have a chance. Also, the big 2 have pretty well conspired to keep out viable 3rd parties.
Do you notice who they allow to get press? Ralph Nader is the biggest 3rd party candidate in the polls. Has anyone read his platform? He wants to dissolve all Fortune 500 companies because they make too much money. He wants to tax the rich back into middle class status. I'm serious. He wants to implement a maximum income so that everything you earn above that goes to Washington. This is who the D & R allow to have a little press. Ralph Nader makes them look like small government.
Vote and vote your conscience. Vote on principle, consequences be damned!
This is certainly the wrong question, and civil liberties weigh prominently in my mind. But let's extend this a bit to include economic liberties. I don't like the underlying assumption of the question at all. To ask which presidential candidate is best for technology presumes that they should be involved. We assume that the government is correct to use violence (the threat of violence is violence) to seize capital. The government is then charged with distributing the capital "correctly" to the benefit of society. All that is left then is for us to determine the candidate who will distribute the seized assets in the best way.
So Barack Obama understands the technical differences between fiber and copper? FTTH, WiMax, xDSL? Or perhaps Mitt Romney the businessman. Yes, I understand he's done quite a bit of work on network protocols. Oh, darn. Hillary's the expert on UI design for mobile devices especially for the visually impaired. Oh, no! The true expert on copyright law is Mike Huckabee. It's getting worse! The only one that understands property rights as applied to wireless spectrum is McCain. Gosh, how can I choose the one expert that knows how to distribute the fruits of my labor better than me in all societal endeavors? To whom should I abdicate my responsibility as a citizen?
Come on. The president has no authority or standing to be a "good" or "bad" technology president. Any president that says otherwise is by definition bad for technology and probably a host of other things.
I guess I'm posting a little late to this. Maybe someone will read it. :)
:(
My first graphing calculator was an old Casio. It was ok, but I switched the next year (11th grade) to an HP-48SX. I upgraded to a 48GX when they came out which I think was my sophomore year of college. I've also owned/used extensively a couple of TIs (81 and 83, I think). I've periodically browsed the current calculator offerings ever since just cause I'm curious.
The HP wins hands down. There is absolutely no comparison. In fact, when I was in college (92-96) at GaTech, the HP had almost 100% market share. It had a better screen, better processor, much more memory, expandability and about 7-8 times as many built-in functions. It was also far easier to program and exchange programs. I think the RPN detractors must not completely grok it. Once you master RPN, it's just so much simpler to use in the space-constrained (memory, screen and keypad) environment of a calculator.
I keep waiting for the next great calculator, but sadly calculators have not really advanced much since the early 90s. There has been a major focus on hand held computers and PDAs, but they don't replace the form factor of the calculator. HP has apparently ceased working on calculators and TI has done little more than increase memory and processor speed. Those are important, but a calculator is a special purpose tool that has far more to offer than processing speed.
I'm a little despondent about it because I wouldn't mind getting a faster, improved 48GX, but neither HP nor TI has offered such a beast. Why can't I have an HP that runs Mathematica?
Spring provides TestCase subclasses that provide a Spring ApplicationContext and a TransactionManager. Spring automagically starts a transaction in setUp() and rolls it back in tearDown(). They provide hooks to execute setUp() and tearDown() code both inside and outside the transaction. You can force the transaction to commit if you want, but that's not really what you want to do. I've found that this works really well for a number of reasons 1) initialize the database once, 2) unit tests are independent because they do not alter the database state permanently, 3) transaction management is independent of the production code and unit tests and 4) it performs pretty well - most RDMSes will keep uncommitted transactions in memory. There really shouldn't be a need to commit anything because _unit_ tests should not need to cross transaction boundaries.
I used Hibernate with Spring, and I think that helps a lot. I don't know if you have any control over that. Hibernate makes database manipulations much more terse, and it is actually pretty easy to write a little code to create a small bit of database state just for a particular unit test. Writing single use code to just toss in 15 rows using straight JDBC is, by contrast, more err, interesting.
The other thing Spring does for you is that it obviates the need for any hokey J2EE specific harnesses. One of the most sucky things about EJBs is that you have to have a running app server for them to be usable. Spring frees you from this burden. Your ApplicationContext(s) are valid inside and outside the container.
The other thing I would point out is that database schemas should not be such a precious resource. I develop on my laptop, so I don't want to be tethered to my corporate LAN (or any other LAN) in order to develop. Oracle XE is free, easy and quite reasonable resource-wise. MySQL, Postgres and other OSS databases are easy to run locally. Let everyone create their own local database installations. This is perfect for unit/integration/acceptance testing, anything functional in nature. If you deploy with the database on a dedicated server, you will still need to test that scenario, but that only impacts things like performance, high availability, etc. These are certainly important issues, so do test them, but for unit tests, just run a local database.
And as an individual, you can spread the word that sharing is stealing.
Surely even the ass clown that wrote this FAQ had to appreciate the double-speak. Good is evil. Awesome.
I'm not sure about this device. I just bought the Sprint 5740 card (PCMCIA) which is apparently sold by Verizon as well. Linux is not supported, but it is actually easier than Windows to setup. Some people claim you have to activate the card under Windows. I bought mine pre-activated, but I set it up in Windows anyway (had to borrow a laptop) to find out my user name to use in wvdial. I'm guessing if I knew that, Windows would not have been a requirement.
I used this post http://kenkinder.com/evdo-pc5740/ to configure. wvdial wound up working better than pppd for me (Dell Inspiron 9300/FC5). In any event, the cool thing is that under Linux there was nothing to install. My card was autodetected as a usbserial device, and I simply configured wvdial to use it as a modem. Who knew we would be going back to dialup and gladly at that?. I did have to apply a kernel patch to get a performance boost though.
I guess this doesn't directly answer the question, but it may give you an idea of what to expect and what to look for. The short answer is that these devices seem (mostly) to just work under Linux, but under Windows you have to install specialized software and drivers to use the cards which actually was a PITA.
(b) As used in this section, the term `enabling software' means software that, when installed on the user's computer, enables 3rd parties to store data on that computer, or use that computer to search other computers' contents over the Internet.
I'm surprised no one has mentioned this, but this seems to include web browsers too. For that matter, probably Network Neighborhood, not that I would ever use that filth. But still.
I mean you could really stretch this into the networking bits of the kernel.
Great law! Suberb grasp of technology! Everyone's a criminal. Let's all go to jail.
This sounds like a fanciful story. I have been using Linux for 7 years, and I've never had a system crash. I've used some unstable software (including stuff I've been actively developing), but the kernel's been solid.
Now take Unix. I've worked on Solaris, AIX, UX, Tru64 and SCO (pronounced SLOW). In the environments I've worked in, you could easily have 50 people running (unstable) development code on the same box, sometimes simultaneously. You see seg faults, core files, bus errors, etc., but those machines only go down for maintenance.
Contrast this to the Windows world. When I was an indentured servant, I had to do some VB and Access development. I had to "change the oil" every 3 months, not to mention multiple daily reboots. Why do you think Windows users have terms like "change the oil", "three-finger salute", and "BSOD"? There really is no equivalent in the Unix / Linux world. Why do you think Windows admins are so bitchy about end users running third party software in a corporate environment? Windows requires the "right" combination of software and sometimes even the "right" start up sequence. Any little deviation can topple that house of cards.
I've met an MCSE that considered uptime to be continuous if the box only went down for the nightly reboot. Now several companies *have* been able to achieve months of Windows uptime by rebooting nightly.
Face it, Windows does have a place, as a kiddy toy.
I worked for Georgia Tech in college, so I was technically a state employee. As such I had to go through a standard application that included these gems:
Are you or have you ever been a member of the Communist? yes/no
Have you ever advocated that violent overthrow of the government of the state of Georgia? yes/no
Besides being useless screening tools, the first is irrelevant, and the second, well, what the hell would you do if you did violently overthrow a state government?
On another note, I've worked at two companies where you could not change your Windows network password; only an Administrator could do that. Both required frequent password changes, and the protocol was to send a clear text email to a sys admin with your new password.
The last place I worked allowed you to change the Windows password yourself (and required a new one), but there was no mechanism for changing the VSS password. Again the mechanism was to send your new password in clear text to the guy that administered SourceSafe.
And what about using proprietary VPN solutions that require a Windows machine to connect to Unix boxes? Talk about a backdoor. Now you are relying on the impregnability of Windows 98/NT/2000 to keep people from accessing your network.
I worked for another company that required you to shut off your machine every night (can't just logout) for security purposes.
The list for this topic is sadly quite long.
And with sound effects! It's also much easier to add new roads using their interface. Maybe the Denver DOT should check it out.
I've had service from ATT and from Charter. Neither one gave me too much of a hard time about using Linux, but the ATT crew was comical.
:)
I say crew, because they sent 2 guys. The hardware guy knew how to connect coax cable to a jack and how to plug in an RJ-45 connector. The software guy knew how to click 'Next' on the Internet Exploiter install.
The software guy sat down at my "DOS" prompt and asked me to get back into Windows. So I typed 'startx' and watched him squirm for a few minutes.
Using words like 'illegal' is a bit misleading. They are not debating the legality of any software at all. The Peruvian government is merely mandating that only a certain class of software should be used by the Peruvian government. Why shouldn't they be allowed to decide what they want to use. So if you decide to use only FreeBSD from now on at your house, should I be able to stop you?
As an aside, it seems to me that an open source environment would tend to provide low-entry-barrier employment opportunities for Peruvian developers. The M$ shrink-wrapped software only requires low-skilled 3-fingered workers that can run from machine to machine all day.
On the one hand, Sun appears to be lashing out at a competitor.
On the other hand, this article raises some legitimate concerns that IBM will have to address. But they don't have to convince me. They only need to convince their customers.
As far as I'm concerned, good business or not, running Linux in every possible context makes it stronger.
The commonality I see in all these threads is that if the project is well-implemented (design docs, code comments, good division of labor between modules, etc.), it is ok. Otherwise it will be a maintenance nightmare.
This can be said of almost any software project.
That being said, if you have a MASTERED, say, C, C++, Perl, and Java, you must have a compelling reason to switch languages for a particular subsystem. I don't advise it for the singular reason that it complicates the build process. That in turn complicates the automated testing process. And on and on.
Also, in the 4 languages I listed, there are few tasks that are not readily accomplished if you are not reinventing the wheel.
There are some exceptions to this rule, so it is soft, but I would be loathe to switch languages. I have developed on large-scale platforms in C, Perl, and Java, and I have had to write less than 10 functions in a language other than what I was using as the main development language.
Definitely. I hear people all the time saying, "I want lower taxes." People agree that we don't need to spend $300 B on defense, they agree that Social Security is rotten, they agree that they don't want to spend $50 K/yr on people that smoke pot, but they vote Democrat b/c they feel Clinton/Gore care about them, or they vote Republican because they believe that's good for the stock market. They don't vote Libertarian because they don't feel like they have a chance. Also, the big 2 have pretty well conspired to keep out viable 3rd parties. Do you notice who they allow to get press? Ralph Nader is the biggest 3rd party candidate in the polls. Has anyone read his platform? He wants to dissolve all Fortune 500 companies because they make too much money. He wants to tax the rich back into middle class status. I'm serious. He wants to implement a maximum income so that everything you earn above that goes to Washington. This is who the D & R allow to have a little press. Ralph Nader makes them look like small government. Vote and vote your conscience. Vote on principle, consequences be damned!