Slashdot Mirror


30th Anniversary of the (No Good) Spreadsheet

theodp writes "PC Magazine's John C. Dvorak offers his curmudgeonly take on the 30th anniversary of the spreadsheet, which Dvorak blames for elevating once lowly bean counters to the executive suite and enabling them to make some truly horrible decisions. But even if you believe that VisiCalc was the root-of-all-evil, as Dvorak claims, your geek side still has to admire it for the programming tour-de-force that it was, implemented in 32KB memory using the look-Ma-no-multiply-or-divide instruction set of the 1MHz 8-bit 6502 processor that powered the Apple II." On the brighter side, one of my favorite things about Visicalc is the widely repeated story that it was snuck into businesses on Apple machines bought under the guise of word processors, but covertly used for accounting instead.

59 of 407 comments (clear)

  1. What if... by DSmith1974 · · Score: 5, Insightful

    ...John C. Dvorak were no longer paid to write lame articles?

    --
    It is not immoral to create the human species - with or without ceremony, Samuel Clemens.
  2. Wow by bondsbw · · Score: 3, Insightful

    Dvorak is an idiot. To use the old adage: "Guns don't kill people. People kill people."

    If a bank trusts a spreadsheet based on a bad formula that is provided by the bank itself, is it the spreadsheet's fault? If the CEO chooses that saving 1 cent a year by outsourcing the call center to India, is that the spreadsheet's fault? Please.

    --
    All my liberal friends think I'm a conservative, all my conservative friends think I'm a liberal.
    1. Re:Wow by R2.0 · · Score: 5, Funny

      "Its easier to blame the messenger, didn't you get the memo?"

      Actually, I do blame Messenger for some problems.

      --
      "As God is my witness, I thought turkeys could fly." A. Carlson
    2. Re:Wow by drinkypoo · · Score: 3, Funny

      JACKASSERY DETECTED. Everything after your nick was unnecessary.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    3. Re:Wow by Rob+the+Bold · · Score: 5, Interesting

      Dvorak is an idiot. To use the old adage: "Guns don't kill people. People kill people."

      If a bank trusts a spreadsheet based on a bad formula that is provided by the bank itself, is it the spreadsheet's fault? If the CEO chooses that saving 1 cent a year by outsourcing the call center to India, is that the spreadsheet's fault? Please.

      There's a lot worser things than people using spreadsheet formulas. For instance, people not using them. Have you ever watched someone with no accounting or technical knowledge enter a bunch of figures in a spreadsheet then turn to the desk calculator to sum them up, turn back to the computer and key in the result? That's almost as bad as how somehow "worser" got into my spell-check dictionary and now I can type it without complaint!

      --
      I am not a crackpot.
    4. Re:Wow by Thanshin · · Score: 3, Funny

      That's almost as bad as how somehow "worser" got into my spell-check dictionary and now I can type it without complaint!

      Almost as bad? I'd say that's quite badder.

    5. Re:Wow by hey! · · Score: 4, Insightful

      The problem is a phenomenon I call the "competence delta function".

      A tool can make many things simple, but sooner or later you run into diminishing returns. As returns diminish, you eventually find yourself at a point where the next thing you want to do takes a step up in competence from what you have right now.

      Imagine that you plot effort (on the y axis) and reward (on the x axis). If you are looking for a certain level of reward, you can read how much effort it takes off the X axis. Things like a command line interfaces have a big up front investment to learn, represented by a step function at 0 reward. However the power of command line interfaces (at least good ones), is that the benefits and effort needed thereafter are reasonably proportional over a very large range of tasks.

      GUIs, on the other hand, have a low initial step, but eventually you want to do something that has to be expressed conceptually, and there you've got to eat that command line step function and then some. A sysadmin with strong shell scripting and Perl abilities will be able to achieve more than a sysadmin who can only work a GUI.

      So the question for an "easy" tool is this: where does the delta function come? Really easy to use tools can be a trap if you don't see this coming. A word processor is highly useful, but at some point you may ask it to do something that would be better done in LaTex.

      Spreadsheets are very easy, very useful things. Two dimensional organization of facts may be uniquely useful, giving more flexibility than one dimensional organization, but having none of the capacity for things to hide behind others that three dimensions gives. In fact, the word "plan" comes from the same root as the word "plane".

      There are limitations on what spreadsheets can do of course (aside from things like: they are not databases). But I think most people run to the end of their practical, factual, mathematical or business knowledge first. For example, I can say, "prepare a budget for next year," and give you a bunch of spreadsheet templates. If you don't know what you are doing, you'll produce a really bad budget, but it will look great, just as good as a good budget in fact. The reason is, "produce a budget presentation that looks great" is on the left hand side of the spreadsheet delta, but "produce a budget that is financially sound" is well beyond what a spreadsheet application can make easy for you.

      I think the same thing goes for the other bete noire of thinking managers everywhere: the PowerPoint presentation.

      It's not that PowerPoint isn't a wonderful tool. It's just that it is not a replacement for communication skills. Sometime watch An Inconvenient Truth. You might disagree with Al Gore, but he worked for years on that Keynote presentation until he could really communicate with it. You could take the same presentation, and unless you were an unusually gifted commnicator, you would not achieve anything near an Oscar caliber performance.

      As much as PowerPoint is not a replacement for communication skills, it is even less a replacement for critical thinking skills. During the dot com boom, I remember reading how the phrase "send me the stack" was gaining popularity in business circles, "the stack" meaning the PowerPoint slides. Some VCs were so hot to get in on the gold rush the were making investment decisions based on PowerPoint presentations rather than business plans.

      A tool that makes certain things easy is always a good thing in itself. The danger is in the illusion that by relying upon it, everything will be easier. Software tools are particularly insidious, because they have the ability to make incompetent efforts look really good.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  3. Re:Why use MUL/DIV by mlwmohawk · · Score: 4, Interesting

    Why use MUL/DIV --When you have shifts?

    Well, shifts and adds. For multiply.

    Shift, subtract, jle for divide. :-)

    Also, remember that when multiplying 8 bit numbers with 8 bit registers results in a 16 bit result. Its not as easy.

    I wrote a whole 32 bit math package for the Z80 "back in the day."

  4. Don't Follow the Link by twmcneil · · Score: 5, Informative

    The only way to get rid of Dvorak is to deny him him the clicks. Don't follow the link.

    --
    "The ferrets, they're every where I tell you!"
    1. Re:Don't Follow the Link by RandoX · · Score: 5, Funny

      Not true, start tagging the story diedvorakdie or ohnoitsdvorak.

  5. Re:Loooooong time by morgan_greywolf · · Score: 5, Funny

    I think spreadsheets evolved almost zero in the last 30 years. Word processing got fonts, colors... Excel is just VisiCalc with buttons.

    Wrong. In the last 30 years, they've added everything from statistical functions, to greater programmability to data mining functions. Integration with SQL databases. Desktop publishing features.

    And not to mention the most important advance in spreadsheets in 30 years.

    Yep, that's right. Clippy!

    *ducking*

  6. Instruction set. by drolli · · Score: 4, Insightful

    Oh my goodness, did they really write it in assembler? I always imagined they already used high-level languages at that time.

    And nevertheless, the non-availability of multiplication or division is honestly the smallest problem when programming the 6502 in assembler. Using a decent macro assembler it does not take a lot of effort to implement these two instructions. What i personally collided more with where the awkward addressing techniques of the 6502, and, of course, the quite um... limited stack, and of course, having only 3 registers sucked. I liked the Z80 much more form a low-level viewpoint. But in never though about the absence of multiplication instructions as a bad thing, just a little training....

    1. Re:Instruction set. by Alioth · · Score: 3, Insightful

      The 6502 wasn't that bad, or at least the 65C02. While you only have 3 registers, you do have fast zero page operations which makes it almost like having 256 registers. However, I still prefer the Z80, it makes things a lot easier to have the 16 bit register pair ops, and notwithstanding the 6502's zero page instructions, most routines on the Z80 are a bit easier to program since most of the time you don't have to shuffle things to and from RAM because you can fit everything in the two register banks. I still write Z80 asm today, it's fun.

    2. Re:Instruction set. by jacksonj04 · · Score: 4, Funny

      You had a lookup table for instructions? We had to try each value in turn until it did the right operation and then record the results by tying knots in bits of coax cable.

      --
      How many people can read hex if only you and dead people can read hex?
  7. Re:Why use MUL/DIV by larry+bagina · · Score: 5, Informative

    6502 doesn't have jle. It has bcs (branch carry set/greater or equal) and bcc (branch carry clear/less than).

    --
    Do you even lift?

    These aren't the 'roids you're looking for.

  8. Cannot believe I am saying this... by DrWho520 · · Score: 5, Insightful

    ...Dvorak blames for elevating once lowly bean counters to the executive suite and enabling them to make some truly horrible decisions. even if you believe that VisiCalc was the root-of-all-evil, as Dvorak claims...

    That which infuriates me the most about the tech sector is corporate executives building wealth upon the backs of laboring engineers. I have yet to receive an explanation as to why some VP somewhere gets to make ten times as much myself. When the company is not making record profits, it is an engineering problem. When we are raking in the dough, it is an executive success. No one ever looks to see how difficult the problem is because, they cannot fathom the problem being solved. My first day at orientation, you could tell the engineers from the financial analysts. We were in Dockers and collars and they were in three piece suits. Where did we go so wrong that support staff are the ones elevated to executive positions? Why is balancing a checkbook a more executive skill than writing the tool that tool used to balance the checkbook?!?

    This only thing that disgusts me more is sharing a sentiment with Dvorak.

    --
    The cancel button is your friend. Do not hesitate to use it.
    1. Re:Cannot believe I am saying this... by Yvan256 · · Score: 4, Insightful

      Not that I want to contradict your thoughts, which I share (especially the pay check part), but let's put it into perspective.

      Someone might be able to write the tool to balance the checkbooks but at the same time be unable to actually make good use of the program.

      Another example would be Photoshop. I'm pretty sure the people who programmed it aren't nearly as good at using it as actual artists. The programmer probably never went to design school, etc.

      Yet another example would be Word, Pages or any other word-processing program. Just because you can program such a beast doesn't automatically make you an award-winning writer.

      You get the idea.

    2. Re:Cannot believe I am saying this... by flyingfsck · · Score: 5, Insightful

      One day when you try to run your own company, you'll realize the problem with what you said above. The fact is that trying to find financing and projects to execute, in order to keep 500 engineers busy, really ain't easy.

      --
      Excuse me, but please get off my Pennisetum Clandestinum, eh!
    3. Re:Cannot believe I am saying this... by SerpentMage · · Score: 4, Interesting

      I was once promoted to manager. And for about 3 months I loved it. And then I didn't.

      My wife who is an engineer like me is a VP/Director. She makes quite a bit more than I do. But guess what, I see the stress my wife has. Me I have stress, but not that type of stress.

      You see with engineering I am in control. With management, you are herding cats!

      --

      "You can't make a race horse of a pig"
      "No," said Samuel, "but you can make very fast pig"
    4. Re:Cannot believe I am saying this... by Anonymous Coward · · Score: 5, Insightful

      Joel Spolsky once wrote:

      Programmers need a Subversion repository. Getting a Subversion repository means you need a network, and a server, which has to be bought, installed, backed up, and provisioned with uninterruptible power, and that server generates a lot of heat, which means it need to be in a room with an extra air conditioner, and that air conditioner needs access to the outside of the building, which means installing an 80 pound fan unit on the wall outside the building, which makes the building owners nervous, so they need to bring their engineer around, to negotiate where the air conditioner unit will go (decision: on the outside wall, up here on the 18th floor, at the most inconvenient place possible), and the building gets their lawyers involved, because we're going to have to sign away our firstborn to be allowed to do this, and then the air conditioning installer guys show up with rigging gear that wouldn't be out of place in a Barbie play-set, which makes our construction foreman nervous, and he doesn't allow them to climb out of the 18th floor window in a Mattel harness made out of 1/2" pink plastic, I swear to God it could be Disco Barbie's belt, and somebody has to call the building agent again and see why the hell they suddenly realized, 12 weeks into a construction project, that another contract amendment is going to be needed for this goddamned air conditioner that they knew about before Christmas and they only just figured it out, and if your programmers even spend one minute thinking about this that's one minute too many.

      To the software developers on your team, this all needs to be abstracted away as typing "svn commit" on the command line.

      That's why you have management.

  9. Re:What if... by Rogerborg · · Score: 5, Insightful

    Then we'd go back to making decisions based on gut instinct, rather than what we do now: have beancounters revise their assumptions until the spreadsheet confirms our gut instinct.

    --
    If you were blocking sigs, you wouldn't have to read this.
  10. Re:What if... by morgan_greywolf · · Score: 5, Funny

    It would be necessary for good journalists to create him?

    (Sorry, Voltaire)

  11. bad analogy - think crank by Reality+Master+201 · · Score: 5, Insightful

    Spreadsheets aren't like guns, they're like methamphetamine.

    It starts out innocently enough - a couple sheets here or there - maybe a long weekend working out a household budget. It's all good fun. By the time you realize a problem, though, you're hitting the 65k row limit. You're writing VBA and macros, you're embedding external data sources - and haven't backed up your work for days. It drives you insane and causes brain damage.

    Just say no to spreadsheets.

    1. Re:bad analogy - think crank by Richard_at_work · · Score: 4, Insightful

      Just say no to spreadsheets.

      Once again the tool is blamed for the usage - there is nothing wrong with spreadsheets per se, its the user that needs to have the boundaries clearly defined.

    2. Re:bad analogy - think crank by Ohio+Calvinist · · Score: 4, Insightful

      This is absolutely true. Spreadsheets are notorious for holding important business functions that are often designed by end users who may/may not have the best coding/design (VBA or formula) skills, that are typically never put through a QA/peer review process, and many times exist on a sole employee's desktop computer and have risen to the point that the business rules have bene forgotten over time and that sheet is necessary for some calculation for some function. These are the cases when IT gets raked over the coals when that desktop fails when responsibility lies on the user, and the user has really put the department in a precarious position. Word documents are just as bad. I've literally seen staff take a print out from the ERP system of a list of contacts who were past due for an event or account recievable take that list and manually edit the "gray boxes" in a word document that was write protected with a password that has been lost in staff turnover making it very difficult for IT to make changes when they ask for it, and then enter the same contact info in a second word document rigged to print a single label on a desktop label printer. With a Crystal or SQL report, we could have automated the process and saved time/resources for the staff and cut down our support of esoteric business processes. However, rather than work with us, one of their own rigged up something we had no idea was in practice had I not headed over there to help a technican with a connection to a server.

      This is my same objection to having important business functions being run out of Access databases often developed by the most computer-able person in the department but whose skills are completely lacking. At the community college I used to work for, we had our standard ERP/student info system, but rather than approach IT to add some tracking for special programs into the system one of the student services staff started writing lame Access databases (without a single relationship mind you) to track student attendance in some program offices. What it ended up doing was causing the users to do double entry, made useful information exist outside of the insitution wide data source, and when it failed, it had become such an important part of business, IT was expected to fix a resource that was effed up from the beginning.

      For the small business with 1-10 employees it is a great, in expensive way to work electronically. For anything bigger, it is trying to fish with a stick, shoestring, and bubble gum. It costs far more money to have workers working inefficiently and even worse, allowing them to stick with the skills they learned in a high school computer apps class than thinking critically, than ponying up the dough for a server or two and a more robust information system with a programmer/dept liaison to help them work more effectively. (Keeping in mind that it is possible to go into overkill mode.)

      --
      Forgive my spelling from time to time. I'm often posting during short breaks.
    3. Re:bad analogy - think crank by hazem · · Score: 5, Insightful

      we could have automated the process... However, rather than work with us...

      I used to work in IT and now I'm a "business user" and I'm all for getting IT to simplify, automate, and improve processes.

      However, what starts as a simple request to automate some simple but tedious task, or provide a way to link 2 sets of data ends up being treated like a multi-million dollar project that will need a team of 10 people 6 months and many hours of meetings (all charged to my budget) to put together a feasibility study, which will then be put into a queue where it will be evaluated next fiscal year by the prioritization committee, which, if approved (and it won't because there's a huge project consuming ALL discretionary IT resources) will still take another year and a half to design, test, QA, and deploy.

      So instead of doing that, I spend a couple hours to write, test, and document some little Excel/VBA tool or some simple Access import-query-export solution that easily solves the problem, saving my employees loads of time (while typically improving their accuracy as tedious, manual tasks are often error-prone themselves) so they can focus on things like running the business.

      As I said, I'd love to have IT solve these little problems because they are so often "low hanging fruit" that should take very little effort to do while saving many hours of work. But we always get told, "No", "Next Year", or "We'll need to conduct a study", when if they had just sent a low-level coder over to work for a couple hours it would have been done before I could schedule a meeting with all the "stakeholders" who would be conducting the study.

      Having been in IT, I understand completely how bothersome it is to deal with things when the users go rogue - but if IT is unresponsive or provides no other alternative, then that is exactly what what they'll do.

    4. Re:bad analogy - think crank by RMH101 · · Score: 4, Insightful

      I'm on the other side of the fence, but most of my job is in making sure that IT know what the business really want, and articulating those demands in a form that the budget holder can readily say yes or no to based on the benefit.
      You're completely right, of course - this is big IT's problem in a nutshell.
      What it eventually, and inevitably, leads to is a situation where department A are running some Excel/VBA/Access stuff to generate a report, and department B are doing likewise. The two reports eventually hit the CEO/CFOs desk, and the numbers don't match. Hilarity ensues.
      What can you do about it? Well, if I were being glib I'd say "Don't outsource your IS function to IBM or EDS" but it's seldom that easy.
      If you've got reporting requirements you could maybe stick in place a Business Objects or Microstrategy service they could use. Get your Business Analysts to help them define some standard reports, with a modicum of customisation available so they can do some more ad-hoc work. Help make sure that the canonical source data's clearly defined and in one place, not being pulled from a million different systems and hand-cranked into spreadsheets every month.
      It's a big problem - I left my last position primarily to get away from big, slow IS functions and guess what? It's the same everywhere when you get past a certain critical mass of bureaucracy.

    5. Re:bad analogy - think crank by meringuoid · · Score: 3, Funny
      You mean there are worse horrors than Access?

      Oh God yes.

      Access has its place. There's a niche between 'Spreadsheet with rather a lot of VLOOKUPs' and 'Hire a professional DBA and developers', and Access fills it nicely.

      Problems with both Access and Excel arise when they're pushed beyond what they're supposed to do. Excel workbooks like the one I described earlier ought to be Access databases. Access databases of the sort we hear of on /. - with their many gigabytes size and their multiple concurrent users - well, they ought to be properly maintained databases on their own server.

      But however bad an Access database, at least there's usually only one of them. All the mess is in one place, and however badly designed the database at least it was designed, normally by one person, to some sort of rational scheme, however misguided. The job of fixing such a mess may be daunting but it can be done.

      Where you find one awful Excel database - for a database is what it is when it gets this bad, sheets upon sheets VLOOKUPing each other, the same data presented a dozen different ways for ignorance of what a pivot table is for - you then discover an entire ecology of more horrible workbooks, a web of interdependencies and contradictory cross-references. Which rely on people taking copies, emailing them around, and pasting things back in. These things evolve. No one person comprehends the whole structure. Abandon hope, all ye who enter here.

      --
      Real Daleks don't climb stairs - they level the building.
    6. Re:bad analogy - think crank by Geoff-with-a-G · · Score: 4, Insightful

      I wish I had mod points for you today. This is spot-on and insightful. There's so much contempt for Access/VBA/Excel solutions from the "real" IT people, who just can't believe you would want to do anything in that sloppy improper way. Meanwhile, that's the effective way to get real tasks done quickly.

      I'm a network engineer, and I promise you - the DBAs and server admins who scoff at your quick and dirty solutions wouldn't be pleased if you took away their Linksys/Netgear/D-link/single-Linux-box home network solution, and told them they could either have no Internet connectivity, or "do it the right way": by getting two ISPs, carrier-independent address space advertised to those two providers via BGP, with links from the two routers to redundant internal switches and HSRP/VRRP/CARP. Might need some NIC-teaming on your desktop too, to guard against NIC or cable failure...

      See how quick-and-dirty solutions seem appealing sometimes? Not because we're being seduced by the evil spreadsheet devil, but because sometimes small problems warrant small solutions.

  12. Re:Why use MUL/DIV by Alioth · · Score: 5, Interesting

    You can do floating point in software, it was done all the time in the 8 bit days, in fact it was done all the time right the way into the 486 days (the 486sx, IIRC, lacked an FPU). It's just not all that fast. But for the size of spreadsheet you could make on a 32K RAM system, the speed of the floating point calculator probably wasn't much of a factor. It wouldn't surprise me if the spreadsheet authors used the BASIC ROM's floating point routine, if it has one (I have no experience with the 8 bit Apple machines. The 8 bit stuff I do play with, like the Sinclair Spectrum and BBC Micro, have floating point calculator routines you can call).

  13. VisiCalc binary is still available by mritunjai · · Score: 3, Informative

    Who'd 've thought :-)

    Google for visicalc.com and download from the second link.

    BEWARE: DO NOT run it on your main computer. Use a windows virtual machine or dosbox on *nix. It runs perfectly in both even after these years.

    --
    - mritunjai
    1. Re:VisiCalc binary is still available by ggvaidya · · Score: 3, Interesting

      I'm with AC, why shouldn't you run it on your main computer? I don't have dosbox here, so I can't check :-)

      I remember reading somewhere that the Visicalc executable is used as part of Windows testing, to make sure that (really) old DOS programs still run without a problem. Can't find a citation for it at the moment, though.

  14. Dvorak? Get real... by Yvan256 · · Score: 5, Funny
    1. Re:Dvorak? Get real... by Yvan256 · · Score: 3, Insightful

      Actually Dvorak is so often wrong about Apple that you can almost be sure the opposite of what he says will become true.

  15. Randian by IceCreamGuy · · Score: 4, Funny

    John C. Dvorak is the Ellsworth Toohey of the technology world.

  16. Re:What if... by jacksonj04 · · Score: 5, Insightful

    People would stop combining it with godawful macros in an attempt to cobble together a slow and inefficient relational database with no sensible query or reporting tools and use a real RDBM instead.

    --
    How many people can read hex if only you and dead people can read hex?
  17. Re:What if... by Rob+the+Bold · · Score: 4, Funny

    The spreadsheet was never invented????

    Millions of secretaries -- I mean Admin Assistants -- would have to type department phone lists with word processors.

    --
    I am not a crackpot.
  18. Re:Loooooong time by drinkypoo · · Score: 4, Insightful

    And not to mention the most important advance in spreadsheets in 30 years.

    Graphing. CEOs can't understand numbers, they make their brains run out their ears. Having the spreadsheet program produce charts and graphs for you is the single most important advancement in accounting since language.

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  19. Tooting my own horn... by SpinyNorman · · Score: 5, Interesting

    Speaking of 6502 programming feats, back in 1982 I worked for Acorn computers in the UK, writing software for the 2MHz 6502 based BBC microcomputer, which incidently we also used as our development machines. The BBC micro had 16K of ROM for the built-in BASIC interpreter and low level "OS", another 16K of address space into which you could map any one (at a time) of the other 16K software ROMs in that machine, and 16K or 32K of RAM depending on the model. Much software was sold on ROM - there were four sockets built-in or you could get expansion boards to allow more - but only one at a time could be selected since there was only 16K of address space for these.

    One project I did at Acorn (with another guy) was to implement a Pascal development system for the BBC micro that we crammed into two of these add-in 16K ROMs. This was no cut down version - is was a full-blown ISO certified version of Pascal, the first ever implementation for a Microcomputer to implement the standard and achieve ISO certification (ISO Pascal is different from P-system Pascal which had preceded it).

    So, what we fitted into 32K was:

    - An ISO Pascal compiler, which compiled programs down to a P-code like stack-based virtual instruction set
    - A virtual machine/interpreter for the instruction set
    - A 6502 machine code relocator
    - The complete Pascal run-time library (full floating point, IO library, heap, etc)
    - A full-featured full-screen editor with regex find/replace (with as-you-type syntax parsing and highlighting), block copy/move/delete, etc (in only 4K of code)
    - Command line interpreter

    Now bear in mind that only 16K of this could actually be in the address space at one time...

    The way we managed to squeeze all this in was to have the compiler in one 16K ROM, and the rest in the other. The compiler was written in ISO Pascal and self-compiled to our virtual instruction set. We had to add a few "macro" instructions especially for the compiler in order to get it under the 16K limit. The rest of the software (which I wrote) was all in 6502 assembler. Now consider that to run the compiler you also needed the virtual machine, but that was in a different ROM which could only be mapped into the same address space as the compiler (hence replacing it)... What I did was organize the VM/interpreter into pure code, pure data, and relocatable data (address tables), and implement a 6502 machine code relocator (recognize each instruction type, and know how many byyes they were, and whether they had an address component that needed relocating) which copied the VM out into RAM therefore allowing it to co-reside in the address space with the compiler.

    It was a very fun project, not only because of the technical challenge (this was my first job out of college), but also very much because of the memory constraint. I had to use every 6502 trick in the book to eliminate every spare byte to squeeze the assember half of it into it's 16K ROM. Those from this generation may remember things like using XOR A, A as an alternative to LD A, 0 to save a byte, changing tail recursion/calls to jumps (JSR subroutine, RET -> JMP subroutine), taking advantage f known processor flag state to use 2 byte "conditional" (but not if you know the state) branches in place of 3 byte absolute jumps, etc, etc.

    Toot toot!

  20. Re:Loooooong time by mgiuca · · Score: 5, Funny

    It looks like you are trying to make a standard Slashdot joke at Clippy's expense.

    Would you like help?

  21. Unfortunately, you're a commodity by jamrock · · Score: 4, Insightful

    Where did we go so wrong that support staff are the ones elevated to executive positions?

    Forgive me for saying this, but you went "wrong" with your career choice in college. The reason why "support" staff are elevated above you and your fellow engineers (I'm assuming you're an engineer) is that they're administrative support staff, i.e. they are actually trained to run a business (or aspects of the business) and they'll be promoted within the administration of the company; whereas engineers are part of the production team, which means that engineers will probably rise only as far as project or department head. Executives build wealth on the "backs of laboring engineers" (and sales clerks, machinists, programmers, etc) because you're commodities.

    I can understand your frustration, but the fact is that in any organization--large, medium, small, corporate, military, religious, political, whatever--there will be only a very few who are able to run the whole thing, and all things being equal, the qualified ones will rise to the top, provided that they're also politically savvy. An unfortunate fact of life is that there also exist within any organization the ass-kissers, toadies, and fast-talking con artists who scheme their way to positions well above their level of competence. Such glaring injustices will rankle obviously, but regrettably the vast majority of people within an organization really don't have a clue how the whole thing works. Forgive me again for saying this, but your post only reinforces this notion; you really don't know what's going on from an administrative standpoint, and I get the strong sense that you are either totally naive about, or disgusted by, organizational intrigue and politics. Good for you, if that's the case. You probably won't get a seat on the corporate jet, but you get to keep your soul.

    And I'm certainly not presuming to suggest that engineers cannot run a company; my eldest brother was an engineer who worked at his chosen profession for only about a year after graduating, then went into the financial services industry and took to it like a duck to water. He is now the owner of a successful mutual fund company.

  22. MBA mentality by klausboop · · Score: 5, Interesting

    I think that Dvorak is putting too much blame on the spreadsheet: it was just an accelerant on an already-burning fire. As Frank Zappa said when asked, "What do you think happened in this country?"

    Well, two important things, and each one of them has only three letters: One was LSD...and the other is MBA. When people started taking MBA seriously, that was the beginning of the ruination of the American industrial society. When all decisions are based on an MBA's concept of numerical reality, you're in deep , because the only thing that can be judged as real is that which can be proved by a column of figures. And when all aesthetic decisions are turned over to these kinds of people, who use these criteria to make steering decisions for a company with no regard for people and no regard for what the product really is, and the only thing that matters is maximizing your profit, you have a problem. Because you can't have quality then; you cannot have excellence. Quality's expensive. I think most of these people that come from business schools have the desire to make sure everything is cheesy. That's what happens when you do things that way.

    --
    Some of you already have those cute little shirts on that say disco sucks, right? That's not all that sucks.-Frank Zappa
  23. Re:Loooooong time by KeithJM · · Score: 3, Insightful

    My friend, I wish I had mod points today. Much funnier than the parent post.

  24. Re:What if... by westlake · · Score: 5, Insightful
    Millions of secretaries -- I mean Admin Assistants -- would have to type department phone lists with word processors.

    This is funny.

    But it cuts close to the truth.

    Spreadsheet planning wasn't the novelty.

    The novelty was that plans could be updated instantaneously - without employing hundreds of clerics and dozens of machines to make it happen.

  25. It's the user not the tools by sjbe · · Score: 5, Interesting

    Dvorak doesn't even know the difference between finance and accounting. Accountants don't really spend a lot of time with spreadsheets. I know because I am a certified accountant myself. Spreadsheets are used far more by finance analysts. Accountants track what happened in the past much like a secretary keeps minutes of a meeting. Finance analysts try to predict what will happen in the future and their main tool is the spreadsheet. These are not normally the same person though there obviously is overlap. Anyone who actually knows anything about business understands the difference but apparently Dvorak is not among them.

    Dvorak blames for elevating once lowly bean counters to the executive suite and enabling them to make some truly horrible decisions

    Right, because no one ever made horrible business decisions before the spreadsheet. Sigh... Used properly, spreadsheets let us make more informed, rational decisions instead of shooting from the hip. Modern finance would literally be impossible without spreadsheets or something very much like them. Ever tried to manage a company's books? Without spreadsheets and accounting software you need an army of workers to track the paperwork and calculate the numbers. Furthermore hand calculating results in errors and lots of them. Sure spreadsheets can be used badly like any other tool. They certainly are no magic cure-all for bad analysis and decision making. But that's the user not the tool.

    Dvorak asks in the article:

    How often in years pastâ"the pre-spreadsheet era, that isâ"did an accountant take over a company?

    Frequently. John D Rockefeller was an accountant before he was a titan of industry. There are countless other examples. Accounting is what allows managers of businesses to understand what is going on. Every business manager is by necessity an accountant to some degree. Without accounting they are no different than an airplane pilot without any instruments. It should surprise no one that the people who understand the cash flows best often rise to positions of control, including the role of CEO. A spreadsheet and other computerized tools simply make the job easier and more productive. Apparently Dvorak thinks we should rely on slide rules and multiplication tables and ledger books instead.

    Dvorak further asserts:

    Cars are shoddy, consumer goods are junk. Toxic substances are in the food supply. Lead is in toys. Most of what we buy is made cheaply elsewhere.

    Further evidence of Dvorak's stupidity.

    • Cars are better now than they ever have been by pretty much any objective measure you care to use. They're more reliable, the last longer, they perform better, they're more comfortable, etc. I know a lot of folks like classic cars for their styling and nostalgia but they were worse mechanically in most cases.
    • I have no idea what consumer goods he's referring to in particular. There have always been junky consumer goods and quality ones. Yes we have a more disposable approach these days (which isn't a good thing) but that doesn't mean the products are automatically junk. Some are, some are not.
    • Toxic substances have always been in the food supply but again we (in the US at least) have safer and more plentiful food today than at any time in history.
    • As for making stuff cheaply elsewhere, that has ALWAYS happened and always will. That's comparative advantage at work. The mere fact that something can be produced less expensively in one location than another says nothing automatically about its quality. It can be better or worse but that's due to other factors besides merely production location. Likewise cost varies because of any number of factors besides just quality. Cheaper does not automatically mean worse.
  26. Spreadsheets = the real heart of any company by ErichTheRed · · Score: 4, Informative

    I have worked in a lot of IT positions, and every company I have worked for has always done all of their "real" decision-making on hacked-together spreadsheets. The truth is that the spreadsheet was one of the first "business analysis" tools that was intuitive enough for an end-user to really do power-user things.

    That said, Excel and Access "applications" that glue organizations together are the bane of IT's existence. Despite what the sales guys say, all of the company's numbers come out of SAP, Oracle Financials, etc. and into one of these programs to do any useful work with them. I know I'm working on making Office 2007 available to those who want it, and getting some of these Excel and Access 97-era macros carried forward can be...challenging. Access is another horror story -- once a database hits 2 GB in size, file corruption is extremely likely, especially if multiple users are hitting the same database over a network.

    If you ever get sick of software development or sysadmin work, and like pain, I guarantee there will be work available for anyone willing to wade through a million lines of VB spaghetti code written by an MBA who took an Excel class in 1996.

  27. It is also a (No Good) Word Processor by microcars · · Score: 3, Funny

    I get letters and "announcements" that are Excel documents for some reason.

    Turns out the reason is because the user treats the cells as "Tabs" and uses them to "Center" text and "Indent" things, create "Columns"

    These people have no clue how to use a Word Processor to format their document and they also have no clue how to use a Spreadsheet program for what it was intended for either.

    I know someone else who treats a Spreadsheet like a Database.
    Except what they have is a Text File in Excel Format.
    No defined fields, can't sort because they typed the info in to "look good" but serial numbers are in Different Columns!
    Line Breaks when they reached the end of their 17" screen really hoses the thing good.
    Can't export the data to CSV or anything to make it useful elsewhere but "IT'S ALL STORED ON A SPREADSHEET!" which was the original mandate.

    --
    I like microcars
  28. Re:Loooooong time by juuri · · Score: 4, Insightful

    Graphing. CEOs can't understand numbers, they make their brains run out their ears.

    Bleh. We are spatial, visual creatures by nature, graphs make complex and even simple representations of data much easier for everyone. Dunno, where exactly this whole mantra of it just being for stupid bosses came from when graphing functions were created for mathematicians.

    --
    --- I do not moderate.
  29. Re:What if... by jollyreaper · · Score: 4, Informative

    ...John C. Dvorak were no longer paid to write lame articles?

    What if Slashdot readers didn't submit them? And what if the editors didn't post them? Then, then I wouldn't be compelled to bitch about them here. I could pretend that meat puppet didn't even exist.

    --
    Kwisatz Haderach
    Sell the spice to CHOAM
    This Mahdi took Shaddam's Throne
  30. People use Spreadsheets for general-purpose things by Lord+Bitman · · Score: 3, Interesting

    Spreadsheets are often used for purposes which go above and beyond their intention, acting in some cases as almost a general-purpose programming environment.

    Since this abuse is so common, why not take it to the next level and make a programming language which acts like a spreadsheet?

    http://www.subtextual.org/

    --
    -- 'The' Lord and Master Bitman On High, Master Of All
  31. Re:Loooooong time by Hal_Porter · · Score: 5, Informative

    Graphing. CEOs can't understand numbers, they make their brains run out their ears.

    Bleh. We are spatial, visual creatures by nature, graphs make complex and even simple representations of data much easier for everyone. Dunno, where exactly this whole mantra of it just being for stupid bosses came from when graphing functions were created for mathematicians.

    It's a very ancient meme. The Ancient Greeks and Romans had stock characters of the scheming slave manipulating their foolish masters. I suppose in many ways the readers of slashdot are the galley slaves of the modern world. Joking takes people's minds off the fact that being on call is the modern equivalent of being chained to an oar.

    --
    echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
  32. Re:Why use MUL/DIV by Shakrai · · Score: 3, Interesting

    What's your throughput like on that beast?

    It's sufficient to handle my 8mbit/s cable connection and the iptables/traffic shaping rules I have setup that go with it. I've never tested it with a local connection to see just how much throughput it can handle but I can easily peg my internet connection without any problems. It has 128 megs of ram and a 8 gig hard drive.

    I've thought about replacing it many times but why bother? It consumes around 20 watts and doesn't even require any fans besides the one in the power supply. Any newer computer is going to consume at least two or three times as much juice and be a lot louder.

    --
    I want peace on earth and goodwill toward man.
    We are the United States Government! We don't do that sort of thing.
  33. Re:Loooooong time by tnk1 · · Score: 4, Funny

    Hail Clippy, Our Dark Lord!

    Hello! I noticed you are using Excel. Do you want to:

    o Create a spreadsheet your admins have to fill in for some fire drill information gathering

    o Create a CSV formatted file containing all of the employees to be laid off

    o Create some graphs with completely meaningless data points

    o Use this program as if it was a real database and not a glorified ledger book

  34. Re:Loooooong time by Chris+Burke · · Score: 3, Funny

    It's a very ancient meme. The Ancient Greeks and Romans had stock characters of the scheming slave manipulating their foolish masters. I suppose in many ways the readers of slashdot are the galley slaves of the modern world. Joking takes people's minds off the fact that being on call is the modern equivalent of being chained to an oar.

    So wait, you're saying your chains are metaphorical?

    I need to talk with HR...

    --

    The enemies of Democracy are
  35. Spreadsheets hide the Black Swans by mariox19 · · Score: 3, Interesting

    The article makes me think of an idea that I believe is found in the book, The Black Swan, by Nassim Taleb. If it's not there, it's in his earlier book.

    The idea is that human thinking is prone to several faults. It's a flaw in the construction of our brain. I believe this is something evolutionary psychology talks about. Anyway, Taleb says that human beings are woefully prone to looking at the past and convincing themselves that past data is a sure guide to what the future will bring. His idea is not just that we are prone to this mistake, but that in effect we love making this mistake -- or perhaps closer to his point, we feel great when we are making this mistake.

    Putting Dvorak's article in this context, people look at spreadsheets -- and at all the wonderful graphs and charts you can make from the data contained therein -- and are lured, cognitively, into painting a particular picture of the future. To the natural inclination of our minds, this picture is so beautifully convincing that we have to actively work to resist its charms. It's almost as if we can't help buying into the future our inclinations, with the help of our spreadsheets, sell to us.

    This is a small example from what is a larger problem in economics, which only some schools of economics recognize: namely, economic history is a poor guide to the future. (By contrast, the entire field of econometrics posits itself on making "mathematical predictions" based on economic history.)

    Dvorak's an ass, in my opinion; but I think he may have stumbled onto something here.

    --

    quiquid id est, timeo puellas et oscula dantes.

  36. Re:Loooooong time by MaskedSlacker · · Score: 4, Interesting

    It's amusing that you don't know how wrong you are.

    One of the very first uses of visual representations of data was by Florence Nightingale to Queen Victoria, a chart showing the relative causes of British military deaths in the Crimean war. The whole reason for the chart being that yes, Nightingale thought Queen Victoria's eyes would glaze over at a table of numbers and she wouldn't be able to comprehend it.

    Graphs of functions may have been created for mathematicians. Charts of data were invented for people whose brains ran out their ears at the sight of numbers.

  37. Yes, I actually read it by sam_handelman · · Score: 3, Interesting

    And no, the spreadsheet is not responsible for all moral decay and infamy in our society.

    Cars are shoddy, consumer goods are junk. Toxic substances are in the food supply. Lead is in toys. Most of what we buy is made cheaply elsewhere. At every level of the business scene today, some bean counter does a what-if calculation before making the decisions. The spineless CEO worries about what the shareholders would think if he disagreed with what the spreadsheet and the CFO told him to do. To make him feel better, the board will give the CEO a fat bonus for saving money.

      Back in the day, before spreadsheets, the US Military secretly gave the children of US servicemen whooping cough, prisoners were secretly injected with syphillus, and a deal was cut with lead paint manufacturers to leave their remaining inventory on the market rather than recalling it after everyone had given up denying it was harmful. Don't get me started on lead gasoline or cigarettes.

      Amoral behavior like this is a property of all *secretive and powerful institutions*. Since the spreadsheet has been invented, private corporations have become more secretive and more powerful, and their directors have become more dedicated to institutional goals as a cultural shift. There is no causation here.

      There is a lot of criticism of administrators on this thread - and it is certainly true that the administrators of powerful, secretive institutions tend to personify both the destructive social impact and caustically short-sighted, self-interested purposefully ignorant culture of the institutions where they hold sway.

      But as has been pointed out elsewhere, for human beings to act productively and cooperatively, administration and logistics are required. Spreadsheets help with this task immensely - as anyone who's tried to for fucksakes budget a camping trip (how much more would it cost to bring uncle David and his kids too?) can attest.

      To clarify my assertion further (and I have to credit this assertion to David F. Noble, who's ideas are primarily reflected here): The technology is neutral - if you don't like what's being done with it, that's entirely the fault of the people using it. To the extent that spreadsheets have had a deleterious effect on our society, that is because powerful individuals saw an opportunity in the technology and exploited it. In a different instutitional structure or with different power relations already in place, the effects would be totally different.

      In closing, if anyone actually cares about the future of engineering professions, read Forces of Production by David F. Noble. De-skilled assembly line jobs became the norm not because it was a better way of doing things and not through any inherent properties of machine tools (let alone "market pressure"), but because it served the economic and political interests of the managerical class. Spreadsheets are (relatively minor) among the many tools that the current generation of management tries to use to do the same to engineers today.

    --
    The good and new comes from no quarter where it is looked for, and is always something different from what is expected.
  38. I Still Remember by BigFoot48 · · Score: 3, Interesting
    I remember in March 1980 when a colleague took me to an Apple computer store in San Francisco, opened VisiCalc, put 100 in one cell, 200 in another, a sum below it, and 300 magically appeared.

    My life as an accountant changed forever that day. It took me three months, and many meeting to get the local division of the major oil company I worked for to buy the first Apple in the company. I seem to recall it was $3,000 or so.

    After that it was models and spreadsheets galore - well, whatever was 64k or smaller. ("Oh, you want that calculation? Well, I'll have to remove this one.)

    Then on to IBM and Lotus 123 and the rest is history.

    Were spreadsheets abused, full of errors, and assumed gospel when they weren't? Sure, but they also made clear, in a very short time, important data used to make good decisions.

    Now long retired, that moment in SF remains with me as one of those "ah yes" moments in life.