I’ve noticed something in my life, the better I understand a subject, the less complicated it becomes. I’ve recognized this when I would teach new subjects, and when I would get “advice” from other people.
I was reminded yesterday of a conversation that happened over 6 years ago. I was working in Southern California, and a friend of mine had just gotten a job (that I helped him get) as a web programmer. They were using a new technology from Microsoft called ASP. I asked my friend what ASP was, and his explanation was little more than “It’s pretty complicated “.
Now, I consider myself fairly adept, I am able to learn new topics relatively quickly, I was programming BASIC in 3rd grade, I taught myself C# in a week (I already knew VB.net extensively 🙂 When I ask a person to explain a topic, I expect to be able to keep up with the answer, and to receive more than a newbie brush off. Needless to say, at the time, I was a little erked. I have since decided that whenever someone asks me a question about a topic that I know a thing or two about, I make it a point to give more than a brush off answer. If I don’t have the time to give a solid instruction, I at least try to direct them to a more complete answer. (Incidental, If you really want to know about classic ASP, go read the articles on Web Monkey, “Introduction to Active Server Pages” (via Internet Archive), and the great primer to relational databases “Your First Database” (via Internet Archive); the latter is must read for anyone that wants to know about Relational Database Design, or writing SQL)
I realize now, though I didn’t then, that my friend wasn’t trying to be rude, or snobbish. He just didn’t know how to explain ASP. He didn’t have the fundamentals down, it was confusing to him, so he figured that it would be confusing to everyone. (As a side note: I understand that he has since become an efficient ASP programmer and is running his own company as such).
I’ve seen this truth demonstrated over and over again. When I was teaching for New Horizons, I remember an instructor commenting that no one could ever explain a relational database to a class in less than a couple of hours. Now I started every database class that I ever taught (ASP/SQL/Access) with a 10-minute overview of relational databases… I knew it could be done. I realized that this was no ordinary teacher. This instructor had been teaching Access for years, she had won awards, hands down, she was one of the best instructors there. Yet, she didn’t have an understanding of relational databases that would allow her to explain them in under 10 minutes. They were still complicated and confusing to her.
Recently, on an enterprise .net project that I have been working on, there is a business piece that I am about to tackle. Everyone that I talk to tells me how complicated it is, what a large task this is going to be. All but one. The one tells me that if I break it down to its simplest components this is really a straightforward process. He has an understanding of this process, so it’s not complicated, it’s simple. Even the most complex system in the world can be broken down into simple processes. Consider DNA, the most complex communications programming system ever designed, yet it breaks down into four simple building blocks.
Ultimately everything should be broken down into its most basic parts. If you find that a task is getting too complicated. Break it down into more (easier to comprehend) tasks. Keep doing that until you can fully grasp what you’re doing. You know that you’re at a good understanding level when you can explain it, straight forward, to someone who asks “how does that work” – without replying… “well, it’s complicated”
Caleb,Thank you for you wonderful insight. I often find myself making things overcomplicated and getting stressed out thinking about how to accomplish even the most basic things. Sincerely,A Lurker on your site
Caleb,
Thank you for you wonderful insight. I often find myself making things overcomplicated and getting stressed out thinking about how to accomplish even the most basic things.
Sincerely,
A Lurker on your site
I don’t get it. Too complicated.. 🙂
I don’t get it. Too complicated.. 🙂