3.) Something that's platform independent.
I asked myself the same question several years ago. Because I was a hard care Unix admin at the time, I picked C# and DirectX development. I wanted something "easier" than my 50 hour a week job and different enough that I did not get sick of it. Also, I remembered Visual Basic from college and it was fun. I wrote about 40% of a pretty impressive game, all while teaching myself C#. It was good at the time because the development environment was fantastic (Visual Studio) and the API was sane and powerful (DirectX).
Of course, I can no longer continue development of my project with out serious pain because Microsoft has now decided to abandon managed DirectX and leave it's closest descendant, XNA, in limbo.. There may never be the tools to work on it with Windows 8.
I had a desire to do it again, but this time I picked OpenGL ES and Java, Android development.
I'm finding that eclipse is nearly as good as Visual Studio, and Java is about as easy as C#. Also, most of the concepts have translated nicely.
So, I've been spending about 1 hour a day porting that game over.
I guess my suggestion is that. There's certainly other choices, but I think with this you can jump into something that's trendy and fun (Android development) while learning a Java, a fundamental language that should survive the test of time.
As a father of an unplanned daughter, who at one point thought a lot like you, I can tell you that there's simply no practical reason to have kids. It's purely emotional. That being said, It's hard to put into words why you might want to have kids, but I'll try.
There's the times when I pick her up at daycare, and she runs into my arms and says "daddy daddy!" That just makes any bad day better.
Other times, I get to thinking how maybe she'll get married one day, or have her own baby. I imagine when that time comes, I'll look at her and feel something like I felt when I held her right after she was born. I'll think how she's just this little girl that we brought to life, that we gave a chance to. When I get time to think of it, I'm deeply fufilled in knowing that my wife and I brought someone into this world. That we gave someone else a chance to know what life is all about, begining to end.
At night, when she's not doing well or is sick, and calls for us, it's an overwhelming feeling of dependance, of importance. It's not replicated anywhere else in my personal or professional life. The notion that someone else's life depends entirely on us, gives me a sort of peace and direction I never otherwise had.
Don't get me wrong. Having kids is hard, sleepless, exhausting work. No one tells you how hard it really can be. But, you know, I just started to embrace the challenge. And I realized it's the most important thing I'll ever accomplish. It's very hard to describe how that feels.
Personally, I would'nt have it any other way.
Facebook is a social outlet that acts as a microcosom for real life. The people I know that stress over facebook also stress over vauge text messages that might mean something negative, gossip, and what other people might be saying about them behind their backs. They also add more freinds because their level of insecurity goes down when the other person clicks "accept friend request."
I also know people with a thousand or more friends who never get stressed in cyberspace or otherwise. They always post some joke, or some witty comment and just have fun with the whole thing.
Facebook is just a reflection of who you are in real life. Facebook does not change you, you change it.
Yea, I don't get it either. I remember first playing the Demo. The graphics and lighting blew my mind. The game got glowing reviews when it was released. Then about a month later Half Life 2 came out and everyone jumped on the Doom 3 must suck bandwagon.
Half Life 2 was fantastic and all, but I felt like I had to invest a lot into it. Games don't have to be movies. Sometimes I just want to blast demons.
It really marked the beginning of the end of the dumb shooter. Now everything's a hybrid RPG or some kind of exersize in simulated combat.
This sounds like a tall order. I'd be scared. Buying equipment is not going to fix anything. You've got to learn the existing network before you can make educated purchases. From the scope of the network you describe, here are the basic things I think you'll need to learn about.
Learn about routing. Subnets, CIDR, the differenec between a subnet mask and a wildcard, the difference between static routing protocols and dynamic routing protocols. Default routes. Policy based routing. Observe and document the different subnets you see in your network, figure out their purpose. Look at the default gateway of the clients and the servers. Figure out what device that represents. If you have only one subnet, your network is probabbly to flat. I'm guessing you have at least 2 or 3. Make a diagram.
Learn about VLANS. Tagged VLANS (802.1q), Cisco VLAN discovery (if applicable). I prefer Brocade equipment for switching / layer 2. But I digress. What VLANS are in each switch and how do the physical wires correlate? What subnets run on what VLANS? If you have fiber, you have another heap of things to learn about.
Learn how to make an ethernet cable.
Learn about firewalls. iptables (if Linux), ASA / PIX if Cisco etc.. Learn the difference between access-lists and statefull firewalls. Learn how to add rules to whatever firewall you use. What networks route where and what firewalls are between the networks?
What are the single points of failure? Learn to deal with those single points of failure. What are the entry points? What software is everything running? What are the link speeds, where does traffic go, aggregate and split up?
Gather all the contract information for your equipment. Make a printed list of numbers for who to call about what. Seek consultation to fill any uncovered gaps.
Look into graphing software with auto discover. PRTG is wonderful and not that expensive.
In my experience, things don't usually break. When they do it's because:
A.) Someone touched something.
B.) The power went out.
C.) Someone touched something they were not supposed to.
D. ) You ran out of capacity (in a hard drive, on a link.)
E.) A server got overwhelmed.
Lastly, make sure everyone does their Windows updates
1.) If it's not broke, don't fix it. Why does this network need "rebuilt?" What's not working?
2.) Make sure you can put it back exactally how you found it before trying anything.
3.) Never, ever, make a change at the end of the day, or on a Friday. Come in early, real early, for big stuff.
4.) Listen to your users. If they say somethings different, it probabbly is. Take everything seriously.
"Don't talk to me about disclaimers! I invented disclaimers!" -- The Censored Hacker