Monday, April 29, 2013

"Patterns in Java : A Catalog of Reusable Design Patterns Illustrated" by Mark Grand

Pranaam! Working on "Patterns in Java : A Catalog of Reusable Design Patterns Illustrated" by Mark Grand this week. This is a "Volume 1" edition, I've got and is an old print. The notations used previous to UML 2.0, but I liked the explanation. Revising this under a tight timeline, since this needs to go back to shelf. Writing a running log here:

  • Overview of UML
    • This covers notations for 3 basic UML diagrams viz. Class Diagrams, Collaboration Diagrams and StateChart Diagrams
  • Software Lifecycle

Sunday, April 28, 2013

"Data Structures and the Java Collections Framework, Third Edition" by William J Collins

"Data Structures and the Java Collections Framework, Third Edition" by William J Collins[2011 print]

In tune with multi-threading, I'm beginning a new thread on Java Collections, in an attempt to solidify core Java essential concepts.

Sunday, April 21, 2013

"Java 7 Concurrency Cookbook" by Javier Fernández

Pranaam. I'm currently working out "Java 7 Concurrency Cookbook" by Javier Fernández. It's a Oct 2012 edition. Finding these examples are lucid, that I can be very easily develop without being an expert Java programmer myself. Concurrency subject is dealt in other programming languages as well, but since Java has a large base in commercial software applications and there is ready material in-hand, it was an easy decision to work through Java 7.



Parallel processing and optimized high performance computing are interesting subjects that can solve large compute problems .It's essential to solve a problem quickly  and make result available for the next set of actions.  Sometimes its necessary to know which areas in a compute solutions are to be parallelized and which shouldn't be. It's an intriguing subject. The next area for me would be researching Design Patterns in concurrency. But before I get to that, creating a running log of areas covered from this book.

  • Thread Management
    • Creating & Running threads
    • Get thread information
    • Interrupt threads
    • Control Interruption of threads
    • Sleeping and Resuming threads
    • Waiting for Finalization of threads
    • Creating and running Daemon threads
    • Processing uncontrolled Exceptions in threads 
    • Using ThreadLocal variables
    • Grouping threads into a group 
    • Processing unchecked exceptions in ThreadGroup
    • Using factory pattern to create Thread
  • Basic Thread Synchronization
    • Synchronizing a method
    • Arranging independent attributes in synchronized blocks using Object references   
    • Using conditions in synchronized code block
    • Using Lock to synchronize a code block       
    • Synchronizing data read/write operations using Lock
    • Lock fairness
    • Using multiple conditions in Lock
  • Thread Synchronization utilities
    •  

Saturday, April 6, 2013

"The Performance-Engagement Model: Managing the Five Personality Profiles in the Workplace" by Laura Stack

"The Performance-Engagement Model: Managing the Five Personality Profiles in the Workplace" by Laura Stack:

An interesting short article, but very crude view of people personalities. Resources are workplace are assets, are humans with very interesting facets. It's up-to a leader to bring out the best from each resources and to make them strong individual as well as team contributors. It's hard to believe the author had a successful role in keeping a team engaged to goals, let alone leading high performance team. If we conceive an ideal team to be composed of humans who work like machines decrepit of emotions, of sharp personality traits we would be living in la-la land.
Labeling this for 'Enterprise Architecture', as workplace resources belong to various enterprise teams, they are essentially one of the stakeholders.