D3.js Getting started (again..)

The same questions as some years back: How to get started with it ?

The learning curve for beginners is certainly a bit steep if you dont have a basic background in at least HTML, CSS and JavaScript, in this case you rather go for a visualization tool like Tableau if you look for fast results.
The good news: There is plenty of material out there about D3, books, websites, tutorials. I purchased a couple of books from Packt Books and O’Reilly as PDF version, I think they have the most books, though most of them based on earlier D3 versions.

Packt Books

Packt Books

O'Reilly Books

O’Reilly Books

I wont recommend a specific one, most follow the same principles, a short intro to the DOM, explain the D3 basics followed by more or less complex samples. As with any other technology or programming language you learn most hands-on, there so many examples and good tutorials available. I never attempted to understand everything, understand the concepts, dissect existing visualizations and get creative !

Continue reading

My Review of Java Message Service

Originally submitted at O’Reilly



Java Message Service, Second Edition, is a thorough introduction to the standard API that supports “messaging” — the software-to-software exchange of crucial data among network computers. With this practical guide, you’ll learn how JMS can help you solve many architectura…

Old Topic, but a good starting point.

By AnotherJavaDude from Singapore on 10/29/2010
4out of 5

Pros: Well-written, Helpful examples, Accurate

Best Uses: Intermediate

Describe Yourself: Maker, Developer

Despite JMS being an “old” (in IT terms) piece of technology (API), you still find requirements for it in lots of projects and the basic needs of a messaging API are fully satisfied, even not updated since 2002.
This book is one of the few books covering the topic at all, and coming with code samples is the best you can get to get started with JMS. With a fair background of your application/messaging server and your favourite IDE you should be able to get the samples running.


Book Review: Java EE 5 Development with NetBeans 6

Java EE 5 Development with NetBeans 6
David R. Heffelfinger
Packt Publishing
ISBN 978-1-847195-46-3

The JAVA bookshelf offers a myriad of titles on almost any given topic, frameworks, tools, plugins or any available IDE. Most of the JAVA EE titles I know, are thick compendiums which go way beyond the level of knowledge you really need in practice, or are of a very theoretical nature. Often they are not pointing to specific products or versions (IDE, applicationserver or DB), eventually only giving some generic directions on how to use them. Someone who is not yet an expert in the EE environment, struggles to get the samples and sourcecode snippets in their choice of IDE and applicationserver up and running.

Other for this title, it guides the reader through the whole lifecycle of Java EE development, inclusive of the basic installation and configuration of Netbeans (6.5B, the actual version at the time of writing the book) and Glassfish in an illustrated step-by-step fashion. What I really like about his book, is the coverage of the most important aspects of the Java EE development in this sample-driven approach. You dont need necessary all the knowledge you gain from the book, as some frameworks abstract away a lot of the details, but is more than viable to to know whats going on under the hood and even more as some of the modern frameworks are only sitting on top of it. The book won’t teach you all details either, but it serves as a good starting point.

A short overview over the chapters and covered topics:

Chapter 1 supports the reader in getting Netbeans with Glassfish installed and running.
Chapter 2 starts with plain JSP development, it runs you through the creation of JSP pages and Servlets, JSP fragments, basic security and introduce you to the HTTP Monitor.
Chapter 3 looks at enhancing JSP pages with JSTL tags (for, choose, foreach), JSTL SQL tags (in case you require some hardcoded quick and dirty db-linked pages) and custom JSP tags. Basic understanding of tag libraries helps in more complex environments is essential.
Chapter 4 introduces into the more visual creation of JSF pages, also covering page flow and validation.
Chapter 5 gives a glance at JPA as a major improvement compared with the old way of creating entity beans and riding on additional relational mapping API’s. The chapter also covers Named queries, JPQL, table relationships and the various ways to creating JPA entity from the database and vice versa using the various little wizards that Netbeans has to offer. A complete sample rounds up the chapter with the automatic creation of JSF pages.
Chapter 6 is an extension to chapter 4 and servers more sophisticated samples for the visual creation of JSF pages including database binding and ajax functionality.
Chapter 7 pushes forward right into the heart of Java enterprise applications, the EJB’s. Even impossible to give a comprehensive overview though, this chapter offers a fairly good start into the complex topic with session beans and DAO design patterns provided by Netbeans.
Chapter 8 gives a quick glance at JMS, Java’s messaging service, which is hardly covered by any book with runnable samples but theoretical descriptions. Key to understand this for any communication to the outside world.
Chapter 9 get us started with Webservices as an core engine of web technology, interoperability and the cloudspace.
Chapter 10 summarize all the previous chapters by assembling a complete enterprise application with EJB module and web application.

I recommend the book as a starting point into the world of Web and Enterprise Applications with Netbeans. Even newer versions of the IDE are available now and Java EE 6 is around the corner, the basics, as you setup your knowledge foundation with this book, wont change. With the tools of the trade you learn to use here, you can continue your reading journey with other more detailed books. I wish I had the book while I was picking up Java EE, instead of wading through compendiums and dry theory material.

The sourcecode is available for download at the publishers website, ready for you to open in Netbeans. I still prefer sometimes hacking code from books line by line, it teaches you more while doing it, other than just blindly looking at code and run it.

Having a nice budget for books, I accumulated a collection of books touching a variety of IT topics, from coding to IT project management.
The development related books usually have 2 problems:
– They are (sometimes) outdated the moment you read them due to the cycle between the time the author writing the title and the versions of a product he refers to, it gets reviewed, edited and published and the time you hold in your hands.
– They are expensive. Sometimes you find information of similar quality, maybe not as combined as a book, in the web, as long you can find the right website or blog.

I recommend looking at the packt books, most of them are available as pdf at a reasonable price (cheaper than the paperversoin of the same). They come with the big advantage that you can carry as many pdf books along as you want. And if you feel the urge to, you can print (parts of) it to read – sometimes reading from paperware is more relaxing than staring at a screen though.

Bookshelf: Smart things get done

Smart and Gets Things Done:
Joel Spolsky’s Concise Guide to Finding the Best Technical Talent

“Joel Spolsky’s Concise Guide to Finding the Best Technical Talent”

I really like to read Joe’s books because they have a strong reality check and its fun to read them. This book focus on hiring tech staff for your company, to be more precise, developers. I find this the most challenging part of running an IT company. Finding people that are flexible, open-minded, experienced, willing to learn, expert in their field,..

I saw to many bloated CV’s filled with technolgy buzzords and fancy certificates, but then reality sets in. I rather invite people for interview with a less shiny list of achievements.

But ! The stars out there dont send CV’s. They always hired and hunted down by headhunters.
So my tip for you as “employer”: Dont waste your time with newspaper and monster ads, you are going to waste your time. Get creative or let someone help you !

New on the bookshelf:

Joel Spolsky latest “More Joel on Software”

“Cryptography for Dummies”

“RFID Labeling” 2nd Edition

I will delight you with my recommendation and comments while reading them.

Bookshelf: Dynamics of Software Development

Dynamics of Software Development
(Best Practices)

Just another book on software-, development team and project management ? This is the 2006 revised editio of the same title from the year 1995 by Jim and Michelle McCarthy. Besides lot of interesting insights into the MS Visual C++ development team it shares real life ideas and concepts to work with developement teams and software pojects. Some parts are a bit dry to read.

My Rating: @@@@@

Bookshelf: Hacking for Dummies

Hacking For Dummies
(For Dummies

This is a quite interesting introduction in hacking, or better into ethical hacking, which is the white-hat version of all the criminals out there. Learn about your enemies and your know how to defend yourself. As most of the yellow books, this interesting and entertaining to read and offers lots of tips and tools to hack and test your own server or network.

My Rating: @@@@@