Welcome!

Microsoft Cloud Authors: Pat Romanski, Liz McMillan, Lori MacVittie, Elizabeth White, Yeshim Deniz

Related Topics: Microsoft Cloud, Java IoT

Microsoft Cloud: Blog Post

Developers Should Learn Why, Not Just Memorize What

Knowing what to do with the Knowledge is Wisdom

I have gotten a few emails asking why I read so many books. Simply put, I read books to learn about all the things the people who are much smarter than me recommend I do.

The one thing I learned in college is that if I wanted an A, I needed to work for it. I was not naturally smart like some of my classmates were. I am also horrible at memorization, so I had to learn why something was done and not just the formula to accomplish the task at hand.

I also learned that the more I learned the less I knew. Programming and architecture require a lot of knowledge, much more than my little brain can hold. So I read and what keep is the why something is done the way it is done. I also do my best to remember a reference to the location of what I read (which book I read it in).



This has burned me when memorization was a preferred skill over experience. I was in an interview once that had gone on for a pretty long time. Nothing technical was asked for hours. Then one of the interviewers came in and started asking very simple yet broad technical questions. The random memorization type. You know, define an assembly, list the new features in .NET 4.0, how many toes does a monkey have. Those type of questions.

My gears didn't switch, instead they locked. I could not recall the lists of things they wanted me to recall. I could actually remember the page number and the page layout the answer to one of the questions was on, but could not remember the content of the page.

It worked out for the best, the company I was interviewing with has seemed to have lost its direction. It also seemed they were interested in a road warrior, which I am no longer willing to be.


I don't feel bad about doing poorly in interviews that are just a bunch of random questions looked up by one of the interviewers 2 hours before the interview. I expect to be asked about my resume and grilled about what I have claimed to do. In the interview above not one question was about anything on my resume that day. It was one of the weirdest ones I have been on. I guess the point is, preferring memorization over understanding why something is done, does have its place in the industry, but I am not interested in those places.

I recently attended a presentation where one of the topics was the death of apprenticeship. The line of thought is that with all knowledge now available at ones finger tips, the only skill you need is to know how to use Google or any other electronic data resource. Experience no longer counts for anything.

Although I agree with this line of thought for certain jobs, I do not agree with it for Software Development (and many other professions that I am not qualified to talk about). Although I know there are a lot of developers that would disagree. There are a lot of them out there that believe all you need is Google and other people's code to succeed at developing software. Like I said above, I do agree with this line of thought, but with respect to learning the other's experience and understanding behind those code snippets they so kindly post. Just using the end result without understanding why you are using it, will come back to bite you later.

I have attended several technical review meetings over the years and sometimes I am simply left speechless when I hear something like "Now that we have the application deployed we need to talk about XXX". You can put security, logging, error handling, performance, testing, etc. in XXX. They collected all the pieces of what it takes to build the application, but no one on the team had any architectural experience to put them in place in the correct order. When I asked how they could be so far off base, I have been told … They see architecture as extra work that gets in the way of real progress.

My response is they simply don't have the experience on the team to know better. For those that have never seen architecture done correctly, they don't believe it is worth the effort. Most of those environments give a team of inexperienced individuals the responsibility to execute the architecture business cycle and they simply generate a whole lot of useless artifacts that are later viewed as a waste of time. They learned what artifacts to produce but never learn why you produce them and what the goal of producing them is. They were simply a check box on a list of "this is what is produced during the architecture process".

To me having information is knowledge, knowing what to do with the knowledge is wisdom. I see a whole lot of knowledge these days, but very little wisdom. As long as the shortcut to the end result continues to be taken, our industry is going to continue to produce garbage, but I guess that is not all bad for those of us who make a living cleaning up garbage.

More Stories By Tad Anderson

Tad Anderson has been doing Software Architecture for 18 years and Enterprise Architecture for the past few.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


IoT & Smart Cities Stories
The hierarchical architecture that distributes "compute" within the network specially at the edge can enable new services by harnessing emerging technologies. But Edge-Compute comes at increased cost that needs to be managed and potentially augmented by creative architecture solutions as there will always a catching-up with the capacity demands. Processing power in smartphones has enhanced YoY and there is increasingly spare compute capacity that can be potentially pooled. Uber has successfully ...
Cloud computing delivers on-demand resources that provide businesses with flexibility and cost-savings. The challenge in moving workloads to the cloud has been the cost and complexity of ensuring the initial and ongoing security and regulatory (PCI, HIPAA, FFIEC) compliance across private and public clouds. Manual security compliance is slow, prone to human error, and represents over 50% of the cost of managing cloud applications. Determining how to automate cloud security compliance is critical...
Enterprises have taken advantage of IoT to achieve important revenue and cost advantages. What is less apparent is how incumbent enterprises operating at scale have, following success with IoT, built analytic, operations management and software development capabilities - ranging from autonomous vehicles to manageable robotics installations. They have embraced these capabilities as if they were Silicon Valley startups.
Disruption, Innovation, Artificial Intelligence and Machine Learning, Leadership and Management hear these words all day every day... lofty goals but how do we make it real? Add to that, that simply put, people don't like change. But what if we could implement and utilize these enterprise tools in a fast and "Non-Disruptive" way, enabling us to glean insights about our business, identify and reduce exposure, risk and liability, and secure business continuity?
The Internet of Things is clearly many things: data collection and analytics, wearables, Smart Grids and Smart Cities, the Industrial Internet, and more. Cool platforms like Arduino, Raspberry Pi, Intel's Galileo and Edison, and a diverse world of sensors are making the IoT a great toy box for developers in all these areas. In this Power Panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists discussed what things are the most important, which will have the most profound e...
Chris Matthieu is the President & CEO of Computes, inc. He brings 30 years of experience in development and launches of disruptive technologies to create new market opportunities as well as enhance enterprise product portfolios with emerging technologies. His most recent venture was Octoblu, a cross-protocol Internet of Things (IoT) mesh network platform, acquired by Citrix. Prior to co-founding Octoblu, Chris was founder of Nodester, an open-source Node.JS PaaS which was acquired by AppFog and ...
In today's enterprise, digital transformation represents organizational change even more so than technology change, as customer preferences and behavior drive end-to-end transformation across lines of business as well as IT. To capitalize on the ubiquitous disruption driving this transformation, companies must be able to innovate at an increasingly rapid pace.
Predicting the future has never been more challenging - not because of the lack of data but because of the flood of ungoverned and risk laden information. Microsoft states that 2.5 exabytes of data are created every day. Expectations and reliance on data are being pushed to the limits, as demands around hybrid options continue to grow.
"MobiDev is a Ukraine-based software development company. We do mobile development, and we're specialists in that. But we do full stack software development for entrepreneurs, for emerging companies, and for enterprise ventures," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
The explosion of new web/cloud/IoT-based applications and the data they generate are transforming our world right before our eyes. In this rush to adopt these new technologies, organizations are often ignoring fundamental questions concerning who owns the data and failing to ask for permission to conduct invasive surveillance of their customers. Organizations that are not transparent about how their systems gather data telemetry without offering shared data ownership risk product rejection, regu...