Sunday, December 21, 2014

Your $20 Gift to your future self

Hello Readers,

Merry Christmas to you and your family, and a very Happy 2015!

Have you decided to give yourself a gift?  How about a gift for you in 2015?  I've got a suggestion.

Pick 4 e-books for only $20 from Packt Publishing between now and January 6.  You won't find an ebook any cheaper than that!

You don't have to pick 4.  Every book is only $5.

There's a ton of subjects.   Pick a few you work with every day, and a few that just sound 'fun'. 

The link to the whole deal is here.

Happy Holidays!

Wednesday, December 17, 2014

Book Review for "Mastering Java Server Faces 2.2"

Book Review for "Mastering Java Server Faces 2.2"

Quick Version:  This book contains a lot of advice distilled from a wide range of JSF usages.  It's a big book and offers a lot of ideas that will be valuable to the JSF practitioner.  There is more intermediate-to-advanced material than there is low-level, so if you're just starting out this might not be the right book for you.  Experienced JSF users will find this a good resource.

This is a big book (nearly 550 pages) and it offers lots of good advice for JSF users.  The chapter titles are as follows:

1.  Dynamic Access to JSF Application Data through Expression Language (EL 3.0)
2.  Communication in JSF
3.  JSF Scopes – Lifespan and Use in Managed Beans Communication
4.  JSF Configurations Using XML Files and Annotations – Part 1
5.  JSF Configurations Using XML Files and Annotations – Part 2
6.  Working with Tabular Data
7.  JSF and AJAX
8.  JSF 2.2 – HTML5 and Upload
9.  JSF State Management
10. JSF Custom Components
11. JSF 2.2 Resource Library Contracts – Themes
12. Facelets Templating
Appendix - The JSF Life Cycle

The author makes occasional mention of different JSF implementations (PrimeFaces, MyFaces, Mojarra) which might be of value to users that are familiar to one implementation or the other.  There is some introductory material (the chapters on data access, configuration, the Life Cycle, etc.) but these are not presented in an order that provides a comprehensive overview at the start of the book.

Examples are well constructed and consistent in the way they are put together.  For any particular goal (i.e. making some tabular data, working with a template, using AJAX, etc.) the user will most likely find a clean set of code artifacts that illustrate things in a comprehensible way.  Wording that differently-- the examples are minimal and easy to understand.

The book has a fair number of illustrations, but these mostly reflect renderings of JSF pages.  Conceptual illustrations are provided, but not in great abundance.  I give the book fair marks for this, but not outstanding.  IMHO a few more high-level illustrations would have been beneficial.  (In the author's defense, it's possible some were left out to keep the book as lean as possible.  As it stands, it's already a big book.)

The author does a good job of explaining how to exploit features of JSF to accomplish tasks of interest for a JSF developer.  The author speaks in a clear and direct manner, lending confidence to the suggested remedies for various situations.  I believe this book will be a good reference for the JSF coder. 

Packt uses a visual icon (it looks like a pencil and a few sheets of paper) to indicate warnings or important notes.  These are generously provided throughout the book.  I found use of this highlighting aid to be judiciously used-- not too much, not too little.

All things considered I found this book to be a solid reference for JSF topics and informative in it's description of new JSF features.  For the intermediate-to-advanced JSF user it should prove to be a valuable resource.

The book can be found here.

Happy Reading and Rendering!

Monday, September 29, 2014

The $36 investment that just might get you to the next level

Being a code-slinger pays pretty well, especially if you're in the mid-to-upper ranks.  But how do you get there, and once you're there, how do you maintain your proficiency?

First, there is no substitute for in-the-trenches hand to hand warfare.  You've got to be slinging code, reading logs, and configuring things on a pretty frequent basis or you're going to lose your edge.  Don't get me wrong-- basic concepts will always apply.  But to keep up with the whiz kids, you'd better keep your hands at least a little dirty or you're going to be playing some catch-up later.

Probably the best second line of defense is a constant stream of good reading materials (and nowadays instructional videos).  A good book is a means for someone to share their hard-earned experience with you, and to put it someplace where you just have to run along and scoop it up.  You don't have to go through all the brain sweat, you just leverage the hard work someone else has already done.  This post is about this topic.

One of the drawbacks to using tech books to keep yourself professionally sharp is the cost factor.  Good tech books can easily run $50 or more, and that goes a bit outside my naturally cheap comfort zone.  But today, I've got good news for you.  You can get six (yes, that's right, 6) tech books or videos for a paltry $36.  That's a SUPER price.

The books are available as part of Packt Publishing's special running through October 2nd.  The link is here.

Packt is known for fairly priced books, but this is extreme.  Here's the breakdown:
  • Any 1 or 2 eBooks/Videos – $10 each
  • Any 3 to 5 eBooks/Videos – $8 each
  • Any 6 or more eBooks/Videos – $6 each
If I were stocking my bookshelf, I'd go for the 6-for-36 deal.  If you're skittish, I'll offer some known winners:

Oracle JRockit:  The Definitive Guide.   600 pages of in-depth Java stuff.  Read my review here.

Java EE 6 with GlassFish Application Server  An oldie but a goodie, it explains the whole JEE stack.  Now a little dated (and I'd prefer it written for JBoss), but much of it still applies.  The author is a good one.  Here's my review.

WildFly Performance Tuning Swinging the pendulum towards some newer stuff, here's a solid performance tuning book on WildFly.  Here's what I thought about it.

JBoss EAP Configuration, Deployment and Administration  Don't feel much like reading?  That's ok, here's a nice video you can just kick back and watch.

Learn HTML5 By Creating Fun Games Ok, I haven't actually read this one yet.  But I've got it ordered, just because it looks fun!  There are other game-writing books at Packt, too.  For $6, I'll give it a read!

Oodles of others  There are lots of interesting books on Node.JS, Angular, Karaf, Microsoft Programming, Oracle topics, some old SOA, lots of other JBoss books, etc.  For $36, you get 6 choices! 

That link again is here.

Happy browsing! 

Friday, July 25, 2014

Book Review for "Wildfly Performance Tuning" by Packt Publishing

Book Review for "Wildfly Performance Tuning" by Packt Publishing

WildFly Performance Tuning

This book focuses on the latest iteration of the JBoss JEE server, Wildfly.  Like many performance books, it offers advice that applies to performance in general, JEE specifically, and a particular technology (Wildfly) especially.

The first three chapters deal with methodology for performance tuning, tools of the trade (especially open source tools), and JVM tuning.  The first chapter contains material that will be largely familiar to anyone who's done much tuning in the past, but is good for those who are new to the discipline.  The second chapter outlines tools that will likewise be familiar to most experienced tuners.  There are some good tips here.  The third chapter explains JVM tuning, advice of this type seems to have a very limited shelf life.  Combined, these three chapters make for a good background for Java tuning.

The next six chapters deal with Wildfly.  They introduce the server in general, then specifically address EJBs, Persistence/JPA, Web Container (Undertow), Web Applications and Web Services (to include REST), and JMS.  These chapters include some really good expert-level tips.  If you are a user of Wildfly (or the product version, Red Hat's EAP) then these chapters alone will probably make the book a worthwhile purchase.  There's some good advice here for users of other JEE servers, but the real value here is for JBoss users.

Note:  Wildfly is the 'upstream' version of the JBoss JEE server.  After this server has undergone community testing and feedback, it will then enter the 'Productization' phase where Red Hat professional developers and QE testers iterate over the codebase before packaging it for commercial use.  For this reason, this book is a good look 'forward' for Red Hat JBoss EAP users.  The tips and descriptions in these six chapters describe the near future for EAP users, the present for Wildfly users.

The final chapter covers Wildfly clustering.  Like the previous Wildfly-centric chapters, there is some introductory material that will help the new user to understand the purpose of the feature and how it is used.  After that, tips specific to performance tuning are given.

I thought the book was very strong from a technical standpoint.  Users of Wildfly (future EAP) will be quite pleased with the insights the authors bring.  The advice is solid.

IMHO, the book could have used more illustration in the middle chapters.  The authors offered some good technical advice about Wildfly, and conversations of this type almost always benefit from coarse-grained illustrations that assure the reader they are grasping the concepts presented.  This fault isn't found throughout the book-- for instance, the clustering chapter is generously illustrated.  Maybe the authors were short on space, the book is over 300 pages as it is. 

All things considered, I'd recommend this book for any Wildfly / EAP user.  Users of other JEE servers (WebSphere, WebLogic) might consider it, but won't get the same bang for the buck.  Users of JEE in general should benefit strongly from the first chapters with incremental value added over the final chapters.

The book can be found here.

Happy (Performant) reading!

Monday, July 14, 2014

Now under review: Wildfly Performance Tuning

Wildfly Performance Tuning by Packt Publishing

WildFly Performance Tuning 

JEE fans know there is a big difference between the 'old' JBoss application server and the latest.  The upstream community project is now called 'WildFly', and it's the subject of the newest Performance Tuning book from Packt.

I'm reading this book now-- watch for a review here soon.

In the meanwhile, if you'd like a look at the book you can find it here.

Tuesday, July 1, 2014

Packt Publishing Celebrates 10 years and $400,000 given away

Packt Publishing Celebrates 10 years and $400,000 given away.

This year marks 10 years that Packt Publishing has been publishing books and videos, often the best source for commercial books on Open Source technologies.   For users of many great Open Source projects, Packt has been the 'friendly' version of documentation-- allowing faster ramp-up at a reasonable cost.

Not only that-- Packt has proven their friendship with the Open Source community by giving $400,000 through their Open Source Project Royalty program.  That alone deserves some a big round of applause!

Do you have a new tech stack you'd like a headstart on?  For a limited time (through July 5) you can treat yourself to *any* eBook or eVideo for $10.  Something else to celebrate about!

More details are available at this link.

Congratulations, Packt.  Here's to the next 10!

Wednesday, June 4, 2014

Video review: "Software Architecture Fundamentals Part 1 Understanding the Basics"

Review for "Software Architecture Fundamentals, part 1  Understanding the Basics"
By Neal Ford, Mark Richards
Published by O'Reilly

Understanding the Basics

This video series covers architectural issues.  The videos are presented as a small room lecture, headed by Neal Ford and Mark Richards.  (I hadn't heard of Richards before, Ford I knew from the software conference speaking circuit.)  The subjects covered are listed below.

Architecture Soft Skills Part 1 
Continuous Delivery
Architecture Soft Skills Part 2
Understanding Large Codebases  
Architecting for Change  
Architecture Patterns Part 1  
Architecture Patterns Part 2  
Design Patterns
Architecture Anti-Patterns Part 1  
Architecture Anti-Patterns Part 2  
Tooling and Documentation 
Integration Architecture Fundamentals 
Enterprise Architecture Concepts and Fundamentals

Some of these are short (20 minutes or so), others can go over 40 minutes.  I used a video player that allowed me to control the speed of playback so I could go faster or slower depending on my perceived mastery of the topic.  I liked this.

Ford and Richards both spoke in a clear and straightforward manner.  It's obvious that both are experienced in the topic of software architecture, and they had plenty of valuable tips and insights.  For the most part, the conversations were interesting.  Each talk was accompanied by slideshow bullet points, these were always legible and well put together.  There was a live audience of a few people present at the taping, these people would occasionally ask a question of the speakers.  All things considered, the presentation is excellent.

The knowledge provided is mostly useful information.  A few times the speakers went into territory I consider a little unrealistic, but perhaps this is just my bias formed from years of working in fairly sedentary environments.  (Ford is well-known for lectures about polyglot programming, which I've always considered an immature move towards 'playing with new toys', but your mileage may vary.)   The parts of the lecture I discounted were few, so this should not be considered a harsh criticism.

The parts of the lecture I found most interesting were those that dealt with version control schemes, build techniques, and documentation.  I haven't seen a lot of other material about these topics, so I found the ideas presented of interest.  These parts weren't necessarily better than the others, just topics I found of interest.  I've been a certified architect for over a decade (and a practicing one before that), so I wasn't surprised by some of the other material.  That's not to say there was nothing to learn, just that not all of it was new to me.  What is new might differ for you, based on the career you've had.

At one point Richards claims there are 52 states in the USA, 2 more than proper but 6 less than counted by some politicians.  That's about the only egregeous error I've found in the series.

So, what's the verdict?  I consider these videos well worth the time spent watching.  I took notes on each chapter so I could improve my personal 'bag of tricks', leveraging the experience of these accomplished architects.  Given the high cost of experience, the price of this video series is a bargain.

 Happy Viewing!

Tuesday, May 13, 2014

Video Series Review: "Pentaho Reporting"

Pentaho Reporting [Video]

Do you sometimes have a need to produce reports?  I surely have!  No matter how technical my job, it seems I've always had a need to demonstrate trends, provide information, help sell some idea.  For all of these, reports are called for.  This review is about a tool that can help you when you need to write slick, professional reports.  That tool is Pentaho Reporting.

If you're like me, you may know Pentaho as the "Kettle company".  Kettle is an open source ETL engine, and it is very useful.  If you work with batch data, you probably ought to have a look at Kettle soon if you haven't done so already.  It really is slick.

This video series mostly involves the "Pentaho Reporting" tool, though.  The video series is broken up into 8 chapters, each composed of some number of sub-units (3 or 4 seems about average).  The runtime for each video is very reasonable, usually 5 minutes or a little longer.  The moderator's voice is pleasant and proper.  The pace of presentation seems about right.

The contents of each section are presented logically.  The highlights:

Lesson 1
Installation.  Opening, saving reports.  Making PDF, etc.
Making a report using a Wizard
Adding database drivers, defining a report from scratch (no wizard)
Customizing a report (headers, grouping, adding graphics, etc.)

Lesson 2
Setting up Eclipse/Tomcat.  Embedding a report in a servlet.  Embedding in a Swing app.  Compressed reports, writing reports through a Java API.

Lesson 3
Configuring the JDBC data sources
Configuring data sources for OLAP engines, XML, Pentaho Kettle, etc.

Lesson 4

Charts and illustrations

Lesson 5

Parameters in reports.  Limiting query results by parameter, specifying this parameter from the Java API. 
Functions and expressions.  Summarizing groups and making totals.  Showing page numbers in footers.

Lesson 6
Subreports and Cross-tab reports (i.e. a report that shows totals by month). 
How to enable this experimental feature.
Lesson 7
Java API to capture events (with a listener), links and mouse events.
HTML reports with interactive links, firing interactive javascript, tying formulas to a button, manipulating the HTML DOM.

Lesson 8
Using Pentaho Reporting with Pentaho Business Itelligence Server.
Setting up the server.  Managing users, roles, scheduling reports.  Setting up automatic emailing of scheduled rpts.
Pentaho Data Integration ('Kettle').  Setting up a small Transformation that kicks off a Reporting job.  Including the Transformation in a Job.  Running the Job both from the IDE and command line.

Does that sound like a lot?  It is a lot to learn!  But fortunately, much of it is intuitive once you see the general way of doing things.  I built some reports along the way, to validate my understanding of what I was seeing.  It's easy once you get going!  Pentaho Reporting also seems like a very capable tool.

So, what's the end verdict?  I highly recommend this video series to anyone tasked with writing reports.  It really does make learning the tool easy, and the video series can be used as a reference if you're already going with Pentaho Reporting.  Watching the videos is painless and relatively quick.  It's hard to think of a downside for this series.

The videos can be found here.

Happy Reporting!

Monday, May 5, 2014

Now in Review: "Pentaho Reporting" video series

Hello Readers,

I had a good experience with my previous JBoss instructional video review, so I'll be following that one up with another video.

This one is another great open source product, Pentaho Reporting.  The series is from Packt, it can be found at this link.

I'll give it a view and should have a review soon.

Happy Coding!


Thursday, March 20, 2014

Packt Celebrates 2000th title with Buy One, Get One Free Promotion

Wow!  Packt Publishing put the first book to print in 2004 and reached the 1000 book mark 8 years later.  Now, just 3 years later, they're at the 2000 book mark!

Congratulations to all my friends at Packt.

For the rest of us, it's a great opportunity to stock up on ebooks-- they're offering a Buy One, Get One Free promotion from now 'till the 26th of March.

Get more details here:

Happy Reading!

Sunday, March 2, 2014

Video course review: "JBoss EAP Configuration, Deployment, and Administration"

I've just completed my first ever 'Video Course' from Packt Publishing, "JBoss EAP Configuration, Deployment, and Administration".  This post is my review of that course.

JBoss EAP Configuration, Deployment, and Administration [Video]

What's the format/What should you expect?
If you're like me, you've never tried one of these before and might be wondering what to expect.  You can opt to receive the content streamed straight to your browser or through a downloadable zip file.  I tried a sample via streaming, but decided to go with the zip download for best pause/rewind control. 

You unpack the .zip file in a local directory, then open an 'index.html' file in your browser.  You are presented with a navigable carousel that lets you choose which 'chapter' you want to view.  (Full list below, with my notes.)   Each 'chapter' is composed of several topic videos, usually 5 minutes or less in duration.

The narrator is Jason Shepherd, an experienced JBoss Support Engineer.  (Disclosure:  I work with Jason, albeit in a different time zone.  He lives in Australia, and as such sometimes receives support cases my team is working on at the end of the day in North America.  Red Hat does a great job of handling cases 24x7 this way.  I pledge not to let this affect my review.)  As far as narration goes, Jason has a pleasant, even-toned Australian voice.  The narrative is properly paced and everything is easy to understand.

Within each chapter are several topics.  The video for each topic contains a briskly paced narrative and matching visuals.  There are screen views, pointers to documentation, and the occasional diagram.  I found them to be paced about right and illustrated adequately.

So, what about the content?  Below are the 'Chapters', with a few notes above them:

    * * This chapter covers basics of JBoss since EAP 6 / JBoss AS 7.  If you are new to 'domain mode', this will be valuable. * *
    Standalone versus Domain Mode [16:10 minutes]
        Running in Standalone Mode
        Running in Domain Mode
        Deploying an Application in Standalone Mode
        Deploying an Application in Domain Mode
        Sharing a Configuration in Domain Mode

    * * Fundamental tasks for JBoss users. * *
    Adding and Configuring Databases and Message Queues and Using Them from Your Application [21:04 minutes]
        Setting up a Database in JBoss Using the Console
        Adding a Datasource Using the Command Line Interface (CLI)
        Adding an XADatasource Using the Configuration File
        Connecting to a Database
        Configuring Database Pooling
        Adding a Messaging Queue Using the Management Console
        Connecting to Messaging Queues

    * * JVM tips are very good for any user.  Non-JBoss users will find value here, too.  Knowledge of this type is what moves a user from intermediate to advanced.  It will be of long-term value. You are also shown how to use some very useful 3rd-party open source tools. * *
    Configuring the Java Virtual Machine (JVM) for Troubleshooting and Diagnostics [23:19 minutes]
        Selecting a Garbage Collection Strategy
        Gathering Java Virtual Machine Diagnostics
        How and When to Capture a Java Thread Dump
        How to Analyze Garbage Collection Logging
        Analyzing Java Thread Dumps
        Analyzing a Java Heap Dump

    * * Good for enterprise users. * *
    Clustering and Load Balancing for Web Applications [16:11 minutes]
        Clustering in Standalone Mode
        Cluster in Domain Mode
        Set Up mod_cluster on JBoss to Connect to the Load Balancer
        JBoss Messaging in a Cluster

    * * Very useful information.  Class loading problems can be baffling for the unitiated, this chapter gives many good tips and clear explanations of how to control things. * *
    Classloading with JBoss Modules [13:27 minutes]
        Introduction to JBoss Modules for Classloading
        Implicit Module Dependencies
        Including and Excluding Dependencies Using Metadata
        Classloading in an EAR File

    * * Useful for Enterprise JBoss users. * *
    Deploying Applications [15:35 minutes]
        Improve Performance with Asynchronous Servlets
        Encrypt Client-to-Server communication with Secure Socket Layer (SSL)
        Use the Java Authentication and Authorization Service in JBoss (JAAS)
        Securing Passwords in JBoss

    * * Great productivity tips.  If you use JBoss, you'll want to understand these topics. * *
    Building and Testing Application with Maven and JBoss Tools [8:51 minutes]
        Installing the JBoss Tools plugin for Eclipse
        Build and Deploy an Application to JBoss Using Maven
        Deploying Using JBoss Tools
        Running a Test suite in Arquillian
        Anatomy of an Arquillian Test Case

    * * Great for developers, operations, etc.  Understanding logging options can be very helpful. * *
    Configuring the Application Server Logging [13:50 minutes]
        Setting the Logging Verbosity for the Entire Server
        Setting the Logging Verbosity for Parts of the Server or Application
        Improving the Logging Performance using the Async Handler
        Rolling the Server.log File by Size
        Use Logging Configuration in Your application

So there we have it.  The price is reasonable, the content valuable.  If you are a JBoss user (especially if your shop is using it in production), you will want to see these videos.

The video can be found here.

Happy viewing!

Friday, February 28, 2014

Now Under Review: Video Series on JBoss EAP

Readers of this blog are used to finding book reviews for programming materials here.  Today I am trying something new-- a technical video review.

JBoss EAP Configuration, Deployment, and Administration [Video]

The video series is over some familiar territory-- JBoss EAP Configuration, Administration and Deployment.  I've started watching today and should have a review out in the near future.

Watch this space for my impression of this medium soon.

The Video can be found here.

Wednesday, February 19, 2014

Book Review for "JBoss EAP6 High Availability"

JBoss EAP6 High Availability

JEE servers are all about "Enterprise" functionality.  A big part of the value proposition is High Availability, meaning you can harden your servers so a failure won't deprive your clients of the ability to make use of your services.  This book covers High Availability for the most recent version of Red Hat's commercial server, EAP 6.

The book is written in a very clear, well-illustrated manner that explains very plainly how to achieve load balancing and failover with EAP 6.  The early chapters explain how to obtain and set up the JBoss App Server, which is advantageous if you haven't looked at the server lately.  (It underwent a major re-write since the old 'heavy server' days.)  The methods used to deploy applications have changed too, so these are also explained.

The third chapter is where clustering begins.  This leads us to the only demerit apparent for this book:  it's scope is constrained to web-tier clustering.  (This means other clustering aspects, like messaging clustering and EJB clustering go undescribed.)  The coverage it provides within it's scope is outstanding.  You are given very explicit (and easy to understand) instructions on how to test and validate your cluster.

Web-tier clustering means you need a load balancer, and this book covers two of these well.  Both of these are hosted in Apache httpd, so it is also covered from acquisition, compilation, configuration and validation points of view.  (To repeat that:  if you know absolutely nothing about httpd, this book will show you how to get it, compile it, and run it.)  Once httpd is in place, you are given detailed coverage of mod_jk and mod_cluster, two load balancers that plug into httpd.  Both are described simply and thoroughly.

There are two chapters for SSL, these again give you everything you need from A to Z.  The author describes certificates, how they are used, how you can produce one, and how to configure your cluster to use it.  Your efforts are validated through use of tools like WireShark (naturally, we are shown how to use WireShark to do this.)  There isn't much left for the user to wonder about-- thorough, well-illustrated coverage is the order of the day.

The final chapter of the book describes JEE applications that are built for clustering.  Not much exciting here, JEE makes it pretty easy.

The book has a good number of illustrations.  These are simple and clear, exactly the kind of thing a knowledgeable colleague might sketch on a whiteboard.  Except the lines are all perfect.

The final verdict?  This is a really good book.  The author has a knack for explaining things clearly and directly.  If you wish to cluster web applications on JBoss EAP 6, this book should be on your shelf.

The book can be found here.

Happy Clustering!

Wednesday, February 12, 2014

Now Reading: "JBoss EAP6 High Availability"

Watch this space for a review in the near future.

JBoss EAP6 High Availability

The book can be found here.

Monday, February 3, 2014

Book Review for "Java Performance, the Definitive Guide"

Book Review for "Java Performance, the Definitive Guide"

Subtitle:  "Getting the most out of your code"

State:  "Early Release.  Raw and Unedited"

As the title tells, this book is ambitious in scope.  Calling something 'The Definitive Guide' is a bit presumptuous, but the author (Scott Oaks) has credentials to match anyone in the workspace.  This book is in 'Raw and Unedited' form, which means it's not yet a finished work.

So, what's here?

The first chapter outlines the target platform (Java 7), JVM tuning flags, and some very general best practices for obtaining good performance.  Not much deep-dive material here.

Chapter 2 categorizes types of benchmarks and provides different things to measure.  I found this chapter a little long on the academics, probably more applicable to professional testers than it is to garden-variety application developers.  All things considered, not my favorite chapter.

Chapter 3 covers the Java performance tester's toolkit.  It contains a good overview of tools provided by the operating system (including many for Linux).  The Java monitoring section tells us what the JVM can tell us about itself.  There's a meaty section on profilers, and finally a section on a propietary tool Oracle provides to users that choose to pay for Java 7.  This chapter held quite a few items of interest for me.

Chapter 4 was devoted to the Just-In-Time compiler.  JIT is of great importance to Java performance, and this chapter provides a wealth of information that could only come from those with very deep knowledge.  In the 'acknowledgements' section of the book the author tells us he used inside contacts at Sun/Oracle to pull this book together, it would have to be these kinds of people that assisted here.  Good stuff.

The 5th chapter is about Garbage Collection and Garbage Collectors.  This information seems to change frequently as Java updates, so the value of this chapter might be perishable.  This information is also similar to material that's readily available all over the internet, so it didn't grab my attention like the previous chapters.

The final verdict:  For a work in progress, I found this book to be rich in good content and fairly refined for the 'raw' label.  For those seeking improved Java performance, it's a worthwhile read.  I look forward to seeing the completed product.

The book can be seen here.

Happy (Performant) Coding!

Friday, January 24, 2014

Book Review for "Drools JBoss Rules 5.x Developer's Guide"

Drools JBoss Rules 5.X Developer’s Guide
Book Review for "Drools JBoss Rules 5.x Developer's Guide"

Do you have an interest in Rule Engines?  Rule Engines have long promised to relieve the programmer of maintenance tasks, to bridge the gap between business user and developer.  This book covers JBoss's rule engine (Drools) from the Developer's view. 

Drools has expanded beyond it's roots as a rule engine and now offers additional functionality like business process management and complex event processing.  (For those not familiar, BPM used to be called 'workflow'-- it means state management for long-running business processes.)  CEP deals with detecting conditions in windows of time.  For instance, detecting when a specific stock begins trading at discounted prices over a sliding 10 minute timeframe.  These features (and more) are available with Drools, many are explained in this book.

By the way, if this book sounds somewhat familiar, it's probably because it's a refresh of the same title targeted towards Drools 5.0.  Besides the technical update, there seem to be many small adjustments made to increase readability.  If you've seen the first book, you'll want to see this one.

The author goes over the basics of business rules in the first chapters.  What a rule engine is, how to use Drools, how to write rules and how to make Domain Specific Languages (DSLs) are all explained.

Central chapters explain some viable use cases for a rule engine-- data validation and transformation.  The author provides example scenarios and the rule artifacts needed for the tasks. Through these chapters, additional material about use of Drools is covered.

Later chapters cover testing and application construction.  There are a surprising number of nuances to integrating business logic engines into enterprise applications, so this chapter will be of special interest to users who are working to integrate with enterprise frameworks.

Finally, there are some appendices which provide details about setting things up and the sample applications.

All things considered, this book has over 300 pages of valuable content for those interested in using the powerful features of the Drools.  If you are a Drools user, you probably owe it to yourself to have a look.

The book can be found here.

Happy (Rule-style) coding!

Monday, January 20, 2014

The latest Drools / JBoss Rules book - Review here soon

Do you have an interest in Drools / JBoss Rules?  There's a new title on this compelling technology from Packt Publishing. 

Drools JBoss Rules 5.X Developer’s Guide

The book can be found here.  Watch this space for a review soon.

A happy 2014 to you and your family.