Wikipedia:Reference desk/Archives/Computing/2008 December 4

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


December 4[edit]

Port Assignment reg,[edit]

can well known port be used for other services

for example can i use 21 for HTTP ? —Preceding unsigned comment added by R.srinivaas (talkcontribs) 12:22, 4 December 2008 (UTC)[reply]

yes. -- Fullstop (talk) 12:38, 4 December 2008 (UTC)[reply]
but firefox does not allow to access these ports when i type http://12.0.0.1:21 ;it reports an Error. why ? —Preceding unsigned comment added by R.srinivaas (talkcontribs) 12:48, 4 December 2008 (UTC)[reply]
You can't just pick a port unilaterally; the server at 12.0.0.1 must be running something on port 21 that can respond to an http request. Ports are "well known" so that services can be used without any specific knowledge of the configuration on the server. --LarryMac | Talk 13:08, 4 December 2008 (UTC)[reply]
yes, the server at 12.0.0.1 is listening to 21 , but still firefox reports error ! —Preceding unsigned comment added by R.srinivaas (talkcontribs) 13:16, 4 December 2008 (UTC)[reply]

It's a problem with your server, obviously. I just used telnet to connect to 12.0.0.1 on port 21, and didn't even get an error message. If the server worked, it'd at least give me an error message. Are you hosting a page on the site?

C:\>telnet 12.0.0.1 21

GET / HTTP/1.1

_

Nothing.--Rjnt (talk) 13:25, 4 December 2008 (UTC)[reply]

12.0.0.1 isn't even a valid IP address. It might be OK on your local network - but not out here in the big wide world. SteveBaker (talk) 22:55, 5 December 2008 (UTC)[reply]
Perhaps the original poster was referring to 127.0.0.1? -- JSBillings 16:58, 6 December 2008 (UTC)[reply]

pc not being able to use internet[edit]

I have a network in my house, in this network we are using now 2 notebooks and 1 pc. With the notbooks I am able to use the internet, but with the computer its not possible, this started 2 days ago. The computer is able to see other computers of the lan and the others are able to see then (a example get use the printer of this computer). My notebooks are connected by wires and not wireless. What can be the problem?? —Preceding unsigned comment added by 201.79.92.244 (talk) 13:34, 4 December 2008 (UTC)[reply]

Is the "network" wireless or wired? Is your desktop comp connected by wireless or wired? What OS is it using? What OS are the laptops using? All of these would help us answer your question. flaminglawyercneverforget 23:30, 4 December 2008 (UTC)[reply]

one laptop is using vista, the other is using xp, the computer with the problem is using xp. all the pc and notebooks are connected to the nertwork by wires. the network is wired only i dont have the need hardwares needed to make wireless only things connect to the network. —Preceding unsigned comment added by 201.79.168.112 (talk) 01:23, 5 December 2008 (UTC)[reply]

This is pretty obvious but: Have you tried using different ethernet cords? The one you're using could be faulty. And, it may be that the Internet is working fine, but your browser setting are weirded up. Take a look at your network/offline settings in FF/IE. flaminglawyercneverforget 02:26, 5 December 2008 (UTC)[reply]

no didnt worked, on internet explorer i gone to "find connections problems" (dont know if is translated exactly like this in english, and the program said that there is a problem with msafd igmp, the windows program tell me to fix is but when i press the button to fix the program crashes.tried to make a repair install on windows xp but didint worked.201.79.168.112 (talk) 20:11, 6 December 2008 (UTC)[reply]

downloaded a program that fixed the corupted files and now i am able to use internet.201.79.168.112 (talk) 21:13, 6 December 2008 (UTC)[reply]

Low-level protocol for international Internet connections[edit]

Hello.

Sorry for my bad english; my mother tongue is french.

When I read about the low-level protocols of Internet, I usually read "LAN" + "Ethernet". But nobody talk about the low-level protocols used outside the LANs: for exemple for nationnal or international communications. Do you know which protocols are used for these networks ? For exemple, in a country, the Internet wires between two towns do not use Ethernet...

Thanks in advance, A.C. from Belgium. —Preceding unsigned comment added by 212.166.19.61 (talk) 13:53, 4 December 2008 (UTC)[reply]

Actually, it often is Ethernet (see Metro Ethernet, for example), but there are others listed at WAN. --Sean 19:13, 4 December 2008 (UTC)[reply]
Technically - ethernet is a cable/electronic standard - not a protocol. They don't use Ethernet because Ethernet is limited to a few hundred meters of distance. TCP/IP and UDP are the main protocols that the Internet is built upon - and they are the same on big networks as on little ones - although they might maybe be built on some lower level infrastructure in some cases. SteveBaker (talk) 22:53, 5 December 2008 (UTC)[reply]
Although there are Ethernet is the most common topology in local area networks, there are also other LAN topologies. WLAN (802.11) comes to mind, and there are some semi-obsolete ones like ArcNet (star topology) and a couple of ring ones (e.g. token ring). I think the article 212.166.19.61 is looking for is Data Link Layer. -- Fullstop (talk) 23:58, 5 December 2008 (UTC)[reply]
If you're interested in knowing how internet traffic is handled between large networks, you might want to read Synchronous optical networking and Optical Carrier. -- JSBillings 16:57, 6 December 2008 (UTC)[reply]

Downloading an ISO without it taking 2 days[edit]

I would like to download Fedora 10 onto my computer, but my internet connection goes all wonky about halfway thru. It starts out at 2 MB/s and then drops to around 433 KB/s. My computer is now bogged down with downloading this ISO image. Last time i checked, it was at 75% completion with 2 days remaining at a transfer rate of 104 KB/s. I know there are other ways to download ISOs without just downloading it. Can anyone help me with this? (PS: I do know about BitTorrent, but it is a sucky program and I hate it, so don't suggest it please.)

BTW, is it possible to extract the files from a .torrent file without using any special programs and NO connection to the internet?

 Buffered Input Output 14:23, 4 December 2008 (UTC)[reply]

With that kind of bandwidth, you might be better off purchasing a Linux CD. Here's a list of vendors. I used to use CheapISO.com
Extraction from the .torrent file would not be possible. It contains a checksum, but that does not contain sufficient information to re-create a larger file—otherwise it would be compression. / edg 15:07, 4 December 2008 (UTC)[reply]
Instead of downloading the full ISO (which is a DVD image, not a CD image), download the Fedora Live CD. It is rather small and fits on a single CD (with plenty of room left over). Once you burn the ISO and boot from the CD, you'll go into a functioning Fedora run completely from the CD. On the desktop will be an icon that says "Install to Hard Drive". Click that to install Fedora. Then, you can run "yum update" to download the latest packages. Then, you can use yum to install anything else you want that wasn't on the live CD. -- kainaw 15:16, 4 December 2008 (UTC)[reply]
Use a different torrent downloader if you don't like BitTorrent. Really, if you want to download it, and have connection problems, a torrent download is better than a direct download, because if something gets wonky in between you and one server there are a million other routes it can take to get to you. There are a lot of other torrent programs out there and many of them are not "sucky". --98.217.8.46 (talk) 15:26, 4 December 2008 (UTC)[reply]
Ask a friend with a better connection to download for you what you want and burn it to a CD/DVD - back in the days of old I used to do this. Also, when I didn't have a CD writer we used to have burn parties at a friend's place - imagine, just one day to burn ten to twenty CDs. --Ouro (blah blah) 20:48, 4 December 2008 (UTC)[reply]
I had the same problem when I tried Fedora. But I think I downloaded the CD, so it slowed down a lot (which was depressing), but it still finished within a couple of hours. Once you get it installed finally, then you have another 250 MB or so of updates to download File:Rolleyes.gif. And then you can download your apps ;-).--Rjnt (talk) 21:31, 4 December 2008 (UTC)[reply]
You can also do a network install of Fedora (just get the small 114MB net install CD image), but if you have a bad Internet connection then it is going to suck too. --128.97.245.91 (talk) 01:33, 5 December 2008 (UTC)[reply]
You might also look to see if there is a local Linux user's group in your area. Here in North Texas, we have NTLUG. At NTLUG meetings we have a free 'installathon' where we invite members of the public to bring their computers to the club meet and we'll install the Linux of their choice on there (and even feed them free pizza while we do it! Suck on THAT Microsoft!!) Additionally, many clubs will give away free Linux CD's and DVD's (we do that too) - and if you post a help message to their mailing list, you could probably even find someone who'll drive to your house with CD in hand and help you out. We Linux fanatics are fanatical (but also friendly!).
    .-.
    /v\    L   I   N   U   X
   // \\  >Phear the Penguin<
  /(   )\
   ^^-^^
SteveBaker (talk) 22:49, 5 December 2008 (UTC)[reply]

Using USB flash drive in win98SE[edit]

Im trying to attach a 16GB USB flash drive to my OEM win98SE version 4.1. The computer installs it as a Plug and Play drive which shows up as E: on the My Computer screen. I downloaded the win98SE version 3.3 drivers from the net, it installed with no errors, and the device manager said that it has no errors. When I look at its proprties, it sometimes shows it as completely full and sometimes completely empty. In either event if I try moving anything to the drive it crashes the operating system. What can I do? Phil_burnstein (talk) 15:37, 4 December 2008 (UTC)[reply]

Try these drivers - I've used them to access my Creative ZEN Stone Plus and other USB mass storage devices under win98se and got them to cooperate nicely (and Creative says that the said device will only work well with xp or that other recent OS, which turned out only to partly be true). One thing that didn't work well was when a particular USB device's battery was charged from the USB port - but data transfers worked fine. Try this and tell us if it worked for you. Cheers, Ouro (blah blah) 20:44, 4 December 2008 (UTC)[reply]
It worked beautifully!!! Many, many thanks. Phil_burnstein (talk) 00:17, 7 December 2008 (UTC)[reply]

Translating code from one programming language into another programming language[edit]

How easy is to 'translate' between programming languages? I am mainly interested into 'translating' from Python into Perl, PHP or Java. Is it possible to do it automatically?--Mr.K. (talk) 17:24, 4 December 2008 (UTC)[reply]

It's going to depend heavily on how similar the languages are. A sufficiently "weird" language may require rethinking the problem in order to translate to a more conventional language. There have been automated tools in some cases to do this, but I don't know how good they usually are. To go from python to java, you may want to look into jython. It's not a translator per se, but it may be useful to solving your problem. Friday (talk) 17:35, 4 December 2008 (UTC)[reply]
O, yes, this jython thing looks nice. I suppose Python - Perl should be even easier. However, I didn´t find the appropriate tool. --Mr.K. (talk) 18:26, 4 December 2008 (UTC)[reply]
I mean, it depending on what you accept with the definition of "translating". If you just mean you want a program that computes the same result as the original program, then it's trivial to do it automatically. Just get an interpreter for the original language in the new one, and include the original program as a text string or something, and run it through the interpreter. (Or if you can't find such an interpreter, get an emulator for the type of binaries your computer runs, and run the binary for the original program through it.) This follows from the fact that all programming languages are Turing-complete. --71.106.183.17 (talk) 20:10, 4 December 2008 (UTC)[reply]
It is (in principle) perfectly possible. It is (in practice) utterly impossible.
  • The 'church-turing' thesis says that any device which is 'turing-complete' (which certainly includes every programming language on the planet) is equivalent to every other turing complete device. So it is mathematically certain that language one can be converted into the other. That's the theory.
  • In practice, programming language are subtle - they have teeny-tiny details that are unique to them that make automatic translation so insanely difficult as to be impossible for all practical purposes.
If someone had a gun to my head and was forcing me to do it (now there is a bizarre plot for a Bond movie!), this is what I'd do: I'd find an existing compiler for the source language (something like the GNU compiler suite, for example) which has a back-end that can be swapped out to make it write machine code for different architectures of CPU. Then, I'd invent a kind of "machine code" that was made up of instructions in the target language - simple things like an "add" instruction that said "a = b + c ;". I'd make up one or two lines of code in the target language for every instruction that the original compiler needed to generate - and I'd plug that into the 'back end' of the compiler for the source language. Then "compiling" the source language would transform it into the destination language. The result would work perfectly - and might not be too horribly inefficient - but the resulting programs would be utterly unreadable to humans - and therefore quite useless for all practical purposes.
If you want to translate between language A and language B such that the resulting code in B can be worked on by humans - then you probably need a skilled human to do the translation. It's difficult and painful work - but it's pretty much the only way.
SteveBaker (talk) 22:42, 5 December 2008 (UTC)[reply]

Something is wrong with my iPod[edit]

Here's whats going on. My friend got a new iPod and gave me his old 4GB. I was using it, and i plugged it into my computer, and it did nothing. So i unplugged it, and now its been stuck on for quite some time now. The screen is locked up, and i cant shut it off. Any suggestions?71.223.209.11 (talk) 20:06, 4 December 2008 (UTC)[reply]

I don't have any specific advice for iPods, but, in general, for other devices, holding down the power button attempts a reboot. If that fails, trying pulling the batteries out and putting them back in. StuRat (talk) 20:19, 4 December 2008 (UTC)[reply]
I, and many other people, have experienced this same problem. There is no solution. You have to wait until the battery runs out, then plug it into your comp. It'll charge then, and should work. flaminglawyercneverforget 22:02, 4 December 2008 (UTC)[reply]
Does that mean the batteries aren't removable ? That would mean they disabled the final reboot option, assuming their product would never lock up. And how'd that assumption turn out ? :-) StuRat (talk) 23:07, 4 December 2008 (UTC)[reply]
Well, sure, the batteries are removable - if you want to void your warranty and risk screwing up the internal workings of your iPod by taking it apart. And I do think that they thought it might freeze up, but they thought that it wouldn't happen very often (they were right, too!); so they gave it some thought and decided, "Hey, maybe our buyers are smart enough to realize that it's solvable by just letting the battery die." flaminglawyercneverforget 23:12, 4 December 2008 (UTC)[reply]
Did you try resetting it? Basic, but often the solution. Hold down the power and center buttons. I seem to recall this happened to my sister's iPod, and letting the battery run dead was the only solution that worked. DaRkAgE7[Talk] 00:38, 5 December 2008 (UTC)[reply]
Thats what i ended up doing. thanks anyway 71.223.209.11 (talk) 02:41, 5 December 2008 (UTC)[reply]

Don't make me kick my Puppy....[edit]

I have Puppy Linux on two computers, and Windows XP on two others. I'm able to communicate via the network hub between XPs or from Puppy to XP, but not from Puppy to Puppy. I also have 2 Windows 98s on the hub, and a Damn Small Linux, to boot. So, how can I get my two Pups to talk to each other (or bark, as the case may be) ? StuRat (talk) 20:28, 4 December 2008 (UTC)[reply]

What does "communicate" mean? --71.106.183.17 (talk) 20:38, 4 December 2008 (UTC)[reply]
I'd like to be able to send files back and forth between Pups. StuRat (talk) 21:40, 4 December 2008 (UTC)[reply]
FTP should work regardless, using IP addresses. You can also set up NFS mounts between Unix filesystems. Franamax (talk) 21:43, 4 December 2008 (UTC)[reply]
How do I set up NFS mounts between Unix filesystems ? StuRat (talk) 12:38, 5 December 2008 (UTC)[reply]
Sounds like your systems are using Windows domain discovery to "communicate", the XP's can find each other and the puppies can find the XP's. Do you have DNS set up somewhere? The puppies will need that to name each other.
In any case, you should be able to telnet between the Linuxes, using their IP addresses. Franamax (talk) 20:51, 4 December 2008 (UTC)[reply]
I don't know if I have a Domain Name System set up on the Puppies. How can I check ? StuRat (talk) 12:05, 5 December 2008 (UTC)[reply]
You may find some useful information in the "Setiing up a lan with two Suse machines" topic higher up on this page. --LarryMac | Talk 21:27, 4 December 2008 (UTC)[reply]
You say you have these seven (2 puppy, 2 XP, 2 win98 and one DSL) computers connected to the internet via a hub??? Where do the ip addresses you use come from? Is there a device in your network that acts as a DHCP server? Is your ISP providing them?? Are you using static ip-addresses??? (if you don't know, the answer is "no"). We need more precise info to give a complete answer, but please examine the /etc/hosts files of the puppies, to see if they reference each other. --NorwegianBlue talk 22:44, 4 December 2008 (UTC)[reply]
I think it's a hub, yes, but for only 4 PCs, 3 of which are dual-boot. I don't understand why this is so hard to believe. Are 4 PCs an absolute limit for all hubs ? We just installed a switch, too, on one of the hub ports, to support additional PCs. I really don't understand the diff between these, however, or how it affects Puppy-to-Puppy file transfers. My ISP, Yahoo/ATT/SBC/whatever_they_call_themselves_this_week, provides a device (is this a DHCP server ?) to access the Internet via the phone lines (a Digital Subscriber Line, I believe, not dial-up or cable). I think this assigns one (dynamic ?), external I/P address to our network. I believe we also have static, internal I/P addresses for each PC. Would those have been assigned by the hub ? See the /etc/hosts contents below. StuRat (talk) 12:13, 5 December 2008 (UTC)[reply]
(Please try to be less scream-ish; it hurts the ears of others, and is sometimes interpreted as "Go away, n00b!" by the receiving party.) flaminglawyercneverforget 23:08, 4 December 2008 (UTC)[reply]
Please accept my apologies. I'll reconsider my use of repeated question marks and bold fonts. However, StuRat has been around here for a while, and has contributed a lot to the refdesks. StuRat is in my mind no n00b, and that is why I perhaps was a bit careless in the way I worded the response. You are right, of course, that it is unnecessary to be noisy. However, I'm confident that it'll take more than this to scare StuRat away :-). StuRat, please give us a bit more info, and we'll be happy to help. And I promise, I'll be more gentle on true n00bs. --NorwegianBlue talk 23:45, 4 December 2008 (UTC)[reply]
Good. I don't consider Stu a noob either, so I'm glad we agree. So on with the show. flaminglawyercneverforget 00:17, 5 December 2008 (UTC)[reply]
Well, when it comes to PC/Linux networking, I am a newbie, and was afraid that, if I posted this Q, I'd get a bunch of questions I can't answer (and maybe be teased for not knowing the answers). I should add that many of the machines are dual-boot, and boot in Windows unless I use a Linux boot disk. Here's the map:
PC A) Windows XP or Puppy Linux
PC B) Windows XP or Puppy Linux
PC C) Windows 98 or DSL
PC D) Windows 98
This creates a complication that the one Puppy may not know the I/P of the other Puppy, since it may not have been a Puppy at boot time. The contents of the /etc/hosts file on one Puppy are as follows:
127.0.0.1   localhost puppypc
192.168.1.1 pc2
192.168.1.2 pc3
192.168.1.3 pc4
StuRat (talk) 12:02, 5 December 2008 (UTC)[reply]

(outdent)

I'm sorry my previous post came out sounding arrogant, no teasing was intended. First, the basics:

  • To communicate on a network, a PC needs an ip-address. There are two ways of obtaining one: the PC can request one from a DHCP-server, or it can be configured to use a fixed (static) ip address. The usual setup in a windows-only network is that the PC requests its ip-address from a DHCP-server.
  • There is no guarantee that a PC receives the same ip-address on subsequent boots. The ip-addresses assigned, may depend on the order in which the PC's are booted.
  • A hub is a passive device, which just would just forward a request for an ip-address to the device that's connected as its "uplink". I actually had a setup like you described (several PC's connected to the internet through a hub, each getting a separate ip-address from my ISP's DHCP-server), but that was back in 1995, and that's the reason I was so amazed. Now (or soon), the number of PC's in the world is larger than the number of ip-addresses (IPv4 addresses, to be precise). Therefore, I was amazed that an ISP would grant you seven IP-addresses for the price of one.
  • Therefore, I think there are two possibilities: either the device you refer to as a hub is actually a router, or the device provided by your ISP is acting as a DHCP server. It doesn't really matter which is which, there is a DHCP server between your PCs and the internet.
  • I'm not completely sure about the difference between a switch and a hub either, but a hub is a more old-fashioned device. My understanding is that hubs send all the network traffic they receive everywhere, while switches make point-to-point connections, and avoid swamping the network with unnecessary traffic. If we take the trouble to read the articles, I'm sure its explained there.
  • As a workaround for the global scarcity of ip-addresses, your router, when acting as a DHCP-server, will give you a private ip adress, that is, an address that's unique on your network, and that is prohibited for use externally on the internet. What's visible on the internet, is the ip-address of your router, and your router gets its ip-address from your ISP. Your PC, and the PC's of millions of other users, gets addresses in the 192.168.1.1 − 192.168.1.255 range. The address is unique on your network, but it isn't transmitted to the outside world, so the fact that there are millions of PC's with the ip-address 192.168.1.100, isn't a problem.
  • When setting up a network, you need to make sure that no two machines have the same ip-address. If some of your machines use DHCP, and others have fixed ip-addresses, you must make sure that there are no ip-address collisions. Most routers by default reserve some ip-addresses for static use, and have a range that is assigned dynamically (e.g. 192.168.1.100 - 192.168.1.200 being reserved for DHCP, and the rest for static ip-addresses).
  • The fact that you use boot disks for puppy linux is important. I very much doubt that a boot disk would use static ip-addresses, it would use DHCP. I think the problem is that your /etc/hosts entries don't reflect the actual ip-addresses used. First, 127.0.0.1 is ok, that's a generic reference to self, i.e. the local computer. However, "192.168.1.1 pc2" is probably bogus. Most routers I've seen, reserve the 192.168.xxx.1 address for themselves - you can access the router by typing 192.168.1.1 in the address bar of your browser. The "192.168.1.2 pc3" and "192.168.1.3 pc4" entries are also suspicious. As stated, routers usually reserve the lowest ip-addresses for use as static addresses.
  • To determine which ip-address your puppy uses, you can type "ifconfig" from the command line as root. There will be several lines of output, one of which shows the actual ip address used. If you type "ifconfig" from one one of your puppies and make a note of its ip-address, you can access it by ftp or sftp using the ip-address, both from the other puppy and from the windows machines. Remember that the ip-address may change upon subsequent boots.
  • I tried out puppy linux a couple of years ago, and I vaguely recall that it had a file or something in the PC file system, where you could save settings. Thus, even if you boot from a CD, you may have the option of setting up static ip-addresses. But first, do some diagnostics based on what I've written above. If you can confirm that you are able to save settings, and want to try to assign static ip addresses to your puppies, let us know, and I (or someone else) will be back and try to guide you. --NorwegianBlue talk 20:44, 5 December 2008 (UTC)[reply]
StuRat,...
On each linux box type ifconfig eth0 and tell us what it says.
On each win box type ipconfig -a and tell us what the section that begins with "Ethernet adapter <some name>" says.
-- Fullstop (talk) 23:04, 5 December 2008 (UTC)[reply]
Ok, here's the I/P addresses (with rooms noted so I can recall which is which):
PC A) Windows XP or Puppy Linux  (living room)    192.168.1.103
PC B) Windows XP or Puppy Linux  (basement)       192.168.1.102
PC C) Windows 98 or DSL          (my bedroom)     192.168.1.101 
PC D) Windows 98                 (computer room)  192.168.1.100
But, are these permanent I/Ps or different depending on the boot order ? Do I now edit the /etc/hosts files to add these addresses ? StuRat (talk) 03:48, 6 December 2008 (UTC)[reply]
These are definitely DHCP-generated addresses. That implies that they're not guaranteed to remain stable, although your router may have a mechanism that reserves an ip-address to each MAC address for a given period of time. How did you get the ip-address for PC D? With a linux boot CD or from windows? In windows, the command corresponding to ifconfig is called ipconfig. Note that the ip-address of a dual-boot PC may be different when you boot into windows and linux (and if you set up static ip-addresses in linux, but not in windows, it's guaranteed to be different).
Did you try ftp'ing or sftp'ing your puppies using the ip-addresses?
The /etc/hosts that you posted is useless because it doesn't reflect the ip-addresses being used. I'm on a ubuntu PC that uses DHCP now, its /etc/hosts looks like this:
127.0.0.1       localhost
127.0.1.1       nemi
Followed by some IPv6 stuff, which you don't need if it isn't there already. All 127.xxx.xxx.xxx addresses map to your local computer, whether they're listed in /etc/hosts or not, see Loopback#Virtual_network_interface. And note that there is no mention of "real" ip-addresses. You wont break anything if you modify the hosts files of your puppies like so:
127.0.0.1        localhost puppypc
192.168.1.103    fido
192.168.1.102    guido
If you do this on both puppies, you should be able to ftp or sftp one from the other using its name, ftp fido from guido, provided the ip-addresses remain stable. Something they probaby won't do, in the long run.
To set up static ip-addresses, the relevant files are /etc/network/interfaces and /etc/resolv.conf. If you want to try this out, please show us their contents, and we'll be back and try to help. --NorwegianBlue talk 10:52, 6 December 2008 (UTC)[reply]
I used Fullstop's advice for finding the I/P addresses (except for the -a flag, which choked on Windows 98). They were the same when I booted under Windows XP or Puppy, which is good. I certainly do want static I/P addresses, if those are needed so I can update the /etc/hosts files and allow Puppy-to-Puppy writes. However, if there's a way it could automagically figure out the dynamic I/P addresses and update the /etc/hosts files accordingly, that would be even better. StuRat (talk) 14:50, 6 December 2008 (UTC)[reply]
I checked out the files you mentioned, and /etc/network/interfaces doesn't appear to exist on the Puppies, while /etc/resolv.conf is a link to /etc/ppp/resolv.conf, which is a link right back to /etc/resolv.conf. If I try to ping one Puppy from another it works fine, but if I try telnet it fails with "Connection refused". Also, what I was calling a hub is apparently actually a router, if that makes any diff. StuRat (talk) 16:14, 6 December 2008 (UTC)[reply]
  • (outdent)

Your description of the files in /etc was so different from what I'm used to, that I had to check this out for myself. I downloaded the most recent version of puppy linux, "puppy-4.1.1-k2.6.25.16-seamonkey.iso". /etc/resolv.conf was just an empty file (not a softlink), /etc/network/interfaces was, as you said, nonexistent, and I did not immediately have a working internet connection. On the top left of the screen, there was a triangularly arranged set of icons. The bottom left of the triangle was an icon named "connect". I clicked it, and a new dialog appeared. I selected "Internet by network or wireless LAN". The next dialog shows your network card, or cards, if you have more than one. I'm assuming you only have one. There'll be a button, "eth0", click it. The next dialog starts out with "OK, let's try to configure eth0". Select "Static IP".

Now, you'll have to chose a static ip address for each puppy. From what you already have told us, we know that your router starts assigning dynamic ip-addresses from 192.168.1.100 and upwards. Therefore, you want to select an ip address lower that 192.168.1.100. Let's start with 192.168.1.18 for puppy1, and 192.168.1.19 for puppy2.

When setting up puppy1, enter 192.168.1.18 as its ip-address, 255.255.255.0 as its net mask, and 192.168.1.1 as the Gateway. I'm assuming 192.168.1.1 is the address of your router. You can doublecheck this by examining the output of ifconig (linux) or ipconfig (windows), but it's a pretty safe bet. In the DNS parameters fields (primary and secondary), enter the first and second DNS server addresses of your ISP. You may find these on the website of your ISP. Otherwise, use Knoppix, and have a look at the nameserver entries of /etc/resolv.conf after booting with knoppix. There'll probably be three nameserver entries. I selected the first two, and entered those in the DNS parameters fields. Then, I pressed "OK". (When I did this more than once, attempt number 1 was successful, 2 gave an error message because the configuration already existed, and appeared to wipe out the previous configuration, attempt number 3 was successful and so on).

At this point, the internet connection worked, and ifconfig told me that my ip-address was 192.168.1.18. resolv.conf was no longer empty, it was not a softlink, but a file containing these lines:

nameserver 193.213.112.4
nameserver 130.67.15.198

There was still no /etc/network/interfaces. However I found an /etc/network-wizard/network/interfaces/00:f0:a3:79:E1:0C.conf, which contained

STATIC_IP='yes'
IP_ADDRESS='192.168.1.18'
NETMASK='255.255.255.0'
DNS_SERVER1='193.213.112.4'
DNS_SERVER2='130.67.15.198'
GATEWAY='192.168.1.1'
IS_WIRELESS=

The 00:f0:a3... name probably reflects the MAC address of my network card (and btw I've modified the name, out of paranoia about posting details of my system on the internet). This file appears to correspond to /etc/network/interfaces. Now, this PC has a static ip-address. I was prompted about saving the modifications to the local hard disk, answered yes, and they were intact when I booted again.

Now, we modify /etc/hosts. Mine was at this point exactly like what you posted. A reasonable modification would be:

127.0.0.1 localhost puppypc
192.168.1.18 puppy1
192.168.1.19 puppy2

Finally, there's a file callled /etc/hostname, containing "puppypc". I would change that to the name you have chosen for each PC, let's say puppy1 for the first one. And that's it, you should now have a working setup with static ip addresses. If you set up the rest of your PC's correspondingly, ftp'ing using the names of the PC's should work. Note that you need to start the ftp daemon on the puppy, it wasn't on by default. It's in the menus, under network|PureFTPd ftp server. --NorwegianBlue talk 20:33, 7 December 2008 (UTC)[reply]

Thanks. Were you able to do this on two Puppy Linux computers and have them send files between each other ? StuRat (talk) 00:21, 8 December 2008 (UTC)[reply]
I set up one computer with Puppy linux, and tested ftp against a Debian computer (which already was set up with static addressing). I set up /etc/hosts appropriately on both, ftp'd in both directions, using the computer names. --NorwegianBlue talk 15:09, 8 December 2008 (UTC)[reply]
I see. Did you get the same "Connection refused" error before you did the set up ? StuRat (talk) 17:35, 9 December 2008 (UTC)[reply]
I think "Connection refused" indicates that you haven't started the ftp daemon on the pc you're trying to connect to, see my post above about how to start it. --NorwegianBlue talk 18:22, 9 December 2008 (UTC)[reply]

Set up static IP addresses and host names on the router. In fact, unless your router is some really cheap job, it will have already done something of the kind. The Windoze boxes will also have "registered" themselves with the router (more precisely: its DNS relay) using the names you gave them. -- Fullstop (talk) 18:15, 9 December 2008 (UTC)[reply]

actionscript question[edit]

My Actionscript 3 is a little rusty.

I have a Flash CS3 project with, say, 50 movieclips on it of the same thing, called CLOCK. They do not have individual instances.

What I'd like to do is first apply the .stop() command to all of the CLOCKs, and then one by one enable the CLOCKs in a random order.

The basic coding of this I know, I just don't know the best way for referencing all of the CLOCKs one by one. They don't have individual instance names and I'd rather not key that in by hand. I can't have them generated on the fly programatically because their positions are rather important.

Best approach to this? Point me in the right direction? It's been quite awhile since I used Actionscript so I'm having a hard time figuring out what I'm looking for... --140.247.237.64 (talk) 22:19, 4 December 2008 (UTC)[reply]

I don't know about this language in particular, since I have never used it, but I can say that (like in most languages) it seems reasonable to assign each clock a number, then use some form of random number generation (your language probably has one) to stop each one individually and randomly. I realize that this is vague, but at least it's some form of idea. flaminglawyercneverforget 22:51, 4 December 2008 (UTC)[reply]
Perhaps I wasn't clear... let me reiterate. I know how to set up the basic loops and random number generators. That's not hard. What I need is know how to reference the movieclips even though they don't have instance names. --140.247.11.38 (talk) 23:11, 4 December 2008 (UTC)[reply]
Try giving each clip an "instance name" by assigning it to a variable (a rather short variable name, since you said you didn't want to key them in seperately). flaminglawyercneverforget 23:16, 4 December 2008 (UTC)[reply]
Actionscript doesn't work this way. I think I might have to wait for someone with more specific knowledge of the language. "Instance name" is a technical term. --98.217.8.46 (talk) 23:37, 4 December 2008 (UTC)[reply]

Proxy[edit]

What is the deal here? I just downloaded FoxyProxy for Firefox, then went to whatismyip.com , and the website correctly told me my IP address. Is there a point to this? I mean, if websites can still see my IP, then I am not exactly 'anonymous'.--KageTora - the RefDesker formerly known as ChokinBako (talk) 22:30, 4 December 2008 (UTC)[reply]

FoxyProxy is not an addon that is a proxy. It just allows you to set up a proxy, much easier-ly than just with standard Firefox (because Firefox's proxy options are very minimal and bare-bones). flaminglawyercneverforget 22:43, 4 December 2008 (UTC)[reply]
Ah, so that means I need to download Tor's Vidalia Bundle as well? Okeedokee.....--KageTora - the RefDesker formerly known as ChokinBako (talk) 22:50, 4 December 2008 (UTC)[reply]

C++[edit]

I realize that this questions sounds extremely noobish, but I'm OK with that, since I'm a programming noob. So - I know that C++ is a programming language, and I've looked at some tutorials on it, but I still cant figure out: What's it used for? It seems like a useless language to me... (and) how would I execute a file written in C++ script (and what's their file extension)? flaminglawyercneverforget 23:29, 4 December 2008 (UTC)[reply]

Um, C++ isn't a scripting language. You would need to compile the source code before you have any executable program. The C++ article says what it's used for, but just as an example, the Firefox web browser I'm using is written in C++ (along with some other languages). I understand a lot of the heavy lifting in major applications is done in C++, although the C Sharp (programming language) may be replacing it in some areas, I'm not sure to what extentFletcher (talk) 00:13, 5 December 2008 (UTC)[reply]
(ec) C++ is one of the most frequently used programming languages today. You seem to think that it's a scripting language. It isn't - it is a compiled language. Its number one advantage is that programs written in C are usually also valid C++ (or at least, can easily be linked to a C++ program). Java (programming language) and C Sharp (programming language) are similar to, and inspired by C++. C++ was inspired by Simula (programming language). It is an object oriented language, that is statically typed. It also has support for generic programming, i.e. you can write code that deals with containers (sets, maps, arrays) of a certain type, without specifying the type. The template mechanism has spawned an entirely new programming paradigm, template metaprogramming, leading to marvellous stuff like the Blitz++ library. Several file extensions are used: .cpp, .CPP, .cxx, .CXX, cc, C. --NorwegianBlue talk 00:16, 5 December 2008 (UTC)[reply]
So... I write a C++ file, then use a "compiler" to execute/use it? Ok, I get it... kinda... (and yes I looked at compiled language) flaminglawyercneverforget 00:22, 5 December 2008 (UTC)[reply]
Almost, but not quite. You write a C++ file, which is a text file. You use a compiler (with a built-in linker) to convert it to an executable file (an .exe, if you're a windows user). That is, a binary file which contain's machine code, packaged in a way that allows the operating system to easily load and execute it. --NorwegianBlue talk 00:40, 5 December 2008 (UTC)[reply]
[Edit Conflict] Yeah, what they said. DaRkAgE7[Talk] 00:45, 5 December 2008 (UTC)[reply]
OK, so here's what I've heard: I write a text file that contains C++ code, then I convert it to an EXE file using a compiler. My computer can execute the EXE file. (correct me on anything if I'm wrong) flaminglawyercneverforget 02:20, 5 December 2008 (UTC)[reply]
Nothing to correct, you've got it right. --NorwegianBlue talk 08:27, 5 December 2008 (UTC)[reply]
Certainly C++ is far from useless - the VAST majority of the software you use on a day-to-day basis (games, operating systems, wordprocessors, web browsers) are written either in C++ or it's predecessor; C.
Basically, there are two ways to run a computer program - in the C++ way, you first 'compile' the program to translate it into the set of low level hardware instructions that your computer can understand. Then you take the compiled code (which isn't C++ anymore - it's "machine code") and run it on your computer. In (for example) Java, the program is compiled into a kind of half-way state (called 'byte code') which is not the low level instructions that the computer can directly understand - but instead a much simplified set of instructions. Then, there is another program (called an 'interpreter' - probably written in C++!) which takes each one of those simplified instructions in turn and runs it. This extra step makes things a lot slower (maybe 50 times slower) - but in some ways more convenient. So basically - there are two kinds of languages - compiled (like C++) and interpreted (like Java). Technically, there is a third kind - you can write programs in the raw 'machine code' of your computer - and in theory, you can write programs that are even faster than C++...but it's an absolute bitch to do - and for all practical purposes, if you aren't some god of computing prowess - the C++ compiler will do a better job than you can for all but the very simplest of applications.
In the past, nearly all programming languages were compiled - but C++ has become so successful that most of the other compiled languages (Fortran, Pascal, Algol, Cobol) are vanishing. The interpreted languages are popping up like daisies though (Java, PHP, JavaScript, Python, Ruby, Lua)...and the competition between them is hot. So it seems like C++ is the oddball weird one - when in fact, it's by far the commonest for general purpose work.
It's true that (for example) Java can be used in more places than C++ - but it so amazingly slow that it's unlikely to really take over from C++ for cutting edge stuff like video games and operating systems.
SteveBaker (talk) 22:22, 5 December 2008 (UTC)[reply]
"most of the other compiled languages are vanishing" - where do you get this information? Absolute nonsense. C++ has a very specific market. Delphi (which is Pascal based) and Visual Basic are still huge in the market. Just because you're a C programmer doesn't mean you must impose your bias here. I'm sure others can name many compiled languages that aren't vanishing. And your comment on Java might be short sighted too - watch v8 by google coming along to blow everything out of the water. Sandman30s (talk) 00:18, 6 December 2008 (UTC)[reply]
A smart programmer would stay out of this mess, but I do have to interject that V8 is a Javascript engine, and thus has no bearing on the performance of Java. Yes, the names are a problem, and yes, the person at Netscape who renamed what was originally called Mocha and then LiveScript should be one of the first against the wall when the revolution comes, but there you go. --LarryMac | Talk 15:03, 8 December 2008 (UTC)[reply]
Delphi? That's not exactly a big-time language...it has a niche - but it's nothing like as commonly used a C++. Visual Basic is dying. But don't take my word for it - make up a fair search criteria and check for yourself. If (for example) I google "C programs" I get 51 million hits, "C++ programs", 780 thousand, "Delphi programs" 200 thousand. I go to 'hotjobs.com' and search "Delphi" and "Technology" I get 16 jobs on offer - I do the same for C++ and there are 1600 jobs on offer. If I go to sourceforge and search for Delphi developers or companies offering Delphi services or projects written in Delphi - the numbers are each about 1% of the numbers I get for C++ and about 0.01% of the numbers I get for C. It's not exactly scientific - but can't think of a single major application that's written in Delphi...no games, no major office-automation...if I have to list C++ applications, I can list just about every major computer game written in the past 10 years - Photoshop, Word, Firefox...almost anything. Visual Basic is used in some financial apps - and for lots of ad-hoc programs written for odd single jobs - but again, no major applications of any kind. SteveBaker (talk) 04:54, 7 December 2008 (UTC)[reply]
So, and correct me if I misunderstand your "statistics", you claim the current standard for determinng how widespread a programming language is; is the number of google hits for a term not likely used on the majority of applications websites, a niche market of freelance developers, and your word that Visual Basic, the most used, if highly flawed, programming language in the world, is used in no "major" applications, and is infact "dying"? Well it's good to know these things, I was going around listening to the results of numerous well thought out studies! Silly me. - Jimmi Hugh (talk) 18:05, 9 December 2008 (UTC)[reply]
Slow? 50 times slower? That's not even remotely accurate, although it was closer to being true 10 years ago. The speed of java code on a modern JVM is pretty comparable to compiled C++. As more stuff becomes web-based, the idea that the vast majority of common apps are C++ is becoming less true. Nobody uses C++ to write web applications. If Java were as slow as you seem to believe, people wouldn't be using it so much. A quick google turned up [1] which says "On Intel they found that the Java performance was very reasonable compared to C (e.g, 20% slower)" - and that's from several years ago. JVMs are getting more efficient all the time. Friday (talk) 22:32, 5 December 2008 (UTC)[reply]
that's not what Steve said. Steve was referring to interpreted code being 50 times slower than compiled code. That is correct. But the comparison to Java is indeed weak. Java served by web apps is of course byte-code, which then close-to-silicon once the byte code has been translated in the native VM. -- Fullstop (talk) 22:45, 5 December 2008 (UTC)[reply]
He included Java in the "interpreted language" category which he said was so much slower. It's a bit of an oversimplification to call Java "interpreted" but many people refer to it that way. Anyway, the point I was trying to make is that it's a complete myth that Java is vastly slower than compiled C code. Many old-timers still seem to believe it tho, but it's time it was dispelled. Friday (talk) 22:52, 5 December 2008 (UTC)[reply]
Java programmers often make this claim of speed - but it's only true if your program spends most of it's time executing inside libraries (which are probably written in C++). The speed for code that's actually written in Java is still around 50x slower than native binary. SteveBaker (talk) 04:54, 7 December 2008 (UTC)[reply]
Well, reliable sources say otherwise. Do you have a reason for this belief, or it is just based on something someone heard once? Friday (talk) 14:50, 8 December 2008 (UTC)[reply]
BTW, we don't need to guess here. Java_performance#Comparison_to_other_languages has a reasonable summary, with actual sources. The details can be complicated, but the gist is that Java is not significantly slower for most tasks. Myths to the contrary should be discounted. Those "Java is terribly slow" rumors were mostly unfounded even 10 years ago; today, it's completely unreasonable to repeat such nonsense. Friday (talk) 15:24, 8 December 2008 (UTC)[reply]