Tuesday, October 29, 2013
Patent B Major
Patents are great for inventors; they make it so an inventor has sole rights to things he invents. Copyrights do the same thing, but are used for artistic works. A key difference between patents and copyrights it that even when an author has a copyright, he doesn't own the pieces he used: namely words. Even when the author creates a new word or phrase, other authors can use them all they wish. It is only once the author has put many of these small pieces together that he has any claim to ownership. Writing software is very similar. We all use very small pieces to make a greater whole. It would be foolish to give a patent to someone for a small piece that many other people are going to use. That would be the same as giving a composer the patent for the chord of B Major. If nobody could use that chord ever again, the music industry would suffer. For that exact reason, the software industry suffers because of unneeded patents.
Thursday, October 17, 2013
If You Want Something Done Right...
A common saying states: "If you want something done right, do it yourself." In other words: "don't trust anyone other than yourself". Have you ever had a boss that didn't trust you to do things right? He probably "checked in" on you every few hours. That's called micro-managing and it happens because your boss doesn't trust you. This is but one example of this bad mentality and we display this distrust in many ways. Instead of doing everything ourselves, we should take responsibility for problems we see. A key part of this is to recognize that the people around us are a resource, not a hindrance. Once we see this, we can more effectively fix problems we face because we have others helping us.
The most powerful moment of Cliff Stoll's The Cuckoo's Egg came after he had just spoken to the FBI about a hacker in his system. They refused to do anything about his hacker problem. It was in that moment that he realized it was his responsibility to make sure this guy was caught. The FBI, CIA, and NSA had all refused to do anything. So he took it upon himself. He didn't decide that if the hacker was going to get caught, he had to do it himself. Instead he used the resources at his disposal to make sure the hacker was eventually caught. A key thing he did was pester the FBI to do something. He did this because he knew they could get the guy, they just needed motivation. He didn't do it because he wanted to make sure they did it a certain way. This is in stark contrast to your micro-managing boss.
We will have similar decisions in our lives. If you see a bug in your companies' code, but not in the part you're responsible for, there are three things you can do. You could say, "It's not my problem, someone else will take care of it". Another option is to dive into the code for hours on end until you find it yourself, possibly breaking other things in the process. Or you can research the bug, tell the responsible programmer your findings and then follow up with him until it's fixed. The last option is obviously the best; you took responsibility for the bug, but realized others were more qualified to fix it and sought their help. If we all approach problems in this manner, our companies, relationships, and societies will be better off.
The most powerful moment of Cliff Stoll's The Cuckoo's Egg came after he had just spoken to the FBI about a hacker in his system. They refused to do anything about his hacker problem. It was in that moment that he realized it was his responsibility to make sure this guy was caught. The FBI, CIA, and NSA had all refused to do anything. So he took it upon himself. He didn't decide that if the hacker was going to get caught, he had to do it himself. Instead he used the resources at his disposal to make sure the hacker was eventually caught. A key thing he did was pester the FBI to do something. He did this because he knew they could get the guy, they just needed motivation. He didn't do it because he wanted to make sure they did it a certain way. This is in stark contrast to your micro-managing boss.
We will have similar decisions in our lives. If you see a bug in your companies' code, but not in the part you're responsible for, there are three things you can do. You could say, "It's not my problem, someone else will take care of it". Another option is to dive into the code for hours on end until you find it yourself, possibly breaking other things in the process. Or you can research the bug, tell the responsible programmer your findings and then follow up with him until it's fixed. The last option is obviously the best; you took responsibility for the bug, but realized others were more qualified to fix it and sought their help. If we all approach problems in this manner, our companies, relationships, and societies will be better off.
Monday, October 7, 2013
The Key To Success
After conducting many thorough studies (OK, not really), I have determined that there is one trait that can guarantee the success of a businessman: the ability to see the future. Sadly enough, no one can do that. This means that nobody is guaranteed success; even the best businessmen. Obviously, there is a lot of skill involved in doing business; but any success received comes, at least in part, because of some luck. For example, if Digital Research had signed with IBM, Microsoft would not be what it is today. If Apple had never won an anti-trust lawsuit against Microsoft, Apple could have died years ago. Two of the greatest software companies ever are what they are now because of luck. On he other side, Nolan Bushnell, founder of Atari, didn't invest in Apple because he didn't think Steve Jobs could cut it as a CEO. If he could see the future, he could have avoided that bad luck. So the moral of the story is: unless you can see the future, no success is a given.
Article that inspired this post: Atari founder: Tim Cook isn't the next Steve Jobs
Article that inspired this post: Atari founder: Tim Cook isn't the next Steve Jobs
Saturday, October 5, 2013
Watching LDS Twitter feed during conference
I watched the twitter feed for #LDSCONF during the Saturday morning conference. It was a really interesting experience. At the beginning of the session it was mostly distracting, since all the tweets were just people saying how happy they were that conference was here. As the speakers got started though, I thought the experience improved. When I would miss a cool quote, I was bound to see it latter on. For example, I missed it when President Monson announced that church membership pass 15 million; but twitter made sure I learned it. I was also able to see how others were interpreting the talks, which gave me a different perspective on what the speakers were saying. It was still distracting at times, but the benefits might have outweighed the cost of being distracted. I say might because it was a new experience and I'm not sure how I feel about it yet.
Wednesday, October 2, 2013
Why I Don't Do Family History
The church has invested time and money into making family history websites easier to use. This was a brilliant move and they succeeded in their goal. Unfortunately for me, however, family history never was hard for me because of interfaces that were difficult to use. My problem is that I hate stating things as fact unless I know they are. This comes from many simple rules of the programming world: never start coding without knowing what you will code and no software is bug free. So when I sit down to do family history and I come across conflicting records, I will probably end up doing nothing. This is a lousy excuse to not do my family history work and follow the prophet. I shouldn't be scared to enter information that might be inaccurate. Only a foolish manager would not release a product just because he isn't sure all the bugs have been fixed. I need to learn how to make decisions even if I don't know exactly what will happen if I take a certain action. If I can learn this, it will help me as a software developer, and more importantly, it will help me do my family history work.
Subscribe to:
Posts (Atom)