The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
... you rewrite a brand new version of a former class of yours ...
and the new version is both shorter and more powerful!
I just rewrite my IoC / IServiceProvider class which was 30% shorter with easier initialization and support for default parameters in constructors!
Now rewriting my serializer (I try to save my document with serializer, to make it easier) for a more compact format and more classes supported out of the box (properties, fields + now ICollection, IDictionary) and easier extensibility (with surrogate! simpler that custom serialization)! And it looks like it's gonna be much shorter too already! with text and binary stream support!
(though this one is unfinished..)
Well, congratulations ! I look forward to reading the CP article.
«There is a spectrum, from "clearly desirable behaviour," to "possibly dodgy behavior that still makes some sense," to "clearly undesirable behavior." We try to make the latter into warnings or, better, errors. But stuff that is in the middle category you don’t want to restrict unless there is a clear way to work around it.» Eric Lippert, May 14, 2008
each side can see the other side's IP in the packet header
but if we run for example tracert codeproject.com we see that a packet goes through a number of gateways between the client and the server .Isn't it supossed that each gateway changes the last gateway's IP address with its own so it can get the packet back ?
if it is so then how codeproject see my IP and not the IP of the last place the packet went through ?
In any TCP/IP connection, the client's originating IP address is known to the server so they can return a response. You can spoof your IP but you won't receive any data back. The originating IP can often be the outside router IP. The trace you did merely shows the various hosts in the route from client to server. The originating IP is still transferred for the reason mentioned above. Hope this helps.
An excellent example of layered protocols. IP, the lower layer, handles the node-to-node messages, as your tracert shows. But a couple of levels higher, the http headers convey the endpoint IP addresses required for end-to-end intelligence. Something like Wireshark will pull the packets apart for you, if you're interested.
Software rusts. Simon Stephenson, ca 1994. So does this signature. me, 2012