To change my mind and also because I’m curious about all things related to ergonomics and user experience, I decided to investigate a little more seriously the field of UX which is quite trendy nowadays.
This is how I came to read the book Storytelling for User Experience by Whitney Quesenbery et Kevin Brooks about which I will make a brief review here (and which I came across in a mysterious way, maybe via an O’Reilly promotion).
I find the book well written and informational with some lengthiness though that are certainly due to the fact that I’m not exactly part of the targeted audience and also to quite a lot of redundancies from chapter to chapter (maybe on purpose, in order to make sure that some ideas remains on the reader’s mind).
Actually the most interesting feature of this book is that the author committed to eating their own dog food by illustrating each of their ideas with a story and also by making sure that the book is easily “browse-able” with a clear structure and concise summaries at the end of each chapters allowing a reader to jump over the ones that he’s not interested in.
In my recent exploration of software project management literature, I decided to look for answers to a question about Agile methodologies that has been bothering me for some time: the Agile Manifesto struck and somehow seduced me first and foremost because of its first statement: “Individuals and interactions over processes and tools” but all bits and pieces that I could read about Agile methodologies revolved around test-harnesses, continuous integration, sprints, iterations, daily scrums, kanban, stand-up meetings, etc. In short: it seemed to me that all agile-related resources were centered on processes and tools !
There’s an easy explanation for this situations: obviously processes are easier to describe, criticize and refine for the technical crowd I’m part of and, after all, the “agile processes” are designed to encourage interactions and relieve people from the inevitable dark side of software developments (bugs, requirement changes etc).
But still this puts “processes first” assuming that people will benefit from it in the second place, and that’s this kind of contradiction that motivated me to look for an “agile” book dedicated to the “human” aspects of agile methods, and ultimately to read: Individuals and interactions: An Agile Guide by Ken Howard, Barry Rogers.
This is a long overdue review of a long overdue read of the famous software project management book: The Mythical Man Month by Fed. P. Brooks, 1995 (1st ed. 1975).
I’ve heard about it several years ago, about how relevant it still was to current projects and more precisely how well it described what is systematically going wrong in software development. And all of that is true, impressively so !
Despite the vintage touch you can expect from a software-related book written at the dawn of software development (1975 !), the permanent disbelief of even the best educated developers toward the unavoidable occurrence of bugs and schedule slippage and managers’ natural tendency to look for manpower and neglect the productivity gains that could come from improving the information and tools available to a team, all of this is finely described and analyzed in this book.
Interestingly the author extended the book in 1995 to add more information and jeopardize his own previous assessments: answering some of his critics and reckoning some of his mistakes. This book embeds its own review !
This book is obviously a must read for anybody interested in project management and yet the first thing that struck me is how well the author characterizes the pleasure of programming, listing:
- the joy of making
- the joy of being useful
- the fascination for puzzles and minutes mechanics
- the joy of always learning
- the joy of working on “pure thought” stuff
In the following, I will try to categorize a selection of the main other arguments that struck me, into three categories: Planning, Development and Organization.
I’ve recently read a book that is now a bit old according to the web standard and especially since it deals with social web technologies.
This book, Programming Collective Intelligence by Toby Segaran was first published in 2007 and explains chapter after chapter each of the main machine learning algorithms that power (even today still) many of the biggest web services like Google, e-Bay and Facebook.
Despite its publicized social web focus, I can’t help thinking of this book as a more general introduction to machine learning algorithms.
Because of that and also because, due to its age and success, this book already has several detailed reviews over the web, I’ll make an attempt at a kind of cross-review by explaining how it could be a perfect companion book to the on-line and free Machine Learning class by Andrew Ng.