IBM deserve credit for making the IBM PC an open standard
IBM didn't make it an open standard. It was Compaq and others that started shipping clones using a reverse engineered BIOS that opened the door. IBM made the PC credible, that is true, but IBM had no intention of making it open.
Fact is, nobody with any real measure of marketshare wants things open - since that's paving the avenue for competitors to run them down. Openness is something that the underdogs introduce out of necessity, which Compaq was at the time.
Actually most engineering areas are doing well - save for Computer Engineering and Electrical Engineering. There are actually jobs out there for them, they just need to look in other places - defense is hiring like crazy to use up all of their homeland security and ROV budgets.
"All programs (for the most part) must be written by people.... Computers crash because people cant catch that one little fatal error in 10,000 lines of code."
All bridges (for the most part) must be built by people. Bridges collapse because people can't catch that one little fatal error in one or two million components.
The shit coders put out there, I swear... The reason software crashes is that by-and-large it's hacked together, not engineered. You hack a bridge together, and yes, it'll fail. You engineer software, and yes, it will run reliably. It's not fun to do - no easter eggs, no cool tricks, no cramming features in weeks before ship.
I'm stunned at the amount of code that goes out that was written by interns, by unexperienced coders, by people that just don't have a clue. The software industry really has no concept of best practices, no leadership, no authority body. The fact that buffer overflows still happen is stunning.
It's not small projects that work well because out of dumb luck they happen to not fail, or larger projects that work okay because we have 34,000 people looking at the code. If that's 'best practices', then we're doomed.
"Mozilla (www.mozilla.org) has a feedback option to help them debug, many software companies are including this."
Uh huh. Let's translate that to my car: "Hi. Yeah, I'd like to report a bug. I have a Saturn Ion, version 1.1v4. Yeah, when I turn on the left turn signal and then turn on the lights, the car catches on fire. You might want to fix that in the next version. Just though you might want to know. Bye."
The problem is not with modern mathematics, rather with modern mathematicians. Here's where the train comes off the rails:
"Indeed most "Joe Adverage" problems can be reduced to Lie/algebraic geometry problems."
No, most Joe Average problems are how to calculate 15% of a tab and how to bottom-line the monthlies on that house you're looking at and none of them reduce to abstract mathematical principles. It's great that there are a generation of brilliant new chinese mathematicians. It has nothing to do with their educational system and everything to do with their culture. The chinese have one of the highest rates of post-secondary advancement in the world, particularly in fields like engineering and science. As a culture, they've decided to invest in their future knowledge base. That's wonderful. We've decided to invest in economic efficiency, so we turn out shitloads of B.S. degrees and turn them loose on per-capita production, maximizing the number of copies of Office we can shove onto the world population. Is it great? I don't think so, but that's what we as a nation (U.S.) value. Want to change that? Toss out the SATs and the U.S. model for academic advancement through K-12 and college and build one that drives our young people to return their knowledge to society and support the next generation. Be prepared for it to take 1-2 generations to really kick in, though, so given that our longest attention span seems to be 4 years don't expect too much.
There will always be individuals that take up the challenge of pushing their field forward, and it would be nice if more young people did that, but reworking mathematics for that goal would be pointless. Those people would overcome that obstacle.
Me, I'd just as soon toss out all mathematics education if it would yield a more conscientious population, willing to invest in the next generation rather than selfishly exploit them as we do now.
(Just for the record, I too have a high IQ and could join Mensa, but why slut around with people who clearly don't value proper grammar? Oh, and as someone who spent better than a year of his life working problems in S^7, I don't see a point to any but a handful of people needing to deal with an R^4 Klein bottle, or any other higher dimension form.)
The free 30-second previews play instantly and are the same quality as the whole song. Where else can you get that?
Well, I just played a 30 second preview and compared it to a 128 bit AAC encoded version as well as the original CD and the preview is certainly different. The AAC was very difficult to discern from the CD to my ear and it took a few playings. I'm not pro, so just relax. The 30 second preview was very different. I didn't bother to buy the Apple encode track, so I suppose it might sound different than the one I encoded, but my guess is that the preview is lower quality. Still good, mind you, but I don't think it's 128k.
How many people does it have to kill before we decide that it's important?
Probably more than are killed by things that we decide are unimportant. I understand the sentiment, 300 deaths is in the grand scheme quite irrelevant - that's a train accident in India or a typhoon just about anywhere.
Considering the fatalities are currently among older individiuals (>30 - shut up, I'm in there too) then you really need to examine what a comparable mortality rate is for similar individuals that could come into contact with SARS. For those that live in Hong Kong, this is a crisis since they can very casually come into contact. For those in Des Moines that travel to Des Moines, this is not a huge problem since the accumulated risk of travelling there, acquiring some other bug that Iowans aren't resistant to, and so on add up. Sure, they might bring SARS home and infect their family, but that's been true of virually every flu strain that emerged from that region, are equally transmissible, target the same population, and have been known to kill in the tens and hundreds of thousands.
I think the people that are hand waving here are arguing that SARS is no different than one of the many aggressive flu variants that kill as many or more people, yet we don't get so worked up about them because they are just the flu and we've come to expect that we'll get the flu and some will die of it. SARS is a new disease. The last two new diseases that caught people's attention were ebola and AIDS, and that's some nasty company to get tossed into...
Can someone explain how I'm not currently doing this with Mac OS X - and have been since 10.0 shipped?
Each of the client machines in my office are essentially identical. Users sign on and their l/p are authenticated against our Xserve, their home directory (plus appropriate groups, etc) are mounted locally, and they go about their work. Everything runs out of their account on the server. We mount via AFP, but we could do NFS if we opted.
Users have no idea that they aren't working locally until they need to walk up to some other machine, log in, and everything is exactly the same. Users can run multiple sessions from their account as well. Network traffic isn't too bad since it's generally only reading config files and prefs and hitting the server on demand.
BTW, this is a pretty straightforward setup on OS X Server. If the server is on your subnet (mine isn't) then you hang the entire thing off of DHCP - plug in a brand new machine out of the box and you can hit your user account with no configuration. That's cool...
At a function about 3 years ago, I asked two Boeing VPs whether or not they felt that Software Engineers should be licensed, overlooking the fact that Boeing doesn't need to hire PEs because the company covers the engineers liability. The Texas law had just been passed, IIRC.
Their divisions each had a substantial investment in software engineers, one more so than the other. And they had slightly different opinions.
They both felt that it should be a licensed profession based on the quality of the people they hired. One hated the CS people they hired, because they were too eager to do thing. He'd rather train an EE to program, because within 2 years they'd be far more productive and introduce fewer problems. The EEs he felt had a respect for failure that the CS students lacked. He especially cited the degradation of most CS programs during the 90s due to the perception of incoming students that they should all turn into Windows coders. Perhaps things will perk up now that the market has tanked. The other didn't have a strong opinion about where they came from, but he noted they tended to hire more out of engineering than CS programs.
One felt that Software Engineering wasn't mature enough yet because it lacked a set of rigorous standards. Civil Engineers know how much you can safely load a beam, EEs know failure points on components, but Software Engineers don't have these - or don't have them laid out as standards. What is the standard for preventing buffer overflow? etc. Until there are well regarded standards for Software Engineering practice, there's probably not much value in licensure. Of course, licensure isn't important to them, so they might not have been so hot on it.
I've also spent time with some Biomedical execs that deal with software in their industry and they expressed more urgent need for it. For one, they're accustomed to accountability through the FDA and physician liability. One pointed out that medical device companies tend to be pretty small - not unlike civil engineering firms, and simply don't have the resources to cover their own liability. They need licensure. They worry less about the hardware development because they can hire licensed EEs or MEs.
Unfortunately, Illustrator has a problem in that the app double-buffers the display, and OS X automatically double-buffers the display, so you've got a lot of unncessary graphics crap going on. That's a big part of the glacial screen redraws and I don't think that CPU would fix it. The Windows version doesn't suffer from this.
On top of that Illustrator does have some other bug fixes and optimizations to do. Hopefully we'll get a 10.1 version before too long.
Well, are we talking about computer science or about software engineering. To my thinking, these are about as similar as physics and electrical engineering.
Systems Engineering is really just a superset of Software Engineering, but in the end both are primarily concerned with how *all* of the bits and pieces fit together properly, not on the details. The systems engineers are the ringleaders of the other engineers, they don't always know how to make each piece work, as they focus on making sure the completed pieces work together as they should.
Think of them more like Civil Engineers. You don't see any Civil Engineers out there pouring concrete or hammering a timber structure together, but they make sure that the tradesmen that do these things do them to the right specs, lest you end up with this.
Truth be told, there are entirely too few Systems Engineering and Software Engineering programs out there considering the demand for them.
I use them all the time. I have a 40GB 2.5" firewire drive that I shuttle back and forth from the office. It has 3 encrypted images on it that I use for offsite backups of our most important data.
Performance isn't bad at all. I don't even notice it in my application since my bottleneck is the 100T connection to the server rather than the 400Mb Firewire bus or the encryption speed, but even with local copies, a G4 should do a fine job of keeping up with the Firewire bus.
The FW 800 bus will be a little different matter. Maybe the dual 1.42 G4 can do it, but I doubt my lowly PB could.
This is part and parcel of what I do for a living and most of you have this entirely wrong.
It's not discrimination, or dislike for single tasks, but something fairly simple. The Times article almost says it, but not quite.
Women, as a group, tend toward careers that have clear social roles. Areas like psychology, sociology, education lead to careers that contribute positively to society and individuals. Not only do they lead to those careers, they *obviously* lead to those careers, without anyone having to tell them that people with degrees in widgetology can go on to a social career.
Engineering and Computer Science often lack that. The fields that do best are Environmental Engineering, Civil Engineering, Bioengineering, and maybe Chemical Engineering. They suggest more societal, humanistic careers and as a result have significantly higher numbers of women participating.
Computer Science, Electrical Engineering, Industrial Engineering, and so on don't obviously suggest societal careers. Everybody pushes Intel and MS as employers. There's little attention paid to bringing power and communications to underdeveloped nations as there is with Civil Engineering and bringing clean water and waste treatment to the same population. If that was part of the culture of these fields, you'd probably attract more women to the field.
Once in the programs, women consistently outperform men. The problem is marketing and focus. The discrimination angle is easy to claim since the people in the field have historically not been interested in social issues - so people that bring social issues are ignored, and the cycle repeats. In order to get more women into EE, we need more women in EE, or at least more men in EE that see the field as something more than inventing the next blue LED.
I ask, what socially oriented career would you suggest out of CS? I'm not suggesting that they aren't there - rather that nobody has bothered to think about them, let alone articulate them.
There are two lines of thinking as to why women look for social careers. One is the nature angle where women are maternal and driven to help people, the other is the practical angle where women realistically need to consider careers that they can leave for a few years and return to. People don't change nearly as quickly as technology, and careers that emphasize technology over people are much harder to leave and later return. Consider leaving the programming field altogether for 5 years and trying to return to a career. Not impossible, but not easy either.
Not to beat a dead horse here, but most of the programmers I've met (myself included) are not engineers, though they often take Engineer in their title.
Engineering has nothing to do with programming languages and CAD software and everything to do with the ability to identify problems and develop an *appropriate* solution. Where most programmers fail this test is their oft inability to choose the best tool for the job, to realistically determine costs, time to product, staffing, systems integration, maintenance, reliability, and a raft of other factors that lead to a successful job. Instead, most that I've met are quite adept at shoehorning whatever problem into the toolbox that they have at hand.
When you can afford to throw bodies at problems and it doesn't matter what you ship as long as it brings in the VC dollars, then none of those factors matter much. When you need to get a specific product or service to market on time, on budget, with the reliability and servicability that the client demands, then all these factors come into play - and I don't know many programmers that can rise to the challenge.
Good engineers can function without the technology and will adapt their knowledge to the problem at hand. In many cases they're happy to invent the tools they need to solve the problem.
Two problems plague the programmer community: 1) a history of sloppiness. Software moves ahead not because of some underlying set of principles but mostly due to unplanned intertia. If there was a community effort to improve the industry, you'd see things like C++ being formally phased out in favor of more reliable languages like Java for new development. That's not happening. 2) the realization by industry that coders can really be treated like tradesmen, and that the real engineering can be handled by a select few.
You notice that on a worksite for a new building that you don't have 200 civil engineers doing the construction. It's too expensive, and nothing would get done. Instead, you have 20 civil engineers and 180 tradesmen. The tradesmen are skilled in the tools, the engineers skilled in design. It's cheaper and more efficient because the engineer doesn't need to know much about the tools except for their suitability, and not always even that. The tradesmen can focus on their field and stay up with technology.
In the sofware world, expect 'programmer' to phase into 'coder', a bunch of people with AA level degrees that know Java or C or SQL like nobody else, but don't know the first thing about designing a large system. Expect much of the design work to go to software engineers who will direct the coders. The engineers should come from traditional engineering backgrounds - it's basically systems engineering with a software focus. They'll be on site with the client, assessing their needs, etc. The coders can easily be in India or wherever else coding to spec.
Coding will be an almost exclusively contract profession. Standards for documentation, testing, and coding will be developed that parallel those for subcontract work in traditional fields.
As for engineering, it seems to be doing reasonably well. Civil engineering is doing exceedingly well now, as is mechanical engineering and materials engineering. Environmental is struggling (Republican president and congress, and all that) as are EE and the computer fields. Much of the shift seems to be to defense and infrastructure and away from consumer products and services. Engineering is still a good deal, but that CS degree may not take you where you thought it would.
IBM deserve credit for making the IBM PC an open standard
IBM didn't make it an open standard. It was Compaq and others that started shipping clones using a reverse engineered BIOS that opened the door. IBM made the PC credible, that is true, but IBM had no intention of making it open.
Fact is, nobody with any real measure of marketshare wants things open - since that's paving the avenue for competitors to run them down. Openness is something that the underdogs introduce out of necessity, which Compaq was at the time.
Right.
You give industry a choice:
1) MS becomes a utility (as I agree they should given the current conditions)
2) Support breaking them up, thereby changing the current conditions.
Honestly, I think RIAA would do well to back off. If they manage to kill off P2P trading, it will only be replaced by something much, much worse.
Yes, my god, could you imagine if people started making their own music? It's probably be the end of civilization as we know it...
3. Multiple docks. One for office apps. One for games. One for graphical/web apps. And in the darkness bind them... ;-P Just being silly.
Actually, that's what fast user switching is for. Create another account for your games and you get another dock.
That's fair. Most Mac people have the same sentiment about Wintel boxes these days.
Actually most engineering areas are doing well - save for Computer Engineering and Electrical Engineering. There are actually jobs out there for them, they just need to look in other places - defense is hiring like crazy to use up all of their homeland security and ROV budgets.
Forget about Intel, talk to Boeing.
You forgot rods to the hogshead
Ok, now you're just making shit up!
Hmm, I think I've met a few of the humans in the 99.9% range...
"All programs (for the most part) must be written by people. ... Computers crash because people cant catch that one little fatal error in 10,000 lines of code."
All bridges (for the most part) must be built by people. Bridges collapse because people can't catch that one little fatal error in one or two million components.
The shit coders put out there, I swear... The reason software crashes is that by-and-large it's hacked together, not engineered. You hack a bridge together, and yes, it'll fail. You engineer software, and yes, it will run reliably. It's not fun to do - no easter eggs, no cool tricks, no cramming features in weeks before ship.
I'm stunned at the amount of code that goes out that was written by interns, by unexperienced coders, by people that just don't have a clue. The software industry really has no concept of best practices, no leadership, no authority body. The fact that buffer overflows still happen is stunning.
It's not small projects that work well because out of dumb luck they happen to not fail, or larger projects that work okay because we have 34,000 people looking at the code. If that's 'best practices', then we're doomed.
"Mozilla (www.mozilla.org) has a feedback option to help them debug, many software companies are including this."
Uh huh. Let's translate that to my car: "Hi. Yeah, I'd like to report a bug. I have a Saturn Ion, version 1.1v4. Yeah, when I turn on the left turn signal and then turn on the lights, the car catches on fire. You might want to fix that in the next version. Just though you might want to know. Bye."
The problem is not with modern mathematics, rather with modern mathematicians. Here's where the train comes off the rails:
"Indeed most "Joe Adverage" problems can be reduced to Lie/algebraic geometry problems."
No, most Joe Average problems are how to calculate 15% of a tab and how to bottom-line the monthlies on that house you're looking at and none of them reduce to abstract mathematical principles. It's great that there are a generation of brilliant new chinese mathematicians. It has nothing to do with their educational system and everything to do with their culture. The chinese have one of the highest rates of post-secondary advancement in the world, particularly in fields like engineering and science. As a culture, they've decided to invest in their future knowledge base. That's wonderful. We've decided to invest in economic efficiency, so we turn out shitloads of B.S. degrees and turn them loose on per-capita production, maximizing the number of copies of Office we can shove onto the world population. Is it great? I don't think so, but that's what we as a nation (U.S.) value. Want to change that? Toss out the SATs and the U.S. model for academic advancement through K-12 and college and build one that drives our young people to return their knowledge to society and support the next generation. Be prepared for it to take 1-2 generations to really kick in, though, so given that our longest attention span seems to be 4 years don't expect too much.
There will always be individuals that take up the challenge of pushing their field forward, and it would be nice if more young people did that, but reworking mathematics for that goal would be pointless. Those people would overcome that obstacle.
Me, I'd just as soon toss out all mathematics education if it would yield a more conscientious population, willing to invest in the next generation rather than selfishly exploit them as we do now.
(Just for the record, I too have a high IQ and could join Mensa, but why slut around with people who clearly don't value proper grammar? Oh, and as someone who spent better than a year of his life working problems in S^7, I don't see a point to any but a handful of people needing to deal with an R^4 Klein bottle, or any other higher dimension form.)
I used to count back change in order to minimize weight. $.30 as 3 dimes is lighter than a quarter and a nickel.
We wanted to get iPods for portable backup and convinced the local store to invoice it as Apple 20GB portable firewire drive rather than iPod.
Not so hard...
Well, it looks like they may be able to record with a firmware update: iPoding article
The free 30-second previews play instantly and are the same quality as the whole song. Where else can you get that?
Well, I just played a 30 second preview and compared it to a 128 bit AAC encoded version as well as the original CD and the preview is certainly different. The AAC was very difficult to discern from the CD to my ear and it took a few playings. I'm not pro, so just relax. The 30 second preview was very different. I didn't bother to buy the Apple encode track, so I suppose it might sound different than the one I encoded, but my guess is that the preview is lower quality. Still good, mind you, but I don't think it's 128k.
Yeah, but what about all of those neighborhood cats?
Me, I have a tank of hair depilatory I run through the lawn sprinklers each week. Keeps those cats pink and shiny, and I haven't sneezed in months.
How many people does it have to kill before we decide that it's important?
Probably more than are killed by things that we decide are unimportant. I understand the sentiment, 300 deaths is in the grand scheme quite irrelevant - that's a train accident in India or a typhoon just about anywhere.
Considering the fatalities are currently among older individiuals (>30 - shut up, I'm in there too) then you really need to examine what a comparable mortality rate is for similar individuals that could come into contact with SARS. For those that live in Hong Kong, this is a crisis since they can very casually come into contact. For those in Des Moines that travel to Des Moines, this is not a huge problem since the accumulated risk of travelling there, acquiring some other bug that Iowans aren't resistant to, and so on add up. Sure, they might bring SARS home and infect their family, but that's been true of virually every flu strain that emerged from that region, are equally transmissible, target the same population, and have been known to kill in the tens and hundreds of thousands.
I think the people that are hand waving here are arguing that SARS is no different than one of the many aggressive flu variants that kill as many or more people, yet we don't get so worked up about them because they are just the flu and we've come to expect that we'll get the flu and some will die of it. SARS is a new disease. The last two new diseases that caught people's attention were ebola and AIDS, and that's some nasty company to get tossed into...
Can someone explain how I'm not currently doing this with Mac OS X - and have been since 10.0 shipped?
Each of the client machines in my office are essentially identical. Users sign on and their l/p are authenticated against our Xserve, their home directory (plus appropriate groups, etc) are mounted locally, and they go about their work. Everything runs out of their account on the server. We mount via AFP, but we could do NFS if we opted.
Users have no idea that they aren't working locally until they need to walk up to some other machine, log in, and everything is exactly the same. Users can run multiple sessions from their account as well. Network traffic isn't too bad since it's generally only reading config files and prefs and hitting the server on demand.
BTW, this is a pretty straightforward setup on OS X Server. If the server is on your subnet (mine isn't) then you hang the entire thing off of DHCP - plug in a brand new machine out of the box and you can hit your user account with no configuration. That's cool...
At a function about 3 years ago, I asked two Boeing VPs whether or not they felt that Software Engineers should be licensed, overlooking the fact that Boeing doesn't need to hire PEs because the company covers the engineers liability. The Texas law had just been passed, IIRC.
Their divisions each had a substantial investment in software engineers, one more so than the other. And they had slightly different opinions.
They both felt that it should be a licensed profession based on the quality of the people they hired. One hated the CS people they hired, because they were too eager to do thing. He'd rather train an EE to program, because within 2 years they'd be far more productive and introduce fewer problems. The EEs he felt had a respect for failure that the CS students lacked. He especially cited the degradation of most CS programs during the 90s due to the perception of incoming students that they should all turn into Windows coders. Perhaps things will perk up now that the market has tanked. The other didn't have a strong opinion about where they came from, but he noted they tended to hire more out of engineering than CS programs.
One felt that Software Engineering wasn't mature enough yet because it lacked a set of rigorous standards. Civil Engineers know how much you can safely load a beam, EEs know failure points on components, but Software Engineers don't have these - or don't have them laid out as standards. What is the standard for preventing buffer overflow? etc. Until there are well regarded standards for Software Engineering practice, there's probably not much value in licensure. Of course, licensure isn't important to them, so they might not have been so hot on it.
I've also spent time with some Biomedical execs that deal with software in their industry and they expressed more urgent need for it. For one, they're accustomed to accountability through the FDA and physician liability. One pointed out that medical device companies tend to be pretty small - not unlike civil engineering firms, and simply don't have the resources to cover their own liability. They need licensure. They worry less about the hardware development because they can hire licensed EEs or MEs.
Unfortunately, Illustrator has a problem in that the app double-buffers the display, and OS X automatically double-buffers the display, so you've got a lot of unncessary graphics crap going on. That's a big part of the glacial screen redraws and I don't think that CPU would fix it. The Windows version doesn't suffer from this.
On top of that Illustrator does have some other bug fixes and optimizations to do. Hopefully we'll get a 10.1 version before too long.
Well, are we talking about computer science or about software engineering. To my thinking, these are about as similar as physics and electrical engineering.
Systems Engineering is really just a superset of Software Engineering, but in the end both are primarily concerned with how *all* of the bits and pieces fit together properly, not on the details. The systems engineers are the ringleaders of the other engineers, they don't always know how to make each piece work, as they focus on making sure the completed pieces work together as they should.
Think of them more like Civil Engineers. You don't see any Civil Engineers out there pouring concrete or hammering a timber structure together, but they make sure that the tradesmen that do these things do them to the right specs, lest you end up with this.
Truth be told, there are entirely too few Systems Engineering and Software Engineering programs out there considering the demand for them.
I use them all the time. I have a 40GB 2.5" firewire drive that I shuttle back and forth from the office. It has 3 encrypted images on it that I use for offsite backups of our most important data.
Performance isn't bad at all. I don't even notice it in my application since my bottleneck is the 100T connection to the server rather than the 400Mb Firewire bus or the encryption speed, but even with local copies, a G4 should do a fine job of keeping up with the Firewire bus.
The FW 800 bus will be a little different matter. Maybe the dual 1.42 G4 can do it, but I doubt my lowly PB could.
This is part and parcel of what I do for a living and most of you have this entirely wrong.
It's not discrimination, or dislike for single tasks, but something fairly simple. The Times article almost says it, but not quite.
Women, as a group, tend toward careers that have clear social roles. Areas like psychology, sociology, education lead to careers that contribute positively to society and individuals. Not only do they lead to those careers, they *obviously* lead to those careers, without anyone having to tell them that people with degrees in widgetology can go on to a social career.
Engineering and Computer Science often lack that. The fields that do best are Environmental Engineering, Civil Engineering, Bioengineering, and maybe Chemical Engineering. They suggest more societal, humanistic careers and as a result have significantly higher numbers of women participating.
Computer Science, Electrical Engineering, Industrial Engineering, and so on don't obviously suggest societal careers. Everybody pushes Intel and MS as employers. There's little attention paid to bringing power and communications to underdeveloped nations as there is with Civil Engineering and bringing clean water and waste treatment to the same population. If that was part of the culture of these fields, you'd probably attract more women to the field.
Once in the programs, women consistently outperform men. The problem is marketing and focus. The discrimination angle is easy to claim since the people in the field have historically not been interested in social issues - so people that bring social issues are ignored, and the cycle repeats. In order to get more women into EE, we need more women in EE, or at least more men in EE that see the field as something more than inventing the next blue LED.
I ask, what socially oriented career would you suggest out of CS? I'm not suggesting that they aren't there - rather that nobody has bothered to think about them, let alone articulate them.
There are two lines of thinking as to why women look for social careers. One is the nature angle where women are maternal and driven to help people, the other is the practical angle where women realistically need to consider careers that they can leave for a few years and return to. People don't change nearly as quickly as technology, and careers that emphasize technology over people are much harder to leave and later return. Consider leaving the programming field altogether for 5 years and trying to return to a career. Not impossible, but not easy either.
Not to beat a dead horse here, but most of the programmers I've met (myself included) are not engineers, though they often take Engineer in their title.
Engineering has nothing to do with programming languages and CAD software and everything to do with the ability to identify problems and develop an *appropriate* solution. Where most programmers fail this test is their oft inability to choose the best tool for the job, to realistically determine costs, time to product, staffing, systems integration, maintenance, reliability, and a raft of other factors that lead to a successful job. Instead, most that I've met are quite adept at shoehorning whatever problem into the toolbox that they have at hand.
When you can afford to throw bodies at problems and it doesn't matter what you ship as long as it brings in the VC dollars, then none of those factors matter much. When you need to get a specific product or service to market on time, on budget, with the reliability and servicability that the client demands, then all these factors come into play - and I don't know many programmers that can rise to the challenge.
Good engineers can function without the technology and will adapt their knowledge to the problem at hand. In many cases they're happy to invent the tools they need to solve the problem.
Two problems plague the programmer community:
1) a history of sloppiness. Software moves ahead not because of some underlying set of principles but mostly due to unplanned intertia. If there was a community effort to improve the industry, you'd see things like C++ being formally phased out in favor of more reliable languages like Java for new development. That's not happening.
2) the realization by industry that coders can really be treated like tradesmen, and that the real engineering can be handled by a select few.
You notice that on a worksite for a new building that you don't have 200 civil engineers doing the construction. It's too expensive, and nothing would get done. Instead, you have 20 civil engineers and 180 tradesmen. The tradesmen are skilled in the tools, the engineers skilled in design. It's cheaper and more efficient because the engineer doesn't need to know much about the tools except for their suitability, and not always even that. The tradesmen can focus on their field and stay up with technology.
In the sofware world, expect 'programmer' to phase into 'coder', a bunch of people with AA level degrees that know Java or C or SQL like nobody else, but don't know the first thing about designing a large system. Expect much of the design work to go to software engineers who will direct the coders. The engineers should come from traditional engineering backgrounds - it's basically systems engineering with a software focus. They'll be on site with the client, assessing their needs, etc. The coders can easily be in India or wherever else coding to spec.
Coding will be an almost exclusively contract profession. Standards for documentation, testing, and coding will be developed that parallel those for subcontract work in traditional fields.
As for engineering, it seems to be doing reasonably well. Civil engineering is doing exceedingly well now, as is mechanical engineering and materials engineering. Environmental is struggling (Republican president and congress, and all that) as are EE and the computer fields. Much of the shift seems to be to defense and infrastructure and away from consumer products and services. Engineering is still a good deal, but that CS degree may not take you where you thought it would.
You must be a private sector engineer, then. For ten kilometers per hour a NASA Mars probe engineer would say 10MPH.
Well, blame it on MS for winning the look-and-feel suit against Apple. Had they lost, then we could just point MS at them.