What you really want to ask is "Why is programming hard"? It's hard because you have to know what you want to do. Go to any random company and ask a random employee how the company does what it does. What are its products, who are its customers, what do those customers want, what tasks does the business need automated to perform more efficiently? Projects fail so frequently (What is it, about 70% of the time?) because managers and some programmers think you can just start crapping out code without considering any of these things. You want a simplified environment where you can just draw a bunch of boxes together, but even if you had such an environment (As witnessed by the testimony of the people who have replied who do) it's STILL hard because you STILL have to know what you want. Programming is not fucking magic. We can't just crap out a bunch of code that magically does everything you want. Those of us who make it look easy have spent a lot of time mastering our craft. And we're still programming in text because we've found that it's the most efficient way of doing things, most of the time.
2) Screw customers around until they're out of warranty
3) Tell them there's a patch that will fix the defect, but they need to pay for a support contract
4) Profit!
Hmm. No question marks in there, must be a bullet proof business model. It's not a new one, though. My parents got a TV from Sears back in the early '70's and apparently it had constant problems that Sears and the manufacturer jerked them around on until it went out of warranty. They tell the story to this day and would refuse to shop at Sears ever since then (For you kids, Sears was like an expensive Wal*Mart that usually lived in shopping malls and sold over-priced hardware to gullable buyers. Kind of like Best Buy.) They also had similar experiences with a couple of car manufacturers and also refuse to buy a couple of brands of cars now. During my customer care training at IBM they told us that an angry customer will tell on average 10 of his friends about his bad experience with your company. A happy customer typically won't tell anyone.
As for my experience with HP, I had to support HPUX as part of a multi-platform driver solution back in the '90's. The environment kind of sucked to work on, but at least it wasn't SCO (Which I also had to support.)
Use iptables to block outgoing requests to any port 80. Then decertify all the certs you don't trust (all of them.) Congratulations! Your web browsing experience is now secure!
Well in-house at companies. Actually that's not even really true now that I think about it. I did have to read some of the original AT&T UNIX code once. Those guys were brilliant programmers. But it wasn't really my job to maintain their software either, and I found a couple of doozies of security holes.
Open source projects I've looked at usually tend to be on the better side of of the balance. You really have to enjoy programming to start one and you probably understand your problem domain a bit better. There tends to be an assumption that if you're paid to write code you must crap daisies and unicorns. This is not true. This is not true AT ALL.
In 20+ years in the industry I haven't seen a single well-designed piece of code. The problems are twofold; the project itself most likely evolved out of a need. Frequently they start out small in scope, perform tasks that nothing else does better than anything else the company had, and grew out of necessity. They weren't so much designed as taped together based on needs that were not clearly enumerated and are poorly documented if they're documented at all. Second, you probably don't understand the business process at the company. I've found it generally takes about a year to really start to understand the processes behind the code. Until then things that look like side effects or bugs probably have a very good reason. One you won't discover until you "fix" them.
The new programmer, in this situation, may very well be seized by the impulse to throw that old turd out and rewrite it, but a turd in the hand is worth two in the bush. Replacing the application wholesale usually leads to an expensive boondoggle that has all the bugs that the old program has already fixed and delivers a fraction of the original functionality. You hear stories about this all the time.
That doesn't mean you can't improve the design as you're adding new features or fixing bugs. Especially once you start to understand how the program works. You can isolate it into a test environment (because most of the time they're just building and deploying directly to production,) push the thing up to a version control server if they don't already do that, improve the build and deploy process and improve the design of the code in ever increasing scope until that turd has a really nice polish on it.
So everyone probably should get at least some exposure to it. Some of them will probably like it and go on to be programmers. But I think it's more important to focus on applying the knowledge you've picked up in school to solving problems the students haven't encountered before. School learning seems to be increasingly just memorization and teaching to tests, and a lot of people that I meet don't seem to be particularly good at synthesizing solutions to problems they haven't seen before. There seems to be an aversion to experimentation, even when the experiment would not be terribly expensive to run. I prefer a hands-on approach where we poke at a problem, try a few things, keep the stuff that seems to work well and throw out the stuff that didn't.
Lots of people die from panic. It causes very poor judgment. It causes people to forget the safety procedures they were drilled in. It causes people to miss obvious things that could save them. It causes you to burn vital resources faster. If you panic, you die. You might still die if you don't panic, but your odds are a whole lot better.
You gotta wonder at what stage of our evolution, stampeding in the face of danger was a good thing. Sure the adrenaline from the fight-or-flight reflex is somewhat useful, but the down-sides are pretty damn deadly. I'd rather have full control over my meatputer, which should be my number one asset for resolving deadly situations, not just ten pounds of useless fat.
What do you need a desktop for if all you ever do is launch a browser? Ok, that's a somewhat simplistic version, but I have about 4 applications that I ever launch from icons. Everything else takes place in a terminal. So I don't need some sluggish-ass desktop environment. I just want a reasonably fast, reasonably intuitive window manager that has the ability to do focus-follows-mouse. Every time I've tried Unity, it's failed in at least 2 or possibly all three of those requirements. Gnome 2 with a decent window manager used to work reasonably well, but even back then the configuration process was a little too much like editing a Windows registry for my taste. I don't know anyone who likes the direction they've been going. KDE seems to work reasonably well, but has a long startup time and is still really more than I need. I'm currently back on Enlightenment, which loads in about 2 seconds on my desktop and has everything I need installed by default. I have my 4 icons set up, usually have a bunch of terminal windows open, and am able to work effectively in it.
All those other guys can keep their all-encompassing UI vision. I don't want their kool-aid. I'm glad I get a choice in Linux. I may have to occasionally beat my head on the computer for days at a time when something stops working, but at least I can avoid having some corporate assholes or desktop environment programmers who like the smell of their own farts ramming their bullshit down my throat.
You never know when your agency might be declared illegal and have to go rogue. If that happens you're going to need a fast source of funding. So it kind of makes sense if you think about it...
Oh sure! I did some car-skating to work on a sheet of snow no less than 2 inches deep! They don't so much plow here as pack the snow down and polish it. They claim to put some shit down on the road that causes the snow to melt and keep the roads clear, but it doesn't!
I've lived down South though, and you have a lot of people who don't know how to drive in the snow trying to drive in the snow. Many of them don't have tires that are at all good for it. You don't really need snow tires for it, just a good set of all-season radials, but keep in mind down there the city's not able to do anything to clear the snow off. So your road conditions are a lot worse, people don't have the right tires (or they had the right tires and wore 'em down too much) and have no experience driving in snow.
What I find fascinating is that people will sit in their cars for 12 hours or more in gridlock traffic. At some point don't you think "Hey, maybe I should get off the damn road and seek the nearest shelter?" Apparently they don't, in Atlanta. It seems like very bad judgment on the part of millions of people...
That's what they SHOULD have done. You may not be prepared for your one snow event every three years, but if you're not, you fucking shut your city down when the forecast calls for 2 inches! If that costs more than keeping that fleet of 500 vehicles and stockpile of magnesium chloride on hand, then maybe you should be better prepared the next time it happens!
Well yeah they kind of invented the fucking things. And everyone else stole the BIOS from IBM. Sorry, I mean "Reverse engineered." Back when that sort of thing was still legal. Of course if you look at IBM, they're really more of a conglomeration of smaller companies and their desktop division got sold a while back. Not profitable enough. So if you had some sort of device that allowed you to travel in time from the past (I have a car that does this, at the rate of one second per second,) you might not recognize the IBM PC division anymore, but I suppose TECHNICALLY they're still there.
Now if you're thinking of PCs in terms of PCs that Apple made, then I suppose Apple might be the only PC maker from that era. I'm pretty sure that's technically a tautology. "Apple is the only company from the PC Era that's still making Apple computers," doesn't have quite the same ring to it, though I think if you say something like that you might get points for comedy value.
So the RNC is encouraging their members to come out against things which are unconstitutional? Where will they find the courage to make such a principled stand? I haven't heard of such a thing since the "No punching babies" resolution of 1978! I also applaud their timely response to the issue, seeing as how we've only known about it for the better part of a year.
Well I remember one of the big thing with OLEDs was you were going to be able to have a stick-on transparent display that you could put anywhere. I guess they just promise that with every new display technology that comes along.
What you really want to ask is "Why is programming hard"? It's hard because you have to know what you want to do. Go to any random company and ask a random employee how the company does what it does. What are its products, who are its customers, what do those customers want, what tasks does the business need automated to perform more efficiently? Projects fail so frequently (What is it, about 70% of the time?) because managers and some programmers think you can just start crapping out code without considering any of these things. You want a simplified environment where you can just draw a bunch of boxes together, but even if you had such an environment (As witnessed by the testimony of the people who have replied who do) it's STILL hard because you STILL have to know what you want. Programming is not fucking magic. We can't just crap out a bunch of code that magically does everything you want. Those of us who make it look easy have spent a lot of time mastering our craft. And we're still programming in text because we've found that it's the most efficient way of doing things, most of the time.
2) Screw customers around until they're out of warranty
3) Tell them there's a patch that will fix the defect, but they need to pay for a support contract
4) Profit!
Hmm. No question marks in there, must be a bullet proof business model. It's not a new one, though. My parents got a TV from Sears back in the early '70's and apparently it had constant problems that Sears and the manufacturer jerked them around on until it went out of warranty. They tell the story to this day and would refuse to shop at Sears ever since then (For you kids, Sears was like an expensive Wal*Mart that usually lived in shopping malls and sold over-priced hardware to gullable buyers. Kind of like Best Buy.) They also had similar experiences with a couple of car manufacturers and also refuse to buy a couple of brands of cars now. During my customer care training at IBM they told us that an angry customer will tell on average 10 of his friends about his bad experience with your company. A happy customer typically won't tell anyone.
As for my experience with HP, I had to support HPUX as part of a multi-platform driver solution back in the '90's. The environment kind of sucked to work on, but at least it wasn't SCO (Which I also had to support.)
Use iptables to block outgoing requests to any port 80. Then decertify all the certs you don't trust (all of them.) Congratulations! Your web browsing experience is now secure!
Open source projects I've looked at usually tend to be on the better side of of the balance. You really have to enjoy programming to start one and you probably understand your problem domain a bit better. There tends to be an assumption that if you're paid to write code you must crap daisies and unicorns. This is not true. This is not true AT ALL.
Was that in the requirements doc? There was a requirements doc, wasn't there?
The new programmer, in this situation, may very well be seized by the impulse to throw that old turd out and rewrite it, but a turd in the hand is worth two in the bush. Replacing the application wholesale usually leads to an expensive boondoggle that has all the bugs that the old program has already fixed and delivers a fraction of the original functionality. You hear stories about this all the time.
That doesn't mean you can't improve the design as you're adding new features or fixing bugs. Especially once you start to understand how the program works. You can isolate it into a test environment (because most of the time they're just building and deploying directly to production,) push the thing up to a version control server if they don't already do that, improve the build and deploy process and improve the design of the code in ever increasing scope until that turd has a really nice polish on it.
Or, you know, not. It's really up to you.
So everyone probably should get at least some exposure to it. Some of them will probably like it and go on to be programmers. But I think it's more important to focus on applying the knowledge you've picked up in school to solving problems the students haven't encountered before. School learning seems to be increasingly just memorization and teaching to tests, and a lot of people that I meet don't seem to be particularly good at synthesizing solutions to problems they haven't seen before. There seems to be an aversion to experimentation, even when the experiment would not be terribly expensive to run. I prefer a hands-on approach where we poke at a problem, try a few things, keep the stuff that seems to work well and throw out the stuff that didn't.
You gotta wonder at what stage of our evolution, stampeding in the face of danger was a good thing. Sure the adrenaline from the fight-or-flight reflex is somewhat useful, but the down-sides are pretty damn deadly. I'd rather have full control over my meatputer, which should be my number one asset for resolving deadly situations, not just ten pounds of useless fat.
All those other guys can keep their all-encompassing UI vision. I don't want their kool-aid. I'm glad I get a choice in Linux. I may have to occasionally beat my head on the computer for days at a time when something stops working, but at least I can avoid having some corporate assholes or desktop environment programmers who like the smell of their own farts ramming their bullshit down my throat.
Mostly just hanging out with Squirrel.
You never know when your agency might be declared illegal and have to go rogue. If that happens you're going to need a fast source of funding. So it kind of makes sense if you think about it...
I've lived down South though, and you have a lot of people who don't know how to drive in the snow trying to drive in the snow. Many of them don't have tires that are at all good for it. You don't really need snow tires for it, just a good set of all-season radials, but keep in mind down there the city's not able to do anything to clear the snow off. So your road conditions are a lot worse, people don't have the right tires (or they had the right tires and wore 'em down too much) and have no experience driving in snow.
What I find fascinating is that people will sit in their cars for 12 hours or more in gridlock traffic. At some point don't you think "Hey, maybe I should get off the damn road and seek the nearest shelter?" Apparently they don't, in Atlanta. It seems like very bad judgment on the part of millions of people...
Sweet! All it needs is Law and Order music!
That's what they SHOULD have done. You may not be prepared for your one snow event every three years, but if you're not, you fucking shut your city down when the forecast calls for 2 inches! If that costs more than keeping that fleet of 500 vehicles and stockpile of magnesium chloride on hand, then maybe you should be better prepared the next time it happens!
Just to get a picture of my dong. They could have just asked, I mean, if it was for national security and all that...
If anyone needs me, I'll be in my underground bunker.
Wow, dunno how I missed that one back then. Their marketing department must have been worst than Commodore's.
I don't think HP made PCs back then. Didn't they jump on the bandwagon after Dell proved you could do it profitably?
Now if you're thinking of PCs in terms of PCs that Apple made, then I suppose Apple might be the only PC maker from that era. I'm pretty sure that's technically a tautology. "Apple is the only company from the PC Era that's still making Apple computers," doesn't have quite the same ring to it, though I think if you say something like that you might get points for comedy value.
So the RNC is encouraging their members to come out against things which are unconstitutional? Where will they find the courage to make such a principled stand? I haven't heard of such a thing since the "No punching babies" resolution of 1978! I also applaud their timely response to the issue, seeing as how we've only known about it for the better part of a year.
Choice between Fairpoint and Comcast - Like having sex with a porcupine.
Is that pretty close?
The only way to win is not to play!
The Government doesn't see it that way. Guess whose view wins.
Yes, I stole that from Futurama
Well I remember one of the big thing with OLEDs was you were going to be able to have a stick-on transparent display that you could put anywhere. I guess they just promise that with every new display technology that comes along.