Literacy rates in the United States are well above the world average. I don't think the public education system is collapsing on the whole (except for East Palo Alto).
Yes, people on the whole are stupid, therefore democracies will make bad decisions, but to say that democracy itself is not sustainable or that education will somehow make it viable is a bit off the mark.
For one, educated people are still stupid. Most members of congress and the executive branch have advanced degrees. Hell, GW Bush went to Yale and Harvard.
Secondly, we do not have a democracy. We have a republic. This means that the congress is responsible for making the important decisions.
Thirdly, there is no better form of government yet invented than the political system we have today. Sad, but true. A benevolent dictator or monarchy is nice to have for a while, but some punk with a militia will always come in and take the place over.
In summary, education will not help democracy. Democracy (or our version thereof) will continue as it has until some punk with a militia takes over. Then the cycle repeats.
Gelato is not exactly "Ice cream" in Italian. Gelato is the Italian version of ice cream.
If you go to italy and buy a gelato from a street vendor, you'll notice that it's not quite the same.. it's denser and more "gooey". Gelato is often served with two or more scoops of different flavors.
http://www.slowtrav.com/italy/food/gelato.htm
It's worth the trip to Italy to try it. Sure you can buy "gelato" here, but it's just not quite the same.
>Let's start a fund to buy SCO's "intellectual property" when all this litigation eventually drives them into bancruptcy.
That's assuming SCO owns any valuable "intellectual property". They don't own any UNIX patents (Novell has those). They don't own the name "UNIX" (the Open Group has that). They don't own the copyrights to UNIX System V (as per Novell's letters to SCO).
All they have is a poor port of UNIX to i386 and a "weapons of mass destruction" lawsuit machine. You want any of that? I don't.
>Exactly which principles or freedoms are you defending by not buying from companies that use overseas workers?
It's not really a matter of principle, but rather of supporting your own country, which many would argue is a noble thing to do. It's a natural thing to want your children to have a nice place to live when they grow up.
>The freedom to deny people in other countries jobs? Or the principle that the rest of the world owes American residents something?
Not shipping america's jobs overseas and "denying the rest of the world' employment" are vastly different things. I don't know what country you're from, but if this were happening in your country (jobs in your field moving to other countries due to cheap labor), you'd feel negatively about it too and want to support your home team.
There's nothing wrong with supporting US industries in keeping US-grown jobs in the US. Every other country does its best to attract and retain jobs, why is it suddenly evil if we try to do that in the USA?
I don't know... I still get the impression that you're of the "once good, always good" school, and I'm from the "test always" school.
>You do step through all your new code at least once, right? Or at least somehow make sure that it actually ran?
I'll do one better than that. I run it through an entire regression suite every time I make a change.
jUnit etc... are about automating the ability to drive the code in a predefined manner, writing assertions when something fails. I.E. I have this data structure, I pass it to this method, then I make assertions about the output. This dovetails quite nicely with assertions written in the code itself.
I agree with the idea to simplify and work on smaller units... that's also why automated testing is so important. It can allow you to regression test your component against someone else's code, also automated.
Sure, you'll peek at the debugger the first couple of times you run your automated tests, but the days of hammering away at a program manually to verify a small component thereof are over. Components need to be verified independently, then togther in a completely automated fashion. The last thing you want is your intern looking at the output - he can make a mistake. Your xUnit test cases can't.. they've been verified a thousand times.
>Well maybe Apple, sadly that involved having a virtual monopoly over how the machines are made, there. That methodology simply wouldn't work in the general PC market.
I don't think that's quite fair. You're right that one market does have a problem, but I'm not sure that you're pointing the finger in the right direction.
The non-geek market just runs whatever OS is on their computer and doesn't care. They rarely have problems finding drivers because they never change the OS. They could quite easily buy a machine pre-installed with Linux and be quite happy with it.
The uber-geek market, on the other end of the spectrum, only buys hardware that will work with linux, or they contribute to missing drivers.
The semi-geek market is tricky. These are the folks that have very high expectations for Linux and aren't willing to change their hardware to use it. They don't have the inclination to write drivers that are missing.
Is it realistic for Linux to have every concievable driver packaged with every distribution? I think not. Perhaps the semi-geek population needs their expectations adjusted... realize that with ANY OS change, sometimes hardware compatibility is a problem. Do some research and get the right hardware.
I think you're still missing the point. The unit test frameworks are quite simple, and you're right that "assert" is a major function... but when you use these frameworks properly, you can fully test your code after every compile!
Asserts are only half of the picture... how do you plan to validate that the code works?
Imagine if you've got 200 people working on a project... the GUI is about 3 layers up from yours, and there are three layers below you. How are you going to make sure that your code works? Surely you're not going to test it manually every day.. Just put assertions in the code and have an intern poke at the GUI randomly?
No, you want to automate it. That's the real point.
>in-built support for unit testing (called a debugger)
Good Lord. Unit testing and debugging are the same thing to you? Yet you have the gaul to call someone else a "script kiddie". Let's hope I don't use any of your software. In the meantime please have a look at the xUnit suite. You might learn something quite useful today.
>Think about it, the average american family watches 4-6hrs of TV a DAY, so if you multiply that by 30 days and divide by say $50, your talking about 33cents for an hours of entertainment. Please find me any other form of media that is so cheap.
$50 is a hell of a lot to pay for free, advertising-supported TV. That $50 does not end up in the coffers of those that produce the programming. It goes to the people that maintain the cable line going into your house.
The channels themselves are paid for by advertising (minus premium channels). All you really pay the cable company for is the maintenance on the cable line going into your home.
That's why "a la carte" is a dumb idea. It's cheaper for the cable company to give you all channels than to let you chose. Packaging was developed only to provide different price points to maximize profits. It was never about the unit cost per channel.
The cost of a cable network to provide N channels to X customers is on the order of N.
The cost to provide a given customers N channels is on the order of 1. (the incremental cost to provide you more channels that they provide to other folks is 0, discounting premium channels)
The cost to provide all customers all channels is therefore on the order of N.
The point of all this: The price points the cable channels have defined for basic/expanded basic, etc... are completely artificial, having nothing to do with the cost. Making the system "a la carte" is a red herring, since it implies that each channel has a cost to the cable company and that the consumer could buy it individually... The fact is that providing ALL channels costs essentially the same as providing ONE channel.
The question people should be asking is not "why can't I buy my channels individually", but "why the hell does expanded basic cost so much?". When did we decide as a society that it was worth $50 a month to watch TV that was supported by commercials? Don't tell me that it costs that much to keep the cable lines or satelite downlinks in operation.
>2.6 is alot bigger than 2.4, so if you are running on a slow computer, or perhaps a low-memory computer built into something (fridge or car?) you might want to use 2.4 or maybe 2.2
That's interesting. I suppose for ultra low memory situations, it might be easier to stick with 2.4... I wonder how much different the memory footprint is for an absolutely bare-bones kernel. I suspect the difference would not be large, and may even be negative. If you want to run some applications in addition to the kernel, you probably want to go with 2.6 for its enhanced memory management.
If you're talking raw speed, 2.6 clearly wins, even on slower processors.
Remember, Linux is not like Windows. It usually gets FASTER with each release.
>Yes, its fast, but the fastest horse doesn't compare very well to a decent car.
This is true now, but was not true when cars were first invented. My point is that coLinux is new and has not yet been optimized. Sure it's theoretically faster, but I doubt it is in practice. To use your analogy, coLinux is much like a pre model T car and linux under VMWare is a champion thoroughbred.
>Well, obviously most professional jobs WON'T go overseas. And those that do will get replaced by other jobs in new sectors. Really, what's happening today isn't any more disruptive than say, the transition from a farming to industrial economy, or from industrial to services.
I've heard that before too. Perhaps I'm being a luddite, but I just can't imagine that a service-based economy can grow in wealth. How can you grow in wealth if you import all your goods (and many services) and export next to nothing? If there were some growth sector that generated exports in the US that I was aware of, I'd be much more comfortable with the idea.
>The same argument you're making here has been often made about automation, like industrial robots. The implicit assumption seems to be that consumption is a constant, so reducing the amount of work it requires to make something will reduce employment. Which is an obvious fallacy - improved productivity leads to increased consumption of good and services, which is a good thing.
>Outsourcing, like automation, is locally painful, but broadly beneficial, and the benefits outweigh the losses.
I've heard this argument before... it convinces a lot of folks, but it doesn't convince me. The reason: Education. We were able to increase productivity through automation because we were simultaneously increasing the education of our workforce. People made money by engineering and repairing these robots. Now you're saying the same thing is true for professional jobs. Somehow we'll magically get new jobs and increase our productivity.. but what's the mechanism? It's not education anymore, is it?
How exactly does the middle-class American stay middle-class when no amount of education will get them a middle-class job, because most professional jobs have gone overseas? How is that beneficial?
>Now, as a society, we need to be working hard at reducing the number of people we have who can't do skilled jobs.
What good is that if you're exporting all your skilled jobs to other countries? Wouldn't you then have a massively unhappy and underemployed population? I don't get your point in the context of this thread. It does someone no good to get a degree in Engineering if they have to pump gas to make a living anyway.
>you are missing the point, It's both ability AND cost. The indians are at least "good enough" and they are also cheeper.
I don't think I am missing the point at all. I agree with what you say, but I'd reverse the order: Offshore engineers are cheaper and are also "good enough". The primary reason this occurs is not to acquire skills. It's to save money.
>and I might add that, in the US at least, the education is going down.
What does this mean? "The education is going down?" If you were educated in the US, then perhaps you've proved your own point (whatever it was).
If not, however, I'd need to see a point backed by a bit of evidence. It's OK if English is not your first language, but if you're going to make statements like this, it would be nice to see some evidence to back it up.
>So, who has more of these knowledgable people. India graduates about 250,000 engineers a year. They are highly skilled with a high ability to learn. In tern (sic) the US has a decining rate of graduating engineers.
Are you really suggesting that the US does not produce enough engineers to meet demand? This may have been true in the 90s, but that is a distant memory today. Companies are not outsourcing in order to find skills they can't find here, or at least I've seen no evidence to suggest that.
What exactly are you saying? That people work harder in other nations than in the US? I have seen no evidence to suggest that either. I have seen a lot of evidence to suggest that companies can find dirt cheap labor overseas. That's the real reason outsourcing occurs.
What effect do you feel the outsourcing of professional jobs has on the economy? When manufacturing moves offshore, it's easy to say we'll all be employed with "knowledge jobs", but what happens when the knowledge jobs move offshore? Doesn't this equate to leaving our own highly skilled individuals unemployed/underemployed while we're pumping money into a foriegn economy via payroll? If we oursource our professional jobs, where will stateside consumers get the money to purchase the (now cheaper?) products? Is a "service only" economic model sustainable for the United States?
Some brick and mortar retailers clearly are in trouble. Music and dvds (and even books) are easy targets for online retailing because they're small (easy to ship), pre-packaged, require little "service" around each sale, and people usually know what they want.
On the other hand, there are clearly markets where "brick and mortar" stands tall... high service sales, furniture, home decorating, clothing, food, etc.
What you need to decide is: Is your business providing added value over an online sale? If not, guess what? You're going away. You can't get away with selling everyday goods at a high markup with little customer service anymore. The market has changed. Evolve or become extinct.
>We can't unionize, because there are simply too many people who can do what we (systems administrators, network administrators, programmers, etc) can do.
You're forgetting that unions were invented (and work quite well) for UNSKILLED labor. (witness the teamsters) Professional unions also do quite well even when the market is saturated (witness the writers guild). I don't think the IT market is too staturated by any means to make an effective union. Hell, SafeWay checkers are unionized and they make more money that your average software developer.
The IT workers and software developers of the United States should definately unionize to slow the rate of job loss due to outsourcing.
Other than that, I agree with what you say. I'm just not quite willing to give up on the US's technology sector just yey.
Literacy rates in the United States are well above the world average. I don't think the public education system is collapsing on the whole (except for East Palo Alto).
Yes, people on the whole are stupid, therefore democracies will make bad decisions, but to say that democracy itself is not sustainable or that education will somehow make it viable is a bit off the mark.
For one, educated people are still stupid. Most members of congress and the executive branch have advanced degrees. Hell, GW Bush went to Yale and Harvard.
Secondly, we do not have a democracy. We have a republic. This means that the congress is responsible for making the important decisions.
Thirdly, there is no better form of government yet invented than the political system we have today. Sad, but true. A benevolent dictator or monarchy is nice to have for a while, but some punk with a militia will always come in and take the place over.
In summary, education will not help democracy. Democracy (or our version thereof) will continue as it has until some punk with a militia takes over. Then the cycle repeats.
Gelato is not exactly "Ice cream" in Italian. Gelato is the Italian version of ice cream.
If you go to italy and buy a gelato from a street vendor, you'll notice that it's not quite the same.. it's denser and more "gooey". Gelato is often served with two or more scoops of different flavors.
http://www.slowtrav.com/italy/food/gelato.htm
It's worth the trip to Italy to try it. Sure you can buy "gelato" here, but it's just not quite the same.
>Let's start a fund to buy SCO's "intellectual property" when all this litigation eventually drives them into bancruptcy.
That's assuming SCO owns any valuable "intellectual property". They don't own any UNIX patents (Novell has those). They don't own the name "UNIX" (the Open Group has that). They don't own the copyrights to UNIX System V (as per Novell's letters to SCO).
All they have is a poor port of UNIX to i386 and a "weapons of mass destruction" lawsuit machine. You want any of that? I don't.
>Exactly which principles or freedoms are you defending by not buying from companies that use overseas workers?
It's not really a matter of principle, but rather of supporting your own country, which many would argue is a noble thing to do. It's a natural thing to want your children to have a nice place to live when they grow up.
>The freedom to deny people in other countries jobs? Or the principle that the rest of the world owes American residents something?
Not shipping america's jobs overseas and "denying the rest of the world' employment" are vastly different things. I don't know what country you're from, but if this were happening in your country (jobs in your field moving to other countries due to cheap labor), you'd feel negatively about it too and want to support your home team.
There's nothing wrong with supporting US industries in keeping US-grown jobs in the US. Every other country does its best to attract and retain jobs, why is it suddenly evil if we try to do that in the USA?
I don't know... I still get the impression that you're of the "once good, always good" school, and I'm from the "test always" school.
>You do step through all your new code at least once, right? Or at least somehow make sure that it actually ran?
I'll do one better than that. I run it through an entire regression suite every time I make a change.
jUnit etc... are about automating the ability to drive the code in a predefined manner, writing assertions when something fails. I.E. I have this data structure, I pass it to this method, then I make assertions about the output. This dovetails quite nicely with assertions written in the code itself.
I agree with the idea to simplify and work on smaller units... that's also why automated testing is so important. It can allow you to regression test your component against someone else's code, also automated.
Sure, you'll peek at the debugger the first couple of times you run your automated tests, but the days of hammering away at a program manually to verify a small component thereof are over. Components need to be verified independently, then togther in a completely automated fashion. The last thing you want is your intern looking at the output - he can make a mistake. Your xUnit test cases can't.. they've been verified a thousand times.
>Well maybe Apple, sadly that involved having a virtual monopoly over how the machines are made, there. That methodology simply wouldn't work in the general PC market.
I don't think that's quite fair. You're right that one market does have a problem, but I'm not sure that you're pointing the finger in the right direction.
The non-geek market just runs whatever OS is on their computer and doesn't care. They rarely have problems finding drivers because they never change the OS. They could quite easily buy a machine pre-installed with Linux and be quite happy with it.
The uber-geek market, on the other end of the spectrum, only buys hardware that will work with linux, or they contribute to missing drivers.
The semi-geek market is tricky. These are the folks that have very high expectations for Linux and aren't willing to change their hardware to use it. They don't have the inclination to write drivers that are missing.
Is it realistic for Linux to have every concievable driver packaged with every distribution? I think not. Perhaps the semi-geek population needs their expectations adjusted... realize that with ANY OS change, sometimes hardware compatibility is a problem. Do some research and get the right hardware.
I think you're still missing the point. The unit test frameworks are quite simple, and you're right that "assert" is a major function... but when you use these frameworks properly, you can fully test your code after every compile!
Asserts are only half of the picture... how do you plan to validate that the code works?
Imagine if you've got 200 people working on a project... the GUI is about 3 layers up from yours, and there are three layers below you. How are you going to make sure that your code works? Surely you're not going to test it manually every day.. Just put assertions in the code and have an intern poke at the GUI randomly?
No, you want to automate it. That's the real point.
>in-built support for unit testing (called a debugger)
Good Lord. Unit testing and debugging are the same thing to you? Yet you have the gaul to call someone else a "script kiddie". Let's hope I don't use any of your software. In the meantime please have a look at the xUnit suite. You might learn something quite useful today.
check this out...
http://www.anerispress.com/wltsim/
>Think about it, the average american family watches 4-6hrs of TV a DAY, so if you multiply that by 30 days and divide by say $50, your talking about 33cents for an hours of entertainment. Please find me any other form of media that is so cheap.
$50 is a hell of a lot to pay for free, advertising-supported TV. That $50 does not end up in the coffers of those that produce the programming. It goes to the people that maintain the cable line going into your house.
>Prices for each channel would vary dramatically
Why?
The channels themselves are paid for by advertising (minus premium channels). All you really pay the cable company for is the maintenance on the cable line going into your home.
That's why "a la carte" is a dumb idea. It's cheaper for the cable company to give you all channels than to let you chose. Packaging was developed only to provide different price points to maximize profits. It was never about the unit cost per channel.
The cost of a cable network to provide N channels to X customers is on the order of N.
The cost to provide a given customers N channels is on the order of 1. (the incremental cost to provide you more channels that they provide to other folks is 0, discounting premium channels)
The cost to provide all customers all channels is therefore on the order of N.
The point of all this: The price points the cable channels have defined for basic/expanded basic, etc... are completely artificial, having nothing to do with the cost. Making the system "a la carte" is a red herring, since it implies that each channel has a cost to the cable company and that the consumer could buy it individually... The fact is that providing ALL channels costs essentially the same as providing ONE channel.
The question people should be asking is not "why can't I buy my channels individually", but "why the hell does expanded basic cost so much?". When did we decide as a society that it was worth $50 a month to watch TV that was supported by commercials? Don't tell me that it costs that much to keep the cable lines or satelite downlinks in operation.
>today's hard drives are louder than hell.
:)
Try the new Seagate Barracuda. I can hear my case fans again
>2.6 is alot bigger than 2.4, so if you are running on a slow computer, or perhaps a low-memory computer built into something (fridge or car?) you might want to use 2.4 or maybe 2.2
That's interesting. I suppose for ultra low memory situations, it might be easier to stick with 2.4... I wonder how much different the memory footprint is for an absolutely bare-bones kernel. I suspect the difference would not be large, and may even be negative. If you want to run some applications in addition to the kernel, you probably want to go with 2.6 for its enhanced memory management.
If you're talking raw speed, 2.6 clearly wins, even on slower processors.
Remember, Linux is not like Windows. It usually gets FASTER with each release.
>Yes, its fast, but the fastest horse doesn't compare very well to a decent car.
This is true now, but was not true when cars were first invented. My point is that coLinux is new and has not yet been optimized. Sure it's theoretically faster, but I doubt it is in practice. To use your analogy, coLinux is much like a pre model T car and linux under VMWare is a champion thoroughbred.
I doubt it. VMWare is quite fast. Unless coLinux has some major tweaking done to it, I doubt it would compete with VMWare.
>Well, obviously most professional jobs WON'T go overseas. And those that do will get replaced by other jobs in new sectors. Really, what's happening today isn't any more disruptive than say, the transition from a farming to industrial economy, or from industrial to services.
I've heard that before too. Perhaps I'm being a luddite, but I just can't imagine that a service-based economy can grow in wealth. How can you grow in wealth if you import all your goods (and many services) and export next to nothing? If there were some growth sector that generated exports in the US that I was aware of, I'd be much more comfortable with the idea.
>The same argument you're making here has been often made about automation, like industrial robots. The implicit assumption seems to be that consumption is a constant, so reducing the amount of work it requires to make something will reduce employment. Which is an obvious fallacy - improved productivity leads to increased consumption of good and services, which is a good thing.
>Outsourcing, like automation, is locally painful, but broadly beneficial, and the benefits outweigh the losses.
I've heard this argument before... it convinces a lot of folks, but it doesn't convince me. The reason: Education. We were able to increase productivity through automation because we were simultaneously increasing the education of our workforce. People made money by engineering and repairing these robots. Now you're saying the same thing is true for professional jobs. Somehow we'll magically get new jobs and increase our productivity.. but what's the mechanism? It's not education anymore, is it?
How exactly does the middle-class American stay middle-class when no amount of education will get them a middle-class job, because most professional jobs have gone overseas? How is that beneficial?
>Now, as a society, we need to be working hard at reducing the number of people we have who can't do skilled jobs.
What good is that if you're exporting all your skilled jobs to other countries? Wouldn't you then have a massively unhappy and underemployed population? I don't get your point in the context of this thread. It does someone no good to get a degree in Engineering if they have to pump gas to make a living anyway.
>you are missing the point, It's both ability AND cost. The indians are at least "good enough" and they are also cheeper.
I don't think I am missing the point at all. I agree with what you say, but I'd reverse the order: Offshore engineers are cheaper and are also "good enough". The primary reason this occurs is not to acquire skills. It's to save money.
>and I might add that, in the US at least, the education is going down.
What does this mean? "The education is going down?" If you were educated in the US, then perhaps you've proved your own point (whatever it was).
If not, however, I'd need to see a point backed by a bit of evidence. It's OK if English is not your first language, but if you're going to make statements like this, it would be nice to see some evidence to back it up.
>So, who has more of these knowledgable people. India graduates about 250,000 engineers a year. They are highly skilled with a high ability to learn. In tern (sic) the US has a decining rate of graduating engineers.
Are you really suggesting that the US does not produce enough engineers to meet demand? This may have been true in the 90s, but that is a distant memory today. Companies are not outsourcing in order to find skills they can't find here, or at least I've seen no evidence to suggest that.
What exactly are you saying? That people work harder in other nations than in the US? I have seen no evidence to suggest that either. I have seen a lot of evidence to suggest that companies can find dirt cheap labor overseas. That's the real reason outsourcing occurs.
What effect do you feel the outsourcing of professional jobs has on the economy? When manufacturing moves offshore, it's easy to say we'll all be employed with "knowledge jobs", but what happens when the knowledge jobs move offshore? Doesn't this equate to leaving our own highly skilled individuals unemployed/underemployed while we're pumping money into a foriegn economy via payroll? If we oursource our professional jobs, where will stateside consumers get the money to purchase the (now cheaper?) products? Is a "service only" economic model sustainable for the United States?
>As a brick & mortar retailer.
Some brick and mortar retailers clearly are in trouble. Music and dvds (and even books) are easy targets for online retailing because they're small (easy to ship), pre-packaged, require little "service" around each sale, and people usually know what they want.
On the other hand, there are clearly markets where "brick and mortar" stands tall... high service sales, furniture, home decorating, clothing, food, etc.
What you need to decide is: Is your business providing added value over an online sale? If not, guess what? You're going away. You can't get away with selling everyday goods at a high markup with little customer service anymore. The market has changed. Evolve or become extinct.
>We can't unionize, because there are simply too many people who can do what we (systems administrators, network administrators, programmers, etc) can do.
You're forgetting that unions were invented (and work quite well) for UNSKILLED labor. (witness the teamsters) Professional unions also do quite well even when the market is saturated (witness the writers guild). I don't think the IT market is too staturated by any means to make an effective union. Hell, SafeWay checkers are unionized and they make more money that your average software developer.
The IT workers and software developers of the United States should definately unionize to slow the rate of job loss due to outsourcing.
Other than that, I agree with what you say. I'm just not quite willing to give up on the US's technology sector just yey.