You might be seeing "good code" being written, but that doesn't mean you are seeing a good product being produced. If "good code" (whatever that means) was all it took to produce a successful product, you wouldn't see so many disastrous failed products out there.
Saying "Good software products = good code" is like saying "Good cars = strong metal". It's totally over-simplified.
If you want to create a successful software product, instead of whatever 10,000 line toy your 4 man team put together by shouting across the room, you probably ought to consider one or more of:
* requirements
* a functional specification
* a design document
* a plan that includes a schedule with milestones
* documented use cases
* end user documentation
* system-level class-level and method documentation
* configuration management
* scheduled code reviews
* unit testing
* integration testing
* a formal quality assurance procedure
* a deployment plan
oh, and "good code" might help, I guess. I'm of the mind that with the right amount of management, organization, process, design, and documentation, actual "programming" is just glorified data entry.
I'd be skeptical of the hype. But this isn't buzz-words. This is a (mostly) working protocol and platform to honestly really change the way we work and communicate.
I can probably name over twenty-five distinct products released in the last decade that marketers touted using the EXACT same phrase to the letter, and so far, none of them have replaced the telephone and E-mail to any substantial degree.
Stop estimating completion date and start delivering your estimates measured in "uninterrupted hours". The boss will push back but hold firm. If he insists on a calendar date, tell him "10-Oct without any other interrupting assignments." NEVER, EVER, EVER, EVER unconditionally commit to a calendar date. EVER. You're guaranteeing failure.
Wow, I think I'd find your neighborhood kind of eerily idyllic. We lock and bolt our doors at night, and if your package gets delivered to your neighbor's house by accident... let it go, man because it's gone. And the few remaining stores that actually have return policies get taken advantage of mercilessly.
Which raises an interesting question: How do you verify this on the phone, with very little time, and in one case (gas leak), where your life may be in danger? For that matter, how do you verify a cop badge?
What department are you with and what is its main emergency dispatch phone number, not your direct line? I'll call back in five seconds.
Sure, you won't fool a very sophisticated prankster with a partner, but it's a start. You can also verify the area code seems right--you can check to see if you get a Canadian number in Tulsa, OK. That can be done with a phone book, a pencil, and 10 seconds.
If a fireman comes to your door and tells you that you need to leave immediately because of a gas leak, are you going to say "Hold on! ID first, and let me call the fire department to make sure it's not a hoax".
It's not an either-or. It's a judgment call, and you have to take into account many things, the environment, the potential prankster's appearance and demeanor, and the probabilities and severity of the possible outcomes.
* Guy is in a fireman's outfit, there are big red trucks with flashing lights all over the place, and I smell propane = I leave my house.
* Guy is wearing a red bike helmet and tennis shoes, and it's 11 o clock at night = Get lost, buddy!
* Guy's nervous but looks a little like he might be a fireman, and I hear sirens in the distance = Let me call the station, if you could wait out here....
And remember, it's not just the people that make idiots of themselves that suffer. The people that owned the motel had to put up with broken windows and smashed TVs. The victims own stupidity doesn't make the Pranknet lot any less culpable.
If I were the motel owner and one of my guests did this, my response would NOT be, "Oh.. let's put our Sherlock Holmes hats on and find out who that mean prankster was!" It would be, "You better find a good lawyer, because my insurance company will be calling."
Someone I respect very much told me, "Trust, but verify." I have no problem with trusting someone whose identity can be verified--whose credentials check out. These so-called victims did not seem to even lift a finger to verify the authority of the person asking them to humiliate themselves and do thousands of dollars in property damage. Maybe they're not terminally stupid, but definitely they're hopelessly, terminally naive. Clearly the mods disagree, and you can see the karmic punishing I'm taking in the GP post:)
I also disagree that our society is based on mutual trust. Volumes and volumes of laws backed up by lawyers, police, and jails show otherwise. If people could simply trust each other to do right, we wouldn't need a quarter of the laws, contracts, corporate policies, and regulations that we have. Hell, even marriages are sewed up with prenuptial agreements nowadays. Fact is, there are tons of people out there who will screw you over and take your money/job/freedom if you give them the chance. They don't look like cartoon bad guys. They look like you and me. Some of them run companies, some of them are in public office, some of them go to your church. By implicitly trusting people, you are virtually guaranteeing that you'll be taken advantage of one day.
Or to put it into Slashdot terms, you can live your life trusting people either: "Order Deny, Allow" or "Order Allow, Deny". Either way is fine, as long as you set the rest of your exceptions up reasonably. Choose wrong too far one way, and you risk becoming a cynical trust-no-one bastard like me. Choose wrong too far the other way, and we'll get to laugh at you when you strip down naked in Times Square because someone on the phone told you he was the police.
I don't feel the slightest bit sorry for grown adults who trash their hotel rooms or strip naked on the sidewalk, simply because someone on the phone told them to. As far as I'm concerned these "pranksters" are performing a public service, outing the terminally stupid. If anything in this article should be a crime it's the "victims'" gullibility.
WOW! A difference of 375,000 bytes. Let's see. Using today's prices, $73.50 / terrabyte for hard disk and $6.75 / gigabyte for RAM, that BLOATED C++ version cost you $0.0000275625 more to store on disk, and $0.00253125 more to store in RAM. Boy, that language and library overhead is going to totally break the bank.
Even if you're storing it on some kind of exotic gold-plated, diamond-encrusted EEPROM, you're barking up the wrong tree.
If we didn't pay taxes then a defense corporation, a road building corp, etc would all be established and would offer services that the government currently provides. These costs would then be passed on to the consumer and everything would end up costing the same. The only difference is the most efficient company would win the contracts so everything should end up cheaper than it currently is because we all know governments are terribly inefficient.
HA HA HA! You owe me a new keyboard because I spit iced tea all over it when I read that.
If we didn't pay taxes (and, therefore, had no government) we wouldn't have road building corporations springing up and competing with other strapping entrepreneurs. Without taxes, you'd be paying off the local warlord so that he doesn't come in with his bandits and rape all the women in your town. Forget your Randian capitalist utopia! Without taxes/government, society would devolve into 0.5% warlords and their gang members, and 99.5% slaves. By virtue of the fact that you are posting to Slashdot, I imagine you'd get to be one of the slaves. For reference, please see... well, just about every government vacuum in history.
It forces people to write their passwords down. On paper.
And what's wrong with that? I suggest that people pick a strong password, write it down, and keep it somewhere secret. That's 100% better than picking a weak password that they can remember.
Even if the password is post-it-noted to their monitor, it's no big deal. If an attacker manages to gain physical access to your computer, you have more problems to worry about then the contents of your hard drive.
Another iPhone article, another cry-fest. So, Apple doesn't let apps run in the background. Get this: NOBODY CARES.
How many people, do you suppose, shop for a new phone, narrow their search down to iPhone and some other phone, and say, "Gee, I love the iPhone, but I won't buy it because I can't run apps in the background!" My guess: Zero.
I'm going to make another guess: By an excruciatingly large margin, most people who own iPhones don't have any idea what you are talking about when you say "run apps in the background". They don't know, they don't care, and it doesn't remotely affect their purchasing decision. It's a phone, and they have busy lives. Apple doesn't care either, since they are making money hand over fist despite this "background" pseudo-tragedy that only you seem to be passionate about.
Crying about not being able to run apps in the background is about as stupid and pointless and ridiculous as Star Wars geeks crying "Han Shot First!" Nobody cares.
I had a friend originally from South Africa (white) who, on a lark, applied for a bunch of "African-American" scholarships for grad school, and got a few. I never learned how that ended up since I moved, but I would have loved to be a fly on the wall in school admissions when those conversations (inevitably) happened...
Awk-ward!
Anything to make politically correct buffoons squirm who use the term "African American" as a surrogate for black.
For fuck's sake, people, the credit card guys haven't actually bought a law concerning hereditary debt slavery yet, and this guy thinks that it is already on the books?
Maybe not the credit cards, but the health care industry has:
Showing you know the difference between a good project and bad project, especially ahead of time, is a plus in an interview.
On what planet? In the interviewer's mind, that translates into: "Given the doomed projects coming up, this guy is going to quit within three months. No Hire."
It's the same reason the police go after "cop killers" with more enthusiasm, and why a criminal faces harsher punishment if his victim happened to be a police officer. Is a cop's life more important than anyone else's? No, but the people in charge of dealing out the punishment think it is.
For example, my job has a "coffee club" that costs $6 a month to join if you want to use the break room coffee machine (just regular cheap walmart coffee machine, nothing fancy). A few new hires were use to free coffee at their old jobs and complained loudly about our policy, even "stealing" cups of coffee that the rest of us either paid for or decided not to join the club and therefore did not drink coffee. While no one was fired over it, months later we all remember those involved and it has permanently tarnished their record. All over $6 a month.
Turn it around. Say they're hard working, talented employees who become vital to the projects they are working on. Is it really worth the chance of contributing towards them getting disgruntled and leaving--over $6 a month in coffee? Your boss (or whoever decided the coffee policy) is a cheap bastard and dangerously short-sighted. For morale's sake, give the damn employees free coffee and just make next year's raise 3.4% instead of 3.5%. Jesus, people.
Since graduating, never in my career have I encountered a situation where I had to solve 25 simple yet unrelated problems in under an hour without the use of references or collaboration.
So you shouldn't have to know how to solve a given problem yourself, in a vacuum, because in the "real world" we have reference books and other people to collaborate with.
Now, apply that logic to the whole population of potential collaborators / reference book writers.
Everyone now assumes there's someone else to collaborate with. But who? Since anyone you might collaborate with also believes the above, they won't know how to solve the problem either. Who would write the reference books? Same problem.
At some point the buck stops at the individual. You need to know how to solve the given problems, by yourself. That's why we do tests, and that's why you (generally) can't collaborate or consult references.
Would it hurt to include a single sentence in the summary about what "Air France Flight 447" is and why anyone cares? Even just a link? Before launching into an editorial tirade? I bet some find this topic interesting, but without context...
I love how that was modded insightful.
You might be seeing "good code" being written, but that doesn't mean you are seeing a good product being produced. If "good code" (whatever that means) was all it took to produce a successful product, you wouldn't see so many disastrous failed products out there.
Saying "Good software products = good code" is like saying "Good cars = strong metal". It's totally over-simplified.
If you want to create a successful software product, instead of whatever 10,000 line toy your 4 man team put together by shouting across the room, you probably ought to consider one or more of:
* requirements
* a functional specification
* a design document
* a plan that includes a schedule with milestones
* documented use cases
* end user documentation
* system-level class-level and method documentation
* configuration management
* scheduled code reviews
* unit testing
* integration testing
* a formal quality assurance procedure
* a deployment plan
oh, and "good code" might help, I guess. I'm of the mind that with the right amount of management, organization, process, design, and documentation, actual "programming" is just glorified data entry.
I'd be skeptical of the hype. But this isn't buzz-words. This is a (mostly) working protocol and platform to honestly really change the way we work and communicate.
I can probably name over twenty-five distinct products released in the last decade that marketers touted using the EXACT same phrase to the letter, and so far, none of them have replaced the telephone and E-mail to any substantial degree.
If it's basically a "mashup" of a bunch of random Internet and marketing buzzwords, you must have forgotten to mention Twitter.
Stop estimating completion date and start delivering your estimates measured in "uninterrupted hours". The boss will push back but hold firm. If he insists on a calendar date, tell him "10-Oct without any other interrupting assignments." NEVER, EVER, EVER, EVER unconditionally commit to a calendar date. EVER. You're guaranteeing failure.
Fair enough, you make a good point. How much are we a product of our environment, and how much is our environment a reflection of us?
Wow, I think I'd find your neighborhood kind of eerily idyllic. We lock and bolt our doors at night, and if your package gets delivered to your neighbor's house by accident... let it go, man because it's gone. And the few remaining stores that actually have return policies get taken advantage of mercilessly.
Which raises an interesting question: How do you verify this on the phone, with very little time, and in one case (gas leak), where your life may be in danger? For that matter, how do you verify a cop badge?
What department are you with and what is its main emergency dispatch phone number, not your direct line? I'll call back in five seconds.
Sure, you won't fool a very sophisticated prankster with a partner, but it's a start. You can also verify the area code seems right--you can check to see if you get a Canadian number in Tulsa, OK. That can be done with a phone book, a pencil, and 10 seconds.
If a fireman comes to your door and tells you that you need to leave immediately because of a gas leak, are you going to say "Hold on! ID first, and let me call the fire department to make sure it's not a hoax".
It's not an either-or. It's a judgment call, and you have to take into account many things, the environment, the potential prankster's appearance and demeanor, and the probabilities and severity of the possible outcomes.
* Guy is in a fireman's outfit, there are big red trucks with flashing lights all over the place, and I smell propane = I leave my house.
* Guy is wearing a red bike helmet and tennis shoes, and it's 11 o clock at night = Get lost, buddy!
* Guy's nervous but looks a little like he might be a fireman, and I hear sirens in the distance = Let me call the station, if you could wait out here....
And remember, it's not just the people that make idiots of themselves that suffer. The people that owned the motel had to put up with broken windows and smashed TVs. The victims own stupidity doesn't make the Pranknet lot any less culpable.
If I were the motel owner and one of my guests did this, my response would NOT be, "Oh.. let's put our Sherlock Holmes hats on and find out who that mean prankster was!" It would be, "You better find a good lawyer, because my insurance company will be calling."
Someone I respect very much told me, "Trust, but verify." I have no problem with trusting someone whose identity can be verified--whose credentials check out. These so-called victims did not seem to even lift a finger to verify the authority of the person asking them to humiliate themselves and do thousands of dollars in property damage. Maybe they're not terminally stupid, but definitely they're hopelessly, terminally naive. Clearly the mods disagree, and you can see the karmic punishing I'm taking in the GP post :)
I also disagree that our society is based on mutual trust. Volumes and volumes of laws backed up by lawyers, police, and jails show otherwise. If people could simply trust each other to do right, we wouldn't need a quarter of the laws, contracts, corporate policies, and regulations that we have. Hell, even marriages are sewed up with prenuptial agreements nowadays. Fact is, there are tons of people out there who will screw you over and take your money/job/freedom if you give them the chance. They don't look like cartoon bad guys. They look like you and me. Some of them run companies, some of them are in public office, some of them go to your church. By implicitly trusting people, you are virtually guaranteeing that you'll be taken advantage of one day.
Or to put it into Slashdot terms, you can live your life trusting people either: "Order Deny, Allow" or "Order Allow, Deny". Either way is fine, as long as you set the rest of your exceptions up reasonably. Choose wrong too far one way, and you risk becoming a cynical trust-no-one bastard like me. Choose wrong too far the other way, and we'll get to laugh at you when you strip down naked in Times Square because someone on the phone told you he was the police.
I don't feel the slightest bit sorry for grown adults who trash their hotel rooms or strip naked on the sidewalk, simply because someone on the phone told them to. As far as I'm concerned these "pranksters" are performing a public service, outing the terminally stupid. If anything in this article should be a crime it's the "victims'" gullibility.
# Hello world using iostream: 400 KB.
# Proper: Hello world using cstdio. 25 KB
WOW! A difference of 375,000 bytes. Let's see. Using today's prices, $73.50 / terrabyte for hard disk and $6.75 / gigabyte for RAM, that BLOATED C++ version cost you $0.0000275625 more to store on disk, and $0.00253125 more to store in RAM. Boy, that language and library overhead is going to totally break the bank.
Even if you're storing it on some kind of exotic gold-plated, diamond-encrusted EEPROM, you're barking up the wrong tree.
If we didn't pay taxes then a defense corporation, a road building corp, etc would all be established and would offer services that the government currently provides. These costs would then be passed on to the consumer and everything would end up costing the same. The only difference is the most efficient company would win the contracts so everything should end up cheaper than it currently is because we all know governments are terribly inefficient.
HA HA HA! You owe me a new keyboard because I spit iced tea all over it when I read that.
If we didn't pay taxes (and, therefore, had no government) we wouldn't have road building corporations springing up and competing with other strapping entrepreneurs. Without taxes, you'd be paying off the local warlord so that he doesn't come in with his bandits and rape all the women in your town. Forget your Randian capitalist utopia! Without taxes/government, society would devolve into 0.5% warlords and their gang members, and 99.5% slaves. By virtue of the fact that you are posting to Slashdot, I imagine you'd get to be one of the slaves. For reference, please see... well, just about every government vacuum in history.
That is fine until someone figures out what your algorithm is.
And if they do, who cares? So they knocked their brute force discovery from 100 billion years to 100 million years...
It forces people to write their passwords down. On paper.
And what's wrong with that? I suggest that people pick a strong password, write it down, and keep it somewhere secret. That's 100% better than picking a weak password that they can remember.
Even if the password is post-it-noted to their monitor, it's no big deal. If an attacker manages to gain physical access to your computer, you have more problems to worry about then the contents of your hard drive.
Another iPhone article, another cry-fest. So, Apple doesn't let apps run in the background. Get this: NOBODY CARES.
How many people, do you suppose, shop for a new phone, narrow their search down to iPhone and some other phone, and say, "Gee, I love the iPhone, but I won't buy it because I can't run apps in the background!" My guess: Zero.
I'm going to make another guess: By an excruciatingly large margin, most people who own iPhones don't have any idea what you are talking about when you say "run apps in the background". They don't know, they don't care, and it doesn't remotely affect their purchasing decision. It's a phone, and they have busy lives. Apple doesn't care either, since they are making money hand over fist despite this "background" pseudo-tragedy that only you seem to be passionate about.
Crying about not being able to run apps in the background is about as stupid and pointless and ridiculous as Star Wars geeks crying "Han Shot First!" Nobody cares.
I had a friend originally from South Africa (white) who, on a lark, applied for a bunch of "African-American" scholarships for grad school, and got a few. I never learned how that ended up since I moved, but I would have loved to be a fly on the wall in school admissions when those conversations (inevitably) happened...
Awk-ward!
Anything to make politically correct buffoons squirm who use the term "African American" as a surrogate for black.
Maybe not the credit cards, but the health care industry has:
In Pennsylvania you are responsible for paying off your parents' debts. The 'boomers are going to have a field day farming their debt off on us...
Showing you know the difference between a good project and bad project, especially ahead of time, is a plus in an interview.
On what planet? In the interviewer's mind, that translates into: "Given the doomed projects coming up, this guy is going to quit within three months. No Hire."
It's the same reason the police go after "cop killers" with more enthusiasm, and why a criminal faces harsher punishment if his victim happened to be a police officer. Is a cop's life more important than anyone else's? No, but the people in charge of dealing out the punishment think it is.
You cannot be prosecuted today for something you did previously when it was legal.
But you might be in the future...
Let me guess: You answer "What's up?" with "The sky!"
For example, my job has a "coffee club" that costs $6 a month to join if you want to use the break room coffee machine (just regular cheap walmart coffee machine, nothing fancy). A few new hires were use to free coffee at their old jobs and complained loudly about our policy, even "stealing" cups of coffee that the rest of us either paid for or decided not to join the club and therefore did not drink coffee. While no one was fired over it, months later we all remember those involved and it has permanently tarnished their record. All over $6 a month.
Turn it around. Say they're hard working, talented employees who become vital to the projects they are working on. Is it really worth the chance of contributing towards them getting disgruntled and leaving--over $6 a month in coffee? Your boss (or whoever decided the coffee policy) is a cheap bastard and dangerously short-sighted. For morale's sake, give the damn employees free coffee and just make next year's raise 3.4% instead of 3.5%. Jesus, people.
Since graduating, never in my career have I encountered a situation where I had to solve 25 simple yet unrelated problems in under an hour without the use of references or collaboration.
So you shouldn't have to know how to solve a given problem yourself, in a vacuum, because in the "real world" we have reference books and other people to collaborate with.
Now, apply that logic to the whole population of potential collaborators / reference book writers.
Everyone now assumes there's someone else to collaborate with. But who? Since anyone you might collaborate with also believes the above, they won't know how to solve the problem either. Who would write the reference books? Same problem.
At some point the buck stops at the individual. You need to know how to solve the given problems, by yourself. That's why we do tests, and that's why you (generally) can't collaborate or consult references.
Would it hurt to include a single sentence in the summary about what "Air France Flight 447" is and why anyone cares? Even just a link? Before launching into an editorial tirade? I bet some find this topic interesting, but without context...