Wikipedia:Reference desk/Archives/Computing/2014 December 20

From Wikipedia, the free encyclopedia
Computing desk
< December 19 << Nov | December | Jan >> December 21 >
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.


December 20[edit]

yellow spots on pages[edit]

I have a color laser jet 3600 dn printer. It does not end calibration. If I skip calibrating, and print pages, the extra yellow spots appears on pages on different locations, even if I m printing black and white page. The magnetic roller of yellow tonner contains some visible yellow ink powder on it. I have cleaned magnetic roller of yellow tonner but again it turned to previous condition. Is there any method to bypass yellow tonner or by removing yellow tonner , can I print black and white pages. mono printing option does not exist in this printer.182.187.79.228 (talk) 00:49, 20 December 2014 (UTC)[reply]

What's the matter. Don't you like the United States of America being able to track all your documents back to you? See here for an explanation of the yellow dots: Electronic Frontier Foundation - Is Your Printer Spying On You?--Aspro (talk) 01:05, 20 December 2014 (UTC)[reply]
From his description of yellow toner stuck on the roller, it sounds like a printer defect, not spying. So, the only surefire way to eliminate yellow dots is to eliminate the yellow toner and clean the roller again. Black and white pics should look good then. StuRat (talk) 02:22, 20 December 2014 (UTC)[reply]
Printer steganography is our article on this. If you illuminate the page with blue light, then the yellow spots should be black, which may make them more visible. 13:57, 20 December 2014 (UTC)
The 3600 series has certainly had its run of issues. For the endless calibration issue see these discussions: [1][2][3]. --  Gadget850 talk 02:03, 21 December 2014 (UTC)[reply]

It is not spying because dots are big as size of coin, but not of circular shape. It is the defect of tonner or printer.39.35.197.26 (talk) 20:43, 21 December 2014 (UTC)[reply]

The watermarks would be nowhere as large as this appears to be. --  Gadget850 talk 21:25, 21 December 2014 (UTC)[reply]
I had a similar problem with the yellow cartridge on a different HP model. I just replaced the cartridge (and emptied out the yellow toner to refill a good cartridge). If you don't need to print in colour, you could just empty out the toner from the faulty cartridge and print some solid yellow pages just to get rid of any residue, then use override to ignore the toner empty message. The printer should then allow printing in B&W (plus cyan and magenta if you wish) until you get a new yellow cartridge. Alternatively, I think you can fool the printer by moving the yellow chip to an old empty cartridge (any colour) and using override, but I haven't tried it with your model of printer. Dbfirs 21:34, 21 December 2014 (UTC)[reply]

Why are interpreted languages not compiled right away?[edit]

When I get a script written in an interpreted language and I'll run it regularly (not just javascript in my browser, that runs right away and only once), why wait until I run it to interpret it? Why not just interpret it right away and get everything faster at run time? I get that a Java program is distributed as Java bytecode because the developers don't know where it will run next. But once I have this Java bytecode and a Java VM, couldn't I compile easily this code into machine code?--Noopolo (talk) 11:56, 20 December 2014 (UTC)[reply]

Compilation takes time. So while you might get more speed in actually doing things, you also get more startup overhead. For small jobs, that's not worth it. Also, incremental compilation is not a trivial proposition, and not possible for all languages. And finally, some languages trade off a consistent and transparent data model for speed (i.e. Python basically using hashes for everything, including variable look-ups), so the gain of compilation is not as big as one would expect, since a significant amount of time is spend not on interpreting the code, but on implementing the semantics of the language. --Stephan Schulz (talk) 12:24, 20 December 2014 (UTC)[reply]
.NET applications are sometimes compiled to native code at installation time using the native image generator. GCJ can compile Java source code or jar/class files to native code. The new Android Runtime (ART) compiles at installation time. There's a whole article on this, Ahead-of-time compilation, though it needs some work. On the flip side, compiling very dynamic languages (ahead of time or just in time) can actually make them slower, because the compiled code tends to be larger than the interpreter plus byte code, and may not fit in the CPU cache as well. -- BenRG (talk) 01:31, 21 December 2014 (UTC)[reply]
It's perhaps worth noting that Oracle has lots of patents (from JavaSoft) to do with dynamic on-the-fly compilation, so MS and Google's use of ahead-of-time may be as much an artefact of their lawyers feartie-ness that they'll end up paying into Larry's yacht fund than what their engineers would do given rein. -- Finlay McWalterTalk 02:38, 21 December 2014 (UTC)[reply]
Software usually follows the Pareto principle - about 80% of the time its in the central 20% of the code. The rest is preamble and code for exceptional circumstances (which is why premature optimisation is, well, premature - because you usually don't know what that 20% is going to be until you benchmark it. Java bytecode (and I assume its fellow p-codes for .net, etc.) is a very compact coding - it's between 2 and 4 times smaller than the equivalent architecture-specific machine code (depending heavily on architecture). Code size is super important where cache is critical. So, for that unimportant 80%, compiling it to real machine code means inflating it to several times its size (at a cost of time), pushing it into the cache (and thus evicting a bunch of other stuff), running it once or a few times, and then forgetting it. Cache efficiency, much more than cpu cycle counting, is what makes most programs performant on modern architectures. So VMs like HotSpot keep bytescodes in their compact form, interpret them, and only if sections of code are executed heavily are they translated into fast, big, machine code. -- Finlay McWalterTalk 02:25, 21 December 2014 (UTC)[reply]
For an answer to the question: "Can I compile the interpreted/byte code and save the machine code on my computer?" The answer is: "Yes, you can." The issue is that the people who produce the programming language simply don't help. Use Java as an example. Sun doesn't produce a "compile this to machine code" option and they actually don't want you to do that (read the EULA). However, there are many "compile my Java program to executable machine code" programs available. The difference tends to be how legal they are. The EULA from Sun states that if you distribute your Java program, you MUST include the entire Java VM. So, if I compile my Java program to a native executable binary, I must include the entire Java VM inside the executable - a lot of bloat. There are compilers that break that license requirement and only include what it is needed to run the executable. If you are doing this on your own computer, you aren't distributing the program. So, in my very non-legal opinion, you aren't in breach of Sun's EULA. Another example could be PHP. While PHP doesn't distribute a compiler that gives you a native executable binary, there are options that do that. Some even mix it up and compile the stuff that is run a lot and leave other code to interpret. That is how Facebook's HipHop compiler used to work (I heard it has gone through a lot of changes and is now an ahead-of-time interpreter). While I agree that it is pointless to compile a program to a native executable on my computer every time I run it, that is just the way just-in-time compilers are meant to work. They figure that a few seconds compiling is worth not storing a native executable on your hard drive all the time. 199.15.144.250 (talk) 19:29, 22 December 2014 (UTC)[reply]

LIST OF INSTALLED PROGRAMS[edit]

How can I copy the contents(list) of Installed programs in Windows 7 to a text editor (eg. word/notepad)? Thank you.175.157.176.150 (talk) 12:40, 20 December 2014 (UTC)[reply]

This webpage has a good guide with pictures on how to make a text file with a list of installed software under Windows. WegianWarrior (talk) 13:15, 20 December 2014 (UTC)[reply]

Instagram "purge", will Facebook follow?[edit]

You might have heard in the news that instagram deleted millions of "fake accounts". How genuine is that? Won't then Instagram's "mother", facebook, follow suit? --112.198.79.249 (talk) 15:32, 20 December 2014 (UTC)[reply]

Facebook constantly deletes accounts that violate their terms of service. See this article from 2 years ago, for example. I think this is just business as usual. -- BenRG (talk) 01:52, 21 December 2014 (UTC)[reply]
'Sides, it'll always be a cat-and-mouse chase between social media firms and spambot operators, for as long as there are exploits and the gusto to game the system and earn revenue by any means possible. Even if they purge a thousand or so spam accounts, in an instant dozens and dozens will take their place. Blake Gripling (talk) 02:03, 21 December 2014 (UTC)[reply]

Principal download ?[edit]

A PBS pledge drive offers a "principal download" as part of the pledge package. What does "principal" (not sure of the spelling) mean in this context ? StuRat (talk) 17:51, 20 December 2014 (UTC)[reply]