I want to leave strictly desktop programming and start exploring networking. I want to make a little program that just sends data from computer A to B running the same program.
Just a few questions before I start…
1) What is a better language for net programming Python or C#?
2) Could you recommend some stuff to help me understand how data is sent over the web?
Thanks!
It really depends on what you’re doing. Both Python and C# have very capable modules for network communication – I’d say you’d be equally well-off in either given no knowledge of what you’re doing. The decision between Python and C# will probably come down to whether your application lends itself more to the dynamic typing of Python or the static typing of C#.
As for your second question, I’ve always found it interesting to look at network traffic using a packet sniffer such as Wireshark. Browse to a website in Firefox and (assuming GZip encoding is disabled in the web-browser or on the server) you’ll be able to see how the data is transferred. This works for other protocols as well. Reading the RFCs for various protocols can also give you some insight. For a few examples, IRC (1459), FTP (959), HTTP 1.1 (2616). You can find them at the Internet Engineering Task Force website.