Slashdot Mirror


Are Spreadsheets Software or Data?

ideveroux asks: "I have started a company which designs Excel Workbooks to duplicate paperwork required for Bingo Halls in Mississippi. In all my years of experience, I have never considered a spreadsheet itself as software, only Excel. However, the Mississippi Gaming Commission has gotten itself into my business and is trying to require me to license my company with them ($10,000.00 and government involvement) because any 'software' sold to bingo's have to be licensed by them. What is your take? Are the workbooks software by themselves? As a startup with no venture capital, I haven't the resources to secure an attorney, nor pay their extortion money. Thanks for your input." Spreadsheets have always existed in this grey area because they mix functionality with data. This issue has grown more tricky over the years as in-spreadsheet macros become more and more complex. I don't think of spreadsheet files as software, because you can't edit or execute a saved spreadsheet without it's associated application. However some can say that anything that implements an algorithm qualifies for term. What are your thoughts on the subject?

36 of 86 comments (clear)

  1. spreadsheets are data. by perdida · · Score: 2

    From the perspective of someone who uses a spreadsheet of information: This stuff is data, as essential to a corporation with thousands of names to manage as lights and heat.

    Software regulators might as well license the software the power company uses, because it provides light to a casino using its software.

    If you are gonna give businesses this break, though, you should give the government an equivalent public good in exchange for ceding this control and revenue from software licensing.
    Governments should be able to easily break in and unwittingly subpoena the records of corporations like Enron, so they can't shred 'em.

  2. Good 'Ol Boy Network by Jeremiah+Cornelius · · Score: 4, Insightful
    This is their Ball, Bat and Sandlot. It doesn't matter if you are right and they are wrong - the state commission is RIGHT. You said it yourself - your a little guy. The Good 'Ol Boy network is there to make sure an upstart like you doesn't get in on the game, unless they get a cut. If you aren't big enough for a cut, then you don't get to play at all.

    No technical definition of software will alter the circumstance, because technical issues are irrelevant to the those controlling the issue. 10,000 USD is a good fee from their point of view. It's much less than the cost of fighting the battle in court - which is also run by more Good 'Ol Boys.

    I wish that there was a less pessimistic outlook. Welcome to the gap between perception and reality.

    --
    "Flyin' in just a sweet place,
    Never been known to fail..."
    1. Re:Good 'Ol Boy Network by gartogg · · Score: 2, Informative

      It's very possible to change state law, especially where it's obvious nonsense (If you've never talked to your state senator, they love to see constiuents, and it's smart to get to know a couple of them in case you ever need anything...)

      Talk to the senator in charge of the comission that oversees the gaming comission. Ask him what they are doing. It'll only take a lunch hour or so (unless you live outside the capital.)

      This is the type of thing any /.er (really any citizen) should be comfortable doing, especially since it's so useful and can have a significant impact. Try it.

      You can only complain when you know the system doesn't really work. Until you try it, you have no right to say it's broken.

      --
      I'm a concientious .sig objector.
    2. Re:Good 'Ol Boy Network by MaxwellStreet · · Score: 2

      It's very possible to change state law, especially where it's obvious nonsense

      It isn't -obvious- nonsense. Spreadsheets can contain all sorts of internal programming macros to do all kinds of things.

      Personally, I feel that an .xls file isn't software. But fair, well-informed, well-meaning people can disagree.

      And getting your senator to go against something that brings the gaming commission revenue requires optimism in the political system that I've long since lost.

  3. It depends (of course!) by Webmonger · · Score: 3

    It doesn't matter whether a spreadsheet can run without its app. Plenty of software has been written in languages that require an interpreter.

    At least some spreadsheets (e.g. Excel) support programming languages for their macros. Clearly Visual Basic is a programming language, regardless of whether it's a good one. So anything that uses Visual Basic is an app.

    Furthermore, you could argue that the mathmatical operations that a spreadsheet performs are themselves programming instructions. They're even formatted similarly to C function calls.

    Basically, the only spreadsheet that could not be interpreted to be an application is one that contains data (and layout) only, and no functions.

    I think it's fair to consider a spreadsheet that does something to be an application.

    1. Re:It depends (of course!) by Webmonger · · Score: 2

      By your definition, Java is a scripting language then. :-) But yes, I would consider a script to be software. We even had a Subversion competitor featured here on Slashdot that turned out to be mainly written in shell scripts. IMHO, there's no qualitative difference between scripting and programming. The differences are quantitative and fuzzy.

  4. No solution by rw2 · · Score: 4, Insightful

    I just wanted to poke cliff in the ribs for defining software as something that doesn't require another application to execute.

    Dude, you've just eliminated *all* scripting languages from the definition of software.

    *My* next step would be to ask the gaming extortion folks where you can find the definition of 'software'. There should be one.

    1. Re:No solution by Cy+Guy · · Score: 4, Insightful

      you've just eliminated *all* scripting languages from the definition of software.

      Actually, every file that relies on an algorhithm to perform some function including the OS, even wordprocessing documents if they use anything more sophisticated than plain ASCII text - since they consist of instrustions that are carried out by the processor either directly or through the use of one or more intermediary programs.

      My question is, who are they not charging? Are they charging MS seperately for every single different application that comes with a default Windows install? Are they charging MS seperately for each compnent in MSOffice?

      One way around the license might be to convert the spreadsheet to java applet and host it online (hopefully in another state) then sell it as a service rather than a program that gets installed on the user's PC. Since the transaction would cross state lines, the state would not have jurisdication to regulate or license your service. Even within the same state, it's likely they would have real problems proving that the online spreadsheet is software, and even if they did, they would have to show how they were enforcing the license on other webservices such as Hotmail.

  5. Is Excel an application or an interpreter? by ChrisKnight · · Score: 2, Insightful

    > I don't think of spreadsheet files as software,
    > because you can't edit or execute a saved
    > spreadsheet without it's associated
    > application. However some can say that anything
    > that implements an algorithm qualifies for
    > term. What are your thoughts on the subject?

    The are perl scripts programs or data? Just try to run a perl script without the interpreter.

    I'm sure the case could be made that Excel interprets the spreadsheet file rather than just displays it, which would make spreadsheets programs of a sort.

    -Chris

    --
    -- This sig is only a test. If this were a real sig it would say something witty. --
  6. they are the classic mixture by DrSkwid · · Score: 3, Insightful

    If ever a paradigm mixed logic and presentation then spreadsheets are it.

    They are software throguh and through, no question.

    It would be fairly trivial to write a Turing Complete Machine interpreter entirely in VBA in Excel and I'm sure the same must be true of other spreadsheets.

    Just like php, spreadsheet's consider anything literal text unless otherwise instructed.

    You can embed the excel engine as an ActiveX control in other applications and use it.

    What other proof would one need?

    --
    There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
  7. spreadsheets can be software by mayoff · · Score: 3, Insightful

    If a spreadsheet contains nothing but data - no formulas or macros - then clearly it's data, not software. (You could just as easily distribute it as a tab-separated file, if you forgo fancy formatting.)

    Macros written in a language like VBA are clearly programs: now your spreadsheet is a mixture of data and software.

    An Excel formula can also easily be considered a program: it describes a computation in a form precise and formal enough that a machine can carry out the computation.

    How many formulas or macros, and of what complexity, are necessary before a spreadsheet is "software" in the eyes of the law? The courts will probably have to decide this eventually; there may be no general answer. You might have to look at the purpose of the law.

    In this case, the law is that bingo software must be licensed by the MGC. Why? I don't know, but perhaps it's to ensure that the taxes are paid, or that the books are kept accurately, or that the bingo numbers are drawn fairly. Then the court will probably consider whether the spreadsheet is involved in, and automates, those activities. If so, then the spreadsheet would probably be considered software that must be licensed by the MGC.

    Cliff said, "... you can't edit or execute a saved spreadsheet without it's associated application." That is irrelevant. I can't execute a Perl or Python program without the right interpreter. I can't execute Java bytecodes without a VM. I can't execute Windows programs without an implementation of the Windows API. Software often relies on the presence of other software.

  8. Gaming Commission by BodyByHostess · · Score: 2, Interesting

    I'll stay away from the tech aspects of this, but lookin into the positives. As one who lives in Nevada, the State Gaming Commission here is very paranoid about anything that goes on to make sure things stay fair and legal, they even regulate the chips that go inside Slot Machines. What happens if something in your spreadsheets would allow bingo operators to skim money (gameing is permitted for the tax revenues it generates not so you can have fun), or lie about the percentage of funds being returned to players as prizes (something you might want to know about). Just the opposite, by having a registered known working version they can than compare the version in use by someone running bingo games. If they find a discrepency they can use that to prosecute or at least start an audit. Part of it may be to insure your stuff doesn't deviate from accepted accounting practices. On the positive side if you sign up your become an authorized vendor giving you an edge over some other newbie !

    1. Re:Gaming Commission by coyote-san · · Score: 2

      But I'm sure the Nevada SGC is careful to define exactly what it wants certified.

      "Software used by bingo parlors" includes Windows itself. It includes the Office applications. Do you think they meant the regulations to include these products in the "$10k + license" requirements?

      In the case of a spreadsheet, I suspect (but don't know) that the standard is that the person who signs the forms s responsible for the accuracy of the reports. They can use whatever tools they want to generate the numbers, but if they're wrong they're going to jail.

      As for auditing triggers, all you need is the right set of numbers in the reports. How many people played? How many games were played? What were expenses? What were payoffs? Cross-reference that to other information a state is able to acquire, and there shouldn't be any problem identifying questionable players.

      --
      For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
  9. Spreadsheets as Software? by Tadrith · · Score: 2, Insightful

    I think there's a few key points that could be brought up to prove that this isn't software. A software application runs on a platform to provide some sort of functionality. Given this, we could examine the spreadsheet in the same way:

    Q: Can you open and execute the spreadsheet on it's own?
    A: No. The spreadsheet requires a proper spreadsheet application to view it.

    Q: Does the spreadsheet provide any sort of functionality by itself?
    A: It doesn't do this either. Again, you have to have the application in order to give the spreadsheet any functionality.

    Q: If the spreadsheet has programmatic features, such as macros, can these be executed or used to provide functionality?
    A: It can't do this either. Not only are they not capable of executing themselves without an application, the macros contained are not even cross compatible. That defines them as a feature of the application, rather than a feature of the spreadsheet.

    Bottom line? I think they're jerking you around, and I wouldn't stand up for it. Even though you don't have a lot of resources, there are things you can do. Besides, if we don't defend our rights, who will?

  10. Get a lawyer by coyote-san · · Score: 4, Interesting
    Get a local lawyer with some knowledge about the field. This is one of those questions where what we think doesn't matter - it will all down to local statutory and case law.


    That said, two questions stand out to me:

    • Is "software" even legally defined in the State of Mississippi? It's possible that "software" is either undefined, or it's defined in some archaic fashion. E.g., are you providing your spreadsheet via a stack of EBCDIC encoded punch cards containing Fortran or COBOL source code?


      On the flip side, it's possible that you're dead in the water because the good people of the great state of Mississippi have already decided that Excel spreadsheets shall be considered software, not data.

    • Has Microsoft paid the $10,000 fee for their license? Or $100,000, if you treat the OS, browser and Office components as separate programs? What about the other utility software? If they haven't, and the statute or regulations don't provide for exceptions, then this is preferential enforcement and that should raise some eyebrows. But then again, you're trying to sell something that's specific to Bingo halls operating in Mississippi, not a general tool.

    --
    For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
  11. Interesting by fizban · · Score: 2, Interesting

    Many people here have said that a spreadsheet, even one with macros, is *not* software because you can't load it up in the computer's memory and run it like a program.

    So, does that mean that any *interepreted language* can also be considered non-software because it can't run without its associated application?

    If not, then if your spreadsheet has functions or macros in it that manipulate the data, then I think you have to call it software. If it's *just* data, then you shouldn't call it software.

    I think you have to look at the "intention" of the item. If it's intended to be run by something, then it is software, otherwise it isn't.

    --

    +1 Insightful, -1 Troll. What can I say, I'm an Insightful Troll.

  12. data or data+logic? by NaturePhotog · · Score: 2

    This sort of reminds me of the question that either Adobe or MS raised a few years ago about whether outline fonts were data or programs. The contention was that since Type 1 and TrueType fonts have some logic in them, they are in fact programs. IIRC, this was because programs were clearly protected under copyright laws, but fonts were not clearly defined at the time.

    The closest thing I can find is a reference to a court case between Adobe and Southern Software, in which it was ruled that fonts are copyrightable. I can't find references to earlier cases, though I'm sure there were some.

    In any event, there probably isn't a clear legal definition of what software is (heck, the dictionary definition isn't very clear) and whether spreadsheets or a particular spreadsheet is included in that definition. Unless you do some legal research or hire a lawyer to back up your claim, you are (as other posters pointed out) stuck with what the Mississippi Gaming Commission decides it is.

    1. Re:data or data+logic? by NutscrapeSucks · · Score: 2

      Well there might not be a legal definition of software, but copyright law does define a "computer program" to be "a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result"

      I would figure that any spreadsheet that uses formulas or macros would fall under this definition.

      --
      Whenever I hear the word 'Innovation', I reach for my pistol.
  13. Spirit of the law... by Otter · · Score: 2
    Needless to say, IANAL and you should definitely be talking to one...

    Treating this as a theoretical debate, which is probably the only worthwhile way to discuss it here, the spirit of the law strikes me as this: If you're supplying equipment to gambling enterprises, you have to give a cut to the government. You are selling equipment to gambling enterprises. The intent of the law is for you to pay.

    Again, how software is precisely defined is a different issue, and you should be asking a lawyer, not us.

  14. Spreadsheets are Turing complete by rufusdufus · · Score: 2

    You can implement a turing machine in a spreadsheet, and thus any algorithm. Thus, a spreadsheet is a program.

  15. scripts and interpreted languages by isorox · · Score: 2

    I don't think of spreadsheet files as software, because you can't edit or execute a saved spreadsheet without it's associated application.

    Java programs are byte code which require an interpreter (the jre). Perl/bash/csh scripts will not run without their associated program, yet they are all considered software.

    1. Re:scripts and interpreted languages by josepha48 · · Score: 2
      Yup!

      I'd agree, you could think of it that way. Excel macros wont run without the vb runtime engine. The real question is, is your spread sheet just a csv in discuise or do you have macros that you customized to your spread sheets.

      I wonder if this means I can sell spreadsheets that do the 1040 tax form calculations .... Schedules A, B & D, and CA state... hmmm

      --

      Only 'flamers' flame!

  16. Well said. What about "free" software? by Bob_Robertson · · Score: 3, Interesting

    No different than "The Mark Of The Beast", this is yet another example of exclusionary practices by licensing boards. This is the evil of licensure, of restricting an individuals libery not because of their actions, but only because someone has the authority to create the restriction.

    It's their rule, they win. Pay the money, or get out.

    Which leads me to wonder, what about the use of other software? If they have a Windows PC, does Microsoft have such a license?

    Just wondering how obviously hypocritical they licensing board is.

    Bob-

    --
    The Ludwig von Mises Institute. The reasoning individuals economics
  17. yep by man_ls · · Score: 2

    I'd argue in favor of the gaming comission on this one. Excel has a very nice scripting language known as formulas, and with VBA, it's even more powerful. I've seen Excel workbooks with dropdown menus in fields and all kinds of stuff.

    Think about it in the context of a language run through an interpreter. Is the interpreter software? Yes. Are the programs that must use THAT PRORGAM to run also software? Yes. Excel workbook is the same way.

  18. Your logic does not stand. by rufusdufus · · Score: 2

    All programs require an application to run on, usually the one called the Operating System. The OS is simply an application on the BIOS, which is an appication on the chips firmware.

    Try using your applications without an OS and see how far you get.

  19. Software by michael_cain · · Score: 2
    I used to make myself extremely unpopular at meetings where multi-million dollar decisions were being made on the basis of spreadsheet results by asking to see the test cases, etc., to verify that the somewhat complex formulas coded into the spreadsheet were correct. I was particularly demanding in those cases where the spreadsheet program allowed recursive formulas and would silently iterate until either (a) it decided that a fixed point solution had been reached or (b) too many iterations had gone by.

    I got kicked out once when my comment was "If I wrote and tested product code to the same standard that you use for your spreadsheet code, you'd fire me."

  20. The only distinction is in your head. by Bistronaut · · Score: 2, Informative

    All software is data and all data (if it's in a computing machine) is software. Programmers split them up in order to facilitate talking about them, but when you get down to it your computer is a state machine. It might seem that the 'software' manipulates 'data', but it's just as true that 'data' manipulates 'software'. If you try to separate them for legal reasons, you will only make laws that make no sense (as they seem to have done).

    Laws that rely on a distinction between software and data should be challenged as ambiguous and thrown out. Is that VHS tape a bunch of data? You bet it is, but it's also analog software that runs on your VCR to display moving pictures with sound. There was a slashdot article a while back about weather or not DVDs are software. Of course they are! And they are data also. I know that there are bad legal implications of this, but that's because the laws are bad!

    We thought that we were bad off when we let legislators write laws, but now that we let media companies write them, things are even worse. Our legislative bodies need large influxes of mathematitions and programmers. Logic seems to be in short supply at the state and federal level - at least in the U.S. (not to mention local, but they're hopeless).

  21. Spreadsheets are DATA by renehollan · · Score: 4, Insightful
    I know I'm going out on a limb here, and there may be spreadsheets that violate the premises I use to conclude that they are data and not software, but most that I've encountered qualify as data.

    Consider: Is '5' a program or data? It is certainly interpreted from it's representation within the computer to produce a literal '5'. I think it would be folly to argue that '5' is a program, though in the process of being presented to us, it controls many things, rather like a program. Still, we consider it data.

    Now, consider (1+1/1000)^1000. Is that a program or data? It certainly requires interpretation to produce a result. But that result is an approximation to e, the base of the natural logarithms. We may also series expansion approximations to irrational numbers, like pi. Are those programs? I would still say no.

    I'd say this because the result of these "programs" does not change with each run. Their output may as well be data. A program with no input (and I've yet to see a spread sheet prompt, when I have it recalculate, unless there is some error) always produces the same output and can be considered identical to that output. It is precisely because spreadsheets fix the data that their embedded formulas use, that the spreadsheet as a whole can be considered data. Unlike a program, a spreadsheet isn't "run", it just "is", once the numbers are entered. Errors in the embedded formulae are no different than errors in transcription, or manual processing of the numbers. Both these are subject to audit, so incorrect embedded formulae can be caught when the data is presented. This is not so with a program, where the input and output are distinct from the program itself.

    In the same way that accounting records can be audited, spreadsheets can also be audited: all the intermediate steps are still there. There is no need to "pre-audit" or "license" the program to make sure it is correct.

    --
    You could've hired me.
  22. Get affidavits by LordNimon · · Score: 2

    Go to a local university, and try to get as many Computer Science professors to sign a letter that says that your product is not software. Use these letters as evidence.

    --
    And the men who hold high places must be the ones who start
    To mold a new reality... closer to the heart
  23. All software is data ... by Pogue+Mahone · · Score: 2
    Think about it. That nice bit of C source code you just spent hours lovingly crafting - just input data to the compiler. The resulting binary file - just data to the OS's loader. The OS itself - again, just data as far as the bootloader is concerned. The bootloader - just data for the BIOS. And the BIOS was only data when the device programmer programmed it into the ROM.

    Conversely, what you consider to be data could also be argued to be a program. That MP3 file is a series of instructions to tell the MP3 interpreter how to construct something that resembles the original waveform. A MIDI file can contain loops - software of data?

    You're really asking the wrong question. The question should be "Am I distributing anything that I didn't produce myself, and if so am I permitted to do so?" It doesn't matter whether it's software or data - if you're distributing someone else's copyright material, you need a license. I don't think a court would decide that a compiler write can claim copyright over the compiler's output, but library routines are a grey area.

    Whatever happens, let this be a lesson - before you buy development tools, check whether their output can be used royalty free. If not, avoid these tools wherever possible.

    Just my EUR 2.00 (nose-diving exchange rate) :-)

    --
    Every bloody emperor has his hand up history's skirt [Peter Hammill/VdGG]
  24. This is tricky... by joto · · Score: 2
    One might be tempted to get down to common sense. If the spreadsheet contains mostly data, and few formulas, and the primary purpose of its existence is to present those data in some form, then it's data. On the other hand, if the spreadsheet contains mostly formulas, macro-commands, etc, and the primary purpose of the spreadsheet is to plug in data to do analyses, etc, then it's a program.

    Unfortunately, common sense works very badly when it comes to regulation. Your best bet is to explain your situation to them, and maybe the press, politicians, etc, if you think you are being treated unfairly. It might not work for you, but maybe for the next guy :-(

  25. Call your local State Assemblyman or Senator by duffbeer703 · · Score: 2

    And chat with him about it.

    If you belong to the right party, or make some sort of campaign contribution, the gaming commission will go away.

    Being involved with the gambling industry without political affiliations is a really bad idea.

    --
    Conformity is the jailer of freedom and enemy of growth. -JFK
  26. IANAL, but YNAL by Wesley+Everest · · Score: 2
    I am not a lawyer, but you need a lawyer... It seems to me you should be able to get some good help on this without spending more than a few hundred dollars -- you don't necessarily need to go to court, you just need some advice about whether there is a definition of software that they use, and who to talk to to try to weasel out of paying their huge license fee. You might try to find some small-business department in your state or local government -- they often have people you can talk to for advice, and if they can't help directly, they might point you to a good lawyer to talk to.

    As people have said, though, it might depend on what your spreadsheets actually do. If you don't use any internal scripting language, and it is just your plain-old, vanilla spreadsheet that sums columns and such, then it's as much "software" as a pair of shoes and a walking stick could be called a "vehicle".

    The important thing, though, isn't whether or not it's software, it's do they have a long-running policy of considering spreadsheets software, and have there been any exceptions. If you can show that your stuff is just like some other stuff that they don't consider software, then that would help. If they have a long-running policy with no exceptions, though, you're probably out of luck -- I doubt you want to spend years in court trying to overturn their policy.

  27. It's Software by the+eric+conspiracy · · Score: 2

    I don't think of spreadsheet files as software, because you can't edit or execute a saved spreadsheet without it's associated application.

    There are spreadsheet compilers around that can turn a spreadheet into a standalone application.

    Most Java programs run in a virtual machine.

    What is the difference? Not much that I can see.

  28. Of course it's software by dstone · · Score: 2

    Most software runs under the control of another piece of software. For example, desktop apps (like Excel) tend to run under an OS (also a bonafide piece of software). So extending this another layer deep by having scripts and macros and worksheets execute under a dekstop app (that executes under an OS) seems pretty normal.

  29. Re:Mississippi Legal Definition of Sofware by topham · · Score: 2

    Your screwed.

    You've created a custom solution for an industry which is highly regulated. You won't have a choice on paying any ceritifcation fees, and, you might not qualify anyway.

    Even if you were contracted by each bingo hall seperatly you would probably find a requirement for certification anyway. Either you, or the end results.

    Had you created an accounting package (for instance) and they happened to choose it -they- would have to deal with any certification. (Although there may be other, specific regulations in your state for accounting software).