Jump to content

Wikipedia:Reference desk/Computing: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Line 729: Line 729:


I access the internet from two different Verizon DSL accounts in the NE US. Forthe last 10 days, between ~6PM and midnight the connection to Wikipedia, and only Wikipedia, over either account, in two different states, has been incredibly slow, often freezing entirely. This is the case on two different computers, using three different browsers. No other site is slowed or freezes. Could this be an issue with Wikipedia, or something to do with the recent [[net neutrality]] ruling? I am confounded. Thanks. [[User:Medeis|μηδείς]] ([[User talk:Medeis|talk]]) 22:45, 11 March 2014 (UTC)
I access the internet from two different Verizon DSL accounts in the NE US. Forthe last 10 days, between ~6PM and midnight the connection to Wikipedia, and only Wikipedia, over either account, in two different states, has been incredibly slow, often freezing entirely. This is the case on two different computers, using three different browsers. No other site is slowed or freezes. Could this be an issue with Wikipedia, or something to do with the recent [[net neutrality]] ruling? I am confounded. Thanks. [[User:Medeis|μηδείς]] ([[User talk:Medeis|talk]]) 22:45, 11 March 2014 (UTC)

== [[Backdoor (computing)]] ==

Our article on [[Backdoor (computing)]] could use some attention by our more technically savvy editors. Please add it to your watchlist. Thanks! [[User:A Quest For Knowledge|A Quest For Knowledge]] ([[User talk:A Quest For Knowledge|talk]]) 23:10, 11 March 2014 (UTC)

Revision as of 23:10, 11 March 2014

Welcome to the computing section
of the Wikipedia reference desk.
Select a section:
Want a faster answer?

Main page: Help searching Wikipedia

   

How can I get my question answered?

  • Select the section of the desk that best fits the general topic of your question (see the navigation column to the right).
  • Post your question to only one section, providing a short header that gives the topic of your question.
  • Type '~~~~' (that is, four tilde characters) at the end – this signs and dates your contribution so we know who wrote what and when.
  • Don't post personal contact information – it will be removed. Any answers will be provided here.
  • Please be as specific as possible, and include all relevant context – the usefulness of answers may depend on the context.
  • Note:
    • We don't answer (and may remove) questions that require medical diagnosis or legal advice.
    • We don't answer requests for opinions, predictions or debate.
    • We don't do your homework for you, though we'll help you past the stuck point.
    • We don't conduct original research or provide a free source of ideas, but we'll help you find information you need.



How do I answer a question?

Main page: Wikipedia:Reference desk/Guidelines

  • The best answers address the question directly, and back up facts with wikilinks and links to sources. Do not edit others' comments and do not give any medical or legal advice.
See also:


March 6

Bitcoin and Mt Gox

The Bitcoin protocol makes the transfer of bitcoin totally transparent. So how come nobody know who stole the coins from Mt Gox? Also why can't those bitcoin be marked as "stolen" so that they cannot be used for any further transaction until they have been returned to the original Mt Gox account? Also if we do know whose accounts they have been transferred to, why can't the owners of those account be arrested? Unless Bitcoin protocol does not disclosed who the human owners of the thieving accounts are. 202.177.218.59 (talk) 01:32, 6 March 2014 (UTC)[reply]

Here's some coverage: [1][2][3]
It's not easy to get from a list of transactions that did happen to a list of transactions that should have happened, absent an evil bit to filter on. You need outside information, such as Mt Gox's internal logs in this case, and if they were as incompetent as it seems they were, that might be difficult.
Bitcoin transfers go to randomly-generated account numbers that aren't explicitly tied to any person, but the way you spend it may leave clues about your real-life identity. The culprits in this case might well be caught using those and other clues, but it won't happen instantly.
There are bitcoin laundering services: customers transfer bitcoin to them and they transfer the same amount of bitcoin back (less a fee) in a scrambled order, sort of like Mixmaster. If any of the stolen bitcoin was laundered, the next owner is a random user of the laundering service with no connection to the original theft. Since the theft has apparently been going on for years, I imagine a lot of it has been laundered, or simply gone through so many subsequent transactions that you can hardly blame any of the current owners anyway.
With those caveats, if the fraudulent transactions were found and published, individual bitcoin users could refuse to take payment in tainted bitcoin. But even those users would have to accept tainted third-party transactions in the block chain, because the protocol depends on all clients agreeing on what is a valid transaction. To globally block those transactions you would have to patch all clients, which is almost certainly impossible even if there were consensus that it would be a good thing. (Edit: never mind; protocol changes apparently do happen.) -- BenRG (talk) 08:39, 6 March 2014 (UTC)[reply]
Were they stolen? Couldn't it just be the case that Mt Gox is manipulating everyone? OsmanRF34 (talk) 17:52, 6 March 2014 (UTC)[reply]
While it's possible - the mechanism whereby Mt Gox claims the coins vanished is subtle and very real. Essentially, the bad guy would request a bitcoin (in exchange for, say, dollars) - then have his software report back that a bad transaction had happened. Mt Gox would then happily try again. The problem is that each time this happens, Mt Gox would send a DIFFERENT bitcoin on the retry than it sent the first time around. The bad guy would then have two valid bitcoin id's for the price of one. This was a known bug in the system that other sites had spotted and plugged. Flexcoin (who also failed under mysterious circumstances after 'theft') have had similar claims.
This could equally well happen with a real bank - your bank branch could claim that all of your money got withdrawn through an ATM with a software bug - and you'd be reliant on their records to tell you whether your money was really stolen or whether they just decided to keep it for themselves. The reason it doesn't happen in real-world banking is that there are insurance policies to cover this and in the USA, the feds have a scheme in place to cover bank failures and such. There are also regulations forcing banks to keep records of transactions and so forth. For that reason, people don't usually lose much when this kind of thing happens in real banks - and we tend to go with banks that have big impressive buildings and a permanent presence. But the thing about BitCoin is that everybody does it specifically to AVOID government intervention and to avoid the need for banks. This works great, so long as you don't need government intervention and/or you don't go and use a goddamned bank! Banks have to be regulated for a reason - and the reason is so that everyone is covered when this kind of thing happens. Why people keep large amounts of bitcoin in a "bank" is anyone's guess. (Especially a bank who's previous experience is in helping "Magic the Gathering" fans exchange cards!) Neither of the two recently failed BItCoin banks offered their depositors interest payments - so why didn't people just do the electronic equivalent of stuffing dollar bills under their matresses by putting their bitcoins onto a memory stick (preferably with lots of backup copies) and burying them in the back yard? SteveBaker (talk) 16:09, 7 March 2014 (UTC)[reply]
The subtlety of the problem is important to understand. Because every Bitcoin transaction in the entire world needs to serialized into a strictly sequential bloxk-chain, it is very common for a bitcoin payment to fail and require a re-try. This is normal; it gets glossed over in descriptions about "miners" and "payment verification." But what it does is breed complacency about transaction retries.
Imagine if you were at the bank, and you saw a guy trying to use the ATM to make a withdrawal, and he keeps hitting the button over and over until finally the money comes out. That's how bitcoin transactions work normally. One user broadcasts a transaction to the network of peers, who (after some delay) confirm it or reject it; and the user re-tries until it finally makes it into the block chain.
So if that's normal, nobody raises any red flags when they see a guy furiously banging away on the ATM withdrawing money and (surreptitiously) hoping his cash comes out twice. The theft doesn't look suspicious until much later.
Steve's right about the attackers getting a "totally different bitcoin" on their retry; it'd be harder to pull off if the same bitcoin were sent on the retry. Again, a subtlety of bitcoin makes this almost mandatory. The "currency" in bitcoin is a signed hash of a transaction history. If a user's transaction failed, and needed to be re-tried, it's a near statistical certainty that new transactions will have occurred in the exchange; the transaction history will be different; so the "coin" will be different. The "security" of bitcoin is that all previous transactions are recorded - which is how you prevent double spending the same coin; so the "abstract entity" that has value - a "coin" - is embodied by a number that is constantly mutating. It necessarily contains the hash of its previous transaction history, plus the current block-chain state. If the number didn't constantly change, the same number could be sent to n different people, and there'd be no possible way to know which transactions were legitimate. So, this "malleability" isn't a "bug" - it's baked into the very protocol that makes bitcoin possible. The algorithm and its implementation works flawlessly! The "security bug" is assuming that you can trust the algorithm as a meaningful way to track valuable assets like U.S. dollars - and trading out U.S. dollars for transactions that aren't yet in the block chain history!
Obviously, to prevent the pay-out for aborted transactions, the exchange needed to wait until the transaction is confirmed before paying out. But, there's no way to guarantee that a transaction will ever get into a block history. It might never get confirmed, and might need to be retried. So, the exchange is stuck between a rock and a hard place: people who want to withdraw U.S. dollars either have to get the money prematurely, or risk getting the money weeks or months late, or never. Financial regulators don't allow banks to delay customer withdrawals indefinitely like that - because that behavior is indistinguishable from a bank who is embezzling its own customers' money! So, the exchange had to pay out for un-confirmed transactions.
The part that astonishes me is the insistence that this protocol is somehow "secure." Security isn't guaranteed by loads of cryptographic math. Even if the math were flawless and the code were bug-free, security evolves from a trust-relationship, not from any specific technology. Nimur (talk) 16:13, 9 March 2014 (UTC)[reply]
You say "loads of cryptographic math" is not sufficient to guarantee security, which is true of course, yet you explicitly and incorrectly blame technical details of the protocol in your post. Transaction malleability, which Mtgox implicated in their filing, exists because of some technical details of Bitcoin's design that are tricky to fix for backward-compatibility reasons. It's not a necessary part of how cryptocurrency works. You seem to be confusing it with Bitcoin's decentralized commitment to transactions, which is an important part of the design. Obviously, if the decentralization made it impossible to reliably avoid double payment as you suggest, no one would trust Bitcoin. But it doesn't. The bitcoin at an addressoutput has to be spent all at once and the output is never reused, so if the recipient claims that that transaction failed, you can safely initiate a new transaction spending the same output, knowing that at most one of them will commit.
The form of "money" involved is barely relevant here. Mtgox is apparently claiming that their transaction processing code had a bug that could be exploited for double payment. The bizarre thing is that this bug would leave a discrepancy in their ledger at the end of the day, yet they apparently never noticed, or noticed but didn't bother to do anything about it, for years. An alleged leaked internal document says "the cold storage has been wiped out due to a leak in the hot wallet" ([4]), which would appear to mean that the "till" was coming up short every day, and their response was to keep refilling it from the "vault", not noticing, or not caring, that the contents of the vault were gradually shrinking. The only special property of Bitcoin in this story is that it's not legally money, so Mtgox's incompetence in handling it might not be criminal (I'm not saying it wasn't, just that it's less clear). That's assuming that they're telling the truth about what happened—but I think they couldn't come out looking much worse no matter what really happened. -- BenRG (talk) 19:14, 9 March 2014 (UTC)[reply]

Problems with USB hard drive

I have two identical LaCie 1 TB USB hard drives, which I use to backup all my photographs with rsync. I alternate between the two drives when making backups. Lately I have discovered that one drive works much more slowly than the other. I took about 2000 photographs in the last week or two, and when I backed them up on one drive a couple of days ago, it took about twenty minutes. Now I'm backing them up to the other drive, and the rsync backup has been running for almost two hours, and isn't even half-way through yet. What could be wrong with the drive? Can I somehow fix it? Would running fsck on it help? JIP | Talk 19:56, 6 March 2014 (UTC)[reply]

Are they plugged into the same port (alternately) or are they on different ports and you just rsync to them alternately? It may be that the apparently fast disk is plugged into a USB2 port and the apparently slow one is plugged into a USB1.1 port; if this is the old Athlon computer you asked about in another question, it may have some usb1.1 and some usb2 ports. Also, what filesystems does mount report for each (not necessarily what filesystem you think they're formatted for)? -- Finlay McWalterTalk 20:39, 6 March 2014 (UTC)[reply]
They're plugged into different ports. I have an automatic script that detects whichever drive is currently powered up, mounts it, runs the backup and unmounts it. But I believe the ports are identical. This is the same computer as in my previous question. I think I have formatted both disks as ext3, but I'll have to check in the morning. I'll have to let the backup run its course first. JIP | Talk 20:44, 6 March 2014 (UTC)[reply]
The nice thing (well, one of the many many nice things) about rsync is it is interruptable; you can safely ctrl-c it and then resume it and the only duplicated effort is redoing the file it was working on. -- Finlay McWalterTalk 20:46, 6 March 2014 (UTC)[reply]
You can test performance with something like time dd if=/dev/zero of=/mnt/somedisk/foo bs=1024 count=4096K and compare the results for the different disks. Strictly this blurs the distinction between the disk+interface and the filesystem (you could destructively write to /dev/somediskid instead, but you'd zap your partitions and data) but mostly filesystems will pass big block writes through pretty efficiently. And obviously it's a good idea to check the SMART data (sudo smartctl -a /dev/sdX), as a disk that's dying may start to run very slowly. -- Finlay McWalterTalk 20:59, 6 March 2014 (UTC)[reply]
Here is what mount reports for both drives: /dev/sdb1 on /lacie type ext3 (rw,nosuid,nodev,noexec,relatime,seclabel,data=ordered,user=jip). The dd reports show a drastic difference, almost 20 times:
4194304+0 records in
4194304+0 records out
4294967296 bytes (4.3 GB) copied, 178.655 s, 24.0 MB/s
4194304+0 records in
4194304+0 records out
4294967296 bytes (4.3 GB) copied, 3577.11 s, 1.2 MB/s
It appears that one drive is either becoming broken or has its filesystem in a broken state. I'll have to try the smartctl check too, and also do the same checks again after swapping the cables, to see if the ports are any factor in the problem. JIP | Talk 17:38, 7 March 2014 (UTC)[reply]
If you haven't swapped the cables, you can't assume one drive is to blame. If you haven't done smartctl, you can't assume that one disk is failing. -- Finlay McWalterTalk 11:46, 8 March 2014 (UTC)[reply]

I decided to run fsck on the slow drive. The process has been running for over three hours now, and is still saying: "Pass 1: Checking inodes, blocks, and sizes". How many passes are there going to be? JIP | Talk 10:29, 8 March 2014 (UTC)[reply]

If a disk has a hardware defect, you shouldn't fsck it, because more activity is just going to risk making things worse. fsck.ext3 has five passes, but the first is overwhelmingly the time consuming one, taking ~90% of the time. -- Finlay McWalterTalk 11:46, 8 March 2014 (UTC)[reply]
I did run smartctl before fsck, but it didn't report any problems for either drive, so I decided to run fsck anyway. The first pass finished in six hours, all the other passes in about ten to twenty minutes. It didn't report any problems either, but it did report 35% non-contiguous files. I swapped the cables, and the problem turned the other way around - the fast drive and the slow drive switched places. Then I plugged the drive that was now slow into another port, and it also reported over 20 MB/s transfer speed. I'll keep it this way now for a few days and see if it has fixed the problem. JIP | Talk 16:13, 8 March 2014 (UTC)[reply]
With both drives connected, run lsusb -t and will will display the usb hierarchy; it sound to me like the "slow" disk is on a port on a usb1.1 hub. You can see the specifics of all usb devices, including hubs, with lsusb -v where the bcdUSB field shows the speed each device and hub supports. Remember that all ports hang off a hub, even the computer's built-in ports (they're off a hub that's built into the USB host controller in your computer's southbridge). -- Finlay McWalterTalk 17:39, 8 March 2014 (UTC)[reply]
Here is what lsusb printed out:
Rather long output copy-pasted.
The following discussion has been closed. Please do not modify it.
$ lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ohci_hcd/10p, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/10p, 480M
    |__ Port 1: Dev 32, If 0, Class=stor., Driver=usb-storage, 480M
    |__ Port 5: Dev 2, If 0, Class=>ifc, Driver=rtl8187, 480M
$ lsusb -v

Bus 001 Device 032: ID 059f:1018 LaCie, Ltd 
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x059f LaCie, Ltd
  idProduct          0x1018 
  bcdDevice            0.01
  iManufacturer          10 
  iProduct               11 
  iSerial                 3 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          4 
    bmAttributes         0xc0
      Self Powered
    MaxPower                2mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk (Zip)
      iInterface              6 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0 

Bus 001 Device 031: ID 059f:1018 LaCie, Ltd 
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x059f LaCie, Ltd
  idProduct          0x1018 
  bcdDevice            0.01
  iManufacturer          10 
  iProduct               11 
  iSerial                 3 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          4 
    bmAttributes         0xc0
      Self Powered
    MaxPower                2mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk (Zip)
      iInterface              6 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0

Bus 001 Device 002: ID 0bda:8187 Realtek Semiconductor Corp. RTL8187 Wireless Adapter
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x0bda Realtek Semiconductor Corp.
  idProduct          0x8187 RTL8187 Wireless Adapter
  bcdDevice            1.00
  iManufacturer           1 
  iProduct                2 
  iSerial                 3 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           39
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          4 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass         0 (Defined at Interface level)
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              5 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0002 2.0 root hub
  bcdDevice            3.09
  iManufacturer           3 
  iProduct                2 
  iSerial                 1 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0004  1x 4 bytes
        bInterval              12

Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            9 Hub
  bDeviceSubClass         0 Unused
  bDeviceProtocol         0 Full speed (or root) hub
  bMaxPacketSize0        64
  idVendor           0x1d6b Linux Foundation
  idProduct          0x0001 1.1 root hub
  bcdDevice            3.09
  iManufacturer           3 
  iProduct                2 
  iSerial                 1 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xe0
      Self Powered
      Remote Wakeup
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 Unused
      bInterfaceProtocol      0 Full speed (or root) hub
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0002  1x 2 bytes
        bInterval             255

JIP | Talk 18:02, 9 March 2014 (UTC)[reply]

Google vs. Firefox

This is a very specific problem that I'm not sure can be answered but if anyone has some ideas. On my laptop I have Ubuntu and Windows 7 while the desktop has Windows 8. My son has 7 on his laptop and the grandson has 7 on his desktop. Sometimes when using FF Google can't be reached and all that comes up is a blank "New Tab". Other times it works fine. On the other had Chrome will always go to Google search. This only happens at home as when we take the laptops elsewhere Google is fine with FF. Any ideas as to where I should start looking? CambridgeBayWeather (talk) 20:05, 6 March 2014 (UTC)[reply]

Are you saying you have the same problem on all machines? I would start by checking your settings at Firefox > Tools > Options > General.--Shantavira|feed me 09:15, 7 March 2014 (UTC)[reply]
Yep it's all four machines. There doesn't appear to be anything out of the ordinary in the general tab. My two have about:startpage but I never open on that. This is more about when using the search or address bar. CambridgeBayWeather (talk) 15:15, 7 March 2014 (UTC)[reply]

March 7

Why are dynamic IPs the rule?

Do telcoms do that so you can't (normally) run a server for free? You'll need to rent a static IP for that. Or do they have more clients than IPs, therefore we have to share the IPs efficiently (and recycle IPs when a user disconnects)? But, what if, all, or many, clients decide to connect? Would that be a kind of overbooking which implies dropping some paying clients, although they have a right to access the network? OsmanRF34 (talk) 00:57, 7 March 2014 (UTC)[reply]

It's mainly because IP addresses are a scarce resource. If every net access point got a fixed IP address, there wouldn't be enough to go around. See IPv4 address exhaustion -- the IPv4 scheme only provides about 4.3 billion possible addresses. Looie496 (talk) 15:12, 7 March 2014 (UTC)[reply]
I agree that IP address exhaustion is one possibility - but I think they are also concerned that the bandwidth required if a lot of people come to visit your site might be too much for them to bear. Note that for almost all domestic internet connections, the upstream bandwidth is vastly smaller than downstream. Years ago, I paid AT&T extra for a static IP address on my DSL line - and ran my own server from home. The performance (from the perspective of users of my server) was appalling - so I decided to go with a hosted server from Dreamhost - they charge me about $10 a month and let me do almost anything I want on their machine. They use Linux and provide shell account access - they don't mind you running CGI programs as well as PHP on their servers and you can host a more-or-less unlimited number of web sites from one account (I have over a dozen right now). I'm sure there are plenty of other services like that - and with that level of convenience, tying up one of my own computers and eating up the limited bandwidth I have to my home systems just isn't worth the $10/month I'd save by running it from home. SteveBaker (talk) 15:35, 7 March 2014 (UTC)[reply]
What about the last mile? Is there anyone who'll provide that with a static IP? --Trovatore (talk) 03:09, 8 March 2014 (UTC)[reply]
It's true that if everyone decided to connect at the same time, it would probably run them out of IP addresses - but there are many, many things in the world that use that principle. If everyone turned on every appliance and light they have in their homes at once, there wouldn't be enough electrical power to accomodate them all. If everyone decided to drive all of their cars on the freeway system at the same time, it would be a parking lot. There isn't enough cellphone bandwidth for everyone to make phone calls at the same time. The world relies on these kinds of statistical effects in a bazillion different ways - and the IP address allocation scheme is no different.
Also, even when there is a need for a static IP (eg, for a website), it's common to share them. So, if you 'ping' my website 'sjbaker.org' - and my wife's home business site 'renaissanceminiatures.com' - you'll find that you get the exact same IP address both times (66.33.209.131) - yet pointing your web browser at http://66.33.209.131 gets you an error message. That's because my service provider places many sites on each physical server - and thereby saves IP addresses. SteveBaker (talk) 15:47, 7 March 2014 (UTC)[reply]
And if you're wondering how the server knows which web site is meant, it's mandatory for the client to tell it. The HTTP/1.1 protocol mandates the use of the Host: header, which denotes the intended website name (in this case, either sjbaker.org or renaissanceminiatures.com). JIP | Talk 20:14, 7 March 2014 (UTC)[reply]
When I had DSL, I left it on all of the time. It kept the same IP address until I had to restart or reconnect, then it would change. The point is that most people probably leave the DSL connected, which takes up an IP address. Bubba73 You talkin' to me? 19:33, 7 March 2014 (UTC)[reply]
OsmanRF34 seems to be asking why internet service providers prefer to provide their customers with automatically assigned IP addresses (using DHCP or a similar protocol). Here are some ideas:
  • It's easier for the router or modem to automatically get an IP address. When you use a static IP address, you have to manually enter the IP address information into your equipment. If your equipment is replaced or gets reset to factory defaults, your internet connection won't work until you re-enter the correct IP address settings into your equipment.
  • As their number of customers changes, the ISP may occasionally need to move the customers in an area to a different range of IP addresses. When the customers get IP addresses automatically, the ISP can automatically assign a new IP address when the current assignment expires. If static IPs were used, the ISP would have to spend time contacting the customers before the change date to tell them how to change the IP settings in their equipment. For any customers that didn't change the settings in time, the ISP would get calls to their tech support line, and the ISP's tech support reps would have to guide customers to change the setting.
For some other people's answers, you can read Why do ISPs change your IP address? from the question and answer site Super User.--Bavi H (talk) 02:56, 8 March 2014 (UTC)[reply]
Note that's there's a difference between an ISP supporting DHCP or whatever, and an ISP assigning someone a dynamic IP address. Although the way these terms are used in LAN and in device configs may be a bit confusing (where static IP usually refers to static IP address assignment on the device), when an ISP is said to provide a static IP address, that simply means the ISP is saying the IP is semi permanently assigned to you. Unless they specifically tell you otherwise, you can generally expect to have the IP as long as you have service with the ISP. (Note that this is different from a sticky dynamic IP address where you will frequently keep the same IP if you don't disconnect for too long or perhaps even sometimes if you do, but where the ISP is not telling you they will always provide a certain IP.)
It's true it's unlikely an ISP will assign a dynamic address if they don't have someway to automatically assign that IP address to the customer. However there's no reason why an ISP cannot provide a static IP address to a customer while still supporting DHCP or whatever to assign that IP address to the customer when needed. I suspect most SOHO ISPs who provide static IP addresses do this. If a customer has a static IP address, they could turn off DHCP (if that's what's used) and manually set up the router or whatever, but there's no reason that has to be done. (And I wonder if some ISPs, while providing a static IP, don't really officially support static IP address assignment on the device. E.g. they don't tell you how to set it up, and perhaps don't even guarantee the gateway will never change.)
Nil Einne (talk) 19:00, 8 March 2014 (UTC)[reply]
In case of Comcast however, there is another nasty detail. If you ask for a static IP they would say that you have to have a business account which is of course more expensive. --AboutFace 22 (talk) 16:09, 10 March 2014 (UTC)[reply]

Somewhat off-topic, but I had an account with the Australian Unwired ISP and my IP remained unchanged from August 2009 until Unwired was taken over by OPTUS and then shut down end 28 February 2013. Minimum of 3.5 years. I have no idea how/ why this occured, but if it was the same for all customers, IIRC that would be about 50,000 static IPs. Rather slow (256 KB service), but only A$30/month for 15 Gb (split on/off peak). 220 of Borg 10:09, 11 March 2014 (UTC)[reply]

GCC: same function copy for inlined and non-inlined calls

In theory, if function A contains a true tail call to function B, then it should be possible to inline it and also make non-inline calls and function pointers refer to that same copy of B (assuming a NOP slide can be used to satisfy alignment requirements, and assuming we're not trying to do so for any other call to B or for a call from B to A). Is it possible to instruct GCC to do this for a particular call? NeonMerlin 05:57, 7 March 2014 (UTC)[reply]

gcc has a switch to optimize sibling and tail recursive calls -foptimize-sibling-calls, but I don't know about inlining. --Mark viking (talk) 07:14, 7 March 2014 (UTC)[reply]
I doubt it because I think there would be no benefit to it. The main benefit of inlining is that it exposes site-specific optimization opportunities, but that obviously doesn't apply if the inlined copy is exported. It would eliminate a jump, but unconditional jumps are pretty cheap, and NOP slides aren't free either. It would probably complicate linkers, debuggers, and other tools that can otherwise treat each function as an independent entity. -- BenRG (talk) 09:25, 7 March 2014 (UTC)[reply]

Product key system

Hi,

I'm looking to create an add in for Microsoft Excel, which I would ultimately sell online with users buying licences for each user (similar things are done for other add ins, google will show you these - I'm not looking for any legal advice on this). I'm looking to implement a simple product key system whereby a user buys the product keys and then uses that to activate the generic software installation (probably an .msi). Each installation would be bound to a user. I am basically assuming that this will get bypassed by hackers in no time, I just need a simple system that will be enough for the average user not too bypass easily. This would be a single one time activation, without any DRM nonsesne. How are these implemented? What about product keys that work for say 1000 uses? Any advice would be good, google just brings up a load of people troubleshooting lost product keys! 80.254.147.164 (talk) 09:12, 7 March 2014 (UTC)[reply]

With online-only activation systems like Steam, the "product key" is just a long unique random number. When the user "redeems" the code (submits it to the server) the server marks the code as used (or for a multi-seat key, decrements the "activations left" counter). Then the server sends something back to the installer - either just an "okay to proceed" message, or some or all of the actual code of the product being activated. This is still DRM, and it's still much easier to do a bad job that inadvertently screws over your legitimate users and makes for support headaches for you than it is to do a decent job balancing your needs and theirs. Once you think of all the ways an adversary can attack this system (massive guessing operations to search for valid keys, DoS the activation server, stealing keys from customers or your support line by social engineering or hacking) even without simply removing the checking from a single valid copy and distributing that, you'll find this simple-seeming system has lots of potential for problems. That's one reason so many people use an existing marketplace like the Windows Store or Steam - so they don't have to worry (so much) about that stuff themselves. -- Finlay McWalterTalk 09:52, 7 March 2014 (UTC)[reply]
I oversimplified an important point there: Steam et al lets a legitimate user reinstall but prevents a key being reused be someone else (it does this by binding a key to an account). So they have to manage accounts and not just keys online. And adversaries are always trying to compromise steam accounts. -- Finlay McWalterTalk 09:59, 7 March 2014 (UTC)[reply]
Would the install routine be able to access the internet to validate the key?--Phil Holmes (talk) 14:30, 7 March 2014 (UTC)[reply]
Yes - although I could do it either way. I'm guessing each has its pitfalls. I'd rather go with the more reliable option so that no legitimate users are inconvinienced rather than making it impossible to crack (which is impossible!) 80.254.147.164 (talk) 16:02, 7 March 2014 (UTC)[reply]
So a relatively simple system would be to generate a long, fixed length, random key, and both supply it to your customer and store it on a web-connected server. The customer inputs the key, the install routine sends it to the server which returns success if it finds it in its list of keys, or fail if it doesn't.--Phil Holmes (talk) 12:01, 8 March 2014 (UTC)[reply]

Microsoft Excel: "No duplicates found"

I'm trying to follow the instructions online for deleting duplicate entries from Excel. I've tried several different methods, but each time I complete all the steps, I get to the same point: Nothing is removed, or it tells me "No duplicates found", or it copies a "stripped" list that contains every cell from the original. There are duplicates; I wrote this test spreadsheet specifically to have duplicates as a test before I attempt it with real spreadsheets. Having just written it, I know 'trailing spaces' or whatever aren't the problem. There are duplicates within columns, there are duplicates within rows, there are duplicates between columns and rows, there are even duplicates on Sheet 2 which I shouldn't even be concerned with. Why can't I get Excel to recognize anything as a duplicate? 50.43.130.15 (talk) 14:54, 7 March 2014 (UTC)[reply]

I don't know, but I do know that we have a Computing desk, where you're more likely to find an answer. --Dweller (talk) 14:57, 7 March 2014 (UTC)[reply]
I guess I'll move it over. 50.43.130.15 (talk) 15:01, 7 March 2014 (UTC)[reply]
Sorry, I should have helped a bit more with that. --Dweller (talk) 15:03, 7 March 2014 (UTC)[reply]
Which version of Excel are you using? On Excel 2010, it's very simple. Data ribbon, Remove Duplicates button. --Viennese Waltz 15:12, 7 March 2014 (UTC)[reply]
2007, it has a "Remove Duplicates" button, but it keeps claiming "No duplicate values found." Notably, once I copy-pasted everything into the same column it found them, but I'm not sure if this will solve my problem, since I need to (1) Create a sheet containing every customer we've had in 2009, 2010, and 2011 removing repeat names of those who came multiple years, (2) and then remove permanently any customer who showed up in 2012 or 2013 since we don't want to contact them. How I'm going to do that last one I haven't even started thinking of. 50.43.130.15 (talk) 15:38, 7 March 2014 (UTC)[reply]

Role of IT Professional in Electric Power Generation

What is role nature of work or duties or job profile of an IT professional in designation like Assistant Manager (IT) in a thermal power generation company.What does a person as permanent employee do in this type of company.What can a computer engineer do in this role here.In this type of company what is the role of Deputy General Manager (IT).Infact what does Information Technology Department of this type of company does.This company operates around five thermal power plants.A computer engineer studies a fair amount of elecrical engineering in his curriculum.Please shed light on this topic.117.194.248.106 (talk) 17:34, 7 March 2014 (UTC)[reply]

I can't speak to this job specifically, but I can't imagine how different it would be from any other IT manager, ie., managing the IT infrastructure. Given that computers and computer networks are nigh ubiquitous, even in thermal power generators, the work would likely be similar to everywhere else. Mingmingla (talk) 22:37, 7 March 2014 (UTC)[reply]

Please elaborate.117.194.235.90 (talk) 06:08, 8 March 2014 (UTC)[reply]

Please see Information technology management.--Shantavira|feed me 07:44, 8 March 2014 (UTC)[reply]

March 8

LOOPS IN C

int i=1;
do     
while(i++<=7); 
while(i++<=6); 
while(i++<=5); 
printf(%d,i);

this is a piece of code and do is without any braces.so is it correct? 101.222.236.208 (talk) 14:56, 8 March 2014 (UTC) thanks everybody.it wasnt a homework actually it was an exercise from book and it was not what i had learned about syntax of do while loops so i thought of getting second opinion.[reply]

I've added some formatting for you to make it easier to read. Dismas|(talk) 15:22, 8 March 2014 (UTC)[reply]
Someone else might correct me but I believe you have to have the braces. I'm also not sure why you have so many conditions. If I were doing it, I would say something like:
int i=1;
do {
printf("%d", i);
}
while (i++<=7);

thanks everybody.it wasn't a homework problem,it was an exercise from book and it was a conflict from what i had learned about do while loops regarding syntax.the actual values where 5,4,3 instead of 7,6,5.and code compiled and output was 9 so i thought of getting a second opinion for better clarification.

Try that. Dismas|(talk) 15:28, 8 March 2014 (UTC)[reply]
I think you're probably missing the point. The code is nothing a programmer would ever use, but I think it is syntactically valid -- it should compile. This looks to me like a homework problem where the goal is to figure out what value is printed for i at the end. Because it looks like a homework problem, I'm reluctant to give the answer. Looie496 (talk) 15:53, 8 March 2014 (UTC)[reply]
Not really a good piece of homework, either. Just having an automatic formatter indent the code should make the structure clear. --Stephan Schulz (talk) 16:04, 8 March 2014 (UTC)[reply]
The challenge is not to understand the structure, it's to figure out the effects of the ++ operators and how they interact with the loop control. (By the way, I verified that the code does compile in gcc without any errors or warnings.) Looie496 (talk) 16:18, 8 March 2014 (UTC)[reply]
(edit conflict)I'd agree with what Stephan Schulz said. Being able to write 'puzzle' code is not the mark of a good programmer. The mark of a good programmer is the ability to write readable, maintainable code that accomplishes a given task. If one of my developers turned out crappy code like that, I would make them rewrite it, and if they continued to write crappy code, I'd let them go. A Quest For Knowledge (talk) 16:21, 8 March 2014 (UTC)[reply]
As I said, I think it's probably a problem from a programming class, and I think it's a pretty good problem -- it's an excellent test of understanding of how loops and increment operators work. (The answer, by the way, is 11. Can you work out why?) Looie496 (talk) 16:37, 8 March 2014 (UTC)[reply]


(edit conflict)The braces are optional, but you've put a semi-colon after the while statements. This will work
int i=1;     
while(i++<=7)
    printf(%d\n,i);
The semi-colon between the while and printf leads to an empty statement so that your code loops 7 times doing nothing for the first while loop, and the next two while loops do nothing, as the conditional is false, and then it does the printf once. stdout is line buffered by default in C, so you won't see anything until your code exits.
Additionally, there is the
do 
{ 
   /* body */ 
} while (condition);
and the
while (condition)
{
  /* body */
};
construct, the latter doesn't have a end-marker, but it's at the end of the next statement, or block. CS Miller (talk) 16:40, 8 March 2014 (UTC)[reply]
As others have said, this is probably an exercise to figure out what the code does. It helps understand the language, and programmers often have to read and modify somebody elses crappy code so there is value in being able to decipher it even if you don't write it. Your code does something else than the original code which is indeed crappy, but in a real situation it could have been part of a program you have to modify without changing the final value of i (hint: i++ increments i after evaluating i). Going back to the question of whether the original code has valid syntax, it's certainly allowed to have no braces in a do loop but is it allowed to omit the first semicolon in do ; while(i++<=7);? gcc allows it but does the standard? And most compilers would probably disallow the quotation characters used by the poster in “%d”. The normal is "%d" but I don't know whether the standard deals with such issues. PrimeHunter (talk) 16:59, 8 March 2014 (UTC)[reply]
do is followed by a statement, simple or compound. The first while is inside the loop made by the do and the second while. If you put in your semicolon, then the do and first while form the loop with an empty statement, followed by two additional loops. --Stephan Schulz (talk) 17:49, 8 March 2014 (UTC)[reply]
Right, I was confused by the odd code and C's use of while in two different loop structures. It prints the same value with or without a semicolon there, so if this is an exercise to test understanding of loops then it might have been better if it gave different results. PrimeHunter (talk) 18:38, 8 March 2014 (UTC)[reply]

Linux

I have been offered a rather unique opportunity in the technology world, but one stipulation is I must familiarize myself with Linux. However I am not in a position to purchase the OS or a computer to run it, so I was wondering if there is any sort of online simulation that exists, or if anyone knows of any free or cheap programs I might enroll myself in. Any other informative literature is greatly appreciated! Thanks, 71.2.144.134 (talk) 16:46, 8 March 2014 (UTC)[reply]

The good thing about Linux is, that for by far the most distributions, you don't need to purchase it, it's available for free of charge. And if you don't want to purchase a computer either, you can use an existing PC for it, but you do need a separate hard disk, or at least a separate partition. JIP | Talk 16:52, 8 March 2014 (UTC)[reply]
Most distributions will have a CD or DVD based installer available for you to download, either via your web-browser, or bit-torrent (preferred), you only need the first CD/DVD of the set, it can download everything else that is needed. Also, Linux will run on very old hardware, the minimum specification for the Debian distribution is a 80486 CPU, they were first manufactured in 1989. You can also buy a Raspberry Pi for around $50, it will need a USB keyboard, USB mouse, a HDMI or DVI monitor/TV, and a USB power supply (as used for charging most mobile phones). The Pi is a bit slow, but will do for learning. CS Miller (talk) 17:04, 8 March 2014 (UTC)[reply]
If you have access to a computer you can install software on, you could run various flavours of Linux under VirtualBox. Runs a little slower than it would if run nativly, but not terrible much so. WegianWarrior (talk) 17:13, 8 March 2014 (UTC)[reply]
My WP:OR is that the slowdown of virtualization is fairly negligible these days, if you are not running an X server. I run scientific simulations on VM that are very computationally expensive, with just a few % decrease in speed compared to running on the native OS. It's highly optimized FORTRAN code though, so that might allow it to slow down less on VM, compared to other tasks. SemanticMantis (talk) 17:01, 9 March 2014 (UTC)[reply]
You can use a bootable USB stick with e.g. Ubuntu, and get a full-fledged, if slow, Linux system. If you only need to learn the shell, you can get a private virtual server for roughly the equivalent of 2 or 3 beers in a pub per month, and use PuTTY or any other ssh implementation to log in. --Stephan Schulz (talk) 20:26, 8 March 2014 (UTC)[reply]
I don't think it's available quite yet (should be by sometime in summer), but the Linux foundation is organizing a free MOOC that covers introductory Linux, see details here [5]. Depending on your timeline, that looks like a good bet. With a virtual machine as advised above, you can learn a lot just by playing around, with no worry about breaking things. If your VM gets messed up, you can easily revert to an earlier image, or just delete the whole thing and start a fresh one. SemanticMantis (talk) 16:57, 9 March 2014 (UTC)[reply]
I am in a similar position now: a "unique opportunity" which I myself created, the need to use Linux which I chose after rejecting some other options but my overall position is different. I do have powerful hardware, years of experience in Fortran, Pascal, C#, some C++ and C and MS Visual Fox database language. I began using and learning Linux about 6 weeks ago. And I do it mostly on weekends. This is what I can say from my rather short experience so far. Linux is enormous. I was totally shocked when I found it out. I think the number of commands is roughly an order of magnitude larger than for instance in C#. It is all a result of open source and voluntary contribution of many people. I do have Win 7 machine (Rack mount R5400), Oracle Virtual Box where I installed Ubuntu. It was not easy. First I tried to do it in Windows Server 2008 which I have on the second hard disk and all installation failed. In Win 7 it all went smoothly. I think the OP is looking for a situation which does not exist in real life: sort of an emulation Linux at a website he can use with his TV? It will unlikely be a good learning experience. There are Linux courses but they are not cheap. I would say they start at 2 grand or much more. --AboutFace 22 (talk) 19:28, 9 March 2014 (UTC)[reply]
Seconding Stephan Schulz's suggestion above. If you have Windows now, follow these directions to create a bootable USB stick with Ubuntu on it. It won't erase Windows -- it'll run entirely from the usb stick so you can just reboot and unplug it to stop using it. Most Linux distributions have pretty intuitive GUIs. Ubuntu and Linux Mint, for example, aren't a very substantial learning curve for your average Windows or Mac user. The first challenge for me when I first started using it was understanding the file system, which is very different from that of Windows. Once you know how to use "packages" to download/install software to do what you need to do, you'll have to start learning the command line as things come up. It's not practical to just set out to learn all the commands, since, depending on what you'll be using it for, you'll probably only use a few regularly beyond the standard directory interaction commands. Linux has a huge community that are generally enthusiastic and even evangelistic, so there are many resources to find help. Ubuntu has its own active forums. If a google doesn't do the trick, post there and someone will tell you how to do something. --— Rhododendrites talk19:52, 9 March 2014 (UTC)[reply]
  • Point of order: OP, can you tell us what you need to know about Linux? For instance getting "familiar" with the Bash shell and basic operation of a Linux system is fairly straightforward with a little practice (and learning Ubuntu GUI is even easier), but being "familiar" with the Linux kernel is a lofty goal which I have never aspired to! SemanticMantis (talk) 21:22, 9 March 2014 (UTC)[reply]

Throttling / capping

Presumably WP utilizes server throttling, but does it also apply per-user "capping"? If so, is it possible to determine if an individual user (this one, for example) has been capped? The reason I'm asking is that for the last couple of days, my WP pages load very slowly (if at all). I am wondering if it's just me, or is WP having problems? I've done all the usual things to assure that there is no problem on my end, and the rest of the Internet is just fine on this computer. IP=71.20.250.51 (talk) 17:55, 8 March 2014 (UTC)[reply]

I haven't noticed a recent slowdown. Try using Wikipedia at off hours (4 AM ?), and see if that helps. StuRat (talk) 18:37, 9 March 2014 (UTC)[reply]
Same thing is happening to me. First I thought it's my provider who recently started limiting speed in the evening (could be the snowbirds' fault) but WP is the only site I have severe loading problems. BTW, even Netflix streaming still works fine with the capped speed.TMCk (talk) 20:02, 9 March 2014 (UTC)[reply]

Manage Add-ons that run without permission in MS Windows7 OS

I would like to know what Microsoft add-ons that are installed in Windows7, under manage add-ons that run without permission that collects my browsing history and everything else about me. What can i removed from this list without causing a problem in OS? I do not use internet explorer, i have Windows7, i unable most windows programs. I don't like that MS collects information about me and uses it for their benefit without my permission(s) to do so. Please show in a lists which to delete of MS collecting my data. ty — Preceding unsigned comment added by Sagr8 (talkcontribs) 18:50, 8 March 2014 (UTC)[reply]

Windows 7 does not ship with any Internet Explorer add-ons that collect your browsing history or other personal information. I think the Bing Bar may do so, but only if you install it. What's your reason for believing that Microsoft is collecting information about you? -- BenRG (talk) 20:49, 8 March 2014 (UTC)[reply]
You might want to read Windows 7 Privacy Statement, and "Online privacy and security: frequently asked questions" (linked from page). 71.20.250.51 (talk) 21:00, 8 March 2014 (UTC)[reply]
...And: Learn about privacy settings for... (various MS add-ons) Added:21:06, 8 March 2014 (UTC) — Preceding unsigned comment added by 71.20.250.51 (talk)

Netflix "Important Reminder"

The past couple of days, every time I go to Netflix, I get an "Important Reminder" prompting me to agree to their terms of service and privacy policy. I agree every time, but if I come to the site an hour later, I have to do it again. Is anyone else having this problem, and is there a way to stop it? --Lazar Taxon (talk) 23:58, 8 March 2014 (UTC)[reply]

I just checked my Netflix account and didn't get the reminder. Dismas|(talk) 00:11, 9 March 2014 (UTC)[reply]
Not doing it about 8 hours ago on the Canadian version. CambridgeBayWeather (talk) 01:03, 9 March 2014 (UTC)[reply]

Well, I should rephrase - the question of whether other people are having the same problem is kind of immaterial to me. But does anyone know what might be causing it, and how to get rid of it? I'm using OS X 10.9, and it happens in all browsers. (It's even happened to me twice since posting here.) Edit: It also happens on the computer in the next room running Windows. --Lazar Taxon (talk) 02:05, 9 March 2014 (UTC)[reply]

Such problems are often caused by caching or cookie problems; the site can't save the fact that you've agreed to the TOS. You can sometimes solve them by logging out and back in again, clearing your cache of the page, or clearing your cookies for the page. The process to do these varies by browser. Netflix also has telephone based tech support for subscribers that I have found to be better than average. gnfnrf (talk) 04:42, 9 March 2014 (UTC)[reply]
gnfnrf is probably right about the cookies, but instead of deleting Netflix's cookie, you might need to enable cookies for that site, if you have set browser for no cookies (or a security/privacy app that monitors and/or deletes cookies). Most likely, their cookie is how Netflix records that it already gave you the reminder.  —71.20.250.51 (talk) 05:00, 9 March 2014 (UTC)[reply]
But would that explain it happening in all browsers (all of them set to accept cookies) on multiple machines? --Lazar Taxon (talk) 06:14, 9 March 2014 (UTC)[reply]
The only remaining possibility in my view is that there's something wrong with your account. That is, there is a server-side issue in this case, rather than a client-side issue. Have you tried contacting Netflix? It could also be geographic or network-related, but you could rule that out too by logging into your account from a computer at work or at the library.—Best Dog Ever (talk) 08:03, 9 March 2014 (UTC)[reply]
I doubt it's cookies. I have Firefox set to wipe cookies on quitting (though it seems not to do so consistently for some sites), so I have to log in at Netflix every day; and I haven't seen such behavior. —Tamfang (talk) 08:10, 9 March 2014 (UTC)[reply]


March 9

backtick in Python

Looking over some Python code of mine, last edited in 2004, I see here and there the syntax `x` — which I haven't used recently, and which isn't mentioned in my most current Python reference. An old reference implies that it might be equivalent to repr(x), but does not explicitly compare them; they're not mentioned close together. Is there a difference? Is `x` now deprecated? —Tamfang (talk) 08:07, 9 March 2014 (UTC)[reply]

Backticks cause the reference compiler to emit a UNARY_CONVERT bytecode, which does what repr() does but without an (explicit) function call. This is discussed at this StackOverflow question. Python3 removes the UNARY_COVERT bytecode and the backtick syntax becomes invalid. -- Finlay McWalterTalk 10:13, 9 March 2014 (UTC)[reply]
The actual patch to remove UNARY_CONVERT from Python3 is here; it shows the old C code in ceval.c, which was largely an invocation of PyObject_Repr() -- Finlay McWalterTalk 10:23, 9 March 2014 (UTC)[reply]

Using uTorrent..!

Is using uTorrent to download films, softwares etc... is illegal?--Joseph 17:32, 9 March 2014 (UTC)[reply]

Depends on where you are and what you download - anything beyond that would be legal advice, something we can't give here. WegianWarrior (talk) 17:43, 9 March 2014 (UTC)[reply]
Just to clarify uTorrent is a program which implements the Bittorrent protocol. Bittorrent is used to download large files, whether they are movies, software installation discs, etc. It doesn't matter which bittorrent program you use, or even if you download the file by a different mechanism. What DOES matter is (a) is the file is in copyright, and (b), if so, do the copyright holders agree with it being distributed. However, as WegianWarrior said, we can't answer that bit. CS Miller (talk) 19:27, 9 March 2014 (UTC)[reply]
So, from where I could seek more on this?--Joseph 04:57, 10 March 2014 (UTC)[reply]
I'm not sure what you're looking for. You could read Legal issues with BitTorrent. As previous replies said, what you're downloading matters much more than whether you used uTorrent to download it. -- BenRG (talk) 05:44, 10 March 2014 (UTC)[reply]
Just spotted a recent article 30 Sites For Legal (and Free) Torrents. It includes lots of software, independent films, books and music plus archived material.--Salix alba (talk): 07:23, 10 March 2014 (UTC)[reply]

Remote desktop

I want to admit I am not sure I will use this information but given the breath of people's knowledge around here any contribution might help me to make the final decision. In short I need to demonstrate graphics of functions one of my programs generates to a person with whom I am planning to work on a serious project. I know I can use remote desktop provided by Windows 7 but I believe (perhaps wrongly) that I will need a static IP address for that. I work with remote desktop at work and am planning to ask our computer people how they run it. I have an impression that they simply purchased or rented a software from a company. The system works like this. In one incarnation I generate a six digit code before I get a phone call. I then give this remote recipient this code and we establish what essentially is a two way web cam connection, sort of a local Skype. This is not what I want. I can use Skype for that. I am not sure with the Skype the image resolution will be good enough.

The other variant is when something breaks down in my machine, software wise. I call a number, alert a person, then click a few tabs here and there and he takes over my mouse cursor. I don't see him. I want a system like this because I am planning to do it rather a few times.

I guess my question is: Are there safe, proven systems like this around that I can download and use and then uninstall?

Thanks, --AboutFace 22 (talk) 19:11, 9 March 2014 (UTC)[reply]

It shouldn't matter if the machine you are remoting from is on a dynamic IP or not. Nor should it matter if the target machine is on a dynamic IP address. However, you need to know what the target machine's IP address is; you could take a note of the firewall's address before you leave. You might need to enable TCP port forwarding in the firewall for it to work. To avoid any embarrassment, I strongly recommend you test it from a web-cafe first. Out of interest, can't you run the program on a laptop you can take the client's site? CS Miller (talk) 19:33, 9 March 2014 (UTC)[reply]

Thank your for the information. Very helpful. I just gifted my windows 8 laptop to my daughter but if worst comes to worst I can get another one. But it is an interesting thought. Well, actually the man I will be working with should know much about it. So, in your opinion the remote desktop is the way to go. Very interesting. Thanks, --AboutFace 22 (talk) 20:46, 9 March 2014 (UTC)[reply]

I use the free version of ScreenLeap. --  Gadget850 talk 21:14, 9 March 2014 (UTC)[reply]

Role of BitCoin exchanges

I was under the impression that a BitCoin exchange allows users to purchase BitCoins with a national currency, and to redeem BitCoins back into a national currency, possibly by matching buyers and sellers. Once a BitCoins is bought, the exchange isn't necessery any more. However, the recent failure of Mt.Gox seems to have invalidated/lost several thousand BitCoins, I'm not so sure anymore. Can anyone tell me if I was correct? CS Miller (talk) 19:38, 9 March 2014 (UTC)[reply]

My understanding is that you are correct, and I share a bit of your confusion, so I will keep an eye on future responses. Best I can figure is that people were using Mt. Gox like a bank, even though they didn't really need to. One possibility is that a majority of the total value held by Mt. Gox was in a large number of small accounts, which were being used for just-in-time liquidity. In which case, nobody was using it "incorrectly", it's just a lot of small amounts that add up quickly. SemanticMantis (talk) 21:29, 9 March 2014 (UTC)[reply]
It's easy to believe that many people left a lot of money in there, especially people who bought bitcoin long ago planning to sell it when it appreciated in value, and who may have no clue how to install bitcoin software and manage their own wallet. This guy claims to have had £70,000, 500,000 baht, and 450 BTC in his account, and he's a "leading British Bitcoin dev" who ought to know better.
The missing amount, which is allegedly around 850000 BTC (!), was apparently lost piecemeal over a period of years. I think it's possible that it really was lost in the sense that the private keys are gone so it can never be spent. Mt Gox did destroy about 2600 BTC with a programming error in 2011 ([6]). I suppose it's also possible that the keys are buried in the ruins of Mt Gox somewhere, but no one seems to expect that. It seems most likely that it was stolen, i.e., transferred to addresses whose private keys are known only to the thieves. -- BenRG (talk) 02:12, 10 March 2014 (UTC)[reply]
Mt. Gox did not only lose bitcoin. It also lost real money - U.S. dollars, euros, and so on. (Forgive my snarkiness, but as far as I'm concerned, the bitcoin loss just isn't real money). Mt. Gox also lost lots of real money: after any individual deposited U.S. dollars (in exchange for bitcoins), Mt. Gox would use that depositor's money to make purchases; to settle credit owed to investors; to buy bitcoins from other people, and so on. They say as much in their hastily-written, "accidentally-leaked" memo! After all those transactions, Mt. Gox is still out a few hundred million dollars: lost by poor accounting practice. They are presently writing this all off as part and parcel to the "bitcoin theft," and truthfully it will be hard to disentangle the two (because, as an exchange, money and bitcoin were commonly exchanged). Mt. Gox adamantly denies the reality that it was operating as a fractional reserve bank and that it could not sustain its first major bank run. They flatly deny this behavior in their memo, all while asking for infusions of more capital to refresh their reserve.
At the end of the day, bitcoin had value because it could easily be traded into U.S. dollar. This is not what bitcoin enthusiasts claim about bitcoin; enthusiasts claim that the currency has value because an anonymous crowd will trade goods and services for it. Yet, without an exchange to convert into and out of U.S. dollars (and Euros, and other currency), bitcoin has no value. In much the same way that my local supermarket will not accept Canadian dollars, it will not accept bitcoins, so the "face value" of the currency is totally meaningless unless you can find somebody who will exchange it for real currency. The difference is, I can easily find dozens of reliable institutions that will convert Canadian dollars into my local currency. Reliable institutions believe that Canadian money has value (even if it is not currency here) because Canada has all the hallmarks of a proper, functioning, regulated, real fiscal system.
Shutting down the dollars-to-bitcoins exchange - at least, the biggest one - has essentially isolated the "economy of bitcoins" from the rest of the world economy. Presently, bitcoin economies aren't self-sustaining (unlike, say Canada - whose currency has value because all parts of an entire economy of a sovereign nation trade in that currency). Bitcoin economies still require these exchanges in order to remain in touch with other economies that provide necessary goods and services that aren't yet available for purchase in bitcoin - like local groceries, or large supplies of skilled labor. I expect the bitcoin "economy" will suffer the same effects that a small nation sees when it is sanctioned or embargoed - totally isolated from outside economies. The "value" of the currency will wildly swing between bouts of hyperinflation and total value-collapse; market liquidity will fail; goods and services will not be available for purchase at any bitcoin price, no matter how high or low. But you don't have to take my word for it... you can try to buy some goods and services using bitcoin now! In the absence of an exchange, the currency isn't useful. Nimur (talk) 03:18, 10 March 2014 (UTC)[reply]
Mt Gox hasn't been the largest bitcoin exchange for some time. I don't think its demise has made it significantly harder to buy or sell bitcoin. The price at other exchanges took a hit but doesn't appear to be in a death spiral.
I think whether bitcoin is money is a meaningless matter of definition. I classified it as money above simply because I didn't feel like writing "money or bitcoin" over and over. -- BenRG (talk) 05:19, 10 March 2014 (UTC)[reply]
It's also not true that exchanging between bitcoin and real money isn't possible without an institution like Mt. Gox. If I believe that bitcoin is valuable, and you have bitcoin, I can pay you US dollars in exchange for your bitcoin. There's nothing difficult or unusual about that exchange, except for the possibility of fraud. --Bowlhover (talk) 06:36, 11 March 2014 (UTC)[reply]
Generally, the exchange will charge a fee to withdraw bitcoins/fiat currency, and will associate an amount of each with your account. This reduces the administrative overhead of the exchange, since a customer can make thousands of trades, with the exchange only needing to update their internal databases, and not actually send any money or coins externally until the customer withdraws their funds. It also makes things easier for the customer, as traders wishing to make a number of fast trades don't need to wait for funds to transfer, or bitcoin transactions to confirm before making a second trade. Unfortunately, it also leads to people effectively using the exchange as a bank, which means that they can lose everything if the exchange goes down. MChesterMC (talk) 12:53, 11 March 2014 (UTC)[reply]

What's the world record for computer chess moves per second?

Is it still Deep Blue? I think they only used consumer desktop hardware after that, or at most workstation, but come on, consumer hardware has had 17 years of Moore's Law. They always say that newer chess engines know what to not bother calculating and what to calculate deep and they do more than count material points but how many MPS is the hardware capable of if they still did it the old way? How many MPS brute force would be needed to equal the playing strength of today's pruning engines? Sagittarian Milky Way (talk) 21:20, 9 March 2014 (UTC)[reply]

The article on computer chess seems to indirectly address some of your questions. I'm no expert on computer chess but know that today's chess engines focus more on efficient pruning of search trees rather than relying on brute force the way Deep Blue did. It's very difficult to equate MPS to playing strength because it depends on the algorithms used by the engine (somewhere in the article they compare Pocket Fritz's 20,000 MPS to Deep Blue's 200 million MPS). You can also check the ELO rating of modern engines and use this as a basis to compare playing strength. If someone had the skill and budget to use the most efficient engine on the fastest supercomputer, it would be a monster player perhaps surpassing 4000 ELO but it still would not come close to solving chess. Sandman1142 (talk) 10:14, 11 March 2014 (UTC)[reply]

More Gmail contacts

On one side, I have a gmail account, with several contacts. On the other, I have an excel file with a database, including names and e-mails, and I was asked to upload those e-mails to the gmail account. I have tried exporting the contacts in CVS format, which generated an excel file with a single column, with all the fields at each entry set apart by commas. So, I arranged the other excel to display the names and e-mails in a similar format, copy the result to the cvs file, and import it back. I get error messages. So, which is the correct way to do this? Cambalachero (talk) 23:39, 9 March 2014 (UTC)[reply]

Here is Gmail's support document on the subject. Dismas|(talk) 00:02, 10 March 2014 (UTC)[reply]

March 10

Possibility of tracking who are using torrent files!

Is it really possible to track who are using (downloading or uploading) torrent files?--Joseph 05:33, 10 March 2014 (UTC)[reply]

Yes. Your IP address becomes apparent when you are sharing a torrent. 217.158.236.14 (talk) 10:03, 10 March 2014 (UTC)[reply]
Correction: When you are sharing AND downloading a torrent.217.158.236.14 (talk) 10:10, 10 March 2014 (UTC)[reply]
Regardless of whether you are uploading or downloading bittorrent files, your ip address is available for all participants to see. 220.239.51.150 (talk) 12:21, 10 March 2014 (UTC)[reply]
That's what I was trying to say!217.158.236.14 (talk) 14:03, 10 March 2014 (UTC)[reply]
The "who" in the OP's question is up for debate, though. An IP address only tells so much. By seeding/downloading you are connecting with other people. Each has to know your IP in order to send or receive data. It's not hard, then, to look for all of the IPs downloading or seeding a certain torrent. If you go to a website that shows your ip (whatismyip.com is one, but I don't know how reliable it is so refraining from linking), you'll see it also has geographical information and the name of your provider. If you're using the IP provided by your internet provider, then a subpoena can have them cross-reference who they assigned a given ISP to at a given point in time, eventually leading to you. This is why many torrenters place another neutral computer between them and other peers (VPN being the most common). This way the IP downloading the torrent belongs to this proxy computer, who sends it along to you. Still not fool-proof, though, since there's nothing keeping a VPN from furnishing subscriber information except for their own policies. --— Rhododendrites talk16:04, 10 March 2014 (UTC)[reply]

Windows 8.1 changed my account from Administrator

Hello! I logged into Windows this afternoon and thought it was strange that my desktop picture had been changed to a default. Within seconds, I also realized that I could not access most of my files...eventually, a pop up came up and told me I was logged into a temporary account. I only have one account on the PC, and I had logged into it as usual. I rebooted the computer, and got the same thing. Two shutdowns later, everything seemed fine and back to normal.

So I don't really need a solution, but it was pretty scary. What happened, though? How can I prevent it in the future? 74.69.117.101 (talk) 22:47, 10 March 2014 (UTC)[reply]

Bug. 70.174.141.142 (talk) 01:39, 11 March 2014 (UTC)[reply]

LAPTOP TASKBAR

The taskbar of my laptop has been rotated from the bottom to the right. I have to apply for one day's leave to take it to the agent in the town for repairs. Is there any simple remedy? Thank you.175.157.25.119 (talk) 23:36, 10 March 2014 (UTC)[reply]

Just drag it back to the bottom. Edokter (talk) — 23:40, 10 March 2014 (UTC)[reply]
Exactly. 70.174.141.142 (talk) 01:32, 11 March 2014 (UTC)[reply]

March 11

How do I use the camera in my table-top computer?

I have a table top computer "Inspiron One" from DELL. I do not know the model number. It has the computer integrated into the large display screen with two feet in front and one in back. The keyboard and mouse are blue-tooth devices (i.e. they use radio rather than wires to talk to the computer). I can see that the screen has a camera lens at the top. When we first got it, the person who installed the computer was able to use Skype to talk to other people. So I presume that the camera worked with Skype at that time. However, I have not been using Skype and the software appears to be obsolete at this time. I would like to be able to use the camera to take pictures of myself and other people who visit here for possible use on Facebook, but I do not know how to do that. I have not been able to find any instructions on how to use this camera. Does anyone know where to look for them? Thank you. JRSpriggs (talk) 05:15, 11 March 2014 (UTC)[reply]

I don't know what software your computer may have come with, but there are plenty of photo-taking apps. This one [7] has some silly features, but will also just take standard photos. Google /windows photobooth app/ for other examples. (PS I wouldn't say Skype is obsolete, but your installed version may not be the latest version. Check in the Skype app for a "software update") SemanticMantis (talk) 16:19, 11 March 2014 (UTC)[reply]
manual. 70.174.141.142 (talk) 20:48, 11 March 2014 (UTC)[reply]

Word font problem on the computer

This is from China. The question is what's the difference between the word font AvenirLTStd-Black and Avenir-Black? And what's the LTStd stand for?Tiankong411 (talk) 06:39, 11 March 2014 (UTC)[reply]

Font names often include an abbreviation of the name of the foundry; in this case, LT is for Linotype (Mergenthaler Linotype Company). See Avenir (typeface) and the Adobe page. --  Gadget850 talk 10:12, 11 March 2014 (UTC)[reply]
In olden times the foundry name came first (ITC Garamond, Monotype Corsiva) but a suffix makes more sense for a computer menu. —Tamfang (talk) 22:16, 11 March 2014 (UTC)[reply]
Probably you have versions of Avenir from different publishers. Look out for small differences in size (letter height), weight (stroke thickness) and spacing. —Tamfang (talk) 22:19, 11 March 2014 (UTC)[reply]

extracting orientation information via libjpeg.

Like many people, I use libjpeg for reading JPEG images into my C++ code. I've noticed that it doesn't seem to take note of the EXIF flags that specify the orientation of the image. I can't seem to find a way within libjpeg to either tell it to pay attention to the flag and load the image the right way up...or to read the flag myself and re-order the data.

Since the documentation of libjpeg is kinda sparse, I'm having a hard time figuring out how to do this.

Help! SteveBaker (talk) 20:57, 11 March 2014 (UTC)[reply]

As far as I know you have to use an EXIF metadata library like libexif, read the "Orientation" entry yourself, and then handle all the cases with your own graphics library. If I understand it correctly there are four rotation options (0, 90, 180, 270) and an additional bit for horizontal mirror and another for vertical mirror. This GIThub has sample images for various orientation settings, so you can test your code. Some higher level graphics library, like libmagick, can take care of this automagically. -- Finlay McWalterTalk 21:25, 11 March 2014 (UTC)[reply]
If you don't want to depend on a full EXIF library, you could adapt the code from jpegexiforient. -- BenRG (talk) 22:26, 11 March 2014 (UTC)[reply]
I wrote some sample (C99) code using libexif:
example code
The following discussion has been closed. Please do not modify it.
#include <stdio.h>
#include <libexif/exif-data.h>

static void show_orientation(const char* filename){
  printf("%-50s ", filename);

  ExifData * exif_data_ptr = exif_data_new_from_file(filename);
  if(!exif_data_ptr){
    puts("error reading EXIF");
    return;
  }

  ExifEntry * orientation_entry_ptr = exif_content_get_entry(exif_data_ptr->ifd[EXIF_IFD_0],
							     EXIF_TAG_ORIENTATION);

  if(!orientation_entry_ptr){
    puts("no data");
    exif_data_unref(exif_data_ptr);
    return;
  }

  // see description of orientation data int16u at 0x0112 in:
  //   http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/EXIF.html
  printf("0x%02x ", orientation_entry_ptr->data[1]); // lsbyte of int16

  // libexif has code to pretty-print tag values for human consumption
  char buffer[64];
  if (exif_entry_get_value(orientation_entry_ptr, buffer, sizeof(buffer))){
    puts(buffer);
  }
  else {
    puts("");
  }

  exif_data_unref(exif_data_ptr);
}

int main(int argc, const char** argv) {
  for(int i=1; i< argc; i++) {
    show_orientation(argv[i]);
  }

  return 0;
}
-- Finlay McWalterTalk 22:38, 11 March 2014 (UTC)[reply]
FYI, this posting (which is where I nicked the github link) has a summary of orientation support in various online services - suggesting quite a few don't do a stellar job. -- Finlay McWalterTalk 22:44, 11 March 2014 (UTC)[reply]

Why has wikipedia loaded so slow for the last 10 days?

I access the internet from two different Verizon DSL accounts in the NE US. Forthe last 10 days, between ~6PM and midnight the connection to Wikipedia, and only Wikipedia, over either account, in two different states, has been incredibly slow, often freezing entirely. This is the case on two different computers, using three different browsers. No other site is slowed or freezes. Could this be an issue with Wikipedia, or something to do with the recent net neutrality ruling? I am confounded. Thanks. μηδείς (talk) 22:45, 11 March 2014 (UTC)[reply]

Our article on Backdoor (computing) could use some attention by our more technically savvy editors. Please add it to your watchlist. Thanks! A Quest For Knowledge (talk) 23:10, 11 March 2014 (UTC)[reply]