Programming insights to Storytelling, it's all here.
I am a huge fan of stackoverflow. I am constantly on it and I contribute as much as I can. I can't tell you how excited I was when I reached 10,000 points and was granted access to mod tools. For me I felt like it was natural for any programmer to automatically be part of something this amazing, but it is not the case. I am surprised to find that most if not all of my coworkers don't even have an account.
I read more about the NSA this week more then I care to admit. I also read a lot of comments on those articles, good and bad. On most tech related forums you see post about encryption. How we should all know about encryption, the proper way to do it, and how big companies suck at it. Yes, encryption should be implemented, but it is definitely not the solution to prevent the government from getting your data.
A week and a half ago I found fraudulent transactions on my credit card. Linode was the only place where I used it, and with the recent incident they had I naturally assumed it was stolen from them. I called my card company and canceled it immediately. Then I wrote a post on hackernews urging people to cancel the cards. For some reason not everyone was happy with that.
I recently read a post by Steve Blank where he compared the Internet with guns. He talks about how important it was to learn about gun safety. It was the first thing he learned in boy scout camp in the rifle range before even handling a weapon. Later when he purchased a heavier weapon, he hired a professional to teach him about gun safety before using it. He suggest that when accessing the web the first time, the same precautions should be taken. Interestingly the same day I read his post, I was invited to a shooting range and my experience was quiet different.
Saying yes is much easier than saying no. Most of the time, we say yes because we don't want to hurt feelings or we want to be nice. But what is the point saying yes if you don't plan to do what you are asked? Saying no is mostly seen as rude, even though it makes perfect sense in some situations. This may not be a big deal when friends and family are asking you for a favor, but sometimes answering a yes or no question can determine our future.
Pair programming is amazing. Looking at your own codes for hours on end makes you overlook the smallest mistakes. When debugging instead of reading the code we recite it in your mind, because we think we know what we wrote. When someone else sits next to me and point out obvious mistakes I made I yell "fire!" and use the distraction to quicly fix the error. No, I don't really do that, I would have to come up with too many puns and my creative moments are as rare as gold. But I am not afraid of making mistakes.
The notion of working remotely or from home is amazing. You don't have to drive to work, you don't have to think about parking ,you can work in your pajamas, and so on. But do you end up being productive?
When I was still in college, I had a friend who was trying to convince me to get on board for the new life changing idea she had. It was a big secret. She called me into a room and looked over her shoulders to make sure no one was eavesdropping.
What do you do when you hit a wall? When you found a bug and you can't figure out how to fix it. You spend hours and hours in front of the screen and nothing seems to work. Sometimes this can be the worse nightmare for a programmer and putting more hours trying to fix it won't make a difference.
When you are working on your own as a developer you get exposed to many aspect of the business. You don't really draw border lines. As a web developer you blend in all kind of technology and you consider it all just web development. When you work in a big or established company it is a little different. They don't need full stack developers. They have a person or a group of people that work in just one thing; DBA or Unix for example. If you do this for a while you can become an expert in your field, but lose something in other areas.