Showing posts with label Book Reviews. Show all posts
Showing posts with label Book Reviews. Show all posts

Wednesday, September 10, 2014

DevTalkLA Does an About Face

DevTalkLA, that Geeky Book Club started a new one last night. Pictured above, we began discussing About Face. This is the new 4th edition of a "classic" which has been around for two decades. This latest release came on September 2nd, and includes mobile devices!

Mobile is crucial for user experience! So this promises to be a very important book.

TheHackerCIO doesn't specifically focus on User Experience (U/X) as a sole pursuit. But he has to wear every hat in the wardrobe, so adding in knowledge about U/X and IxD (Interactive Experience Design) is a welcome addition. It adds to the arsenal.

We had a lot of new blood at the Meetup. 24 people RSVPed, but of course only 12 showed, making for a 50% Unreliability Factor. It's always good to note how flaky, irresponsible, undependable and unreliable people are. It's an important index for life. In this case, 50% of respondents actually had the politeness and follow-through to keep their commitment. TheHackerCIO follows this principle, "Always call out bad behavior." You don't want that to go unremarked upon. Ideally you'd like to see it go away. Following through on your RSVP allows a Meetup organizer to get a room of the correct size. If all 24 had showed, we would have needed the larger room. It also allows the organizer to get food or refreshments for the Meetup. I mention this just to indicate that RSVPs have a *reason*. And it's only common courtesy to RSVP if you're going and stick to it.

With over 50% of attendees being first-timers, the Fearless Leader spent a good deal of time giving everyone an overview of DevTalkLA: how we've been continuously discussing technology books for 15 years or more, how we select the books (by vote), and the "bidding" system we use to determine who goes next on offering a comment/question/problem or issue to discuss.

As usual, the discussion was wonderful. I hope we see these newcomers return next week!

We began discussing the introductions, with the interesting point that designing behavior is a totally new concept. Products have been designed, but in a very static sense. The form of a product has been designed. Even the content has been designed. But with computer technology, we now have an additional element of behavior to consider and design.

We were greatly missing one of our old-timers for this book. He has to sit it out for personal reasons. He was always such a helpful addition to the group because he came it with Post-It-Tabs showing clearly every next comment he would raise, and in the absence of others having read the book, we could depend on him to drive the discussion. Since this book was a new release, I made sure that I did a similarly thorough job, so that we would have a very full and helpful discussion for the kick-off session.

On page xxii and following: I noted that there was some confusion. First they questioned whether an experience could be designed. So instead the book authors "have choosen Moggridges's term 'interaction design' to denote the kind of design this book describes." This statement in isolation isn't confusing, but the following paragraph stated that "we feel the term *user experience design* is most applicable." So the question is, WTF? Is this book going to use the term "interaction design" or "user experience design," or both? If they are using both, when will they be employed and why the need for both term? It's not crucially important, but it raised issues for me, and no-one else was able to offer any insight.

TheHackerCIO has lot's to say, but this is running too long already. So, I'll leave this ...

 To Be Continued ...


Tuesday, November 19, 2013

Sickness & Taking Out The Garbage Scientifically

As the pills took hold of my internal (bodily) Garbage Collector and tuned it to more efficiently remove unneeded and unwanted objects, TheHackerCIO's thought naturally turned to his beloved JVM and it's own GC algorithms. For those more managerial, Garbage collection is part of the major advantage of Java over the old C and C++ environments. It allows the programmer to depend upon the environment to manage memory, rather than having to explicitly perform this in code.

There are two major advantages to using GCs. Memory management takes up a huge amount of development time, estimated by some at 40 to 60%! And secondly, if you mess up, it's easy to get a memory leak. Those are what cause your old windows box to hang on you, back in the day. The memory of your machine kept getting used up and never was released, so eventually there was no more memory left. So you were "hosed." That's a technical term. :-)

GC is an important issue in todays world, and I had been unsatisfied by the Java Performance book our Geeky Book Club read recently, most specifically by it's treatment of the GC algorithms. It seemed to be poorly organized from the standpoint of fundamental types of GC. Instead it plunged right in to the present state of GC available.

I was confirmed in this opinion by hearing a wonderful talk by Azul, who make a for-purchase JVM built around the idea of a "pauseless GC." In other words, in most GCs, when you collect the garbage, all work must stop. This is called "Stop the World," because all threads doing application work are stopped while the GC "pauses," collects the garbage, reclaims memory for new use, and then restarts the application. If the heap is big, a pause could be long. Maybe seconds. Maybe even 4-5 seconds? Now your talking availability problems!

Consequently, the GC needs to be understood. And tuned.

The talk by AzulSystems was far better organized. It cut through euphemism, defined and organized the presentation around fundamental GC types, then explored the currently available GCs and how they fit into those categories in terms of their performance characteristics. And the CTO mentioned that the bible for them was this book by Jones (image below), called The Garbage Collection Handbook:

So naturally, I ordered a copy.

The book is wonderful. I'm only on chapter two, but even if difficult/demanding, since it's well organized and doesn't leave dangling questions, it's a far better resource to read first, before attempting the Java Performance book, already reviewed here.

Plus, this is the absolute latest update on GC algorithms and technology! Further details will follow.

I Remain Thinking of Garbage,