Digital Edition

SYS-CON.TV
Learning to Learn
Learning to Learn

I have come to the unpleasant realization that I might have forgotten how to learn. I'm not talking about the small bridges we cross every day in our jobs or our lives. I'm talking about the big tectonic shifts that take place far less often.

I suppose it started out when I realized I am jaded. I'm sure there is a difference between "specializing" and "being in a rut," but I can't see it from where I sit right now. I know it's fashionable now to bag on the whole Enterprise JavaBean technology and I don't want to be a part of that, but even that has become more trouble than it's worth to me. As much as I loved the idea of it in the beginning (like most relationships), the emotions have faded as I came to realize how little I was getting out of it compared to the effort I was putting in (like most relationships).

I decided to head off in search of new tools and technologies. I settled upon two of the new players in the Java arena, Spring and Hibernate, because they supposedly solve two issues in every project I have dealt with: Spring provides an MVC framework for me, hopefully covering up my woeful lack of experience in that area; and Hibernate provides a robust object-to-relational mapping tool, allowing me hopefully to completely jettison entity beans from my life.

It has been many years since I tried to learn a product that was as new as Spring or Hibernate, and it brings up an interesting question: How do you learn these technologies? How do you learn anything new? I have been programming Java for so long that if I have a question about a class method or a different way of accomplishing some programmatic goal, I pretty much know where to look.

I know the Javadoc for the Sun APIs to a reasonable level, so finding the missing pieces is pretty easy. I already know where to look and for the most part, what I am looking for. If all else fails, there are hundreds of books available at any bookstore. I can post to an online forum, and people from all over the world will answer (very few of the answers will be helpful, but they will answer :) ). I can even call 10 of my friends and ask their opinions. Spring and Hibernate are different. They are new, and I feel like I'm on my own.

I started at their respective project Web sites, hoping to start reading all the documentation that was available. Hibernate has a fantastic documentation set, with many examples and a tremendous reference document that stretches for 138 pdf pages. In addition, there are great user lists and their forum is just about at the perfect activity level. There are enough posts that you can consistently learn, but not so much activity that you have to slog through 500 "I am new to this but..." posts every day. As a result, all my experimentations with Hibernate went flawlessly.

Spring, being a somewhat newer product, has some documentation issues. However, in their favor, at least they know it. They often promise that the next version of Spring to be released will completely address the problem; a complete Spring reference manual was due in February and two books are due this year. To counter this issue, the Spring folks enthusiastically support their user forum. One of the Spring contributors even found and responded to my blog, where I was expressing my frustration with them at the time.

Let me take a second to reiterate something: the problems I had with Spring are not entirely Spring's fault. I am in uncharted territory, so I expect some pain. In fact, solving these problems is a fantastic way to learn the technology. Spring is promising, interesting, and useful. But to coin a phrase brought to you by the Department of Redundancy Department, I wouldn't be in uncharted territory if the territory weren't so darned uncharted.

What have I learned from this process? I guess I learned that the learning process never really changes once you have it down. This was, for some reason, very surprising to me. But sure enough, reading documentation (when it exists), reading APIs, and talking to people is still the way to get things done. Beyond that, we learn by doing, and it is the same whether we are trying to learn a new tool or trying to repair whatever is making that hideous noise in the toilet tank.

Most important, I learned how lucky we are to work in a field where we can keep learning and growing. I think about all my friends who aren't programmers; they all have fine jobs, but they will be doing those jobs in mostly the same way until they retire. With a little effort, we can completely overhaul the way we do our jobs. In that way, we never have to worry about being bored or jaded again.

About Neil Poska
Neil Poska is president of Object One Associates, and has been a software consultant for many years, specializing in distributed object technologies and enterprise applications.

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1



ADS BY GOOGLE
Subscribe to the World's Most Powerful Newsletters

ADS BY GOOGLE

The question before companies today is not whether to become intelligent, it’s a question of how and...
While some developers care passionately about how data centers and clouds are architected, for most,...
ChatOps is an emerging topic that has led to the wide availability of integrations between group cha...
As DevOps methodologies expand their reach across the enterprise, organizations face the daunting ch...
As Marc Andreessen says software is eating the world. Everything is rapidly moving toward being soft...
You know you need the cloud, but you’re hesitant to simply dump everything at Amazon since you know ...
Is advanced scheduling in Kubernetes achievable?Yes, however, how do you properly accommodate every ...
The cloud era has reached the stage where it is no longer a question of whether a company should mig...
The need for greater agility and scalability necessitated the digital transformation in the form of ...
In his keynote at 18th Cloud Expo, Andrew Keys, Co-Founder of ConsenSys Enterprise, provided an over...
Coca-Cola’s Google powered digital signage system lays the groundwork for a more valuable connection...
In his session at 21st Cloud Expo, Raju Shreewastava, founder of Big Data Trunk, provided a fun and ...
"Since we launched LinuxONE we learned a lot from our customers. More than anything what they respon...
DevOps is under attack because developers don’t want to mess with infrastructure. They will happily ...
"As we've gone out into the public cloud we've seen that over time we may have lost a few things - w...
In his session at 21st Cloud Expo, Michael Burley, a Senior Business Development Executive in IT Ser...
Sanjeev Sharma Joins June 5-7, 2018 @DevOpsSummit at @Cloud Expo New York Faculty. Sanjeev Sharma is...
We are given a desktop platform with Java 8 or Java 9 installed and seek to find a way to deploy hig...
"I focus on what we are calling CAST Highlight, which is our SaaS application portfolio analysis too...
"Cloud4U builds software services that help people build DevOps platforms for cloud-based software a...