Wikipedia:Reference desk/Archives/Computing/2013 July 5

From Wikipedia, the free encyclopedia
Computing desk
< July 4 << Jun | July | Aug >> July 6 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


July 5[edit]

mouse malfunction?[edit]

A lot of times lately an a browser when I click to go back, it goes back two pages. I'm wondering if the mouse is sometimes sending two "clicks" instead of one. Is there a way to test the functions of a mouse? Bubba73 You talkin' to me? 14:50, 5 July 2013 (UTC)[reply]

Try a paint program; if it's somehow generating two clicks the paint program would show two blobs and not one. 87.112.233.132 (talk) 14:58, 5 July 2013 (UTC)[reply]
I don't have a paint program loaded, as far as I know. Bubba73 You talkin' to me? 15:12, 5 July 2013 (UTC)[reply]
try http://api.jquery.com/dblclick/ On the "demo", when you double click it changes color.190.60.93.218 (talk) 16:25, 5 July 2013 (UTC)[reply]
Or try a Google search: online mouse click counter. There are even games about how many times you can click. PrimeHunter (talk) 16:32, 5 July 2013 (UTC)[reply]
But that doesn't tells if he has clicked or doubleclicked, also on Windows at Control Panel>Mouse you can modify the time limit on where to send a doubleclick. 190.60.93.218 (talk) 16:41, 5 July 2013 (UTC)[reply]

OK, I tried that link above and sometimes it is doing a double click. Then I went to the control panel/mouse and set the double-click speed all the way "fast". I clicked slowly, and sometimes it took it as a double click, about one out of 5 to 15 times. So it must be either the mouse going bad (it is a good Logitec but several years old) or maybe some malicious software. Bubba73 You talkin' to me? 16:57, 5 July 2013 (UTC)[reply]

This seems to suggest it might be a messed up microswitch; though this appears to be a common problem amongst Logitec users. Try plugging it into a different PC and see if the problem persists. Though you may have to end up replacing it. --Yellow1996 (talk) 17:45, 5 July 2013 (UTC)[reply]
Resolved
I went ahead and bought a new mouse a short time ago, but I haven't started using it yet. Bubba73 You talkin' to me? 20:58, 5 July 2013 (UTC)[reply]
The new one is working fine, so that is what the problem was. Bubba73 You talkin' to me? 22:30, 5 July 2013 (UTC)[reply]

Can computers/programs/algorithms/functions explain or create other functions or algorithms?[edit]

Is it possible that computers can create or explain functions? Like a normal human (programmer) does it all the time, Humans can do many things like from writing, drawing (abstract), etc... How can a computer do it? 190.60.93.218 (talk) 16:19, 5 July 2013 (UTC)[reply]

Synthesizing a new algorithm is a common process. This is sometimes lumped under the blanket-term polymorphic code - program code that modifies itself. There are many approaches. Among the most common techniques are genetic algorithms that try tiny modifications to a known, working algorithm; and gradually, the program evolves into an entirely new algorithm. The hard problem is not creating new executable programs - even a simple pseudorandom number-generator can easily spit out a random series of instructions! The difficult challenge is determining whether the new algorithm has accomplished a useful task. That problem is related to the halting problem; and it is also related to the discipline of optimization and classification. Some-how, the master control program needs to determine whether a newly-created algorithm falls into the category of "working" or "not working," which is a stickier problem than it seems at first glance.
"Explaining" an algorithm - in a way that a human can easily understand - is a challenge of natural language processing and semantic processing. This is a very new field - it is on the edge of very new research problems - so there are not really any currently-available tools that work out-of-the-box. Nimur (talk) 16:50, 5 July 2013 (UTC)[reply]
Note that "explain functions" is what a large part of machine learning is concerned with, i.e. finding a model that reproduces a given samples as exactly as possible. See e.g. computational learning theory for the more theoretical part of this. --Stephan Schulz (talk) 18:45, 5 July 2013 (UTC)[reply]
There are many programs that are designed to generate code, usually at a low level. For instance, a program that generates code to have a nice procedure to insert a record in a database while taking care of many things that are very boring to a programmer, like checking if someone tries to hack the system. The programmer would know exactly what the generated code would look like, it just saves a lot of typing and tiny but hard to find errors. Much cooler is it when the programmer doesn't know how a particular problem is solved. A compiler might be smart enough to think "You wrote 'if a=0 then a=1', but that will never happen so I'll just ignore that you wrote that". A much better example where the computer outsmarts the programmer is when you ask a database "give me all people living in Colorado, ordered by telephone number, who are actors listed on IMDB". Most modern databases don't start by first looking for all people in Colorado, then order all of those by telephone number, then removing every person that is not listed on IMDB. They make a "plan" and would for instance decide that, since there are not that many actors on IMDB, they should sort the names in IMDB, look up those names in the phone book of Colorado (which is much faster than matching all people in Colorado one by one. Such a phone book is called an Index), and after that sort just a short list by telephone number. While many people have thought about the ways such a plan should be made, the actual plan is completely dependent on the availability of an index, the number of people on IMDB, etc. There are even functions in databases where you can ask "how did you get these results" and "what other indexes would you like next time". I think that's where you can say the algorithm was really invented by the program instead of a human. (I think indexes will not even be created by people in the future, and databases won't "start searching" but will be "pushing" new facts they think might be interesting instead of having to be asked, but I'll keep the dreaming of a perfect database to myself :)) I don't think a computer would come up with a new sorting algorithm like Quicksort very soon if ever. I do think that the wisdom that a neural network develops while learning from looking at millions of tax forms or flight data recorders will at some point be completely automatically distilled into much simpler algorithms that are right 99% of the time, which is quite similar to how humans develop simple algorithms. Joepnl (talk) 00:51, 6 July 2013 (UTC)[reply]

The purpose of Bitcoin mining?[edit]

Can someone explain to me the purpose of Bitcoin mining? It's my understanding it's just hashing busywork. Are the hashes that mining generates have any purpose? --Navstar (talk) 19:26, 5 July 2013 (UTC)[reply]

Are you asking why individual people use their computers to do mining, or why the bitcoin system involves a mining component? They are quite different questions. Looie496 (talk) 20:52, 5 July 2013 (UTC)[reply]
The hashing is just busywork. See Proof-of-work system. People mine bitcoin for the same reason people mine gold, hence the name "mining". (Gold does have some uses, unlike bitcoin, but mainly it's valued because of its scarcity.) -- BenRG 00:58, 6 July 2013 (UTC)
Until someone discovers how to generate tones (or arrays and arrays) of BitCoins with a couple of mouse-clicks and forget about scarcity. OsmanRF34 (talk) 10:47, 7 July 2013 (UTC)[reply]
Bitcoin seems to be well designed cryptographically, so that's about as unlikely as someone figuring out how to cheaply turn lead into gold. Cryptographic attacks would be just as devastating to conventional currencies, since banks rely on cryptography to ensure confidentiality and integrity of transactions. Also, the number of bitcoins is fixed at ~21,000,000, and about half of those have been found already. If someone found the other half tomorrow, it might cause a catastrophic loss of confidence but it wouldn't intrinsically destroy the value of the existing coins. -- BenRG 22:39, 7 July 2013 (UTC)
Actually there's a subtle difference between Osman's worry about creating tons of bitcoins and Ben's comment about cryptography. The creation aspect of bitcoin would require processing sha-256 sums much faster, or reversing them, both of which are relatively unrelated to breaking ECC public key signatures. The latter would allow one to spend other's coins. The former would allow for creating lots of new coins (which of course would be quickly tuned back by the protocol because it adjusts to the mining rate). Shadowjams (talk) 01:10, 9 July 2013 (UTC)[reply]

MMO game Creating[edit]

....I Want To create an MMo Game i need to know just a few things....

1)Do i Need to be A perfect programmer to do this. or I simply can use many programs to make a Massive Game at last.

2)if i will use many different programs to create the game and then integrate/combine the results together. Example :

  • using a program to create a map.
  • using another program to design characters.

Then integrate the results to get eventually a Good Game. That will work or there is nothing like that at all???

3) If that works it will be able to be added to the other programs to make it MMO.

thanks Note:what i'am talking about may make no sense at all and that maybe because i don't see the whole thing clear so if that true....perhaps...you can give me some more explanation that will be really appreciated. thanks again

A MMORPG is a giant undertaking, and it's usually the work of dozens of people. 3D models for things like buildings and characters are often done in programs like Autodesk Maya, but mostly everything else has to be created by the development team. Maps are usually in a format that's peculiar to that game, so the team ends up developing its own map and scenario editing software. Sometimes you might use an off-the-shelf engine (from Unreal to Unity) or develop your own (a professional 3d engine is literally years of work). There's lots of work for programmers to do (network, game, graphics, tools, etc.), and not much of this can be bought off the shelf. MMORPGs are probably the biggest undertakings in game development, one that gets studios with lots of money and talented people into terrible trouble. I'd advise anyone starting out in game development to begin with small projects like flash games or iOS/Android game apps - even doing a decent job on a single player Android puzzle platform could take a talented person a year of work. -- Finlay McWalterTalk 23:15, 5 July 2013 (UTC)[reply]
What offers a gentle introduction to the programming side is an LPMud. Being text-based, it does not need all the artwork and deep multimedia frameworks. Also, it's more fun ;-). --Stephan Schulz (talk) 23:43, 5 July 2013 (UTC)[reply]
Yeah, you wouldn't have to be an expert programmer per se (you could just be the director of the project) and in that case you would need to hire some people who are. Either way you'll need a big team in order to create an MMO, so I third Finlay's suggestion that you start out small and work your way up. As a side-note, another good 3d model program I've worked with is 3ds Max, though I would reccomend Maya if you're starting out because (IMO) it is a little easier to get into. There are great tutorials available online for these sorts of tools. Good luck! --Yellow1996 (talk) 01:13, 6 July 2013 (UTC)[reply]