Are Spreadsheets Software or Data? 86
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?
Re:spreadsheets are (Score:1)
Re:spreadsheets are (Score:1)
Data is "Numerical or other information represented in a form suitable for processing by computer."
Software is "The instructions executed by a computer."
If your spread sheet only contains information that is sutable for processing, than your good to go. However if you have programmed functions into your spread sheet, than instructions are being executed.
If I were you I would get lawyer. They may back down, but chances are you will have a long drawn out process where you can still sell your software(if your attorney is good).
Another way to apporach this problem is to be hired as a consultant to show them a better method of setting up their spreadsheet. I don't believe that the gaming commision would be able to do anything about that, they can't charge you for methods you showed a client that assist to gaming because then they would have to require every consultant to pay the 10000$ fee.
Just my 2 cents worth
spreadsheets are data. (Score:2)
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.
Re:spreadsheets are data. (Score:1)
Good 'Ol Boy Network (Score:4, Insightful)
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.
Re:Good 'Ol Boy Network (Score:2, Informative)
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
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.
Re:Good 'Ol Boy Network (Score:2)
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
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.
Well said. What about "free" software? (Score:3, Interesting)
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-
It depends (of course!) (Score:3)
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.
Re:It depends (of course!) (Score:2)
Re:It depends (of course!) (Score:1)
Just a nitpick. And yes, I'd consider even shell scripts software. Although I'm still split on the Excel spreadsheet issue...
No solution (Score:4, Insightful)
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.
Re:No solution (Score:1, Insightful)
Also, like, even if it's just a regular application, the thing makes library and os calls, which are really software in and of themself.. is barely ever anything in a computer which isn't riding on a huge bed of other functionality. And in lisp, data can be code and vise versa.. the line is indistinct, and, like, we supposedly understand this stuff. Legislators? heh. "good luck"
Re:No solution (Score:4, Insightful)
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.
Is Excel an application or an interpreter? (Score:2, Insightful)
> 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
they are the classic mixture (Score:3, Insightful)
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?
spreadsheets can be software (Score:3, Insightful)
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.
Here is the Mississippi Law defining Software (Score:1)
Iff(interactive_content=True, "Software", "Data") (Score:1)
However, the spreadsheet described contains formulas and/or macros, so it seems correct to consider it software. Some sort of processing occurs against the data according to rules which you programmed via these formulas, macros, and/or VBA code.
The Excel application features a programmable interface, a BASIC interpreter. Excel (like Word, Access, Power Point, Visio, and Internet Explorer) features a Visual Basic for Applications interpreter as an Office Automation feature. A spreadsheet file can contain executable code which the VBA interpreter processes. These 'macros' can be protected, 'compiled', and delivered in a 'binary' format, and even function as an add-in.
This programmability feature is not unique to Microsoft. Star Office supports a similar macro programming language for all it's cooperating applications.
Programmable office suites existed well before Microsoft Office. Anyone recall Ashton-Tate's Framework? Recall Borland's Sprint word processor with that macro language that resembled C or perhaps C-Sharp??!! Many other office software packages and suites have macro features like this and even programmer software development kits.
Many will argue there is a fine line between office automation and programming. I think it's a shame that government regulators would pursue this instance. It's sort of like the old Visicalc files that did IRS Form 1040 calculations. But they were free downloads. Were they programs? I suspect they might be. Did the government regulate them? Nope, they were basically ignored.
If you are presenting these files as providing automation/functionality appropriate for a business, you seem to have crossed the line into being a developer. So, I would conclude you should pay up. Consider another type of legal business not requiring this sort of regulation and continual governmental probing. Your spreadsheets will probably have to pass some sort of audit regulation in the future.
Who Cares! (Score:1)
Spreadsheet is data and app. (Score:1)
A spreadsheet that displays information is data. A spreadsheet that is user modifyable in an interactive way (i.e. like a payroll) is infact an application.
It is no less an application because it requires Excel than a java applet is because it requires JRE/JDK.
Gaming Commission (Score:2, Interesting)
Re:Gaming Commission (Score:2)
"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.
Spreadsheets as Software? (Score:2, Insightful)
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?
Re:Spreadsheets as Software? (Score:1)
of course, binary compiled code might even be thought of in the same light without the handy help of my OS "application" that lets it run...
short answer, then: "ask slashdot" is a lousy place to get legal advice.
Re:Spreadsheets as Software? (Score:1)
I wouldn't argue that binary compiled code is considered simply data without an operating system. I don't want to get into semantics, but to me software is partially *defined* by that requirement of a platform. If a piece of software ran without the operating system, I would consider it an operating system itself.
Re:Spreadsheets as Software? (Score:1)
Your logic does not stand. (Score:2)
Try using your applications without an OS and see how far you get.
Re:Make it a Slashdot Poll (Score:1)
another alternative (Score:1)
Get a lawyer (Score:4, Interesting)
That said, two questions stand out to me:
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.
Interesting (Score:2, Interesting)
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.
Change your contract and licensing? (Score:1)
data or data+logic? (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 [google.com] between Adobe [adobe.com] and Southern Software [ssifonts.com], 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 [dictionary.com] 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.
Re:data or data+logic? (Score:2)
I would figure that any spreadsheet that uses formulas or macros would fall under this definition.
Mississippi Gaming Commission Regs (Score:1)
Spirit of the law... (Score:2)
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.
Fine line (Score:1)
Computer Science The programs, routines, and symbolic languages that control the functioning of the hardware and direct its operation.
Data - PLURAL NOUN
(used with a sing. or pl. verb) 1. Factual information, especially information organized for analysis or used to reason or make decisions. 2. Computer Science Numerical or other information represented in a form suitable for processing by computer. 3. Values derived from scientific experiments. 4. See datum.
It's a very fine line. I personally would call an excel workbook data, but I'm not sure how well it can hold up in reality.
Spreadsheets are Turing complete (Score:2)
Re:Spreadsheets are Turing complete (Score:1)
Maybe depends on how it's distributed/packaged. (Score:1)
If we say that if you distribute something that - as a whole - can be used without help from other applications then it is software.
If you distribute something that needs a pre-existing package installed it is data.
By that logic - your spreadsheet, provided you don't package it with Excel itself, is data because the customer must supply the spreadsheet as data to the pre existing excel to get anything from it.
Same goes for interpreted languages, perl itself is software because you install perl and can use it - but a perl program distributed on it's own is data because it requires to be fed as data to the pre existing perl.
Well, it's a thought.
scripts and interpreted languages (Score:2)
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.
Re:scripts and interpreted languages (Score:2)
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
yep (Score:2)
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.
Re:yep (Score:1)
Save the workbook in XML format (Score:1)
Re:Save the workbook in XML format (Score:1)
Software (Score:2)
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."
Can you change tactics? (Score:1)
The only distinction is in your head. (Score:2, Informative)
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).
Spreadsheets are DATA (Score:4, Insightful)
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.
Get affidavits (Score:2)
All software is data ... (Score:2)
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) :-)
von Neumann anyone? (Score:1)
http://www.csupomona.edu/~hnriley/www/VonN.html
Does it contain an algorithm? (Score:1)
However the term software is not the opposite of data but of the term hardware. It may be well possible that some legal definitions use "software" to describe both - data and programs. You should try to find the regulations covering the fee you are expected to pay.
This is tricky... (Score:2)
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 :-(
See what happens with licensing? It snowballs. (Score:1)
Call your local State Assemblyman or Senator (Score:2)
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.
Depends on your usage (Score:1)
I guess the question is more of how much functionality you are adding. I think most of us would agree that most web pages are not applications, but some are. The fact is that a web browser can host an application; so can excel.
Are plug-ins, applets, activex controls software? I think so. Are the formulas used in excel software? No, I would call them the reason for being for a spreadsheet. Once you add VBA/macro languages we are moving into software. Since you've given no indication of what your spreadsheets do, I can make no judgements in your specific case.
SM
IANAL, but YNAL (Score:2)
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.
Spreadsheets are Objects (Score:1)
Your problem is what the MGC and state law consider to be software, not what we Slashdotistas think. That has little or nothing to do with technology, sanity, or best practice in the industry. That involves our learned friends in the legal profession.
Simple division (Score:1)
For example, a table of numbers that adds together each column to create a subtotal and then adds together the subtotals is an app if it is empty, waiting to be filled, but it is data if it is filled with information. There are means to distribute the information without including the application by converting to an HTML table or whatnot, so you should use that, if it is just data. So if you only want to distribute information, don't send the application (spreadsheet) with it.
I definitely think that spreadsheets are applications because I started programming with MS Works.
scripted data .. sometimes (Score:1)
Mississippi Legal Definition of Sofware (Score:1)
Re:Mississippi Legal Definition of Sofware (Score:2)
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).
software n. (Score:1)
n : (computer science) written programs or procedures or rules
and associated documentation pertaining to the operation
of a computer system and that are stored in read/write
memory
Looks like spreadsheets are software to me.
time to change your tactics (Score:1)
It's Software (Score:2)
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.
Labor vs. Product (Score:1)
Here in Idaho we have sales tax. If I sold software then the customer would have to pay not only the cost of the creation of the software (which would include the cost of my doing business such as my taxes) but they would also have to pay sales tax.
Instead I create a product for them and they just contract my labor to do so. That gets around the double (triple) taxation.
And in your case it might be the only way to stay in the game since the government is obviously set in its ways to make sure you can't play.
Play ball... (Score:1)
Of course it's software (Score:2)