The WinSock RAP

I'd struggled for so long in network API stew 
I was all over the place, I didn't know what to do 
I'd tried NetBIOS, ECB's and TLI 
All I wanted was just one simple API 

The answer came in a virtual way 
From cavorting with my friends in cyberspace one day 
One of them said "I hear WinSock's cool" 
I thought I was dreaming, I confess to a drool 

The first thing I did was FTP to SunSite 
I used a character mode program - I hadn't seen the light
I got the WinSock spec, I opened a beer
I started my word processor and prepared to cheer

When I saw the word "sockets," I knew things'd turn out right
When I was at school we'd talk Berkeley UNIX all night
But what was this, some new routines, lots starting "Async" 
Oh no I've work to do, I'd better have another drink

The more beer I drank, the clearer it became
I could still use Windows messages, my code could stay the same 
So I wrote my socket(), bind() and connect()
And used this new routine, something AsyncSelect()

I had that little shiver, a quiver in my liver
Was it beer, was it fear or would my code deliver
I double-clicked my icon, crossed my fingers and prayed
I socket()ed, connect()ed and got messages all day

Now I think I've got the hang of this "AsyncSelect" 
So I mailed to the list, I said "Hey, what's next?" 
The answer came back: "It's time for something new" 
"Hold on to your hat, Here comes WinSock 2!"