Wikipedia:Reference desk/Archives/Computing/2013 November 23

= November 23 =

cookies
i need a way to delete all but one cookie on Firefox 23.0.0.1, thanks, 70.114.242.17 (talk) 06:33, 23 November 2013 (UTC)


 * Instruction are here courtesy Aspro. Just select all cookies then unselect the one you want to keep. You could also keep a backup of the one you want to keep.--Shantavira|feed me 09:33, 23 November 2013 (UTC)

Functional programming in Python
I like to do functional programming in Python.
 * Recursively-written functions
 * are the functional way of doing things
 * however,
 * always causes the exception RuntimeError: maximum recursion depth exceeded in comparison
 * Loop-using functions
 * run without the recursion error
 * however,
 * are imperative (having mutable state).

Is there a way to write functions that neither causes errors nor is imperative? Actually, using the function product in the definition of the function factorial for example appears to be one way, however the product function must be written in either of the two ways above.

--Czech is Cyrillized (talk) 06:44, 23 November 2013 (UTC)


 * Python isn't properly tail-recursive in the functional programming sense, and that seems unlikely to change in the foreseeable future, because a fundamental feature of Python's design is that function calls show up in tracebacks, and tail call elimination would break that. You can get around this with a trampoline, but it's not very pretty. There may be a way around it in Stackless Python, which I've never used. -- BenRG (talk) 07:04, 23 November 2013 (UTC)
 * Using map or list comprehensions instead of iterations is quite functional. Also, loops are not the problem - using mutable variables is. --Stephan Schulz (talk) 23:42, 23 November 2013 (UTC)

software
Hi! I'm a new user of this wikipedia reference desk. I'm searching for a software in which I can put beard and mustache on a person's photo. Would you help me. — Preceding unsigned comment added by 106.218.47.240 (talk) 10:20, 23 November 2013 (UTC)


 * Gimp ! It is a 'free' Image Manipulation Program. ---Aspro (talk) 15:59, 23 November 2013 (UTC)

Would you like to give address to a good site to download it. — Preceding unsigned comment added by 106.218.120.48 (talk) 00:15, 25 November 2013 (UTC)
 * Good general advice is to only ever download stuff from the official site. Aspro provided a link for Gimp, above.  Astronaut (talk) 13:00, 25 November 2013 (UTC)
 * We have an article about GIMP and the official site for downloads, tutorials, etc is the easy-to-remember http://gimp.org SteveBaker (talk) 20:47, 25 November 2013 (UTC)

Opening an arrangement of windows with one click (or keyboard shortcut)
When I am coding I always use the same arrangements of windows - chrome on the left (for looking things up), my text editor top right, and powershell bottom right. This is annoying to set up manually each time. I have to open three programs, snap chrome to the left, then manually arrange my text editor and powershell. That's a total of three clicks, a drag and some futzing around to manually resize windows - is there a way of saving this arrangement of windows so that the whole thing would appear with a single click? I'm using Windows 7. Equisetum (talk &#124; contributions) 11:08, 23 November 2013 (UTC)
 * We are making progress! I can (obviously) open the programs with a batch file, it was the moving and resizing that was giving me trouble. I found this utility called NirCmd that claims to be able to move and resize windows from the command line (and hence, I imagine, from a batch file). I now have a followup question - is there any way I can find the size and position of a currently open window - to save me lots of tedious trial and error with parameters to "nircmd win move" and "nircmd win setsize"? Alternatively, if anyone has a less ugly and hackish solution to this I would still be interested (with my idea if I changed monitors I'd probably have to recode my script - urgh). Equisetum (talk &#124; contributions) 11:37, 23 November 2013 (UTC)


 * NirSoft WinExplorer will tell you various information about open windows, including the position and size.


 * I found a PCWorld review of various window managers: Crisp up your desktop with a window manager utility. I've never used any of them, but you might explore if they're useful to you. Mosaico looks promising but it costs money. (The review says $10, but the site's buy page says $19.95 or $15.96 with a limited-time 20% off code.) According to the review, Mosaico can


 * "create different desktop snapshots for various situations. Once you're happy with the way your windows are laid out, click the snapshot button to save the arrangement. You can save eight different desktop snapshots and restore them easily from the program's snapshot browser. When restoring a snapshot, Mosaico will open relevant programs if they're closed, and will minimize others that aren't part of the snapshot. It can't, however, open specific documents."


 * You might search for window manager to look for similar programs. --Bavi H (talk) 20:12, 23 November 2013 (UTC)
 * WinExplorer sounds like exactly what I need, I'll check it out. Thanks for the window manager search term as well - I suspect the difficulty with these is that I would need them to work seamlessly with Dexpot (a virtual desktop tool - which makes up for the inexplicable lack of this feature in Windows compared to every other major desktop environment), but I'll try them out if I can't hack somehting together with NirCmd and WinExplorer. Equisetum (talk &#124; contributions) 18:59, 24 November 2013 (UTC)

KitKat differences
Dear Wikipedians:

I have attached a screenshot of two KitKat installations, one on Nexus 5 (left) and the other one on Nexus 4 (right). I have noticed that the transparency of background does not extend to the bottom three buttons on Nexus 4 whereas it does on Nexus 5, what gives?

Thanks,

L33th4x0r (talk) 20:04, 23 November 2013 (UTC)


 * I don't think the one on the right is KitKat. Aside from the white icons in the status bar it looks like Jelly Bean or ICS. I'm not convinced it's a Nexus 4 either, since it looks like it was rendered at a lower resolution, not downsampled, but I may be wrong about that. -- BenRG (talk) 06:54, 24 November 2013 (UTC)
 * As has been widely discussed in various places outside wikipedia (and I would suspect is mentioned somewhere in a variety of wikipedia articles, Google Experience Launcher is exclusive to the Nexus 5. It seems a bit unclear whether the translucency is part of this or not since for some reason the Moto X, did get it but either way it didn't make it to any of the other Nexus devices. I presume Cyanogenmod and other customs firmwares will make up for this shortcoming if it matters to you. Nil Einne (talk) 13:40, 24 November 2013 (UTC)


 * Thank you all for your helpful information, I think it most likely is the Google Experience Launcher. Thanks, 216.58.91.254 (talk) 14:18, 24 November 2013 (UTC)

A private server
I'm wondering if it is possible to set up a server that cannot be traced back to the owner?


 * What ownership do you want over it? And please don't rely on "several encrypted hops", because that only makes the NSA curious. Hcobb (talk) 20:20, 23 November 2013 (UTC)


 * Maybe you would like to look and read threw  Tor (anonymity network)--Aspro (talk) 22:26, 23 November 2013 (UTC)

What are "several encrypted hops?" And what do you mean by "what kind of ownership?" You use strange terminology I don't understand. Let me try to be more specific I guess. I want to have a domain and set up a website in such a way that nobody will be able to figure out that I did it. Is it clear or further explanations are needed?

What is Thor? It seems to be a video game. I don't do them. Never played any. Is it here as a joke or what?


 * Are you a wind up monkey? Its TOR T-O-R --Aspro (talk) 01:05, 24 November 2013 (UTC)

OK, I've got it. I am dumb! Much appreciate the pointer. Many thanks. Is it the only way? — Preceding unsigned comment added by 174.52.14.15 (talk) 03:17, 24 November 2013


 * Please remember to sign your posts by adding " ~ " at the end. Thanks ツ Jenova   20  (email) 13:58, 24 November 2013 (UTC)


 * It depends on what you mean by "cannot be traced". Clearly, for someone to send a command to your server to get data - and for the data to get back again, there has to be a means to trace it...otherwise how did the data get to your server in the first place?!


 * So what you are dependant on is either (a) making it too difficult and tedious to do the tracing (which might stop your mom from finding it - but not the NSA) - or (b) find someone to route the data through who promises not to tell anyone about the part of the journey from their computers to yours. (b) will work - but only so long as you trust the intermediary not to give up that information - which might be difficult for them to guarantee if the guys in the black suits who talk to their sleeves come knocking.


 * SteveBaker (talk) 17:06, 24 November 2013 (UTC)


 * Actually, re-reading your question, you're really not asking how to prevent the server itself from being located - you're asking that the OWNERSHIP of that server can't be traced back to you. That's actually a lot easier!  Suppose, for example, you bought a cheap computer like a Raspberry Pi, added a WiFi dongle to it, loaded its memory card with server stack and your website.  Powered it from a small box of batteries and leave it hidden in a waterproof box and bolted to a light pole near a local fast-food place, hotel of coffee-shop that offers free Internet access.  You could disguise it as some kind of electrical box that people routinely ignore.  Now you have a server that is (essentially) impossible to trace back to you.  So long as nobody sees you planting it and you take care to avoid leaving fingerprints or DNA on the thing, you're probably never going to be connected back as the "owner".  If you don't care too much about being strictly legal - you could probably even wire it up to steal electricity from the light pole.  Of course, once it's set up, you'd want to be careful never to access it yourself - or else there is the potential for your packets to and from the thing to be logged...but that's a different problem.  The box itself would be relatively easy to trace back to its location - but if the bad guys get to it, putting up a replacement would be fairly easy.  SteveBaker (talk) 17:15, 24 November 2013 (UTC)

SteveBaker is, as always, the most brilliant! Sorry I don't mean to put others down. The second discourse (humoristic I believe) is of course somewhat off the scale, it is not something I will ever do. Actually I think, my design (if ever implemented) will be entirely legal but it might rattle some feathers. So, the public backlash is what on my mind. I don't care about the NSA. I am on their side. 174.52.14.15 (talk) 17:49, 24 November 2013 (UTC)


 * Although Steve is probably right in a theoretical sense, the usual approach is to hack into a machine owned by some innocent victim and set it up as a server. If done cleverly on a machine that the owner doesn't pay much attention to, the result can stay up for a substantial period of time and the process can be extremely difficult to trace -- especially if the hacker works through multiple links involving several different countries. Looie496 (talk) 18:02, 24 November 2013 (UTC)


 * Without physical access to a machine, it would be hard to hack into someone's machine, set up a server there and not leave any footprints along the way - it's also illegal, and we're not going to advocate that! My approach is more or less legal - it might be illegal to attach a device to a light pole - but I'm sure you could get creative and find a legal solution...you'd also want to be careful to read the terms and conditions of the free WiFi provider - but, again, I'm sure that's surmountable.  The result would be perfect anonymity. SteveBaker (talk) 23:39, 24 November 2013 (UTC)

Looie is definitely another bright character around here. Now I will have to post a question: How to become a hacker? Oh' my! You guys are dragging me into a dark (Thor) world!!! :-)
 * The problem with being a black-hat hacker is that unless you're the best of the best (and perhaps, even if you are), you're quite vulnerable to people figuring out who you are. Lots of hackers have gotten caught over the year...even fairly accomplished ones.  So taking that route is a bad idea if anonymity is your goal.
 * If your goal is just to prevent the ire of ordinary people from reaching you, it's probably enough to protect your WHOIS record and choose a web service provider who'll respect your privacy. Situating your server in a hard-to-reach country with a sketchy law enforcement record against internet "criminals" might also help...Nigeria comes to mind.  But it's hard to generalize. SteveBaker (talk) 23:39, 24 November 2013 (UTC)

Well, I keep thinking of what Looie said. It sounds like an attractive idea in principle but is it applicable to my goal? Can it work as a server? I am under the impression it is mostly for people who want to broadcast let's say advertisements or whatnot, in other words to send out junk mail. Am I correct in that? Thanks, 174.52.14.15 (talk) 23:31, 24 November 2013 (UTC)


 * It can definitely work as a server. All that you need to do is cause a program to run in the background on the target computer, which will receive requests from people trying to access the server, and send the right data, without anything obvious happening on the infected computer. In principle, this is similar to the operation of a node in a botnet.  O the other hand, while Steve's idea is questionably legal but mostly untracable, Looie's is illegal and may result in people with the expertise to trace it back to you (i.e. law enforcement) getting involved. MChesterMC (talk) 10:23, 25 November 2013 (UTC)

Thanks very much who contributed their expertise. It's been an eye opener for me. Sure I want to stay on the right side of the law, thus the TOR idea seems to be the only way to go. Thanks again.174.52.14.15 (talk) 01:44, 26 November 2013 (UTC)