Wikipedia:Reference desk/Archives/Computing/2011 April 11

= April 11 =

proxy Servers
Every time I take my Windows Vista laptop to school I have to change the proxy settings of every program to use the school proxy server, and again when I bring it home. Setting the proxy settings via internet explorer or internet settings in the control panel only works for programs that use the default IE settings, but many programs don't use them. I am looking for an easier solution. What would be great is either;
 * 1) being able to set a global proxy that ALL internet traffic MUST go via, even command line programs and programs which always try to directly connect, or
 * 2) a small forwarding proxy program which can route traffic through itself to another proxy server, which I can then set all my programs to use, for example "localhost:8080". Then, when I need to change the proxy settings I only have to change the forward proxy program to use a different server, and all the other programs will be routed to the new server too.


 * Sorry that this isn't exactly an answer to your questions, but can you not simply just use "Automatically detect settings" on the same page? I'd be very surprised if your school doesn't have this setup via either DHCP or DNS (or both) and normal home use wouldn't need a proxy so hence my mentioning this.  ZX81    talk  17:43, 11 April 2011 (UTC)
 * That only works for internet explorer and programs which get their proxy settings from internet explorer. 80.236.213.48 (talk) 18:30, 11 April 2011 (UTC)
 * Two ideas come to mind.
 * 1 Set up two users on your laptop, ZX81-home, and ZX81-school, with the correct proxy settings for each user.
 * You'll need to switch users when you change location; you might want to change Window's theme for one of the users, so you know who you're logged in as. You also need to set up a c:\Users\Shared folder, and allow both users to access this. See Vista's help on access rights (part of the right-click properties page) for the details, or ask here.
 * 2 Or, set up a local proxy. A non-caching proxy is a very simple program; I've used privoxy before. All programs are set to go to it, it will relay to your school's proxy, or go directly to the website when you are at home. Thus there is only one config to change. Make sure that only 127.0.0.1 (localhost) can access it.
 * CS Miller (talk) 21:34, 11 April 2011 (UTC)

Firefox 4: Green clockwise rotating circle means it's working; black counterclockwise "electron orbit" means it's not
Wikipedia's Firefox 4 article didn't have anything on this, or a complete list of what's different. I didn't see anything by doing a Google search.

The library where the computers have Firefox recently upgraded to Firefox 4, and the computer I usually use seems to be working much better. When the web site is coming up properly, there is a green clockwise rotating circle in the upper left part of the screen, beside the name of the site (which appears also at the very top of the screen). If the site is slow to come up, the circle rotates counterclockwise and looks like a picture of a hydrogen atom without its nucleus--in other words, an orbiting electron.

Can anyone give more specific information (and perhaps add it to the Wikipedia article) on the specific meanings of these two rotating circles? Vchimpanzee ·  talk  ·  contributions  · 17:27, 11 April 2011 (UTC)


 * Here's a reference from a Mozilla developer saying that it changes from counterclockwise to clockwise when the server starts returning data. I think the idea is that it's counterclockwise when uploading, clockwise when downloading. -- BenRG (talk) 18:44, 11 April 2011 (UTC)


 * Thanks. That's what I'm looking for. Vchimpanzee ·  talk  ·  contributions  · 19:46, 11 April 2011 (UTC)

Is the Amiga 16-bit or 32-bit?
Is the Amiga a 16-bit computer or a 32-bit computer? Pretty much every Wikipedia article about games released for the Amiga calls it a 16-bit computer, but the section Amiga claims the CPU, except for very early models, was fully capable of 32-bit addressing. I also remember having programmed in C on the Amiga, and the operating system supported 32-bit numbers natively. In my opinion, the Amiga is a 32-bit computer, but I would like further opinions. Anyway, in the Amiga's time, 8-bit computers were already obsolete and 64-bit computers were only in the future. J I P &#124; Talk 18:25, 11 April 2011 (UTC)


 * The original Commodore Amiga used a Motorola 68000 CPU, and you can read that article for as much detail as you want on the CPU. The 68000 was not capable of 32-bit addressing, though its address registers were indeed 32 bits wide; its maximum address bus size was 24-bit addressing.  It could be set to either have a 32-bit, 16-bit, or 8-bit data bus.


 * On the Macintosh, which also used the 68000, the extra 8 bits caused problems when Apple started introducing computers with the Motorola 68020 processor. At first, all 68020-powered Macs were limited to 24-bit addressing, just like the old original Macs, because the coders of a lot of Macintosh software had decided to use those extra 8 bits for data storage &mdash; including the Macintosh's memory manager, which used the bits for flags to indicate whether a handle was relocatable, or locked, or whatever.  It took several years of rewriting the Macintosh Toolbox, and bludgeoning developers over the head, to get everyone to actually use functions like HLock instead of directly setting the bits, which could cause crashes on 68020 machines.  I don't know if similar problems occurred on the Amiga but will guess that they did.  Comet Tuttle (talk) 18:50, 11 April 2011 (UTC)


 * Oops, corrected my incorrect 32-bit-wide-data-bus claim above. It had 32-bit address registers and 32-bit data registers, but had only a 16-bit wide data bus.  It would do two fetches or stores when code performed a 32-bit wide instruction like MOVE.L.  Comet Tuttle (talk) 18:54, 11 April 2011 (UTC)


 * There seems to be no rhyme or reason to the "N-bit" designations applied to video game consoles. The Genesis/Mega Drive was based on a 68000 (32-bit registers, 24-bit address space, 16-bit data bus) while the Super Nintendo was based on a 65816 (16-bit registers, 24-bit address space, 8-bit data bus), yet they were both called "16-bit". As far as I can tell the N-bit designation really referred to a historical era and not to any feature of the hardware. The Amiga competed with the consoles of that era, so, for gaming purposes, it was "16-bit". -- BenRG (talk) 19:09, 11 April 2011 (UTC)


 * From the Amiga article, they state that 32 bits had to be multiplexed to the 16 bit bus in 2 steps. This would essentially make the machine 16 bit because your data transfer width is as wide as your mainboard bottleneck. The article also states that later models had fully 32 bit architecture (dubious), which probably added to the confusion of whether it was 16 or 32 bit. I've always regarded it as a 16 bit machine as full 32 bits was unheard of at the time, and the Amiga was regarded as a high tech upgrade to the Commodore 64 which was an absolutely brilliant 8 bit home computer. I used to salivate at the Amiga's specs but could not afford one as a high school student: multi channel sound and dedicated graphics chip with 4K colours (!) and 1 whole meg (!) of addressable space and a GUI operating system. PC's of that era had only 4 crappy CGA colours and beeps for sound. Sandman30s (talk) 13:50, 12 April 2011 (UTC)


 * Sandman30s, you may have regarded the Amiga as "a high tech upgrade to the Commodore 64", but this is way, way inaccurate and this "regard" could not have been widespread. Amiga was a different architecture and a different echelon of machine.  Your description of the PCs of the time is also inaccurate because of EGA and the increasing adoption of VGA; though nobody will argue the PC had better graphics.  Comet Tuttle (talk) 16:55, 12 April 2011 (UTC)
 * Technically 'upgrade' is the wrong word but you know what I meant... the Amiga was Commodore's next generation machine originally intended to appeal to Commodore 64 users and enthusiasts but their marketing went a bit awry when they targeted business users too. I was talking about 1985... I don't know where you are from but EGA was definitely not widespread back then. VGA only came a few years later and was only widespread in the early 90's when it was better supported by games. In 1985 there was this superior (in many ways, not all) Amiga 1000 and there was a PC with CGA/mono and piezo beeps. It is one of the great pities in computing history that Commodore went bust. Sandman30s (talk) 05:43, 13 April 2011 (UTC)

Give a natural condition in which having ads would make the application faster
I would like a natural condition in any computer domain in which the inclusion of ads would as a natural result of algorithms, protocols, etc, result in an organic speed increase.

I am NOT looking for a condition in which the use case without the ads is "crippled" or extra resources are diverted to users of the ads by the company (such as having premium, less loaded servers for ad-viewing customers). I mean, a natural, algorithmic or otherwise theoretical reduction from having advertising versus the same implementation without it. If you cannot think of such a condition, I also welcome a "beats me" response, as it would give me valuable feedback versus having no answers to this question. This is not homework. Thank you. 94.27.238.133 (talk) 18:35, 11 April 2011 (UTC)


 * This will be a tough one. My thoughts are drawn to situations with web-page caching, and search engine optimization.
 * I can't think of a way to make it work exactly, but both caching and search engine optimization are based on very complicated algorithms that often have unexpected results. It's possible that there may be an unusual case where having ads works in your favor.
 * You also have situations where advertisements may be inseparably connected to basic functions. gMail indexes your emails so they can be easily searched by their ad-servers, is that same indexing used by their normal "find" function? Does that make it faster to search your own emails?  Nobody outside of Google could know that.  APL (talk) 18:56, 11 April 2011 (UTC)


 * Perhaps a bit sidetrackey but ads can give an illusion of speed, for example, if used as a preloader, as people are willing to tolerate longer startup times if occupied with something interesting. The quality of this illusion pretty much depends on the ad's entertainment value. If we want objective speed increase, I stick to "beats it", but being interested in computer science, I'd like it if a better answer came along. Zakhalesh (talk) 19:07, 11 April 2011 (UTC)


 * Continuing off APL's idea, you could envision a system in which the user wanted to see statistics of all the websites he or she had visited that day, or just a history, without storing that data on the local machine, and the mechanism could be that if every page contained ads served by one admaster, then the admaster could track all the surfing, and then display it for the user when he or she visited a special page at the admaster's site. You could argue that any system with ads will be strictly slower than a system without ads, but the ads could provide the only possible (or at least likely) financial incentive for the admaster to implement systems like the above.  Comet Tuttle (talk) 19:23, 11 April 2011 (UTC)


 * What about a program whose purpose is to assist you in e-commerce? For example, every item you view on eBay or Craigslist is an "advertisement," so by definition, showing you the advertisements accelerates the completion of your task, which is to browse or execute a purchase.  Nimur (talk) 21:37, 11 April 2011 (UTC)

Well, I don't think it is realistic, but just as an exercise of imagination, you could have an ad take up space that would otherwise be filled by expanding some other component which is very expensive to expand, for example a GIF animation. Looie496 (talk) 23:08, 11 April 2011 (UTC)

Conceivably if the add used a plugin on one web page, which required you to read instructions etc. and the actual application used the plugin on the second page it could make the second page display quicker without in practice slowing down the first page because you would need to read the information during the time the plugin loaded anyway. -- Q Chris (talk) 08:19, 13 April 2011 (UTC)

iOS app development in Windows or Linux
Please don't tell me that iOS apps can only be developed on a Mac because I know that that is not the case. How would I go about developing an iOS app on Windows or Linux? --Melab±1 &#9742; 22:17, 11 April 2011 (UTC)


 * There's no reason to suppose the answer you'll get is any different to the last time you asked the same question. Both times you're adamant that it is possible; I suggest you ask those people who convinced you so. -- Finlay McWalter ☻ Talk 22:22, 11 April 2011 (UTC)
 * In fact, I answered Melab-1's question last time with a specific answer: he will need to reverse-engineer all of the features that the SDK provides. iOS and the various Apple products use a lot of proprietary technology, so documentation will be sparse.
 * Ultimately, I think Melab-1 misunderstands what an operating system is, and the role of an SDK in programming an application-program. The SDK is the set of programmer-interfaces ("APIs") and machine interfaces ("ABIs").  Without an SDK, you can not use the operating system's provided features.  If you do not want to use the official SDK, you will have to design your own (because nobody else has made one yet).  So you will either have to reverse-engineer iOS's features, or forsake iOS and try to program straight machine-code on an architecture you do not have a specification for.  Of course, as I have previously mentioned, iOS device hardware protects against unsigned executables - so you must also circumvent the hardware protection.  Nimur (talk) 23:47, 11 April 2011 (UTC)
 * Well, Apple does accept software made with third-party development tools, so I don't have to use the official SDK to submit it to the App Store. --Melab±1 &#9742; 01:58, 12 April 2011 (UTC)
 * If you know the answer to your question, why are you asking it? AndyTheGrump (talk) 02:03, 12 April 2011 (UTC)
 * I know that it is possible but how would I go about setting up an environment to build an iOS app? Would I use Cygwin, GCC, compile some of the open source Xcode utilities, extract headers from the SDK's disk image, etc.? --Melab±1 &#9742; 19:13, 12 April 2011 (UTC)
 * So someone has told you this is possible, but they haven't said how. Meanwhile, people here have said that they don't think it is possible, and explained why. Why don't you either (a) go back to where you were told it can be done, and ask there, or (b) at least tell us where you got this information. If it can be done, and you find out how, let us know so if someone else asks the same question we can answer it correctly. This is a free reference desk, run by volunteers, and it is unlikely that we know everything. If we can't answer a question the way you like, expecting us to revise the answer to one that suits you isn't really helpful. AndyTheGrump (talk) 20:14, 12 April 2011 (UTC)
 * One prominent example: Flash CS5, which allows you to compile a Flash app to a native iOS app. --Melab±1 &#9742; 21:25, 13 April 2011 (UTC)
 * Why ask questions that you already know the answer to? APL (talk) 21:56, 13 April 2011 (UTC)
 * Who told you that Flash CS5 can compile Flash into a native application for iOS? Certainly not the official tool documentation: all that Adobe Labs has announced is a vague plan to add iOS support at an unspecified time in the future.  I am not aware of any current non-Apple product, including any Adobe Flash toolchain, that will compile for iOS devices.  Apple does support Adobe Air on Mac OS X, though I can't find anything on it for iOS.  Besides, Adobe AIR is little more than a javascript engine - it is not a Flash environment.  You can read a lot of chatter on Adobe's website, but if you read the fine print, you will see that they currently support only one system: BlackBerry Tablet OS.  Nimur (talk) 03:03, 14 April 2011 (UTC)
 * While you can compile a very limited flash-based app using Adobe's "Packager for iPhone" software, you cannot actually USE the app on a non-jailbroken iOS device, or submit it to Apple, without it first being signed with a developer key by Xcode on a Mac. Horselover Frost (talk &middot; edits) 06:21, 14 April 2011 (UTC)