Michi Henning on Computing Fallacies
Karma Sucks writes "Check out this summary of a keynote at Linux.conf.au by Michi Henning of CORBA fame. It really hits the nail on several points. I especially liked the point about people constantly rewriting letters in these modern times, as opposed to say 1945 where it just wasn't worth the pain of re-typing a letter. The only point that didn't made sense in this summary was the one about "source code being useless"."
Vintage computer games and RPG books available. Email me if you're interested.
Fallacy 10: Open Source is the Answer
;)
- Economic model is doubtful
- Source code is useless
- Motivation for Open Source is inappropriate for most software
- Nerd culture is counter-productive
I'd like to see him come here and say that.
--------
Bleah! Heh heh heh... BLEAH BLEAH!!! Ha ha ha ha...
Penicillin - 1920's technology
Iowa/Yamoto class battleships - 1920's technology
Apollo moonrockets - 1940's with a dash of 50's
Polio vaccine - 1880's with a dash of 1940's
Transistor - 1930's
Bulk transport system, rail - 1860's
Bulk transport system, car/truck - 1920's
Airplane - 1910's
Fast airplane - 1950's
Yup, makin progress fast.
sPh
What could be better capitalism than providing a quality product at no cost? The ultimate competition.
Though at first appealing, it's economically impossible. There is a cost to everything, whether financial, labor or opportunity cost.
There is no such thing as a free lunch.
> Nerd culture is counter-productive
.. very creative, with a propensity to desire to push boundries. Their influences may not be approrpiate for the masses, but they lay the frame work for those who compute and program (or write pop and rock) to achieve practical purposes. Practical people see no value in thinking outside the boundries of current methods, but are more than happy to stand on the shoulders of those that do (as well it should be.)
Nerds are the computer equivilent of the Enos, the Yoko Onos, the Peter Gabriels
Whats wrong with different people born for different goals? Even if you don't directly contribute the masses, most changes in fundemental social systems (and technical systems) starts with someone rejecting the norm. As well it should be. Leave them alone and let them nerd!
"Old man yells at systemd"
It really hits the nail on several points.
I like my metaphores stirred not mixed.
Fallacy 9: Programming is About Date Structures and Algorithms
I'll agree here, although I see it most in database design. With the advent of such super-fast DBs such as MySQL there has been a FLOOD of horribly written applications that utilizes them. For instance, you'll see every column defined as CHAR( 255 ), or every table prepended with AUTO_INCREMENT columns even when they are not necessary. Indexing is poor or non-existent, and tables are horribly in need of normalization.
Some finer points in design; I see some stuff like this a lot as well:
function bob( varlist ) { $var = $joe + 12345; return $var; }
You're wasting memory and such for the variable declaration and assignment, simply return $joe + 12345;.
Fallacy 12: We are Making Progress
- Progress in quality assurance has been remarkably slow
I used to work in QA for a software company and I wouldn't say that I was the worst programmer there, but I think the problem is that 90% of the QA staff WERE NOT PROGRAMMERS or didn't have access to the source. Basically, QA reports bugs, they go into the queue, and then a developer, if they have the time when compared to all their code development, meetings and such, may have a chance to get to the bug. It would be nice if the QA staff, who may have software programming skills, would be allowed to be developers as well (e.g. all the rights of a developer but QA is their main focus). They attend the same dev meetings and such which gives them the insight to the architecture to allow them to fix bugs which have been approved by management.
So in effect, have two programming teams.
Thanks,
--
Matt
but now is ok for ppl 2 put 42 typos in inrnet msg & hit submitt
Well, that is redundant. But even so, it make me think of the book, "Sex for dummies" which gave me a whole new perspective on RTFM.
Fight Spammers!
From the article:
"The best UI people on the planet are those working in the car industry.
We need to make it a criminal law to change certain API's. There are potentially
huge impacts. When we produce a new drug, we can't just release it to millions of
people without some sort of testing."
yeah, but how long should the testing cycle be? For example, we hear all the time about drugs being recalled because of illnesses caused by its use. Beta testing is a great way to do this, however, even then you can't know until your program is running on a lot of machines in different environments, with different variables.
So, what can you do? Well, you release the software after doing as much testing as possible, and wait to see the results...then patch, patch, patch..which is the way it's being done now. That's why early adopters know (or should know)what they are getting into, and why most of the companies I have dealt with, (running win2k) waited for SP2 to come out before upgrading.
Or, you could establish some sort of body, like the FDA does, that tests the heck out of software for a while before shipping. Problem with that though, is that by the time it is approved, its obsolete.
Other than that, this was a most excellent read.
Sent from your iPad.
If you found some of his earlier points interesting, you may want to read the 1995 book "The trouble with computers" by Tom
Landauer. I think its kind of controversial, but he points out that a lot of the promised and perceived productivity gains due to computers have never come about.
"The only point that didn't made sense in this summary was the one about "source code being useless"."
Source code *is* useless to about 99% of the people that use the program. My aunt Benita isn't going to track down a Microsoft Word bug and fix it even if she HAD the source. She wouldn't care - she'd just wait for the update. So in that context, the source code is useless.
Where the source code does become useful is in the hands of developers, but for users it's just another disk of stuff they get in the package that they'll never use.
----- rL
Forgetting all the myriad reasons source code is useful, the one best thing about getting source code for your product is: it's the ultimate documentation for the program.
I always look at the source code when trying to solve a problem. It's like a reference manual written in a terse language that doesn't slow me down.
It's like including schematics with a piece of test equipment. Why bother with the manual when you can just look and see EXACTLY what that button does and how.
Source code may not be useful to users of software, but to the coders and people doing the actual work, it is a tremendous productivity boost.
"Don't write software because 'it's cool'. That only leads to burnout. Write it for money. At least you get something back and don't ruin the market for the rest of us."
Um, no, doing stuff you don't like to do just "for the money" is what leads to burnouts. Nobody ever says "Boy am I burned out playing around carefree...I gotta take a vacation and do some drudgery!". That said, the concepts of *sound design*, *quality*, *maintainability*, *lifespan*, etc., have to be built into the "programming curriculum". I mean, they don't just hand soldiers a bazooka and say "Ok, if you can pull the trigger, you're ready! Off you go!".
It's 10 PM. Do you know if you're un-American?
No, it didn't make much sense...not to someone simply sitting down and reading it. However, if you were to imagine someone standing on a stage, going through slides, making quips or whatnot... Then it makes perfect sense. It reads like a presentation.
As far as source code being useless... Let me ask you - how many times do you actually go through the code itself and change things? I would be willing to bet that most people here simply download, unzip, untar, make, make install and go on with their lives. If this is even 70% true, then actually *having* the source code IS useless. The only reason you have it is so that you can 'make install' to the path of your choosing. That, in and of itself, is not the reason the source code exists.
Having said that, I disagree with his blanket argument. He should have quantified it somewhat, because some people *do* look at the source code. Some people *do* make additions, and some people *do* feel more secure having it available in case something goes awry. I certainly feel more secure knowing that there is a body of peers overlooking every code change that goes into Our Favorite Operating System (tm). Do I use it? Not usually - most of the time I apt-get install [the binary]. But I like having the *option*.
GIR: I'm going to sing the Doom song now. Doom doom doom doom doom doom de-doom doom doom doom doom doom doom...
Girls - don't have sex because 'it's cool'. That only leads to burnout. Do it for money. At least you get something back and don't ruin the market for us whores.
--
E_NOSIG
Nerd culture is counter productive??
Hello?... 'nerds' are the whole impetus behind the electronics industry. Without nerds wanting to show off with faster processors, cooler video boards or better OS's a few billion dollar industries wouldn't exist today.
Hell, Star Wars would have earned $1.50 at the theater without nerds creating the cult that propells it. Nerds created pong on a friggen mainframe just to goof off and sparked the video game industry, quickly gaining as the most widespread form of mass entertainment on the earth.
I am nerd, hear me calculate!
Even if what you assume is true is: sourcecode is still quite useful. The tarball still remains the most effective package management system with much more sophisticated dependency management than any binary packaging system.
This is why on even x86 Linux systems source tarballs are still used. They can be remarkably less trouble than binary packages for smaller applications.
A Pirate and a Puritan look the same on a balance sheet.
If we make innovation illegal, only Microsoft will innovate.
I am somewhat indignant at this remark. I write software because it is useful to me, and because I feel it might be useful to others. I release it as Free Software because I feel the this is the way people will get the most use out of it, and possibly improve it for everyone else, as well.
As for Fallacy 10.2 and 10.4, it's easily shown to be invalid via counterexample. Linux, gcc, XFree86, etc., are all case in point here.
Fallacy 10.3 is my own personal business. Who are you to tell me my motivation is inappropriate? I think the sole desire to make money is an inappropriate motivation. Should I tell you to stop writing software for money? Of course not.
As for F10.1, I consider this highly irrelevant. I don't give two hoots about Open Source or Free Software as an economic model. (In fact, if my Free Software ruins your market, I'd be more than apathetic, I'd be somewhat gleeful. ;-))
Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
That's a really interesting summary of what looks like a talk I would have liked to have attended. Of course, a lot of the points were matters of opinion, and I disagree on some of them.
Fallacy 1 (Computing is Easy) I think is spot on. I shudder when I see some of the "For Dummies" titles out there now.
Fallacy 6 (Computers are Getting Faster), I would have to say I disagreed with him on. Sure, my desktop boots slower than my old 386 from 10 years ago. But my Handspring Visor has more memory and boots instantly. Web pages load faster with my DSL connection then they did over my modem (where could you get that 5 years ago?) Most of my compiles are shorter than they were 3 years ago. Sure, people tend to put bloat in, but Moore's law is still wining overall.
This ones really a quibble, but a subpoint of Fallacy 7 asks "How often do you need to do a Fourier transform?" I don't know if it's need per se, but I kind of like some of the music visualizations that use a whole bunch of frequency domain stuff.
One of the subpoints to Fallacy 13 (The Industry Knows where it's going) is
"There haven't been any new ideas in a decade"
My response
"There is no new thing under the sun"
--Ecclesiastes
That said, he certainly seemed to bring up a lot of food for thought. Do you think he'd be willing to do a Slashdot Interview?
Don't write software because 'it's cool'. That only leads to burnout. Write it for money.
Sounds ok, but s/cool/fun and I disagree completely.
Don't do anything just because it's "cool". What kind of person does that? Some mindless MTV wannabee?
OTOH, if it's fun, well, why not do it?
Fun doesn't lead to burnout, it leads to well, children. erm, no, that's something else...
Tales from behind the Lagom Curtain
Apparently you and I are very different people. I get burned out writing software for money. Writing software that is 'cool', on the other hand, is fun.
At least you get something back and don't ruin the market for the rest of us.
I get something back from my 'cool' software -- reputation and job opportunities. When I want a job with XYZ-Corp, I don't have to make do with just a (mostly unverifiable) resume; I can point them to places on the internet where my code is in use every day, let them download source code of my work and look at it for themselves, and send them the email addresses of my code's happy users. That way they know just what sort of programmer they will get for their money, and I get the job I want.
As for "ruining it for the rest of you", tough shit. I bet you complained about the people in your college classes who set the curve on exams, too.
I don't care if it's 90,000 hectares. That lake was not my doing.
Fallacy 10: Open Source is the Answer
- Economic model is doubtful
- Source code is useless
- Motivation for Open Source is inappropriate for most software
- Nerd culture is counter-productive
We write software for peer recognition. We write fancy structures because
'it's cool', but not particularly useful.
If this were a Microsoft developer conference, would you expect a keynote speaker to stand up in front of thousands of Microsoft employees and users and claim that Microsoft is a monopoly, produces insecure and unusable software and only cares about money, not its users? One would expect a security team (think 2-metres tall and muscular, not securityfocus) up on that podium to carry the infiltrant off stage pretty quickly. More likely, it just wouldn't happen. I'm certain Microsoft puts millions just into screening the opinions that are expressed during its conferences, written on its website or posted on Usenet by its employees.
I think the Linux community's willingness to listen to criticism before (perhaps sometimes vehemently) counterarguing is one of its greatest strengths.
I don't agree with what Michi says towards the end of his keynote, but I doubt the organisers of GUADEC will cause too much of a fuss about it (perhaps they will ask him once or twice if he _really_ thinks Open Source is no good for production software).
sPh
Perhaps the cost of making money is devaluing the existing money. Perhaps the initial cost of creating money is the loss of the bartering system or freedoms associated with a non-monetary system.
Who knows? Interesting thought to entertain, though.
Wild guess, and if right I don't know why removing the link would fix it, but if fast save is on and you are doing a lot of revisions, deletions, etc., you can easily bump up a file's size because fast save never actually deletes any of the text you delete. Makes it easy to recover someone's first draft, which has been done.
No way it should have been over 2 megs though.
Cheers,
Ian
Fallacy 1: Computing is Easy
/etc/conf hacker, not someone working in an office relying on Word to get the memo done.
.NET. These are true advances in computing complexity and it is a continuing process.
well, actually it IS easy to learn syntax. This fallacy is just sniping at inexperience. No one teaches you how to write great code, even the greatest C hackers learned their loops one at a time. And, most of the rationale behind spaghetti code nowadays is due to extreme commercial pressure, not any lack of aesthetic sense.
- Teach Yourself C++ in 14 Easy Lessons
- Brain Surgery in 14 Easy Lessons
its completely arrogant to equate Brain surgery to C++. For one thing, lives are not at stake. This analogy is delusional with extreme grandeur.
Fallacy 2: Computers Allow People to Do things They Could Not Do Otherwise
As a matter of fact, they DO empower us. With Word I can do mass mailings in an hour, instead of all day. A great word processor will do a lot of the annoying things like spellcheck and thesaurus and automatic formatting of headings and footnotes and equations - which used to be a severe drain of time. A great spreadsheet lets you analyse numbers with impressive ease - ask any accountant how much the spreadsheet has transformed their parctice. This power of analysis has allowed professionals to actually expand their business instead of being mired down in drudgery.
Fallacy 3: Computers Increase Productivity
yes, they do, if used with discipline. See above. The idiots who waste all day adding sound effects are the same ones who in eth 40's used to while the day way lobbing sharp pencils into the ceiling. Procrastination has evolved with technology but is essentially the same.
the point about typos in letters written in 1945 illustrates the opposite point.
quote: "Nowadays, we rewrite the letter many, many times, changing fonts, format etc.
We are no better off in terms of letters produced."
really? you call a letter produced with no typos, "no better off" ? and all of the ways we can edit documents today, can be done effortlessly. The default templates that come with Word do all of this already. Its only the "power users" who seem to obsess like that, when people who actually use computers daily for their profession simply get the work done.
Fallacy 4: Programs Help Their Users
true, software companies try to ensnare their users. Also true that DVD makers try to snsnare their consumers, that groceries and airlines and car salesmen all use deceptive marketing, schemes, and even planned obsolescence to suck your wallet drier. You shoudl blame capitalism, not computers.
Fallacy 5: If It's Graphical, It's Easy
the vast majority of GUIs make simple tasks much easier. If you think that arcane text codes and comands are easier than just clicking the Underline button, then you're a
with a gui, you dont NEED to be a "sysadmin, programmer, typesetter, etc." to get work DONE. You just get work done. In a CLI you have to be all these things and more.
also, the paperclip has NEVER interrupted me to tell me a joke. Document the allegation!
Fallacy 6: Computers are Getting Faster
yes, they are. NO software I can buy today can really tax my 2 GHZ Pc, not even the most bloated WINXP install. My Pentium DOES boot faster than my old 386, Word loads in a few seconds, my web page is limited by my dial in connection (which i am forced to use because of monopolies and lack of regulation in telecom, not because of any computer issue). Its obvious that a Pentium 4 compiles faster than a 486, and the programs of today have more functionality anyway. EVERYTHING took FAR LONGER 5, 10 years ago.
Hardware is SO FAR AHEAD of software that only Id Siftware can really claim to have tested the metal. And can YOU tell the difference between 100 and 200 fps ? NO! stick your head out of the benchmark app!
Fallacy 7: Programs are Getting Better
Yes they are. True many obscure functionalities are barely used but they are there - and they barely slow things down in todays 2 GHz age.
I dont buy the anecdote about a single hyperlink inflating a 800K document to 2.2 MB. I just tried it myself, but taking 800 K of raw text and pasting it into Word. Then i added a link. The file size difference is negligible, but dont take my word for it, TRY IT YOURSELF! And then stop propagating foolish incendiary lies.
Fallacy 8: Programmers are Getting Better
well, if they all bitch and moan like this, maybe this really is a fallacy. But, I doubt it. Most of teh programmers I know are able to switch between languages and adapt to different environments. Most old time programmers are surgically attached to the Language of Choice for them and will never change. Look at the quality of coding being done on the Linux Kernel, in Oracle's 8i, in Windows'
BTW, ANY student who majors in CS will know what a core dump is, dont be alarmist. Any student who isnt CS, has no reason to know. So what?
the jab about knowing how to write excel memos being a mark of qualification is just arrogant snobbery. And the average retention time is from the dotcom boom, it surely isnt true anymore. YOu have a problem with people cashing in on their skills while they could?
Fallacy 9: Programming is About Date Structures and Algorithms
this is an extremely provincial accusation - probably better to just nod and agree with you rather than set off a religious war.
Agreed that programmers are not taught to design. Well, who taught you? If experience sufficed for you to become a self-declared expert, then it will suffice for others also.
Fallacy 10: Open Source is the Answer
The Answer? The Answer to what? with apologies to DOuglas Adams, first off you better figure out just what the Question is!
Don't blame me - I voted for Howard Dean. http://dean2004.blogspot.com
He claims:
99% of all documents are written to be printed on paper.
Hell, no! 99% of documents (besides programs) I write are emails.
I'm not nitpicking, this is a major flaw in the argument.
No it wouldn't. Because you still have a choice to not use the software. However it would be ethically wrong if you did not have the right to choose a different software packages. Even then, the ethics are in the person who revokes your right.
Software has no ethics, right or wrong. People do.
--Jeff
how much oil could a gargoyle gargle if a gargoyle could gargle oil?
ipv6 is my vpn
I hate Linux and Open Source in general with a passion
/. posts all the more impressive. I mean, you despise Linux, perl, MySQL, and even SlashCode itself. You are surrounded by people who deeply and abidingly disagree with you. And yet you put up with all of this to bring us comments with titles like "erf" and "zerg".
Which makes your 680
I salute you.
--
E_NOSIG
Some finer points in design; I see some stuff like this a lot as well:
function bob( varlist ) { $var = $joe + 12345; return $var; }
You're wasting memory and such for the variable declaration and assignment, simply return $joe + 12345;.
Well, when you simply return $joe + 12345, the complier creates a variable of the same type as $joe, gives it the new value, and then returnes it, negating any hoped-for savings on memory.
PUBLIC SPLIT ON WHETHER BUSH IS A DIVIDER -CNN scrolling banner, 10/15/2004
You got it backwards, moron. He's stating the Fallicies, and he states that Open Source is one of them. Good job making an ass of yourself though.
It amazes me how quickly people that have anything to do with computers like to declare them obsolete.
It reminds me of the guy who had an old 68k Macintosh running Word 5.1. He knew how to use it and it did everything he wanted it to do.
One day the IT people at his company took his mac away and gave him a new PC because the mac was "too slow" Well, what happened?
First of all, he was not familiar with the PC or with the new features availible in Word. Second of all, many of these new features were more annoying than useful, especially when the newer version of Word autocorrected something that didn't need correction. Also. considering that this new, more complex software is both more demanding of hardware and more prone to bugs, He found that his new system was slower than his old one and more prone to crashing.
So, why again was that Mac obsolete?
I have to agree somewhat with Fallacy 10
Fallacy 10: Open Source is the Answer
- Economic model is doubtful
- Source code is useless
- Motivation for Open Source is inappropriate for most software
- Nerd culture is counter-productive
It seems like he's trying to make the point that many open source developer's motivation is in the wrong place (making technically interesting, but not useful software), but he does a pretty horrible job conveying that with these bullets.
While there are *some* (I'm not going to make up statistics) who do a pretty horrible job at making useful softwarebecause of poor motivation, there are also plenty of Open Source developers who's contributions to core technologies are VERY underappreciated because they were able to make the technology transparent.
Unfortunately, he begins to make some good points about these issues.
1. He right insofar as source code isn't everything and won't solve everything, but that hardly makes it useless.
2. Yes the economic model is pretty doubtful at this point. Some have made it worked, others haven't. Some do it for profit, others as philanthropists, and others do it to set standards that will benefit a consortium.
Personally, I think he's just beginning to hit the iceberg by pointing out these fallicies that many of us need to address, but he doesn't follow through with supporting arguments. Instead, it's as if he expects us to just "get it" because he "gets it".
Maybe we can expand on his work and fill in some of the holes.
"Communism is like having one [local] phone company " - Lenny Bruce
"Computers Allow People to Do things They Could Not Do Otherwise"
How is this a fallacy??...He cites perhaps the handful of examples in which it may NOT be true, but leaves out the seemingly unending numbers of examples in which it is in fact very true.
- Telephone switching
- All the sophisticated computers running those F16s we see in Afganistan
- Power grid / sewage / water / gas control (in most areas)
- The entire Internet
- The level of visual effects in movies
- Computer and video games
- Thousands of different manufacturing processes that need to be computer controlled to get the level of accuracy needed
- Protein folding research
- and so on...
If you have anything to do with designing any sort of interface to any sort of product (be it a piece of hardware, a piece of software, a widget, whatever), you should read this book. It will open your eyes.
"The only point that didn't made sense in this summary was the one about "source code being useless"
It would have been better, perhaps, to say "for most users, source code is useless."
I remember when I was first getting started, and I head about Open Source. "Hey, cool, I can teach myself to write a word processor!" The truth, though, was that I couldn't. The code to any non-trivial program is going to be very hard to follow if you don't have someone walking you through it, or loads of time to work it through. And that's if you're a programmer. If you aren't, all the source code is good for is taking up space on your hard drive.
Thomas Galvin
While I think many of his fallacies have some truth to them (and I find them amusing), I think that his arguments only apply to business, or more specifically, they DON'T apply to a lot of areas where computers have revolutionized the way people do things, for example, in music composition, graphic design, scientific research, etc. - not to mention communication.
Let's consider Fallacy 2: Computers Allow People to Do things They Could Not Do Otherwise. This is not a fallacy, it's true. As an amateur composer, I can compose and print a piece of music in a tenth of the time it would take me to do by hand. I am not taking advantage of any automatic composition or any silly A.I. technology. I'm just taking about using Finale 2000 to enter in the notes using my MIDI keyboard, edit them quickly with the mouse, and listen to the result through my speakers to make sure I didn't make any musical "typos".
How about scientific research? Scientists now have amazingly powerful tools at their disposal. I know plenty of people who do need to perform a Fourier analysis on a daily basis (see Fallacy 7) and for people like this who are leading experts in Physics but know little about computers, a book like "Learn Matlab in 21 days" is all they need. I agree that you can't become a good DB programmer or QA person by reading a quick book or studing at DeVry, but most people who use computers aren't programmers and don't need to be.
While we were taking about scientific researchers, clearly "Computers are Getting Faster" is NOT a fallacy for them!
Finally, what about the Internet? Yes, the dot-com bubble bursted, but note that all major companies still have websites. It's silly to even consider a company not having one. E-mail definitely allows you to do things that weren't possible (or at least weren't realistic) before, like collaborate on a book or article with someone who lives halfway around the world.
Also, statements like "Programmers are Getting Better" are hard to really analyze. One problem is that there are hundreds of times more programmers now than there were twenty years ago. As a natural consequence, the average level of expertise has gone down a lot. But the best programmers today are a lot better than the best programmers twenty years ago - because they're building off of the best ideas of the last twenty years. And there's no question that even below-average programmers are far more productive today than below-average programmers twenty years ago, simply because there are more high level tools available to them. People who write Visual Basic scripts for internal company programs may be very poor programmers, but if they can get the job done, who cares?
< / RANT >
Sorry. Computers have definitely made my life better, and have enabled me to do many things I never could have done without them, so I get upset when people try to argue that computers suck and that things are basically the same as they were before computers.
It's not counterproductive to have people pushing the envelope, it's counterproductive to have people outside of the mainstream dictating to those in it what their needs are.
Despite advances in UIs, computers are still designed as general-purpose hobby devices, rather than for the specific functions for which the majority of their sales are used. When users complain that it doesn't make sense to have to log in to a system or to "start" a word processor, or to "double-click" to "open" a file through a graphical icon, they're simply told that they don't understand the technology. Same when they have to figure out [to avoid being scammed] what kind of RAM they need with their new P4 processors.
The point is that for products to be useful and effective, they need to be designed with more consideration for the needs of the user; and much of the time, that which is "neat" to enthusiasts has held sway over design at the expense of what would be useful [see featurebloat].
BTW: impractical thinking is not necessarily visionary. It might just be impractical.
Larsal
Michi Henning has given his Computing Fallacies talk several times in various venues in the last few years.
Slides and video from one of these (given on April 18th, 2000) are available here.
He will probably continue to give his talk for many years to come, as it is unlikely things will change much in the short to medium term.
It's sort of like the fashion industry, what the models wear on the runways isn't what you're going to buy in Sears, but it does set the "trend".
There are good points but I've got a problem with what looks like the unwritten assumptions that programs are all the same and are targetted at the same people. Let's see who uses:
-Word
-Matlab
-Apache
-Linux/Embedded
-AutoCAD
...
While you (should) want to make Word as simple as possible, you want to let Apache users configure everything, you want to let people modify the source to Linux(Embedded) to exactly fit their needs. AutoCAD needs lots of features, but not necessarly source code ('cuz there are less programmers in mec. eng. than ee)
So I'd add fallacy #11: Programs are all the same
-Software management should be done the same way, regardless of the software being produced
-All programs should focus on simplicity, not features
Opus: the Swiss army knife of audio codec
its the fast save feature, turn it off, and file sizes shrink. A fast save apparently appends to the end of the original file with routing for where this and that section needs to go, in addition to the edits, its apparently not real efficent but it beats waiting for 10-20 seconds for msword to finish saving so you can shut down your system in MS marketing's eyes, dig around in options and you'll find a check box for it
09f911029d74e35bd84156c5635688c0
Money is not the only motivator for people to do work -- even skilled labor. Doctors who work in well-paid jobs in cooshy suburban hospitals routinely donate their efforts to free clinics and programs like Doctors Without Borders. Lawyers take on pro-bono cases for causes they believe in. Programmers write Free software. They all do this not for money, but for personal satisfaction, out of a sense of duty, or to gain experience they wouldn't get in their day jobs. Why do you feel it's appropriate to praise the doctors and lawyers who donate their hard-won professional knowledge to the world, but to deride and ridicule the programmers who do so.
Consider this - a volunteer doctor or lawyer can only help one person at a time, whereas an infinite number of people can benefit from the efforts of a volunteer programmer.
Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
...if spoilers and racing stripes are part of your car's user interface, I'd say you need some driving lessons, or a different car.
Virg
Why do certain members of the programming community think their industry is different or more special than others? Every industry has some equivalent of open source work and closed source work that both thrive.
:-)
In my particular branch of financial services (business appraisal), the equivalent to open source would be all of the articles, books and speeches about newly discovered techniques, insight into court cases and mathematical formulas...in short, industrial infrastructure. Everyone in the industry utilizes and benefits from the sharing of information. And, the people that share this information, such as Shannon Pratt, gain tons of respect and are held in the highest regard.
The equivalent to closed-source work in my industry would be actual valuation assignments. They have to be "closed" and not open for anyone to see due to the sensitive nature of the information we're working with.
The funny thing is, we use all of our openly discussed ideas and techniques to create confidential work. Sort of like a BSD licensing system
Bill Clinton: Pimp we can believe in. - The Shirt!!!
I wonder just how far we've come in automotive technology since the 1950s?
/help documentation.
I mean, the cars don't actually go any faster. The speed limits aren't much higher, and if anything, the increased traffic makes us drive slower. Environmental improvements from catalytic converters and the like are nullified by the increased number of cars producing pollution. We add rear-window wipers and CD players, and instead of buying (or building) a more efficient vehicle we demand (and get) SUVs from every last manufacturer on the planet.
So, are cars actually any better, when any technological improvements are effectively nullified by the people driving them?
Well, yes, they are. Cars are more popular every decade because they're easier to use, cheaper to own, and more comfortable for everyone inside. They may not be "better" from a numerical perspective, but anyone driving a 2002 model right after driving a 1962 model will immediately notice the difference.
Computers are the same way. The faster they get, the more we expect them to do. The more people that use them, the fewer things they are used for. Developers get sloppier about optimization and APIs get changed with every iteration of the OS. It takes longer to start up this year's computer as it did 1979's, and people still do the same basic things with them.
But look at how much they've changed: graphical UIs make it easier for anyone to use a computer, instead of having to know what to type in at a text prompt. WYSIWYG doesn't happen 100% of the time, but 98% is a fair sight better than 0%. I may not get anything more interesting using a cable modem than I could using a 14.4 and a BBS, but at least all the commands are on screen instead of hidden behind a hundred scrolling screens of
So people are using all this computing power for nothing more than playing video poker and typing papers. So what? 90% of the population never needed it to do anything more; at least in 2002, they can do it for a lot less money and with a lot less reading. Companies and users may throw away countless man-hours developing skins and pretty interfaces, but at least they're successful in making computers familiar, comfortable, and desirable to the common man.
And besides, look at all the things we can do with a PC today that we couldn't ten years ago: access millions of pages of esoteric information online. Take photos digitally and organize them on CD-R discs, taking up 1/100th of the space for about the same cost. Listen to a thousand songs from a single digital jukebox, no vinyl or tape required. IM your mom across the continent without spending a penny on long-distance. Order anything from the Sears catalog without having to own the catalog. Find a new job. Locate a special interest group. Print a map. Comparison shop.
Or, just write and print out your resume. But at least nowadays, as with Henry Ford's first cars, you're not stuck with "any color you want, as long as it's black."
Or if you ask me. This guy has a few interesting points and a bunch of useless or fundimentally flawed points.
The one "decent" point is that people spend too much time dicking around with fonts and colors. But that's a problem that doesn't sit on a hard drive - it sits in the chair in front of the computer.
Fallacy 1: Computing is Easy, he shows by pointing out that there are "Teach Yourself" and "for Dummies" books. These are merely titles. He then points out things like "Air Traffic Control for Morons" is silly. Yes, it is, if you're going to be a professional ATC. But then, if you're seeing if you're interested in the field, or possibly getting caught up on a new system, it makes sense. These are industry specific publications - grabbing a copy of New Riders "Essiental Python" won't teach you Python if you've never programmed, but it will get you going quickly if you've done C++, Perl, etc before.
Fallacy 2: Computers Allow People to Do things They Could Not Do Otherwise This is not a fallacy. I don't have a typewriter, lightboard, razors, specialized photography equipment and a printing press. But I've used a multitude of layout programs and a printer, which is far cheaper and quicker to use. The fallacy he *is* showing is the concept of "Software automatically makes me an expert", which is not a common credo at all. In fact, most office workers will activly try to avoid learning new software because they don't understand that that field.
Fallacy 3: Computers Increase Productivity
Walk into an engineering firm or archetect firm and ask them if they want to go back to sketching blueprints. See if most small businesses have a CPA on hire anymore. He says: "It only took five hours to format this memo". If that's the case, the problem sits in the chair, not in the software. Your HR department should take care of that, not IT.
Fallacy 4: Programs Help Their Users Which he then says is a false because they are only focused on upgrades, money and crushing the competition. And yet, later he'll say why open source is useless. Um.
Fallacy 5: If It's Graphical, It's Easy CLI might be more "powerful" in the hands of a skilled user (I won't give mine up), but well done GUIs can be self explanatory (assuming you know the conventions of that UI). Again, he's phrasing this so it is self-fufilling. Of *course* there are lousy graphical interfaces out there. There are also quite a few easy ones. And I think the metaphor of windows is a very very good one in a computing environment when you are moving from task to task constantly (Letter, Email, Check the intranet for some numbers, back to the Email, task list, look up an phone number, make a call, pull up client records and make note, check email, write a letter). For very deticated tasks, it's less useful, but many real world users need to jump around in tasks. Even if it's a spreadsheet and solitare, as a receptionist listed as her "necessary applications".
Fallacy 6: Computers are Getting Faster Computers are getting faster, the experience is not. On my Apple ][, I could turn it on and in a matter of several seconds, be typing in a word processor. But then, it didn't have spell checking, fonts, and I couldn't make a spreadsheet larger than something like 32x64. Humans can only work so quickly, so as long as the computer can keep up, the coders will add new features. There is the issue of "snappiness", but that's a feel issue less than a task speed issue.
"We have come along and destroyed all the gains we have made in hardware" - no, we have leveraged them into more flexability.
Fallacy 7: Programs are Getting Better
He asks how often I make pie charts. Me? Very seldom. But for the guy down the hall who does financial pitches to clients, he really really needs that ability. How often do I embedd live info into a document? Not often - but the guy who manages the intranet does it all the time. How often do I perform a Fourier analysis? Pretty damn often - when I was in college. Had I gone into a different field, I would be stone dead if I couldn't.
His wife was trying to save a 2.2MB for a 2 page Word document on a floppy disk. Plain text, default font, left aligned. There was one email address, underlined. After 17 minutes of searching, he found a way to turn off this email address highlight off. The document was then saved at 800KB.
My comment: Then it wasn't plain text! We all *know* that Word's doc format sucks... so use something else (and yet open source has no advantages in creating sane standards).
Fallacy 9: Programming is About Date Structures and Algorithms
No... Program = Data Structure + Algorithms. Knowing how they work makes you a better programmer. Period. And Michi? I wrote a program using linked lists last week. Some of us do low level code for specific reasons.
Fallacy 10: Open Source is the Answer I agree with this one - again, because he phrased it carefully. Open Source is an answer, not "the" answer.
Fallacy 11: Standards all the Solution Right then, what is Corba?
Fallacy 12: We are Making Progress If you bought the shite at the beginning, I assume this makes sense.
Fallacy 13: The Industry Knows Where it is Goling Name an industry that does know what is in the future. Hell, name a *person* who is certain of the future and is not delusional.
This guy is a twonk, and almost dangerous: The best UI people on the planet are those working in the car industry. And yet people die all the time because the controls for AC and radio are off to the side and different in each car. I get into a new car, and I have to play for a minute to figure out the lights, shifting, etc... and I just forget about things like cruise control unless I'm on a road trip - and then I ask.
And finally, the biggest thing that shows what an idiot this guys is: We have to stop doing things just because they are fun. If you don't enjoy your activities and you aren't pursuing alternate activites, that's a pathalogical condition. You are mentally ill.
Me? I enjoy my profession, *and* do the best damn job I can do to make powerful, easy to use and useful solutions for my users.
--
Evan
"$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
As for "ruining it for the rest of you", tough shit. I bet you complained about the people in your college classes who set the curve on exams, too.
In point of fact, I was often the one who set the curve. Or there was no curve. Grades are inconseqential, anyway.
Anyway.
That comment was kind of self-indulgent, but if you were affected by it you'd say the exact same thing, unless you're Jesus himself who is perfect and has no faults.
Actually, the design of most automobiles (and the operator interface) is controlled as much by legislation and safety concerns as by intuitive use. And as another point, yes, I did need to RTFM to drive a car. It was my driver's manual, so I could get a license. The point is that most automobiles are driven the same way, but to learn any of them, you must first learn one of them, which takes practice. The similarity among automobiles makes it easy to move from one to another, but if you insist that driving a car is in and of itself intuitive, I ask that you consider how someone who had never seen a car before would fare behind the wheel. For example, even if you told Ben Franklin what a car did, would he be able to tell without experimenting how to get it started, in gear, and moving in a non-hazardous manner? Probably not.
Also, you aren't considering that many programs don't do the same things. To extend that to your car analogy, you'd have to say that the same controls that you use to drive a car should seamlessly translate to flying a plane or driving a submarine, as they are also vehicles. Again, once you learn one airplane, you can (at least marginally) operate most of them, but again, it's not intuitive or nobody would need a pilot's license. For humorous demonstration, imagine you're on a plane, and the pilot passes out. You get behind the controls, and when you raise the tower on the radio, they say, "Just land it! It's like falling off a log!" I think you can see my point.
Virg
enjoyment of work leads to lack of quality.
Killing people is not enjoyable (for non-sociopaths) but our army is good at it. They see a greater good in wholesale slaughter. Sometimes there is, sometimes there isn't.
If they enjoyed it, they'd be looking for the most enjoyable way to, for example, decapitate someone, instead of just making sure they were dead at the lowest loss of friendly life.
use your imaginations, if you have them, to draw the parallels between programming and other vocations.
If you're going to tell me that a tarball beats an InstallShield, self-extracting exe that my grandmother can double-click to open and have automatically install pre-created binaries for her, you're sadly mistaken.
This is fascinating, and perhaps should be published more widely - who knows, maybe it'll be the kicker to get people to stop using Word! *gasp!*
True.. but why, in the first place, is the software full of 'funny' things that serve no other purpose besides procrastination?
Computers are here to get something done - whether that's actually doing a serious job or watching DivXs or playing games. One problem with fancy GUIs is that they distract people from the actual work. I'll rather watch movies in fullscreen with no visible widgets, why should office work be any more cluttered? (maybe because it's less important.. ;-)
This extends outside computing, for example in the form of elevator music. It's absolutely annoying because I want to decide when and what music to listen to. It probably reduces peoples' ability to appreciate good music in proper situations, because their senses have been numbed by some marketing morons.
Now it's interesting why PHBs would rather choose Windows, over a more calm and productive workign environment. Instead, you get Dilbertish things like:
Escher was the first MC and Giger invented the HR department.
Penicillin - People still take drugs, but those drugs are magnitudes more powerful and complicated than penicillin
Iowa/Yamato class battleships - The battleship as a ship-of-the-line was rendered obsolete in the 1940's. Those that serve today carry helos and guided missiles.
Apollo moonrockets - They have not been utilized since 1974, with the Apollo-Soyuz test project. I will grant that NASA has lagged behind in space delivery systems.
Polio vaccine - If it isn't broke don't fix it. However, new vaccines are coming along all the time.
Transistor - Has been superceded by better technologies.
Bulk transport system, rail - The main difference here is that the engines of today are vastly more powerful than those in the 1860's. There is no comparison between a 4-4-0 American-C and a Dash D9. None at all.
Bulk transport system, car/truck - Same with above, plus the interstate system, created between the 1950's and the 1990's (yes, it was based on 1930's German tech, but it is better than the Autobahn).
Airplane - Once again, the concept is there, but a whole host of innovations have been ignored. The airplane of 1910 bears little resemblance to the airplane of 2002.
Fast airplane - Once again, vastly more advanced today. Try telling me that an F-86 Sabre has anything on an F-22 Raptor. Better avionics, superior engines, stealth....
Personally, I would say we're making plenty of progress on these fronts.
~chazzf
No statement is true, not even this one.
i take issue with some of the sentiments here: ...
... it could be argued that tcp/ip was a major reason the internet could explode (the other being http, which has also undergone many revisions, but that's the beauty about a _standard_, people can start talking about _the same thing_.)
---
Fallacy 3: Computers Increase Productivity
- The sound effects in this presentation will make all the difference
- It only took five hours to format this memo
- The shading on this pie chart is simply superb - The icons on my desktop are lined up perfectly [sound of car screeching to a halt for each bullet point]
---
well, people have a certain actions to choose from, and a certain amount of resources (time, etc.) to allocate. choosing not to work further on your presentation is one type of action to take. another is to gussy it up with wierd sound effects and alpha channels. clearly, what's going on is, there more value in continuing to gussying-up than to doing something else. so yes, computers have increased productivity, in the sense that the total value what the person can do in a day has gone up, BUT, people have very strange utility functions.
---
Fallacy 5: If It's Graphical, It's Easy
- Single click, double click?
- Where is the #$%^@!! menu??
- Which part of the UI does *not* do something?
- With a GUI, anyone can be a
- System administrator
- Programmer
- Typesetter
- Accountant
- Statistician
-
---
well, thanks to modern tools, very bad system administrators and programmers can be made into moderately bad administrators and programmers. this is a _huge economic boon_, since good system administrators and programmers are rare and expensive, and will only get better as the tools improve to the point where very bad is transformed into mediocre.
my whole job is to make statistics and informatics tools for biologists (non statisticians, non computer scientists). yes it works, and it's a huge boon.
---
Fallacy 6: Computers are Getting Faster
- How long does it take for your PC to boot?
- How long does it take to
- start your word processor?
- load a web page?
- compile a program?
- how long did it take
- five years ago?
- ten years ago?
---
this relates to the presentation point above, but basically, the utility of booting faster than X is very low for most people, so computers settle upon the minimum and then stop improving that piece (just like a computer or tv or cd player or car cheaper than $Y is of little utility, so the cheapest computers/tvs/cd players/cars are always about the same price but have better technology.)
---
Fallacy 10: Open Source is the Answer
- Economic model is doubtful
- Source code is useless
- Motivation for Open Source is inappropriate for most software
- Nerd culture is counter-productive
---
but nerd culture is _motivated_, just by a different metric than money. because of that motivation, nerds will and have eventually realized that boring things like ease of use and installation make the difference between adoption and non-adoption of their favorite technology, hence gnome, kde, etc.
it's an alternative economy, but it is productive, in some ways more productive than the mainstream economy.
---
Fallacy 11: Standards all the Solution
- Usable standards are created only years after the fact
- Standards are foul compromises
---
this is total crap. i'm sorry, but it is. standards need to be designed with extensibility and the next generation of standards in mind, but please. tcp/ip? a foul compromise? usable only years after the internet exploded? no
more problems with this, but i'll stop here.
-- p
If people who sell software for money want to continue to do so they have exactly one choice: pay the people who are willing to write software for free.
The Harvard model(turning away qualified applicants because you have more applicants than slots to fill) ain't gonna cut it in the world of software. If the software industry expects to sell its wares, it damn well better hire all the qualified applicants.
Elitism will not work. Because if people have the ability and the time, but no job, they will sit around making high quality software and giving it away for free. And that poses quite a little problem if you have a similar product and want to charge for it, now doesn't it?
The current downturn in the computer industry is by far the worst I have ever seen. Ever since I can remember(back to the early 80's when PC's first arrived) the computer industry had always expanded and provided more jobs. Now its experiencing its first real downturn and you have a lot of skilled people without jobs. If those skilled people continue to produce software, but they give it away for free, that spells disaster for software companies who expect to sell their product for money.
Open source software will indeed "catch up" to its commercial equivalents. I give KDE less than five years before it is equivalent or superior in every way to Windows. Same thing with the Open Offices, the databases, the programming languages, etc. The software industry has one choice - start paying open-source programmers or die.
I'm not sure if our current economic model can deal with the situation of high quality products being given away en masse for free. I certainly don't see how the software industry can grow like it did in years past. Since the computer industry has led the economy for the last 20 years prior to the current recession, we may never see a recovery. Unless we revamp our current economic system to deal with the fact that what had previously been leading the economy into prosperity(software) is now being given away for free. Also, on a global scale we have to compete with entire economies of scale(China) that don't pay for software.
No, Thursday's out. How about never - is never good for you?
Lets run down them quick:
I have no idea what the 'Progress' is at the end. Apparently it's quite different from Progress? I guess I had to be there.
I think the designers should focus on design and let everybody else do their job.
Very very true that we need realistic growth expectations. Especially for startups. I remember an anecdote were AOL had figured a certain growth rate not factoring any sort of slowdown as they reach critical mass. They intened to account for something like 15% of the nations GNP by 2010.
I read the internet for the articles.
We're doing OK. Sure, some of these things aren't commonplace market realities yet, but I don't want to hear it: If the Apollo program (moon landing: 1969) is accepted as "1940s" technology, then a gap of a few decades is apparently OK.
Although it might be true that someone from 1950 could recognize more of life in 2002 than someone in 1900 could have of 1952, that's a temporary anomaly. In fifyy years, the world will look nothing like it does today. The past looks richer because you're far enough to see what turned out to be actually significant.
The Mongrel Dogs Who Teach
Company I work for purchased a system in early 80's. Company was new. Who knew if it would last? This was pretty damned important software. So, the source went into an escrowed safety deposit box. They disappear or file bankruptcy, we get to open the box.
Never had to use it, never wanted to use it. But it was there, and allowed us to pick something other than IBM (way too expensive at the time. Not sure if they even offer a similar product anymore.)
Jesus was all right but his disciples were thick and ordinary. -John Lennon
Thats the problem. Clippy is an excellent idea, if it is implimented correctly. Help that knows how to do what you want to do, and helps you do it. Something to notice that you are doing something the hardway and point out the easy way.
Insteady clippy is annoying. A failure of HCI, despite being a good idea. Not the first time though. Nobody would consider a talking car anymore, even though it could be useful to have your car talk. But fear of "a door is ajar" keep killing the idea before it starts.
You just are wrong in so many places... people who enjoy and time pride in thier jobs almost inevitably are better at them, because they put more effort into them, care about losing them, and don't look for things to keep them from working. Customer service is an excellent example, I know a couple people who actually enjoy working at the help desk. They're much more helpful (read: better at thier job) than the people who hate it and just try to get you to go away.
As for the army... a great deal of conditioning goes into allowing soldiers to objectify enemies, allowing them to take pride and pleasure in killing without feeling the guilt that they would if they didn't have that. Even more so in the modern era of "technical" warfare.
The public benefit of open source and free software has nothing to do with economics. It has everything to do with learning and progress, and free access to source code is the key to advancing past the current stagnant backwater that computer science has become.
Let me explain.
Imagine that you're a young student who wants to become a writer. You ask your teacher, "What do I need to do in order to become a great writer."
Your teacher, if she has a bit of sense about her, will tell you to read all the works that you can, by the best writers, and learn from them. By recreationally reading and studying the works of great writers, as a young person, you will learn to recognize and understand, from experience, what differentiates good writing from bad writing. This is the educational process that, if you are both diligent and lucky, will turn you into a talented writer.
Contrast this advice with the world of computer programming. In the world of software, programs are distributed as object code -- meaning that you can't learn from them by reading them. Plus, they contain "licenses" that proport to deny you the right to study them to learn from them. Any programmer who obtains surreptitious access to some major program's source code is running a serious risk of being unemployable -- as a legal liability.
It is as if our original hypothetical budding author were told:
"If you want to be come a author, you must be sure to never, ever read anyone else's books, especially popular books by great authors. The way to become an author is to wait until you are of college age, then enroll in a two year "writing school", where you will learn grammar and spelling, sentence structure, and then write a series of short essays. For your final project, you will write a single chapter of a book co-authored by the entire class. Once you are completed with this two year course, you will have your degree, and, having only studied textbooks, will be fully qualified and ready to join the workforce as a writer, uncontaminated by exposure to real-world writing experience.
If this were the way we taught writing, then our novels would show the same lack of quality -- and lack of progress as our software does right now!
So how do we fix this problem?
I believe that the answer is to reform copyright law. The current system of closed source, proprietary programming technology -- and the lack of any noticable progress in the craft of programming -- reflects the complete failure of copyright law brought on by the extension of copyright protection to proprietary software.
Patent and Copyright law are supposed to promote progress by placing the best examples of science and technology into the public domain, where they can be studied and learned from. If I want to learn about any physical science or engineering discipline -- if I want to catch up to the current state of the art, all I need do is go to the patent databases and -- right there, are thousands of examples of the latest, real-world scientific technology, written by actual scientists working in actual companies on actual products -- all there for me to study and learn from, and, 17-20 years after disclosure, to freely draw upon and use.
This is the public benefit of the patent system -- the dissemenation of practical engineering and scientific knowledge. This is supposed to be the public benefit of the copyright system. Copyright is supposed to be a tradeoff. Copyright is supposed to provide monopoly benefits in exchange for publication -- public disclosure. This works just fine in the case of natural language writings, because the source code is the product, but not for object code, where the product can only, for all practical purposes, be used -- not studied and learned from.
Copyright law could and should be used to leverage a similar public benefit, however, in the case of software, our legislators have completely missed the point of having copyright in the first place. The purpose of copyright is not to protect authors. The purpose of copyright is to create the next generation of authors -- to "promote progress" -- by encouraging the publication of works.
Imagine an alternate universe in which copyright protection were only afforded to software that was distributed in conjunction with full, buildable source code. Companies would have to choose between copyright protection, and DRM protection, instead of the current dysfunctional system, where they are able to effectively obtain copyrights on works that are at the same time, in effect, trade secrets.
In such an alternate universe, young programmers would start out as computer users. However, if they became curious about how their software worked, they would find the source code to their programs waiting for them.
Like the young, would-be writer with a library full of books, they would have the entire world of software to read, study, analyze, and learn from.
One objection to the source code requirement for copyright protection that I have heard is that it would encourage code theft. If companies distributed the source code to their products, I have heard it said, other companies will steal their work and incorporate it into their own code.
The answer to this objection is that, under such a system, they would not be able to do that because it would be trivially easy to detect such theft. If I were to steal a portion of the Windows source code and add it to my program, then went to market my program, in order to obtain copyright protection, I would be forced to distribute my source code -- with the stolen Windows source code imbedded. Microsoft would discover it and shut me down.
In this way, mandatory disclosure of source code would severely limit, or effectively end the practice of code theft. Who's to say who is stealing code today? It's nearly impossible to tell, when only object code is published.
Fortunately, free software, and to a lesser extent open source software is bridging this gap. Yesterday's young budding software writers had little to work from. The new generation of young software writers -- and I am talking about high-school age students -- have the entire GNU/Linux/Gnome/KDE system to study and learn from. Free software is the only software that earns its copyright. It's the only software that "promotes progress", because it's the only software that can be freely studied by the general public. It's a functional replacement for the public domain that has been lost/destroyed by misguided, failed copyright law.
In other words, just as having access to a library of great books is everything to a young, budding writer, having access to quality, real-world source code is everything to a young, budding programmer.
In a certain sense, it's probably the only thing that really matters.
But, the people that design and position the steering wheels, pedals, shifters, turn signals, gauges and door handles in such a way that *anyone* can go from one car to another without *any* difficulty or re-education
The example I give is this: I once drove a friends car in the dark. I drove it on city streets for close to an hour before I realised the turn signal lever wasn't a lever, but a little switch on the dashborad. However that switch was right where my fingers expeced it to be, and worked just the like the turn signal lever of any other car I ever drove so I didn't know that it was a completely different implimentation!
Unfortunatly not all things are like that. When I drive my dad's truck I often trun the headlights off on a rainy day, his headlights switch is where the whindshield whipers on most cars are.
Unfortunately, I feel that I must disagree with your take on the programmer mentality. I'd say that about 10% of programmers are the "pushing the envelope type", but the rest are the people that can't see the forest through the trees .
I'm talking about the programmer who implements a super-fast piece of code for parsing a section of text for possible email addresses, but ignores the fact that my mother can't figure out how to turn off that "goddamn automatic underlining" feature in outlook/word/works.
The truth is many, many programmers lack the vision to evaluate the end result of their work, or how their work interfaces with the end user. We are so focused on new features and new versions that we have wound up with software and hardware that ends up being a Swiss Army Knife From Hell, instead of being faster, more refined, less buggy, and easier to use. Microsoft Word is probably the worst offender of this -- its feature list is gigantic, it can do a billion things.. but it can't do *one* of those things very well.
No, creativity and talent can't be taught, but we at least need to let these CS students know that they aren't writing code in a vacuum. How about, instead of the traditional "implement this data sructure" programming project, students actually make a usable program that involves these structures.
Name ANY technology as far reaching as taming fire or the printing press.
Name ANY cultural advance as far reaching as money, the alphabet, language.
All advances build on previous advances. No advance is as simple and elegant as what it is built upon. That's how progress works.
The steam engine was a remarkably simple advance, but Hero from the Greek/Roman era built the first prototype. The advances made from the early 1800s until the end in the mid 1900s were evolutionary, not revolutionary.
Chemical rockets are amazingly simple in concept, and they build on the Chinese concept from 1000 years before. All advances since then are merely refinements.
You can pick any period in history and say that following inventions were not as far reaching. Then compare that period to prior periods, and see if the prior inventions don't make later ones look like mere refinements.
Infuriate left and right
Does the subject of a post give you insight into a comment? It's useless, too bad I can't turn them off.
My website's on linux, but god knows I would never maintain the box itself or telnet in or run it on my own machine.
I don't put up with perl since I have PHP & ASP.
I don't use MySQL but (true story!) I got modded down for telling people that I like mSQL.
And whoa, get this, Slashdot is about more things than Linux & Open Source! Whodathunkit?
[o]_O
The only thing that it would cause is people demanding that MS make Word more secure. Word is like Herpes or fruit flies, it'll never go away.
A: None. The Universe spins the bulb, and the Zen master merely stays out of the way.
A great word processor will do a lot of the annoying things like spellcheck and thesaurus and automatic formatting
Exactly -- and those are not necessary. People used to tolerate typos because they read the message (the forest) and ignored the missing leaves (the trees). Now people fret about perfection in every little useless detail and forget to get the message itself as clear as possible. *That's* his point -- people take just as long to write a letter nowadays, and the letters aren't any clearer, in fact they are worse for all the formatting and useless decoration -- so where's the advance?
Infuriate left and right
Bulk transport system, car/truck - 1920's
The Roman roads would have sufficed, actually, so you're late by about two millenia.
Fallacy 1: Computing is Easy
Computer Science isn't easy, but overall computers have become much easier to use. Compare any modern PC with a PDP-11.
Fallacy 2: Computers Allow People to Do things They Could Not Do Otherwise
The World Wide Web, expert systems, natural language translation, mathematics, many forms of automation. All of these technologies have a long way to go, but are still useful. Cheap PC hardware lets me solve many mathematics problems without perceptible delay. It's possible to do video editing on a PC that would have required an SGI just a couple years ago. The typewriter has none of these capabilities. Computers cannot help those who are unable or unwilling to think, but intelligent people have benefited greatly.
Fallacy 3: Computers Increase Productivity
Of course they do, ever try managing a snailmail mailing list w/o mail merge? Consider all of the benefits of automation over the past 30 years. Thanks to Moore's Law, many applications no longer need to be written in C or assembly.
Fallacy 4: Programs Help Their Users
I would make the argument that many tools have gotten sufficiently powerful that programmers are no longer needed. Much of the tedium of early computer use has been automated away.
Fallacy 5: If It's Graphical, It's Easy
Please don't repeat the tired old saw about how CLIs are easy to use. A well-designed GUI is easier to use and has a shallower learning curve. Most of the flaws you are referring to are in Windows, classic MacOS was quite easy to use.
Fallacy 6: Computers are Getting Faster
Computers are getting faster and making a crack at Microsoft doesn't change this. How many current applications are now IO-bound instead of CPU-bound? How many desktop PCs have cycles to spare for RC5 or SETI@Home? Look at how many programs are written in interpreted or safe languages and compare to 10 years ago. Compilers are faster and generate better code. Even Microsoft OSes are reaching acceptable levels of stability.
Fallacy 7: Programs are Getting Better
I would argue that most desktop applications are close to feature complete. Those which aren't do improve with each release - Adobe Photoshop is an excellent example.
Fallacy 8: Programmers are Getting Better
Computer Science is still in it's infancy, but it's becoming more scientific every day. Even at the mediocre school I'm attending, writing a Unix kernel is required to graduate. I predict software engineering will become "real" in 50 to 100 years.
Fallacy 9: Programming is About Date Structures and Algorithms
What else would it be about? ADTs and object-oriented programming make complex tasks easier to deal with. Big O notation provides a means of evaluating performance of algorithms and shows you why you shouldn't use a bubble sort for a 1000 element array.
Fallacy 10: Open Source is the Answer
For some problems, it's a reasonable solution. For others, it's foolish. If an inhouse application costs development money, it may be advantageous to open source it. Source code is also useful when a program is EOLed by its developers.
Fallacy 11: Standards all the Solution
Standards may be foul compromises but they make cross platform development possible. Look at all of the different web servers, POSIX OSes, and C compilers out there and say that again with a straight face.
Fallacy 12: We are Making Progress
Yes we are. 30+ years after their invention, garbage collection, object-oriented programming, safe languages, and type checking are all generally considered good ideas. Functional programming shows a great deal of promise, and formal proofs are feasible for real world applications, e.g. Praxis' Spark95. Telelogic has an SDL to C translator that will produce C source code from a specification.
Fallacy 13: The Industry Knows Where it is Going
Does any industry? We've seen the second tech boom come and go, but overall software and hardware quality has been improving.
Life is a psychology experiment gone awry.
Aside from the fact that I absolutely *loath* InstallShield, a binary no-brainer type installation is only better if it always works. If it doesn't, you're often out of luck.
I just recently had to use Windows for the first time in about three years and I was amazed at how difficult it was to load up with software. Half the software packages I tried to install had problems. I called the vendor of the network card to tell them that their install failed. "Did you try un-installing then re-installing it?" I said that I did. "How many times?" they asked. In the two days it took me to get everything installed I think I spent 3/4 of the time waiting for the system to reboot. My vision of the painless life of a Windows user quickly vanished.
It seems that a lot of people are missing the point. These criticisms and suggestions seem to be directed towards the Extremely Computer Literateare and the lack of innovation in providing easy to use interfaces and significant improvements over traditional alternatives.
A word processor today vs a word processor from X years ago.......? A spreadsheet is still a spreadsheet.
I know I am going to get flamed for this and people will no doubt spout of examples of enlightened girlfriends & colleagues who were brought into the Linux fold and are quite comfortable in it.
For me to have to compile something (in Linux) to install a program is utter and complete non-sense.
I know many people who just manage to send e-mail and barely browse the web in Windows.
The Source Code is irrelevant point refers to people like them, and me for that matter I think its cool that If i really wanted to i could see how everything came together but I really don't care, and neither does Joe Blow or Mary Smith.
Linux Users & Computer guru's etc are in the extreme minority of computer users. Computers are designed by Computer people for computer people NOT for the Average human being. I think some people would be better off with Geos or some other restrictive GUI simply because all their choices are right there infront of them.
I know many people who are better off with a Windows 3.x or DOS based system. Even if it is text commands there is a clear progression from point A -> B instead of having to sort through various menu's and procedures in a GUI.
My 2 cents
In theory, the notion of a non-programmer 'who is good at finding bugs' is great, but they rarely exist. For pure end-user apps, they might make up a portion of the QA team, but that's all.
There are two major problems in practice. First is that the type of insight and analytic skills you need to do good QA work are pretty much the same as those needed to be a good designer/developer. You need to understand the 'task' at multiple levels, know how it relates to other aspects of the program, and understand the underlying technology etc. Generally, I can break the code 'finished' by junior programmers almost instantly - why? Because the combination of technical knowledge of how they probably attacked the solution along with domain knowledge of relationships/edge conditions etc is a powerful combination.
Second is that respect for non-programmers by programmers is terrible. How many dev projects have you been involved in where the programmers ignore the stupid/wrong/annoying etc QA guys? Happens all the time. Moreover, when you do get a really good QA guy, what happens? - He gets lured into development because it's 'more important' and/or pays better. Thus, I really believe that Development and QA are really phases of a project that need the same basic skills, and should be addressed accordingly. In a perfect world where everybody did formal analysis, pre/post condition testing, automated edge condition unit testing etc some of this might change, but that'll never happen in my lifetime.
If all this should have a reason, we would be the last to know.
Killing people is not enjoyable (for non-sociopaths) but our army is good at it. They see a greater good in wholesale slaughter. Sometimes there is, sometimes there isn't.
Other than the above statement ruling out 90% of the video games out there, you're point still doesn't mesh with reality, or, at least, the justifications for *much* of our "reality".
For example, the reason government exists, according to Hobbes, is to protect us from the war of all against all, from the violent nature of ourselves. This implies that government's purpose is to "civlize" our native desire to slaughter each other. Nietzche's (sic) ubermensch is "civilized" man's ultimate form, a form that transcends this bestial nature to become something actually worth existing. I'm sure there are other philosphers who've weighed in on this, but the point is we *do* like killing people and other species, and have from the get-go. (It's up to you to determine if this design is flawed or not.)
In the context of the current discussion, "efficiency" in programming could easily be compared to "efficiency" in civilization: the myth of progress--or, more accurately, the myth of progress of value is the ruling paradigm that holds this species back, and the programming world in check.
"The more corrupt the state, the more numerous the laws."--Tacitus, The Histories
When is the last time you thought it necessary to analyze (algorithmically) code that you are writing?
Its far more important to be very good in the programming language you have chosen and its libraries. Knowing how to write quicksort in your latest language is a dead skill - its already been done better by someone else, and added into the SDK.
I have seen people cut across three lanes traffic to get off the road because they experienced one of Florida's famous cloudburst in a rental car and couldn't find the windshield wiper in time.
We have recognized that computers allow us to do things that we cannot do unaided. We've been steadily progressing along, creating more powerful computers, more powerful interfaces, and trying to basically put it all together so that it becomes intuitive. Yes, we still have a long way to go, but it's getting better all the time. Some day we'll arrive at the point where computers augment our abilities without hampering us or tying us down. Such wonderful things are never created overnight. So yes, he points out a lot of problems with computer usage today, but that's to be expected. What we have today isn't the goal. We're working towards something much better.
It's not enough to bash in heads, you've got to bash in minds. - Captain Hammer
"PHP is open source. I guess you're going to have to stop using it."
I said I don't like Open Source, I didn't say I didn't use it. I use stuff I don't like all the time.
"Slashdot used to have a lot of non-Free Software stuff on it. That seems to have gone down in the last few years."
Funny, I have Linux stories turned off and there are 12 stories on the front page.
"Unless you're saying that you post on Slashdot because you like Jon Katz?"
I see you haven't looked at who I'm a fan of =)
[o]_O
Nice thought, but let's keep our perspective. As a percantage, how many brain surgeries involve life-or-death risks? It's very nearly all of them. How many programs can claim the same? It's rather closer to zero. Comparing the two is silly on the same level as comparing putting a Band-Aid on a ten year old's finger to brain surgery.
Virg
The lines:
has been true since the earliest days of the PC. It's only gotten worse since everything's WYSIWYG. I recall reading a study -- got to be ten years ago -- that secretaries (it was OK to call them that back then) were spending a lot more time on each memo that they produced than they did when they were cranking them out with typewriters.
It certainly hasn't freed people up to do more important work, either. So many folks are hung up on the eye-candy that word processors can generate that they lose sight of why the paper's being written in the first place. I always thought it about conveying imformation. But, now, it's pretty much a contest to see who can cram the most features into a single document. (Don't even get me started on emails with animated Powerpoint attachments announcing the monthly employee meeting -- complete with sliding and rotating titles. Ugh!)
Heck back in the mid/late '80s I used to get in arguments with people over the format of reports (and theses) that people were submitting. Policy stated that computer generated output was acceptable. Even line printed output was acceptable (though not common). What was used to burn some people (myself included) was that some reviewers would give a nicely formatted, pretty font-filled report with, basically, fluff as content a higher mark than one that had excellent content but not as ``pretty'' a format. Form over content even back then. The Web is lousy with that nowadays but the problem has its roots from nearly twenty years ago.
CUR ALLOC 20195.....5804M
I personally have never had any issues with InstallShield. And for someone who apparently "hasn't been on Windows in 3 years", how can you form an accurate opinion on it. That's like me commenting on Apache, which I last used 3 years ago, as "slow".
Further, I submit to you that any user without a CS degree is going to have a far easier time double-clicking a self-extracting installer, walking through a few dialog boxes, and (in a worst case scenario) dealing with an error message that says need to install the original program before upgrading; than working with a command-line interface, figuring out how to solve dependancies for source files (when, in reality, the designer should have just provided binaries for his popular Linux distro to begin with).
You've obviously had little to no experience in the user-friendly world.
This reminded me of Clifford Stoll's second book, Silicon Snake Oil. Just one long one-sided gripe about how computers are bad, using straw man arguments to back up very questionable conclusions.
From a modern journalist's standpoint, this might count as "having an angle on the story" or some such crap, but it really only makes the argument presented shallow and, since it is not based on facts, futile.
Jon Acheson
All opinions expressed herein are my own, and not those of my employers, who are appalled.
Depends - first off, MS's apps tend to have quite a bit of code with is just patches/more functional versions of system files. Quite a bit is also media files - clip art, yes, but also program icons, grammar rules, dictionaries, etc. Excel supports hundreds and hundreds of obscure functions, and Word has WordBasic.
"But I don't use that", you might say. Well, you probably don't, but if you take everyone in a medium sized office (say, 600 people), then you'll find many many people consider the stuff you don't use to be absoluely essential for their work. Then expand it out to all offices in your field, and you hit some more of that stuff. As soon as you shift fields, you start grabbing big chunks of really obscure features.
An insurance company used WordBasic to autogenerate explaination folders showing insurance providers what some questionable injuries were in a stadardized format. Jerry Pournelle, a professional author who types page upon page of straight text every day, asked Microsoft to add the "White text on blue, unformmatted" mode that is buried deep in the configuration panels of Word. Each feature has a user somewhere.
And that, ladies and gentlemen, is why plugin archetectures and code reuse keeps popping up as a Good Thing. I've heard many times, although I have yet to verify it for myself, that Word (say, around 97 or so, at any rate) had all of Excel inside it, and when you embedded a spreadsheet, it didn't actually call Excel to edit it, but rather used its own internal code. Certainly that would add quite a bit of bulk to it.
--
Evan
"$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
I agree that Cooper's book is worth a read, but I have to stop a little short of "fabulous" because of his problems with perspective. Understandably, he considers the user interface to be supreme, but he fails to see when usability isn't the most important consideration. The specific example he used was related to using an ATM. He states that the design of the interface is poor because he needs to enter all of the information necessary for a transaction, but if any of it is incorrect, the machine unceremoniously dumps him out and he needs to start again, rather than allowing him to correct what's wrong. Now it would seem he's right, but he doesn't consider that there's any good reason for this behavior, and in fact, it's done on purpose. The purpose is to maximize the inconvenience for someone who's trying to get money from the machine illegally, thereby either getting that person to give up the attempt, or to spend more time trying while the camera takes picture after picture of the criminal. However, because Mr. Cooper never considered why the machine does what it does, or can't imagine anyone using the machine differently than he does, he assumes that it's simply bad design. Many of his comments are on the mark, but while reading I suggest the reader look deeper into his experiences to see if there's more to the story than Alan notices.
Virg
The best UI people on the planet are those working in the car industry.
OK, the "driving" part of the UI is OK, but most everything else is crap. 1985 Mustang: preset radio station by tuning radio, pulling out lever, and pushing it back in. The fact that I can still remember that is a strong indicator that this is a great UI.
1986 Buick: This car had an electronic radio, so the pull-n-push idea would no longer work. Solution? Tune radio, press "set" button, push button. Not as satisfying as the old mechanical pull-n-push, but intuitive enough.
1997 Buick: I have no idea. Honestly. I sat there in the care for half an hour yesterday and couldn't figure it out. There is an automated thing that will do it for you, which is supposed to be "easy". Just one problem: unless the radio can lock in on the station you want, it won't preset the station. Most of the stations I want (e.g., Anapolis based WHFS) have weaker signals and don't lock in. As a result, I have a dial full of crappy Top-40 presets. As far as I can tell there is no way to manually preset the stations. THIS SUCKS.
This is just one little gripe. Don't get me started on "idiot lights". God forbid anyone should actually know what their water temperature is. They might actually take the car in for service before it overheats and scours the cylinder bores.
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
For every complex problem there is a brilliant, simple solution which is just plain wrong.
For every good idea there is a trite phrase that sounds clever but fails to address the issues.
Unfortunately I evidence for my assertion. It's called plan9.
http://plan9.bell-labs.com/plan9
I'd be interested to hear your apraisal of the points of failure in the plan9 operating system and how superior the complicated microsoft & ibm solutions (DCOM & Corba) are to problem domain of distributed computing.
There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
OK, before anyone else points it out, I know all radios are electronic. I mean to say that it had a "digital tuner".
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
Naturally he assumes just because someone likes simplicity he's a "kid". Good call.
I hate to break this to you, but the "OSS model" was set up long before people started making a profit.
Here's the model:
1)I write a program. I think it's kind of cool, I release it for free.
2)I include the source in the archive
3)My involvement ends.
It's been a long time.
If you're going to tell me that a tarball beats an InstallShield, self-extracting exe that my grandmother can double-click to open and have automatically install pre-created binaries for her, you're sadly mistaken.
If you mean "beats" as in "is easier to use" then, well yeah. But in pretty much any other category then, well, no.
I find it sad that the only thing a lot of people seem to care about anymore is user-friendliness. Especially people who don't need user friendliness themselves.
The enemies of Democracy are
I did. You're wrong too. The key here is the biggest problem lies not with the computer at all.
Fallacy 1: Computing is easy. Book sellers try to sell books by any means. And one of them is to offer imposible things. "Teach Yourself C++ in 14 Easy Lessons", is a lie. Maybe "Small Introduction to C++ in 14 Easy Lessons". They say computing is easy, and it's not. But the books sell.
Then the problem is with the publishers and the purchacers. It exists in all aspects of life - there are plenty of books that offer to fix your relationship (something that can't really be done with *any* book), lose weight or quit smoking, be happy, learn to sell music, learn to direct movies, and when you jump to textbooks, how to become a doctor or lawyer. Where is the computer related problem? Books are books.
Fallacy 2: Computers Allow People to Do things They Could Not Do Otherwise. I think MH tries to say that software "sometimes" seems to promise that you will be able to write a good text without writing skills throu the use of Word X.
I don't know of anybody who has ever said: "You know, I could write a novel, but my software sucks". Those few (very few) who do do not make the software at fault. The problem lies with their own expectations, not in some sinister "promise" of software. Very few people say that a microwave makes them a gourmet cook, just that it allows them to cook easily.
Fallacy 3: Computers Increase Productivity. Sometimes increase "flashiness" more than productivity. Compare a notebook/blackboard presentation to a PPT one, which takes more time to prepare...?
Depends on if you're giving the speech over and over again - plus, if you're typing it up for handouts anyway, it's easy to make the presentation an automated one. As an ex-teacher (one year), writing on a blackboard is a serious skill that needs to be developed. That's why many teachers use overhead projectors.
Fallacy 4: Programs Help Their Users. Sometimes are more a hassle than a help...
How? If you're gonna state that, back it up. And not with single, specific examples - general examples that apply to many aspects of computer use. I'm sure I could come up with many examples where computers have been misapplied in offices, but the general fact is that they allow for complicated, personalized tasks to be rediced to standardized, simple tasks that the next employee can pick up.
Fallacy 5: If It's Graphical, It's Easy. You named it. A "well done" GUI is easy. He only tries to destroy the myth "Any GUI == EASY".
Modern GUIs, in general, are easy. The point is moot, anyway... qwerty might not be perfect, but non-disabled people have no problems with it. GUIs might not be perfect, but non-disabled people have no problems with them. If Easy = everybody can use them, then they are easy. Look at a McDonald's keyboard for an example of how easy and pervasive icons are.
Fallacy 6: Computers are Getting Faster. Sure the experience is not getting faster. Flashy animated menus and things like that keeps demanding more computing power. You know what, many software vendors (M$, for example) know that it is easier to sell you a new program if you also buy a new computer, so...
Again, computers *are* getting faster - we're just loading more stuff on them. Maybe it should be rephrased - they are getting more powerful. Just like in the 1950s, when airplanes could carry 30 people, but stewardesses would punch holes in the floor with their heels, versus a few generations later, when they still carried 30 people, but were more sturdily built - the engines were more powerful, but the plane was beefed up with the use of those power, and the flights carried meals and snacks
[I] would NEVER dare to call [him an idiot] to a so respected person, with so much experience and a large track record.
You have never been to a university, have you? :) Throughout history, there are plenty of people with respect and volumes of published material who were just plain wrong. Via a bad case of tunnel vision, being surrounded by yes men, or simply just picking the incorrect answer.
The statements that showed serious lack of connection to reality and human nature were the ones you didn't address - his last ones about "the Computer industry doesn't know where it's going". Well, *nobody* knows where *any* industry is going, and that uncerntity is proportinal to the number of technological breakthoughs that occur in that field. And breakthoughs in just about any field were made by people having "fun", figuring out a puzzle, or solving something that annoyed them.
--
Evan
"$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
Heh. I can imagine what that book looks like.
"Teach Yourself C++ in 10 Minutes"
Chapter 1: Minute 1:
First, realize that if you really thought you could learn a programming language in 10 minutes, you're too stupid to be a programmer.
Spend the remaining 9 minutes 40 seconds letting that sink in.
Sucker.
The enemies of Democracy are
So, basically what Michi is saying is that Computer Science isn't having the day-to-day impact that it once did. Advances in data structures and algorithms aren't impacting the development of products like it once did.
Computer Science now gets to join Chemistry, Physics, and Biology as science disciplines that can no longer handle their own engineering. Physicists don't design boilers any more, Chemists don't design refineries, and biologists don't build waste treatment plants. And computer scientists don't build operating systems well.
Enter Software Engineers and Computer Engineers, who get to learn their stuff from the CS boys, but who focus on production, on tradeoff, on integration, on management. Its the engineers that push for legislation, that make sure that you have the education and experience to practice, and build systems that we are willing to call 'infrastructure'.
What people need to clue into is that we have an industry that has hit the point where it needs to split and to recognize those that advance the theory and those that pave the roads.
Playing such scenarios has its value, but in realistic terms, the situation described happens only extremely rarely.
Virg
I use both browsers every day. As far as loadtime is concerned, Mozilla is extremely quick when you use the "quickload" feature. It pops up about as quick as IE6 does. When it comes to rendering pages, Mozilla seems to be faster than IE6. It depends on the page, but I don't think IE6 does much of anything faster than Mozilla when it comes to rendering. I realize this is just anecdotal evidence, so if you have some hard evidence, then by all means, post it.
It's not enough to bash in heads, you've got to bash in minds. - Captain Hammer
Or should I say "religi0n"?
Infuriate left and right
Of course. Programmers don't work ankle- and elbow-deep in excrement on a daily basis. Programmers ($50/hr ones, anyway) don't respond immediately. Nor do they resolve situations that drive to the heart of our instinctive aversion to uncleanness.
Fallacy 10: Open Source is the Answer
- Economic model is doubtful
Getting tired of hearing this. a bunch of people start companies using "open sourse" products, have no real business plan, then surprise surprise, they fail and some how open source is the fault. There are companies making money in the open sourse arena. Most companies fail, in any arena.
- Source code is useless
I'd like to see him say that after a vendor goes out of business and he has software that must be fixed, or he goes out of business.
Or the vendor changeed its focus, and since you are tied to them, your company must change the way it does business.
Say a lot of companies get surprised when MS finally discovered the internet, and they change there focus.
- Motivation for Open Source is inappropriate for most software
not sure what he means here. My motivation is 2 fold, improve my programming knowledge, make better code. I fail to see how that inappropriate.
- Nerd culture is counter-productive
yes, we nerds never ever produce anything, or start big companies *coughapplecough*.
Pretty much every large computer company was started because by a nerd.
As a matter of fact a can't think of any.
Xerox was founded by a nerd, Apple, Microsft, IBM, Sun, etc. etc.
The Kruger Dunning explains most post on
I noticed you didn't touch that one. Perhaps you agree with Mr. Henning on this one point? He seemed to think great programmers have more short term memory slots. (of course, I have to guess his actual speech was much more responsible than these notes by themselves...)
Speaking as someone who has more short term memory slots than anyone (except perhaps one person) I've ever met, I'd like to point out being a good programmer takes a lot more than just that. (Yes, I write assembly at the keyboard without any visible preperation, but that's beside the point) As for a "great" programmer, I don't think I've ever met one, and if I did, I'm not sure exactly how I'd know I had.
Mozilla is at least as fast as IE6 now.
Never has been in my experience. Maybe versus IE on Solaris, but sure as hell not on Windows.
I've never benchmarked them, and I don't know why, but IE always "feels" faster under windows than Moz does. (Yes, I have used the most recent build.)
Nevertheless, notice I was not saying "Mozilla suX0rs!", I was merely pointing out (sarcastically, I will grant you that) that large, active open projects can, and will, have bugs,
bugs that potentially will take years to fix.
Just like closed software.
I like Mozilla, it might not be on par with IE yet (mostly speed issues) but it beats the living hell out of the festering pile of horseshit that is NS4, that's for sure.
Your argument is lame.
No, you just missed the point.
C-X C-S
I hate the weenie aspect. There are plenty of OSS folk who are reasonable and knowledgeable. At one time I wrote a lot of OSS code.
Then there are a bunch of maga-bores who have adopted OSS as their life message and religion. Talking to them is like talking to a born again Christian or a Taleban fanatic, everything comes back to their own all embracing pet theory. It is like talking to a Libertarian or a Marxist, they have an economic theory and it explains everything and what is more if you don't agree with them you are [damned to hell for eternity/ a legitimate target for murder/ a complete imbecile/ an oppressor of the masses].
I don't think the talk was actually anti-open source, the guy took potshots at plenty of people's sacred cows. But the only one that slashweeniedom is going to talk about is OSS because it is soooooooo interesting
The problem is with what the weenies think, the problem is weenieism. As Karl Popper pointed out most of the misery in the world is caused by people who have an absolute belief in their possesion of an absolute truth.
I gave up on OSS once it became popular and the weenies moved in.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
One of the most remarkable things about the space program is that when JFK announced that we were committing to "land a man on the moon and return him safely to the Earth", computers were far too bulky and unreliable for the job.
It was only the development of integrated circuit technology during the 60's that made the guidance computer small (and reliable!) enough to go to the moon possible.
If you think the Apollo program was cobbled together out of parts we already had in the 40's and 50's, you need to do some closer investigation.
150 Opening BINARY mode data connection for slashdot.sig (129323052 bytes).
Not really, true elite programmers and system architects are very rare and their productivity is massively greater than that of a merely 'good' or 'average' hacker.
If an elite programmer has a problem getting a job it is because they have a personality problem or a substance problem that is so extreeme they are not likely to offer much to an OSS collective either.
That does not mean that there are no elite programmers doing OSS stuff, but most of the ones I know are doing OSS because they made a bundle from the dotcom boom and don't know what to do with the rest of their life.
I don't think that mere incremental improvement of OSS products is going to threaten the paid software model. For MS Office to be displaced there has to be a discontinuous change, not an incremental one. Matching Word feature for feature as you suggest is a pointless waste of time. Mr Softy has shown that he knows how to win that game.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
Wrong. The Euro is not gold backed. If it was it would not have collapsed in the year after introduction while the price of gold was rising.
No industrialised country can function with a gold backed currency. In an industrialised country the economy expands with improved production over time. But the production of yellow metal is pretty constant. You have a quantity that has exponential growth tied to one that has only linear growth. The result is an economic slump.
This is why Karl Marx wept when he heard of the '49 gold strike. The additional gold supply would allow the capitalist economies to expand and the revolution would be delayed for a decade or more. The theory of the inevitable communist revolution was based in large part on the belief that the gold standard was essential.
Looking for an Information Security student project suggestion?
Try http://dotcrimeManifesto.com/
Mainstream software is perhaps getting worse, but if you know where to look, you can get software that works better, faster, and does more than anything previously available. Maybe Glynn is just buying the wrong software and hanging out with the wrong crowd. Or maybe he is just one of those glass-half-empty types.
J.S. Bach didn't have to run a marketing campaign and tour 48 countries to launch his weekly cantata either.
Any sufficiently advanced technology is indistinguishable from a rigged demo
--Andy Finkel (J. Klass?)
What a load. People who enjoy their work are more likely to take pride in the job at hand, and to *want* to do it correctly. Very important inputs for the productivity and quality equations.
Besides, if the army's job is just "killing people" I'd have to say they suck at it. Six billion people on this planet and they only manage to kill a few thousand a year. That's pretty shitty performance, imho. Thankfully, the army's job is defending our nation from attack. On that score I'd say they're doing damn fine work. Not including the settlement of the west and the Civil War, we're talking, at worst, two major attacks in 200 years: Pearl Harbor and the WTC/Pentagon bombings. And from what I can tell, a good majority of the members of the military like, and take great pride in, their work: defending the nation.
I do not have a signature
Ever been to a finance company meeting? Ever read a farming equipment catalog? Every company pitches themselves as being either the solid foundation in the past for the future, or the innovative new guys who can create the future for their field. They all swear the future is in financing lump sums for structured payments, or new strains of rotation crops. It's really quite simple - what ever they own is the future. That's the attitude for sucess.
--
Evan
"$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
That's exactly why it was noteworthy.
So what happens if I try to embed a Word document in an Excel spreadsheet cell?
It loads Word... it was only Excel in Word that was stated to exist - probably due to problems with Excel not operating properly when embedded in Word.
I'd love to see authoritative confirmation or denial of this old tale - remember, it only applies to Office 95 or 97 or so, and I can confirm that you can uninstall Excel and still edit embedded spreadsheets in Word... but that might be due to Excel DLLs left behind or something.
--
Evan
"$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
You'd be suprised what can be accomplished by individuals or small groups working outside of corporate influence.
It's been a long time.
Hmmm... I think a big problem here is that my comments were taken somewhat out of context. This wasn't about blasting Open Source at all, but to simply illustrate that Open Source can't satisfy all of the world's software needs. A lot of code we need, such as aircon controllers, engine management systems, etc. is too specialized and not sexy enough to attract Open Source developers. So, such source will continue to be written for monetary compensation. Open Source is great -- without it, I wouldn't be able to run my business. But I thought it would be worthwhile pointing out that (like any other model), the Open Source model isn't without problems and that its proponents (just like its opponents) sometimes use arguments that don't stand up under closer examination.
Cheers,
Michi.
At least when I go to bugzilla.mozilla.org and I can actually see the discussions the developers are having on the bug that I want fixed, I feel like something will get done. Even though I know that their resources are limited, so their response time might be a few months for non-critical bugs, at least they know about it.
When I have a bug and call some 3rd-party tech support, and they tell me to reboot my computer and then give up, I don't have those assurances. For all we know, and for all we bitch and moan, Microsoft probably doesn't even *want* to fix many of the bugs in IE, such as those related to standards compliance. I *know* that the Mozilla people care, even if they can't fix everything immediately.
The whole self-help book industry is insane.
:)
Anyway, I still can't imagine those books sell. if their claim was true, 10 minutes is short enough that you could read the book while still in the bookstore.
The enemies of Democracy are
Today the US military's role seems to be purely "go where our interests are and blow shit up until warlord/dictator X bends over" In fact, thinking back through history, that's what every army's role has been, it's just that today with global communications more threats are detected and a nation's interests could be anywhere in the world.
It's been my experience (note: my experience, YMMV) that nobody in the tech industry truly loves their jobs. The people I know that really love programming have never done it for a living. They've only done it as a hobby. It's the same with everything in the world - nothing that you do outside of your own volition is going to satisfy you.
Furthermore, those people who program as a hobby do it in their own way. They don't have to follow a methodology, a design pattern, or document it if they don't want to. All of those [can] lead to professional-quality software that is more efficient and more robust, but they are not enjoyable. If a programmer enjoys that shit, then they're not really a programmer, they're an analyst.
Programming for a living is a nasty business. I'm a Perl guy, I do enjoy working with Perl. Not as much as I enjoy playing music, or any of my other hobbies, but it's my least-painful marketable skill. Everyone is being seduced by the Sun hype and the Oracle/IBM/Rational hype machine to abandon traditional programming and buy $millions in CASE tools and RDBMS and app servers so that they can write everything in Java. I despise Java for both personal reasons and for its objectively observed flaws. If I want to work in the business, I'm going to have to get some kind of paper that says to people "he can do Java". Talking to more experienced programmers, it seems this happens about every 5 years in software - technology shifts and you immediately become obselete.
I don't know how many other careers this applies to, but my gut feeling is that it's not many. The health care industry comes to mind.
The only reason I'm even thinking of staying in the business is for the money. I'll never be able to have the level of "wealth" or the standard of living that I want without being in technology, even though I'll end up hating 1/3rd of my life, that is, the 8 hours/day I spend at work. Most people do, so I guess I should just stop whining.
in your (extreme) example, sloppy physics and dose calculations were the problem, not "sloppy programming".
Don't blame me - I voted for Howard Dean. http://dean2004.blogspot.com
what rubbish! This is pure FUD. Define "the job" that needs to get done. The Job IS Betsy in Accounting.
Give a concrete example of these mystical "larger motivations". What underlying task/goal have we been distracted from. Saving the world? World peace? end poverty?
computers are just tools. Like a hammer. As far as I can tell, its precisely that complexity of computers that let us get the job done - otherwise the world be LESS complex today, not more, as computers have increased in complexity from the stone-age CLI days.
Don't blame me - I voted for Howard Dean. http://dean2004.blogspot.com