Welcome edit

Hello and welcome to Wikipedia! Thank you for your contributions. I hope you like the place and decide to stay. Here are a few good links for newcomers:

I hope you enjoy editing here and being a Wikipedian! Please sign your name on talk pages using four tildes (~~~~); this will automatically produce your name and the date. If you need help, check out Wikipedia:Where to ask a question, ask me on my talk page, or place {{helpme}} on your talk page and someone will show up shortly to answer your questions. Again, welcome! 


Be careful when stripping articles of inappropriate bolding and duplicate links. I have reversed some of your edits. In particular, bold has more uses than you think. As you know, the article title appears in bold the first time it occurs in the body of the article. What you don't seem to realize is that so does any other term that redirects to that article. So, for example, in mirage "inferior mirage", "desert mirage", etc. all appear in bold because those terms redirect to mirage. The 7 in refraction was bolded because it is standard practice in physics bibliography (and on Wikipedia's physics articles) to print the volume number of a journal in boldface. There are also some cases where a duplicate link is appropriate.

Do not remove nonbreaking space characters (& nbsp;) between values and units. These display as a space, but keep the number and its units from being separated by a line break. (eg. 8 km)--Srleffler 12:17, 18 October 2006 (UTC)Reply

I appreciate the help, but what you are saying disagrees with the Manual of Style. From what I understand, the MoS was agreed upon by many editors over a long period of time. I appreciate your concern about physics bibliographys, but is the encyclopedia subordinate to physics or is physics subordinate to the entire encyclopedia? Since one of the main goals of the encyclopedia is to be consistent in look and feel, it occurs to me that you should probably be addressing these concerns in the Manual of Style rather than in a discussion with me. If the Manual of Style agrees with you, then it means that all the other editors (more or less) agree with you. It would make things a lot easier for everyone involved not to have conflicting sets of rules to go by. On the flip-side of that, if every subordinate field of interest from physics to religion had a different manner of text formatting, then there wouldn't be any reason to have a Manual of Style at all. Metrax 16:42, 18 October 2006 (UTC)Reply
Actually, the convention of printing the journal volume number in bold is part of Wikipedia's "house style". It is implemented in the very widely used {{cite journal}} template, for example. This is probably specified in another part of the MoS. Details like bibliographic formatting tend to have their own style guide pages.
I added redirect names to the list at MOS:BOLD. I have no doubt that this change will "stick". This has been part of Wikipedia's house style for some time.
The thing to understand is that the MoS attempts to describe the "house style" that has arisen organically over time, by consensus of Wikipedia's editors. There are cases like this, where the description at MoS doesn't completely capture the full picture. Anyway, welcome again. It's nice to see another editor with an interest in typography and style.--Srleffler 17:01, 18 October 2006 (UTC)Reply
PS. The use of bold for alternate titles is covered at Wikipedia:Manual of Style#Article titles.

Good job edit

  The Computing Contributor Barnstar
For your effort in bringing geniality to the discussion. Timhowardriley 17:01, 18 October 2007 (UTC)Reply

Computer Programs changing state edit

What do you mean when you say that computer programs change the state of the computer? I'm asking the question from the viewpoint that 1) states occur at an instant in time, 2) states transition to another state because an event occurred, and 3) states have names. Timhowardriley 16:34, 22 October 2007 (UTC)Reply

All instructions require time in order to be effective. Computers change states in accordance with a "clock". The clock is not a clock with respect to any known time, however, it is simply a frequency that vibrates back and forth X number of times per T quantity of time. It doesn't matter so much what any particular state is called, only that a state is different than the former. In a modern CPU, there is a register known as the IP register (instruction pointer), on a Universal Turing machine there is a Head. These are analogous to eachother. The only requirement of a state change in either is that this pointer change position. The data underneath the Head can very well be the same as the prior state, just as one instruction can certainly be followed by another that is the same. It is instructions that change the state of a computer, and likewise, since computer programs are one or more instructions, even the simplest single instruction computer program changes the state of a computer. Metrax 21:48, 22 October 2007 (UTC)Reply

Computational method edit

Regarding your example:

void main(void) {
register unsigned int a,b,c;
    do {
      a=b;
      c^=c;
    } while (!(c));
}

This is a computer program based upon Knuth's definition because it is an algorithm that does not end — a computational method. I noticed a violation of Knuth's definition of computer program when I consider a computer program not written in a programming language. (I understand that you believe you cannot reverse Knuth's subject and predicate.) That realization dawned on me when I thought of Eniac. Timhowardriley 19:40, 22 October 2007 (UTC)Reply

There are a few things missing in the above computer program that distinctly seperate it from being an algorithm. For one, it does not have a known set of input; there is no initially known state. Secondly, all algorithms, by definition, solve a problem, and the above program does not. All algorithms terminate. The above program will never terminate. So, basically, the above computer program has neither a well-defined beginning state, nor any end-state. Neither does it calculate anything; it is not a computational method. At best, mathematically, it could be said to represent two axioms. One, the identity axiom, and the other the zero predicate axiom. However, neither of these two axioms are combined in anyway whatsoever, they simply exist, i.e. there isn't any computation. The program basically does nothing with nothing forever. Metrax 21:36, 22 October 2007 (UTC)Reply
Knuth's book says algorithms don't require any inputs, and the article is using Knuth's definition of computational method, which doesn't have to end. Yes, the example above doesn't have an initial state and it doesn't solve a problem. So it's technically not a computational method because it's nonsense (no offense). My response to these minor exceptions is to let them go for the sake of collaboration. Maybe a footnote? My bigger concern is the point you addressed that a computer program need not be written in a programming language. How do you define that!? Timhowardriley 21:53, 22 October 2007 (UTC)Reply
The problem with your approach is that you are missing the little door that leads to simplicity and opting to look around for doors that cannot be found. Nonsense (no offense taken) is not exactly true, it DOES make sense, and THAT is the point. If it was not composed of well-defined instructions then it would be nonsense. That a compiler can and will interpret it and turn it into one or more instructions PROVES that it makes "sense". It is a group of instructions, not an algorithm. From the perspective of a machine, rather than your own perspective, there isn't any difference between a program or an algorithm. A machine DOES NOT KNOW the difference; you do. A machine simply follows instructions robotically, without any care even for its own "safety", i.e., it will follow the instructions regardless of what state will come about upon execution. It does not FORESEE what will come about as a result of its execution. It hasn't any sort of "thinking" capability whatsoever. It is: a machine. The intellect that rides upon groups of instructions like a modulated wave, manipulates INFORMATION. The machine itself, however, only handles data. Do you see the difference? In regard to programs unwritten, you asked How do you define that!?. Simple, a computer program is one or more instructions. The definition does not need to try and categorize the various types of computer programs, it only needs to apply to all of them. And computer programs that are algorithms are only a subset of the whole. Define the whole. THEN, as you say, expand on the various branches of discrimination. A computer program is one or more instructions. Does that apply to computer programs that are algorithms? yes it does! Does that apply to computer programs that are not written in languages? Yes it does! Does that apply to computer programs like the above written-language non-algorithm? Yes it does! Does it apply to TV programs? No it does not! Great! See what I mean? Metrax 01:20, 23 October 2007 (UTC)Reply
Yes I do. It seems like Knuth's ambiguity was intentional. Timhowardriley 16:36, 23 October 2007 (UTC)Reply
Yes it does, in a way, and trust that I do see where you are coming from. On the other hand, he is talking about a language, not a computer, and languages do not necessitate computers to exist. See my comments below. Are you aware that computer languages existed before computers? Metrax 16:42, 23 October 2007 (UTC)Reply

Swapping Knuth's subject and predicate edit

Knuth's definition is, "An expression of a computational method in a computer language is called a program." With the subject and predicate swapped we have, "A program is an expression of a computational method in a computer language." This is logically equivalent, only incomplete. A computer program can also be something else. As an analogy, a canine that barks is called a dog. A dog is also a domesticated animal. Timhowardriley 19:50, 22 October 2007 (UTC)Reply

You haven't provided any logical reason to swap the subject and predicate. Also, it is only your own opinion that Knuth meant "computer program" other than simply "program" as he stated. See "The Anatomy of Programming Languages" -- Alice E. Fischer pg. 15. It is clear that she intends the meaning of "program" as a more general term with wider usage than "computer program". The term "computer program" is specifically intended to be a subset of "all programs". Metrax 21:26, 22 October 2007 (UTC)Reply
The reason to swap the subject and predicate is to begin the sentence with "A computer program is ..." (Is that what you mean? Or have I not made my point above well enough?) Additionally, I also pondered your observation that Knuth left off the word "computer". But only after I dissected Knuth's definition did I realize it's elegance, and it could only be a computer program. The book is called, "The Art of Computer Programming", so I feel confident in my opinion. And if it's not computer programs, then what kind of program could it be? A handbill at the theater? Timhowardriley 22:09, 22 October 2007 (UTC)Reply
Well, yes, that is YOUR reason, but it is not what Knuth said. About the title of the book, you are making an inference that wasn't necessarily implied. Does Knuth in his book flat out state in his foreword or prefix or in some section on "How to read this book" that the word program should invariably be construed to mean the same as computer program? I think not. What I meant about a reason for swapping subject and predicate is that logically speaking, you do not have any supporting statements of Knuth's by which to make such a swap. I understand YOUR reason to make the swap, but you are trying to fit a square peg into a round hole. It CAN be done. A square peg CAN be forced into a round hole. Regarding your question, what kind of program could it be, and according to the previously mentioned book by Alice E. Fischer, "A program is a model of some process in the real or mathematical world." Note that her book is entitled "The Anatomy of Programming Languages". She does not define program to be the same as computer program, on the contrary, she defines program as a description of actions performed on some real or abstract machine. So you see, the superset "program" may include "computer program" but we should be careful not to infer that an author meant one opposed to the other simply because there is a close relationship in topic matter. Metrax 01:32, 23 October 2007 (UTC)Reply

Hope it sticks edit

If this version of the introduction sticks, then I'll rest assured that the article no longer sucks. Timhowardriley 23:16, 22 October 2007 (UTC)Reply

Great job edit

I think you did a great job with the computer program article. The book you cited was the same book as my hardware class, even the same edition. I see that a computer program can be explained more specifically from the hardware level (from the inside out). However, I would hope you would add back some of the previous article's contents regarding a computer program being described from the algorithm level (from the outside in). Regarding Knuth: he wrote a great definition for algorithms, setting the foundation of the rest of his treatise. I just wish he wasn't so ambiguous with the definition of the subject of the title of his work. Timhowardriley 16:24, 23 October 2007 (UTC)Reply

Thank you for the compliment. You mention "hope you would add back some of the previous article's contents regarding a computer program being described from the algorithm level". You should note that it was not my edit that removed it. My best advice would be to stem toward such a thing since there is an intersection between computer programs and algorithms. But from the perspective of computer program as the root of the article, you will need to lead the article there from a pertinent branch of flow and reasoning. I cannot really argue with the removal of the section as it stood; I do appreciate where the other editor is coming from. I don't, however agree that it should be removed altogether, though, but without a sound segue to reasonably include it, it would be more apt to belong to the article on algorithms. Regarding the ambiguity you perceive, again, I really don't believe he was anything but distinctly specific. There are quite a few other books on the various topics and there are actually three or four related fields, all of which use the word program, all of which intersect with computer program, but also, all of which consider program within their own domain (i.e. they would exist even if computers did not exist). Of those fields, programming languages don't exactly necessitate computers according to mathematicians (think about it). For a good example of something in between, and be sure to check out the DATE, investigate "Lambda calculus". Metrax 16:39, 23 October 2007 (UTC)Reply
I now agree. Knuth's ambiguity was intentional. Timhowardriley 16:44, 23 October 2007 (UTC)Reply
To really get a feel for Knuth, read the works of his teachers. Metrax 16:48, 23 October 2007 (UTC)Reply
What really struck home was your observation that algorithms require intelligence, computer programs do not. Timhowardriley 16:54, 23 October 2007 (UTC)Reply
Don't get personal, bub, just because you know that I'm a computer program and not an algorithm is no reason to point it out in public, ya know? Metrax 17:27, 23 October 2007 (UTC)Reply

Expand on two other forms of computer program edit

Regarding the computer program introduction that says, "... be the direct result of hardware processing, or may even be manually input to the central processor of a computer." Could you expand on how hardware processing generates computer programs and the history of manual input of computer programs? Timhowardriley 19:10, 23 October 2007 (UTC)Reply

The history of manual input? Am I really getting *that* old? Sheeesh. Well.... back in the olden days, before the moon had dirt (because dirt was still only a hypothesis), BUT, indeed after the great invention of the Backspace Key and the Cathode Ray Tube display device, or at least concurrent with that Age, a person such as you or me could simply purchase a microprocessor, plug it into a peg-board, and.... hey... that is STILL possible in case your interested... I'd suggest the Zilog Z-80 as a starter. Look it up. There's tons of things you can do with a real computer. Christmas is coming up, so, if you were in the mood, you could design a small computer to react to the wind velocity, sounds it "hears", and the amount of ambient light to display different patterns or none at all to the various colored bulbs you'll hang on its behalf around the eaves of your home. Before it's running, you'll need to manually input various parts of programs to test how it will behave once your sensors are hooked up. But, after you've finished your project and it's up and running, it will be programming itself directly as a result of its hardware. Then you can sit back and enjoy the show each evening as your neighbors gawk at your genius without any recourse at all to keep up with the state of the Joneses. If you take me seriously, be sure to buy the power supply and save yourself that entire design mess that has already been reinvented several million times by men whom are several echelons more adept at such things than either you or I will ever be. Metrax 19:48, 23 October 2007 (UTC)Reply
Very entertaining, but I meant in the article itself. Timhowardriley 20:55, 23 October 2007 (UTC)Reply
Sources first, then content. Easier to reference the sources when they're there. I'm reviewing about a dozen different books over here in that regard. In the interim, computer program is not the only article on wikipedia and besides articles, there's plenty of just regular chore things to do. Do you dab? It's fun. Like a mix between a crossword puzzle and a game of Rummy while at the same time one gets to read all sorts of articles on all sorts of topics... very educational.
See dab:
Metrax 21:12, 23 October 2007 (UTC)Reply
What I meant was the first paragraph says a computer program is A, B, and C. The second paragraph explains A, but B and C are left hanging. Moreover, B mystifying. B says that hardware processing generates computer programs. And C seems archaic. I just feel these should be explained further in the third and fourth paragraphs. Timhowardriley 22:03, 23 October 2007 (UTC)Reply
Is there a due date? What i meant by reviewing about a dozen books is re-reading them. On the average of four to seven hundred pages per book, do you suppose I could get a cup of coffee or something between chapters? I'm very much aware of the "state" of the various paragraphs and would like to back them up with some nice beefy verifiable statements and sources that are all referenced including the page numbers, dig? Are you in your fifties yet? If not, then I have less time than you. Would you mind if I enjoyed it? (grin) Metrax 00:37, 24 October 2007 (UTC)Reply
Oh and by the way, did you think I was kidding when I mentioned being around when the backspace was invented? If you weren't there, then you probably DO. My first program was written on punch cards and what you commonly press for a backspace now, back then we'd toss on the floor and start the entire line over again. I kid you not. So, are you in a hurry? (Think about it. grin) Metrax 00:41, 24 October 2007 (UTC)Reply
No, take your time. Timhowardriley 15:45, 24 October 2007 (UTC)Reply

The direct result of hardware processing edit

The image I form with the statement, "Computer programs may ... be the direct result of hardware processing" is that of firmware. Is this your intention? If so, I would like to expand on firmware within the context of computer programs. BTW, what do you think of my explanation of manual input? Timhowardriley 21:18, 25 October 2007 (UTC)Reply

Tim, you have every right, power, and authority to do with the article as you please, always have, and always will. This is a wiki. I gave you a very easy example quite early on of something sort of in-between both hardware programming and manual and I'm sort of surprised you don't remember it. Every single PC in existence has this program on it. And it is there even before any operating system or firmware is even put into place. That means there are more computers in the world with this very same program than there are computers in the world that have operating systems installed. Clearly this one program is the most important since without it being in place, no operating system or firmware could ever load. It is also not an algorithm, not stored on magnetic media, not a part of firmware, but is outright hardware. It cannot be reprogrammed and yet it is not a part of Read Only Memory. It meets every single definition of what you have frequently wanted to call "archaic" or "whitewash" or unimportant, but how can any such ideas be supported? If it is the most important, most widely used, non-algorithm in physical existence, wouldn't you think it deserved a little more credit than whitewash? Metrax 06:57, 26 October 2007 (UTC)Reply
Please ignore all of my previous usages of the word "whitewash". Whitewash was only a word I used to screw what I thought was a computer program into the old introduction. We no longer have the old introduction. I used the word archaic only to describe the manual input of computer programs, which is no longer in use, but was expanded upon in the article with the Nova 3 as an example. Yes, ROM fits the second clause of the computer program definition, so does firmware. I will use both to expand the second clause. However, I have a reservation about the word "result". Instead, I would use "cause", as in "computer programs stored in ROM cause hardware processing." Anyway, thank you for your leadership in guiding what's turning out to be a good article. Timhowardriley 16:15, 26 October 2007 (UTC)Reply

A common problem edit

Dear Wikipedist editor, I want to submit to your attention an our common problem: disruptive contributions and edit warring operated by user Derek farn (talk). This latter shows systematically a provoking behaviour and lacking of respect for other people’s work, typical of vandalism. I’ve sent this communication to many people having the same problem in order to organize a collective protest/action request directed to e.g. the Arbitration Committee or Requests for comment/User conduct (this latter procedure requires the participation of at least two users) or to the Wikipedia Community. If you agree with this initiative please contact me at this dedicated email address: clipeaster-1971 AT yahoo DOT com. In order to avoid creating of a forum section dedicated to Derek farn I suggest you to delete this communication once you’ve read it and, then, be in contact via email. Any suggestion are welcomed. I look forward to hearing from you. Best regards, Structuralgeol (talk) 18:01, 15 July 2011 (UTC).Reply

As another user pointed out to me that suggesting to be in contact outside wikipedia is not a correct way, for transparency reasons, so I conclude that we need to correspond via talk page. Best regards, Structuralgeol (talk) 02:31, 16 July 2011 (UTC).Reply

Disambiguation link fixing one-day contest edit

I have decided to put on a mini-contest within the November 2013 monthly disambiguation contest, on Saturday, November 23 (UTC). I will personally give a $20 Amazon.com gift card to the disambiguator who fixes the most links on that server-day (see the project page for details on scoring points). Since we are not geared up to do an automated count for that day, at 00:00, 23 November 2013 (UTC) (which is 7:00 PM on November 22, EST), I'll take a screenshot of the project page leaderboard. I will presume that anyone who is not already listed on the leaderboard has precisely nine edits. At 01:00, 24 November 2013 (UTC) (8:00 PM on November 23, EST), I'll take a screenshot of the leaderboard at that time (the extra hour is to give the board time to update), and I will determine from that who our winner is. I will credit links fixed by turning a WP:DABCONCEPT page into an article, but you'll have to let me know me that you did so. Here's to a fun contest. Note that according to the Daily Disambig, we currently have under 256,000 disambiguation links to be fixed. If everyone in the disambiguation link fixers category were to fix 500 links, we would have them all done - so aim high! Cheers! bd2412 T 03:09, 18 November 2013 (UTC)Reply

ArbCom elections are now open! edit

Hi,
You appear to be eligible to vote in the current Arbitration Committee election. The Arbitration Committee is the panel of editors responsible for conducting the Wikipedia arbitration process. It has the authority to enact binding solutions for disputes between editors, primarily related to serious behavioural issues that the community has been unable to resolve. This includes the ability to impose site bans, topic bans, editing restrictions, and other measures needed to maintain our editing environment. The arbitration policy describes the Committee's roles and responsibilities in greater detail. If you wish to participate, you are welcome to review the candidates' statements and submit your choices on the voting page. For the Election committee, MediaWiki message delivery (talk) 16:18, 23 November 2015 (UTC)Reply