Are you looking to learn J2EE? J2EE Learning Guide is a collection of links to J2EE articles, tutorials, books, products, and more. I got this link today from del.icio.us/tag/j2ee . It’s amazing how many different links are on this site. Take a look and enjoy.
J2EE Design and Development
by Rod Johnson
ISBN 0764543857
Date Read 10/2004
My Rating
I really liked this book, but after two months of reading it (700 pages), I’m happy to be finished. That’s my general feeling now. But I can tell you one thing, Rod Johnson’s book is the best book on J2EE I have read.
If you are a J2EE/Java developer, then this book is a must read for you. This book is loaded with practical issues. Rod doesn’t only talk about good features of J2EE, he tells you what the bad ones are and why you should not use them (i.e., EJB).
Rod Johnson is a true J2EE guru. He’s also a good OO developer/architect. You know why I know that? Because he stresses that in this book. He’s a proponent of flexible, maintainable, testable, least-complex, and robust designs. He gives you couple examples of design patterns. All of this in a very convincing, argumentative manner. It almost seems like talking to another person.
I really liked the first five chapters, where he talks about designing J2EE projects and concepts behind it. He has one chapter just devoted to testing, which he’s a big proponent of. He talks about different risks and choices, about different OO design issues, and coding standards. Very useful and practical information. He then, beyond chapter five, talks about different beans, DAOs, MVC design, and profiling. The two chapters on MVC are great as well.
As you can see, I liked this book. However, like any book, this book is not perfect. The one thing I think could have been improved is the use of examples. I like to learn by examples. Rod, though, he showed examples, they were taken out of context — they weren’t the full listings. That’s confusing to me. Makes it harder to read. One other thing, the author’s writing style is not that catchy, if boring at times. At times, because other times, it’s very good. Practical.
Overall, I’d give this book 4.5 / 5 stars. I highly recommend it if you are a Java developer. If you want to increase your developemnt toolbox and knowledge, read it.
You want Java examples? Plenty of examples? Ton of examples? Then here it is. Fred Swartz created a very good Java resource: Java examples in pretty much all areas of the language. Autoboxing, Maps, Strings, ArrayLists, you name it — there is an example there. It’s great! I love it.
Java Programming Notes from Fred Swartz
If you’re interested, he also has database notes with plenty of db examples.
I recently discovered a pretty good discussion on what “good code” is. The original author, Bill Carlson, specified quite a few good points. Points that according to him make the code good. Before I list the summary of the points, let me just say that if you are interesting in writing quality code, I think you should (you must) read Steve McConnell’s Code Complete. It will open your eyes. It opened mine. (See my review in Books I Recommend.)
Attributes of “Good Code:”
Read the whole discussion on The Old Joel on Software Forum: “Good Code” – What is it?
Do you use a debugger? It seems like people that were exposed to programming without a debugger are against it. Their take: if you read the code, you will be able to understand it better and find any mistakes in it fast. I agree to a point, but debuggers are tools that help you become more productive. There is no question about it.
I totally agree with Otaku Cedric (read his very good post) with the following statement:
No matter how productive you are with your current tools, I guarantee you will be more productive with an IDE and with a debugger.
I use Eclipse and I love it. If you don’t use an IDE, you should try it. It makes life so much easier.
Talking about debuggers, how about a JavaScript debugger? Well, for the longest time, I couldn’t find one. Firefox to the rescue! Let me just tell you that Firefox should be your best friend if you are a web developer: it just kills IE in that regard. There are several extensions to Firefox that are very good if you’re involved with JavaScript: the Console (it actually comes with Firefox), and the Debugger, (and a Web Developer extension). Try them all. However, you are really going to appreciate the Debugger: you can step into code just like you can in your Java debugger. That’s great. Since I’ve been using it, it has saved me a lot of time (and frustration).
That’s the general theme of this excellent article published in Software Development Times (read the article here). If you wonder who Ed Yourdon is, then do a search on Amazon.com and you’ll see. Needless to say, Ed Yourdon, is one of the most influential Computer Science minds that you’ll hear about. What’s more, he predicted the fall of American programmers in his book, Decline And Fall of the American Programmer. In this article, he shared some very valuable points. Points, that if you take them seriously enough, will put ahead of the competition — wherever it might be. I’ll explain in a little more detail.
My initial view on outsourcing was that something has to be done about it. I still think so: companies need to be encouraged to create jobs in U.S., not given tax incentives to create them elsewhere (if that’s the case, though). But I also agree with Ed Yourdon: We need to stop whining and take our future into our own hands — become the best. If we are the best, outsourcings is a non-issue.
“Stop whining. Stop waiting for someone to solve the problem. Take charge of your own jobs, your own career and your own future. No one else is going to do it for you,” says Yourdon. He goes on to say that yeah, the loopholes should be eliminated.
The bottom line, he says, is that we have to make sure that we are in the top 10, or top 20 percent in our companies. If we are not, we are doomed to lose our jobs, regardless of what politicians do or don’t do.
What can we take out of it: get into a position in your company so that you are needed; become wanted. If you’re there, you don’t have to worry. Otherwise, becoming a software craftsman would help.
I really recommend reading the article, Outsourcing Realities: Time to Stop Whining.
In a recent JDJ article, Interviewing Enterprise Java Developers, the author, Yukov Fain, explained what J2EE developer needs to know. I really liked the article (you should read it), and author’s suggestions. Here is an excerpt from that article:
What does a good J2EE developer have to know in addition to understanding the difference between abstract classes and interfaces?
Usually employers are looking for people with at least 10 of the following skills:
Next year JavaServer Faces and Hibernate will most likely be included in this laundry list.
What do you think? I think the list is reasonable. I know most of the technologies. No I don’t know all of them. I don’t know EJB, JMS, and I’m not really familiar with the applications servers. However, that’s on my to-learn list. I’m playing with JBoss, WebLogic, and WebSphere (hey, why not learn all of them ) Plus, EJB 3.0, which is coming up soon, is something I want to learn.
Are you completely clueless what those acronyms mean? Then it’s time to wake up. You better start reading and learning!
tales from theserverside
It finally looks like the IT industry is picking up. The signs are still mixed, but overall, I think, the industry is looking better and hiring is going to pick up. Here are three articles from News.com that support that view.
Greener pastures–and wallets–for tech workers? — News.com article
Tech services jobs increase — link to article
Is IT hiring picking up? — link
|
I don’t skate where the puck is, I always skate where the puck is going to be
–Wayne Gretzky
the best hockey player. |
How about that? That’s a great quote!On a similar note, here is my approach on learning new technologies:
|
I don’t learn technologies that are popular today, I learn technologies that are going to be popular and widely used in the future.
–Stas Kubasek
|
What does that mean? That means I always want to stay ahead of the game. I think that’s a pretty good strategy for the future. Strategy to be successful. We’ll see.