Microsoft gets serious about new peripheral devices...
APL is a write-only language.
In C we had to code our own bugs. In C++ we can inherit them.
C gives you enough rope to hang yourself. C++ also gives you the tree object to tie it to.
With C you can shoot yourself in the leg. With C++ you can reuse the bullet.
A computer without COBOL and Fortran is like a piece of chocolate cake without ketchup and mustard.
PL/I is for programmers who can't decide whether to write in COBOL or Fortran.
Real Programmers....
Don't eat quiche. They don't even know how to spell quiche.
They like Twinkies, Coke, and palate-scorching Szechwan food.
Don't write applications programs. They program right down to
the bare metal. Applications programs are for dullards who can't
do systems programming.
Don't comment their code. If it was hard to write, it should be
hard to understand and even harder to modify.
Don't draw flowcharts. Flowcharts are, after all, the illiterate's
form of documentation. Cavemen drew flowcharts; look how much it did
for them.
Don't use COBOL. COBOL is for wimpy applications programmers.
Don't use FORTRAN. FORTRAN is for wimpy engineers who wear white
socks, pipe stress freaks, and crystallography weenies. They get
excited over finite state analysis and nuclear reactor simulation.
Don't use LOGO. In fact, no programmer uses LOGO after reaching
puberty.
Don't use APL, unless the whole program can be written on one line.
Don't use LISP. Only effeminate programmers use more parentheses
than actual code.
Don't use Pascal, BLISS, Ada, or any of those sissy-pinko computer
science languages. Strong typing is a crutch for people with weak
memories.
Never work 9 to 5. If any real programmers are around at 9 a.m.,
it's because they were up all night.
Don't play tennis or any other sport that requires a change of
clothes. Mountain climbing is OK though, and real programmers often
wear climbing boots to work in case a mountain should suddenly spring
up in the middle of the machine room.
Don't like the team programming concept. Unless, of course, they
are the Chief Programmer.
Have no use for managers. Managers are a necessary evil. Managers
are for dealing with personal bozos, bean counters, senior planners,
and other mental defectives.
Don't drive clapped out Mavericks. They prefer BMWs, Lincolns, or
pick-up trucks with floor shifts. Fast motorcycles are highly regarded.
Like vending machine popcorn. Coders pop it in the microwave oven.
Real programmers use the heat given off by the CPU. They can tell what
job is running just by listening to the rate the corn is popping.
Know every nuance of every instruction and use them all in every
real program. Puppy architects won't allow execute instructions to
address another execute as the target instruction. Real programmers
despise such petty restrictions.
Don't bring brown bag lunches to work. If the vending machine sells
it, they eat it. If the vending machine doesn't sell it they don't eat
it. Vending machines don't sell quiche.
PROGRAMMERS' DRINKING SONG
100 little bugs in the code,
100 bugs in the code,
fix one bug, compile it again,
101 little bugs in the code.
101 little bugs in the code.....
(Repeat until BUGS = 0)
Jesus and Satan have an argument as to who is the better
programmer. This goes on for a few hours until they come
to an agreement to hold a contest, with God as the Judge.
They set themselves before their computers and begin. They
type furiously, lines of code streaming up the screen, for
several hours straight. Seconds before the end of the
competition, a bolt of lightning strikes, taking out the
electricity. Moments later, the power is restored, and God
announces that the contest is over. He asks Satan to show
what he has come up with.
Satin is visibly upset and cries, "I have nothing, I lost
it all when the power went out."
"Very well, then, " says God, "let us see if Jesus fared
any better."
Jesus enters a command, and the screen comes to life in
vivid display, the voices of an angelic choir pours forth
from the speakers.
Satan is astonished. He stutters, "B-b-but how?! I lost
everything yet Jesus' program is Intact! How did he do it?"
God Chuckles, "Everybody knows...Jesus Saves."
1. A NUMBER OF DIFFERENT APPROACHES ARE BEING TRIED
- We are still pissing in the wind.
2. EXTENSIVE REPORT IS BEING PREPARED ON A FRESH APPROACH TO
THE PROBLEM
- We just hired three kids fresh out of college.
3. CLOSE PROJECT COORDINATION
- We know who to blame.
4. MAJOR TECHNOLOGICAL BREAKTHROUGH
- It works OK, but looks very hi-tech.
5. CUSTOMER SATISFACTION IS DELIVERED ASSURED
- We are so far behind schedule the customer is happy to
get it delivered.
6. PRELIMINARY OPERATIONAL TESTS WERE INCONCLUSIVE
- The darn thing blew up when we threw the switch.
7. TEST RESULTS WERE EXTREMELY GRATIFYING
- We are so surprised that the stupid thing works.
8. THE ENTIRE CONCEPT WILL HAVE TO BE ABANDONED
- The only person who understood the thing quit.
9. IT IS IN THE PROCESS
- It is so wrapped up in red tape that the situation
is about hopeless.
10. WE WILL LOOK INTO IT
- Forget it! We have enough problems for now.
11. PLEASE NOTE AND INITIAL
- Let's spread the responsibility for the screw up.
12. GIVE US THE BENEFIT OF YOUR THINKING
- We'll listen to what you have to say as long as it
doesn't interfere with what we've already done.
13. GIVE US YOUR INTERPRETATION
- I can't wait to hear this bull!
14. SEE ME or LET'S DISCUSS
- Come into my office, I'm lonely.
15. ALL NEW
- Code not interchangeable with the previous design.
16. YEARS OF DEVELOPMENT
- It finally worked!
17. LOW MAINTENANCE
- Impossible to fix if broken.
Ged Byrne
Thursday, January 09, 2003
no, it's a buzzword for a long time now
Thursday, January 09, 2003
Yeah, it's a buzzword, and a really annoying one. For years, I've been using the letters "XP" to mean "cross-platform". Now the term is way too ambiguous because it might also mean "Extreme Programming" or "the latest version of Windows".
If only we had a tool that would enforce consistent namespace usage in real life just like compilers do for code...
Eric W. Sink
Thursday, January 09, 2003
You know, I actually use namespaces in conversation, or at least in IM. I have a coworker Work::Jay, an old friend from high school Past::Jay, and a friend now Present::Jay (who lives with one of my non-Jay coworkers, thus causing the original confusions, where Mark would say "Jay's leaving for vacation on Thursday," and I would respond "But he can't be, he's already said he's coming the the dev meeting Friday morning!" And then hit myself on the head.)
Mikayla
Thursday, January 09, 2003
Erik,
You don't like the term XP because you were... using it first? :) And I agree - it's a dumb term. I prefer 'pair programming'.
aa
Thursday, January 09, 2003
IIRC, "pair programming" is only a subset of XP. Doesn't really work as a synonym.
But then I don't know that much about XP...
sgf
Thursday, January 09, 2003
Yes, the same way that all the other Agile methodologies are buzzwords. Extreme programming (XP) just happens to be the one that happens to have the most hype associated with it.
Kent Beck chose to call his methodology "Extreme Programming" hoping that this name would get it some attention. After all, there are thousands of development methodologies out there and hundreds that are specific to the OO software development paradigm.
One Programmer's Opinion
Thursday, January 09, 2003
On misusing the word Extreme Programming:
I worked for a while at a customer site and one day the customer project manager (yes, we had customer project manager and "contractor" project manager) came to our office (big office, 8 to 12 developers; very loud). That was one day before going online (we were hopelessly trying to fix the biggest bugs under pressure) and after a few weeks of "death march" programming (long hours until 2 AM, afterwards McDonalds, no land in sight etc.) behind us. And then he said: Now we are doing extreme programming!
The same guy picked up the word "facade" at some conference and promptly his powerpoints were full of facades: He renamed the layer we called "Business Logic" as facade for the database!
I left the project.
Pointy Haired Boss
Thursday, January 09, 2003
Sink: oh my gosh namespaces for use in everyday life? =)
Wei
Friday, January 10, 2003
I am curious as to how he pronounces the :: in casual conversation.
Just me (Sir to you)
Friday, January 10, 2003
No need to pronounce it - it represents a space!
Mathematical Dunce
Friday, January 10, 2003
I think it should be done like Victor Borge's Phonetic Punctuation, where you use a different little sound to represent different punctuation marks. So it would be something like ' home ffsshhh Jay' and 'work ffsshhh Jay'.
(For those of you too young to remember this, try http://www.kor.dk/borge/b-mus-1.htm )
David Clayworth
Friday, January 10, 2003
A former boss of mine said that Object-Oriented technology is out of date, that it's been overtaken by other things. Funny how people writing in IEEE software and CACM seem to think that it's now the dominant paradigm in software development.
Having said that though, this is the same former boss that explained to me that he didn't have any formal qualifications in computing, but that if you spend enough time around software you find out that there's only a limited set of things they can do. - (Wow, yes I thought. Now I'm going to hear how this manager has independently reinvented computability theory. Soon he's going to discover that there are multiple ways of representing what computers can do and then he's going to postulate that they're equivalent - "the Pointy-Hair-Turing thesis".) I could have said something, but even if I had felt brave enough, I don't have words to adequately express the depth of my contempt.
Some people just don't know what they are talking about. Sadly, some of them get into positions of power.
Dafydd Rees
Thursday, January 30, 2003