Win a copy of TDD for a Shopping Website LiveProject this week in the Testing forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Paul Clapham
  • Ron McLeod
  • Jeanne Boyarsky
  • Tim Cooke
Sheriffs:
  • Liutauras Vilda
  • paul wheaton
  • Henry Wong
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Stephan van Hulst
  • Carey Brown
  • Frits Walraven
Bartenders:
  • Piet Souris
  • Himai Minh

The Well Grounded Java Deveoper

 
Ranch Hand
Posts: 531
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi,

Going by the title,you have probably seen some mistakes made by Java developers.
What ,in your opinion, is the biggest one or the mistake that stands out that Java developers make?

Thanks,
Paul
 
author
Posts: 3281
8
Mac OS X Eclipse IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Probably an overall attitude or misunderstanding that the JVM does everything for you (e.g. You can't get memory leaks, you don't need to tidy up after yourself etc). That and Design Driven Design which we've seen many Java 'architects' apply over the years (AbstractSingletonFactoryBeanImpl and the like....)
 
paul nisset
Ranch Hand
Posts: 531
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks Martijn .
By saying Design Driven Design is a mistake ,do you mean a tendency to over complicate simple problems ?
 
Sheriff
Posts: 67634
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

paul nisset wrote:
By saying Design Driven Design is a mistake ,do you mean a tendency to over complicate simple problems ?


I call this "Java Disease". Although it can happen with any language, for some reason problems in Java seem to become overcomplicated Rube Goldberg machines (cough, JSF, cough) that are more complex and cumbersome than the problems they are trying to solve. Just my 2¢, of course.
 
paul nisset
Ranch Hand
Posts: 531
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Bear Bibeault wrote:

paul nisset wrote:
By saying Design Driven Design is a mistake ,do you mean a tendency to over complicate simple problems ?


I call this "Java Disease". Although it can happen with any language, for some reason problems in Java seem to become overcomplicated Rube Goldberg machines (cough, JSF, cough) that are more complex and cumbersome than the problems they are trying to solve. Just my 2¢, of course.



I tend to agree with that.
You can sometimes abstract a single problem into several.
Then you ask yourself "What was it I was trying to do again ?"
Over engineering can be a real pain when it comes to maintaining someone else's program.
 
Martijn Verburg
author
Posts: 3281
8
Mac OS X Eclipse IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

paul nisset wrote:Thanks Martijn .
By saying Design Driven Design is a mistake ,do you mean a tendency to over complicate simple problems ?


Yes, and of course this happens in any language, but for some reason it seems to happen a little more in Java (could just be confirmation bias on my part though). :-)
 
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Martijn Verburg wrote: (e.g. You can't get memory leaks, you don't need to tidy up after yourself etc).



Does the book cover some of these things? It sounds like the book is more of a primer on "java devs should be familiar with these x,y,z and technologies." I did look over the book description here http://www.java7developer.com/ and it does look like you cover the new Java 7 features which will be useful.

I'm a bit unclear where 'most' of the focus of the book is (I know it's not an Effective Java replacement.) Personally I'll probably skip the chapters on Groovy (which I use), Clojure and Scala. I know they're important but there is no way an intro to them in a few chapters of a book will do them justice, and if I just need to know 'what they're about on a surface level' their respective home pages give this information. What could be useful are tips on when and why to shift from core java to a language to something like scala or clojure.

 
paul nisset
Ranch Hand
Posts: 531
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Martijn Verburg wrote:

paul nisset wrote:Thanks Martijn .
By saying Design Driven Design is a mistake ,do you mean a tendency to over complicate simple problems ?


Yes, and of course this happens in any language, but for some reason it seems to happen a little more in Java (could just be confirmation bias on my part though). :-)


Thanks for the clarification Martijn .
 
Martijn Verburg
author
Posts: 3281
8
Mac OS X Eclipse IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi Brick,

Brick Riccardi wrote:

Martijn Verburg wrote: (e.g. You can't get memory leaks, you don't need to tidy up after yourself etc).



Does the book cover some of these things? It sounds like the book is more of a primer on "java devs should be familiar with these x,y,z and technologies." I did look over the book description here http://www.java7developer.com/ and it does look like you cover the new Java 7 features which will be useful.

I'm a bit unclear where 'most' of the focus of the book is (I know it's not an Effective Java replacement.) Personally I'll probably skip the chapters on Groovy (which I use), Clojure and Scala. I know they're important but there is no way an intro to them in a few chapters of a book will do them justice, and if I just need to know 'what they're about on a surface level' their respective home pages give this information. What could be useful are tips on when and why to shift from core java to a language to something like scala or clojure.



The book has a chapter each on JVM internals, Java Performance Tuning, Concurrency and a chapter that discusses choosing different languages for different tasks. Hope that helps!
 
author & internet detective
Posts: 41073
848
Eclipse IDE VI Editor Java
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
JSF solves a problem? And yeah.

It's possible to write bad code in any language. I think it has gotten worse lately because we have "Java job" people and not "Java developers." Writing code by cobbling together code found online - without understanding - is not development.
 
Greenhorn
Posts: 6
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
It does seem a bit of a hodge-podge of topics, albeit ones of current interest to me. Can you explain how you came up with the title?

Thanks.
Joy
 
Ranch Hand
Posts: 181
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Book description says

...showcasing some important software craftsmanship techniques by taking you through an example (imaginary) project



Does the craftsmanship techniques mean the design issues of various java patterns ? how beneficial is the book for a java architect?
Anyways, the topics in the book look interesting and is worth spending time. Looking forward.

Thanks Ben and Martijn.

 
Martijn Verburg
author
Posts: 3281
8
Mac OS X Eclipse IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Joy Rose wrote:It does seem a bit of a hodge-podge of topics, albeit ones of current interest to me. Can you explain how you came up with the title? Thanks.
Joy



Hi Joy, so we felt that there were plenty of books that covered Java syntax and recipes (cookbooks if you will), but not many that covered the wider range of skills and knowledge you need to be a "Well-Grounded Java Developer". We hope that covering the VM, concurrency, performance tuning, alternative languages to complement Java + some new insights into DI, TDD, Build and CI does exactly that :-). In other words, it's no longer about the language, it's about the ecosystem around it.
 
Martijn Verburg
author
Posts: 3281
8
Mac OS X Eclipse IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Tauri Valor wrote:Book description says

...showcasing some important software craftsmanship techniques by taking you through an example (imaginary) project



Does the craftsmanship techniques mean the design issues of various java patterns ? how beneficial is the book for a java architect?
Anyways, the topics in the book look interesting and is worth spending time. Looking forward.

Thanks Ben and Martijn.



Hi Tauri,

That description is possibly a little misleading. There is a single project, but that simple contains all of the various examples in one Maven project (which does showcase Maven supporting polyglot nicely). We don't discuss many patterns except for Dependency Injection, which gets a full chapter. However, I do think the book is useful for the Java architect as it does cover details about the VM, java performance tuning, concurrency, build and CI as well as a chapter on how to choose languages outside of Java.
 
Ranch Hand
Posts: 163
Eclipse IDE Tomcat Server Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Martijn Verburg wrote:

Joy Rose wrote:It does seem a bit of a hodge-podge of topics, albeit ones of current interest to me. Can you explain how you came up with the title? Thanks.
Joy



Hi Joy, so we felt that there were plenty of books that covered Java syntax and recipes (cookbooks if you will), but not many that covered the wider range of skills and knowledge you need to be a "Well-Grounded Java Developer". We hope that covering the VM, concurrency, performance tuning, alternative languages to complement Java + some new insights into DI, TDD, Build and CI does exactly that :-). In other words, it's no longer about the language, it's about the ecosystem around it.



Martijn, thank you for taking the time to answer our questions.

Is a solid foundation in Java principles and coding a prerequisite to "The Well Grounded Java Developer"? I'm currently learning "Effective Java" but I'd like read both books simultaneously.
 
Martijn Verburg
author
Posts: 3281
8
Mac OS X Eclipse IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Bill Clar wrote:

Martijn Verburg wrote:

Joy Rose wrote:It does seem a bit of a hodge-podge of topics, albeit ones of current interest to me. Can you explain how you came up with the title? Thanks.
Joy



Hi Joy, so we felt that there were plenty of books that covered Java syntax and recipes (cookbooks if you will), but not many that covered the wider range of skills and knowledge you need to be a "Well-Grounded Java Developer". We hope that covering the VM, concurrency, performance tuning, alternative languages to complement Java + some new insights into DI, TDD, Build and CI does exactly that :-). In other words, it's no longer about the language, it's about the ecosystem around it.



Martijn, thank you for taking the time to answer our questions.

Is a solid foundation in Java principles and coding a prerequisite to "The Well Grounded Java Developer"? I'm currently learning "Effective Java" but I'd like read both books simultaneously.



I would probably read Effective Java before or after our book. We love Effective Java, it's very focussed on getting the most out of the Java language features and APIs and most importantly working around some of its rougher parts! It is getting your brain to think at a very specific focussed part of Java, so that might not mix well with reading our book at the same time :-)
 
What does a metric clock look like? I bet it is nothing like this tiny ad:
free, earth-friendly heat - a kickstarter for putting coin in your pocket while saving the earth
https://coderanch.com/t/751654/free-earth-friendly-heat-kickstarter
reply
    Bookmark Topic Watch Topic
  • New Topic