Jump to content

Talk:Software

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Timhowardriley (talk | contribs) at 00:09, 3 November 2024 (Low quality start: Reply). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Edit request

During the recent AfD, problems with the article's sourcing and content were brought up. I have resolved them with a new draft of the article and am pinging participants User:Praxidicae, User:EucalyptusTreeHugger, User:TartarTorte, and User:Aoidh in case any of you would be willing to implement the edit request.

User:Buidhe paid/Software should be copied into this article, above the categories. My version of the article also makes a clear differentiation between this article and computer program. It adds information about software development, software maintenance, quality and security, how software is executed on hardware, and the impact of software in the world.

Thanks! Buidhe paid (talk) 04:41, 12 May 2024 (UTC)[reply]

First/definition sentence

WRT the current first line: Software is a collection of programs and data that tell a computer how to perform specific tasks. Software often includes associated software documentation. This is in contrast to hardware, from which the system is built and which actually performs the work.

Why say collection? A single program is software. Software does cover all programs so maybe that's why they use 'collection'. But, it's the collection of all programs. But that's awkward phrasing.

Why 'specific' task? Software tells how to do any task; even general ones.

Ordering of sentences causes the hardware part to seem to be in contrast to documentation when it should contrast software.

How about: Software is data, in particular machine instructions, that can control a computer via its machine instruction interface. Generally, software also encompasses related artifacts such as any source code used to drive execution and any documentation written as part of the development process.

Maybe this is more accessible (not just longer/wordier): Software is information that controls computer hardware via its machine instruction interface. Often is a computer program or a script. A native executable drives the hardware directly via machine instructions. The executable is software, but generally the source code used to generate the executable is also considered software. Software also generally encompasses interpreted source code that itself is not converted to machine code, but drives an interpreter that is machine code.Stevebroshar (talk) 00:16, 13 May 2024 (UTC)[reply]

Stevebroshar my edit request above actually addresses your concern. You can implement it if you want. Buidhe paid (talk) 05:43, 13 May 2024 (UTC)[reply]
I did see that notice/topic on this talk page the other day, but couldn't figure out how to see your draft ... until rn.
I do not like to be critical, but rather than beat around the bush I'll say that I think your draft is less than good. TBO it's less than good throughout, but I'll only critique the start.
The start: Software "is the set of programs, concepts, tools, and methods used to produce a running system on computing devices" is off the mark IMO. It's quoted and cited so that is valid for WP, but I do not think it's a good definition. Software is not a set of programs even though a program is software. Software encompasses concepts, but doesn't everything encompass concepts? Tools are used to build software, but tools are used to build anything. Methods applies to almost anything too. So, I can summarize: Software is something used to produce a running system on a computing device. But, system and computing device can be replaced with more precise terms computer program and computer, and I assume you mean runnable. So: Software is something used to produce a runnable computer program. That's describing software development tools and/or processes; not the core concept of software.
I do think that defining software is hard. I think that everyone knows what software is, but would struggle to say what it means in a concise and accurate way.
Maybe there is good content in your draft. There are so many changes from the current version that it's hard to review all the changes, but I will say that the current version is not great and would benefit from enhancement. I would like to encourage your input and feel bad that my feedback may be discouraging. Maybe a good way to move forward is to consider smaller and more focused changes. What are the issues you have with the current content? What changes would have the biggest impact? Can we start there?
I'm curious: what is your conflict of interest? Why do you not make these changes yourself? Are you wanting a review and that there is no conflict of interest? More context of your motivation would be considerate. Stevebroshar (talk) 11:36, 13 May 2024 (UTC)[reply]
Hi Stevebroshar I am being paid for these edits; that is the extent of my COI. My employer is not even requesting specific content changes, they are just paying me to improve the article. Because I'm being paid to edit, it's considered best practices to request edits instead of making the changes myself.
In terms of the definition of software, I did some digging and found that sources don't agree:
no need to read it
Nontechnical
  • "for purposes of this paper, software is defined to be computer programs"[1]
  • "Software is defined a set of statements or instructions to be used directly or indirectly in a computer in order to achieve a specified objective."[2]
  • "Software is defined as the instructions that a computer follows to perform a specified task."[3]
  • "Software has never been unequivocally defined by any disciplinary field (including technical ones) and that it takes different forms in different contexts..." (xix) but a "widely accepted definition of software as the totality of all computer programs as well as all the written texts related to computer programs" (xx).[4]
  • "software is the set of instructions that make the machine operate in specific ways."[5] (naive definition followed by a lot of philosophizing)
Technical
  • "when asked to ponder what “software” is, computer software engineers seem to assume that the only kind of software is computer software. They provide answers that roughly equate software with code to be executed on a computer. When prodded, most will readily agree that the software they produce consists of more than just the code, but also somehow incorporates specifications of various kinds, designs, and perhaps testing regimes and results as well."[6] (although the author goes on to say it should be defined more broadly than computer software, and might include recipes and legislation)
  • "In this volume," software" is defined broadly as a generic for all the stages of tailoring a computer system to solve a problem."[7]
I tend to agree with you when it comes to the actual definition of software, but what is harder is finding a source that defines it that way. One step could be acknowledging the disputed nature of the definition (some of the above sources could be cited for this).
The reason I rewrote the entire article is because there are no sections of it that are well sourced and do a good job covering the content IMO. You are welcome to partially implement the edit if you want; one place to start might be the "Impact" or "Workforce" section, which have no parallel in the current article. Buidhe paid (talk) 00:58, 14 May 2024 (UTC)[reply]
Buidhe paid: so, your last name is not "paid" :) and that's why it's not capitalized ... who considers it best practice to request edits when your paid? but it's fine, I'm happy to work collaboratively. ... in general a definition of a non-trivial concept is often misleading and a bit wrong since it cannot encompass the totality of the concept, but IMO all concepts benefit from being defined. The trick is it come up with a definition that is close and not clearly wrong so that later text that clarify edge cases. Everyone who defines a concept will do so differently. So, there are a zillion definitions of 'software'. Using one particular source is actually a disservices to the WP reader. Could list every sourcable definition and then every article would start with "XXX has the following meanings: ..." Doesn't read well. WP seems to be about synthesizing text based on source material, and that includes re-stating rather than quoting. ... But, where is the line between re-stating and OR? IDK. But I will boldly say that it's better to be right than to be misleading or to present a narrow view. Writing WP requires thinking and creativity to synthesize source material into a readable article, but at the end of the day, a WP article, as any written work, involves authors opinions. ... so, I wonder what my point is ;) ... I think the WP community is responsible to define software. The definition should be supported by sources but need not be a quote. I think that software may be particularly hard to define and as with some articles it may be worthwhile to include a section on particular definitions that demonstrate the array of opinions in the world. But, I think the first sentence should be a synthesized definition; not a quote. Stevebroshar (talk) 11:48, 14 May 2024 (UTC)[reply]
Buidhe paid: On your broader edits: I agree that the existing article could be improved and I will look at your Impact and Workforce sections Stevebroshar (talk) 11:50, 14 May 2024 (UTC)[reply]

False depiction of law

The sentence "Software patents, like other types of patents, are theoretically supposed to give an inventor an exclusive, time-limited license for a detailed idea (e.g. an algorithm) on how to implement a piece of software," is false.

Patent protection is never awarded to "ideas" but "inventions". The sentence is legally misleading. Rebentisch (talk) 10:49, 17 May 2024 (UTC)[reply]

Yes, my version of the article fixes this Buidhe paid (talk) 14:21, 17 May 2024 (UTC)[reply]

Cpu

central processing unit or the brain 2001:4450:463E:B00:61B4:FEE9:BD89:FF0 (talk) 05:56, 30 May 2024 (UTC)[reply]

Wiki99 summary

Summary of changes as a result of the Wiki99 project (before, after, diff):

  • Complete rewrite from reliable sources
  • Fixed unsourced content issues
  • Add coverage of important subtopics such as software development, software maintenance, quality and security, how software is executed on hardware, and the impact of software in the world.
  • Cover multiple definitions of software in use

Further possibilities for improvement:

  • Consider some expansion for comprehensiveness
  • Get the article to good article status

Buidhe paid (talk) 02:51, 31 May 2024 (UTC)[reply]

@Buidhe paid I'm sure you have the best of intentions, but this major re-write is less than high quality writing. The old article wasn't great, but I think this is a step in the wrong direction
For example: Software is defined narrowly as unambiguous instructions that can be transformed into a form executable on computer hardware, or more broadly including supporting concepts, tools and methods needed to make the computer system operational. Using narrowly defined in the first sentence is awkward and off-putting. I find the word 'unambiguous' to be extraneous. The word 'instructions' connotes declarative languages. The word 'transformed' connotes compiled. If I think real hard I guess what you've said not wrong, but it's off the mark IMO.
Start the reader out gently yet boldly; without qualifications. How about: "Software controls the behavior of computer hardware as configured by a programmer".
Remove the definition section. That's too scholastic and dry. The first sentence of a WP article is the definition of the term. No need for a definition section.
Building off of previous innovations in mathematics and technology, software was created reads like nonsense to me. Software _is_ technology (which is overly obvious). Software is related to mathematics rather loosely. Software was a grass roots innovation that transcends all existing tech. That's one amazing thing about it. And something that should be highlighted. It's not an offshoot of math.
software was created for the programmable digital computers that emerged in the late 1940s and was necessary to realize their usefulness. So awkward and not quite true. Software creation has little to do with the 1940s. In fact, it kinda predates 1940. Kinda predates and transcends digital computers.
The first software was tied closely to the underlying computer hardware. What are you trying to say? That originally there was little abstraction from the hardware? Yeah. "tied closely to the underlying computer hardware is overly non-technical.
the lower layers of the system have become more standardized really?
A host of earlier inventions were necessary for the creation of software, including mathematics—especially binary and decimal number systems, and zero—alphabets, writing, mechanical calculators, boolean algebra, transistors, integrated circuits, and plastic zero? alphabets? plastic? come on now. Plastic is not needed for software. You mean computers need plastic? Maybe, but if we're going go down that path, then software required the invention of the wheel too.
Stopping there. I think we should revert back to before this re-write. The new content has too many issues.
I told you already that I don't think your writing is high quality. I take no pride in saying that, but I wish you would not make sweeping changes until your writing skill improves. Stevebroshar (talk) 19:36, 3 June 2024 (UTC)[reply]
Thanks for your feedback, but most of your concerns do not relate to Wikipedia's policies and guidelines:
  • For example, there is no rule against the creation of "definition" sections, which are quite common especially when a topic is difficult to define, or where there are multiple significantly different definitions found in reliable sources. Both are true for this topic.
  • While my definition section and its summary in the lead could doubtless be improved, it is at least based on multiple reliable sources, while as far as I can tell your suggested definition of software is not found in any source.
  • You're objecting to a lot of the content in the history section about how software was developed. The section is pretty well sourced in my version and I can confirm that the content you object to is verified in the cited sources. The section could be improved by incorporating other reliable sources that provide an overview of the origins of software, but it should not be changed because one Wikipedia editor disagrees with what the cited sources say.
Reverting would mean going back to a version that is largely unsourced and consequently whose material is mostly subject to removal under the verifiability policy.
You're welcome to your opinion about the quality of my writing but many other editors disagree, as you can tell by looking at my main user page. Buidhe paid (talk) 01:07, 4 June 2024 (UTC)[reply]
your concerns do not relate to Wikipedia's policies and guidelines Correct! I value quality writing. I think that folks that value rules over quality are misguided. I think that it is possible to satisfy rules while producing quality output.
You mention a rule about no definition section which I find interesting. Do you think everything must be rule-based? ... My point is that common style in WP is to define a term in the first sentence, _and_ that is what you did. Your definition section is mostly duplicate info. DRY.
I'm sure there are thousands of definitions of software out there. You picked only a few. The choice of sources is less than objective. In the end, what is in WP is not free of subjectivity no matter how many rules you follow.
WP is not just about quoting sources. A google search and AI search can do that. WP is about synthesizing prose that is consistent with sources while being easy to consume/understand.
As a strict rule follower, I think you struggle to understand what I'm getting at about quality.
I have no problem disagreeing with others about the quality of your work. I stand behind what I've said.
I think that condensing the _massive_ topic of 'software' into a WP article is a tall order. Clearly, you have the best of intensions. But, I think it's worse now than it was. ... I think you plan similar re-work on other articles. I am not looking forward to that. Stevebroshar (talk) 17:39, 4 June 2024 (UTC)[reply]
If it's not sourced it is encyclopedically useless and therefore automatically less "quality" by Wikipedia standards than any content that is correctly sourced. (t · c) buidhe 17:41, 4 June 2024 (UTC)[reply]
Quality writing is much more than sourcing. Stevebroshar (talk) 15:47, 21 June 2024 (UTC)[reply]
Correct, but phrasing can be improved by other editors, bad sourcing can only be fixed by ripping out the entire thing and starting over again (t · c) buidhe 15:49, 21 June 2024 (UTC)[reply]

Fair-use of software definition

I made this edit to make the definition of software easy to understand. It was reverted with the explanation that it needed quotation marks b/c it is a sentence from a textbook. The use of a simple sentence in an educational environment is allowed under US copyright law under the Fair use doctrine. Timhowardriley (talk) 23:43, 22 June 2024 (UTC)[reply]

I've never heard that interpretation on Wikipedia. As far as I'm aware, if it's an exact quote more than a few words it needs to be attributed to the source—otherwise it's plagiarism, if it may not be entirely clear where copyright violation begins. (t · c) buidhe 01:49, 23 June 2024 (UTC)[reply]
And if you just change a couple words so that it's not a direct quote, we call that Wikipedia:Close paraphrasing. If you want to use the exact quote fine, but use quotation marks so it's clear that the words are from the source and not a Wikipedia editor. (t · c) buidhe 03:09, 23 June 2024 (UTC)[reply]

Picture in the lead

The image of credit cards in the lead is extremely confusing. Yes, modern smart cards have software inside. So does any modern toaster or washing machine. Unless a better picture is found, I suggest removing this random picture altogether. Dimawik (talk) 15:59, 24 August 2024 (UTC)[reply]

I agree. Also, this website has numerous programming language articles that have a suitable replacement. Timhowardriley (talk) 16:22, 24 August 2024 (UTC)[reply]

Semi-protected edit request on 9 September 2024

Change short description from:

Non-tangible executable component of a computer

to...

Prepared set of instructions a computer can execute


Rationale:

“Non-tangible” is ridiculous and not informative. (“abstract” would be better, but see further...)

“Component” could imply hardware, which is exactly incorrect

The word “prepared” could be omitted from my proposal, if desired

The word “fungible” (set) could be included in my proposal, if desired.

. 24.19.113.134 (talk) 04:00, 9 September 2024 (UTC)[reply]

 Done meamemg (talk) 15:13, 12 September 2024 (UTC)[reply]

Software Project Management Link?

One this page, there is text that mentions the word "project" and "project management". Does it not make better sense to reference the wiki page titled "software project management"? since it is in fact different from the general project management topic/disipline? Richlegge (talk) 01:15, 10 September 2024 (UTC)[reply]

AFAIK it already does link to that page. Dimawik (talk) 03:51, 10 September 2024 (UTC)[reply]

Low quality start

WRT the current first paragraph: "Software consists of computer programs that instruct the execution of a computer. Software can be defined broadly to include design documents, specifications, and testing suites." It's not wrong, but it's very lame IMO. The opening of an article should cover a topic in the broadest scope. But software is _much_ more than computer programs. And why define what a program is? A link is all you need. And "software can be defined broadly to include" is awkward. That sentence is not a definition. It is a list of stuff that the is definitely not software even though it's related and therefore does not belong so early in the article. Stevebroshar (talk) 12:07, 2 November 2024 (UTC)[reply]

The first sentence is sourced and is a paraphrase of its quotation. The second sentence is also sourced and references this book. However, there's no quotation. It's curious that the second sentence's popup says page 61, but the citation's description says pages 237-253. Nonetheless, I believe page 61 probably says something about software including design documents, specifications, and testing suites. If software is _much_ more than computer programs, then what sourced material do you have to further describe software? List it here for a discussion. Regarding And why define what a program is?: It seems you're referring to the second paragraph. I agree the second paragraph requires secondary research. Timhowardriley (talk) 17:34, 2 November 2024 (UTC)[reply]
After thinking about it, Software can be defined broadly to include ... testing suites." is a recursive definition. After all, testing suites are software. Timhowardriley (talk) 00:09, 3 November 2024 (UTC)[reply]