Archive for the ‘Book’ Category

Success Traits, Being Your Goals, and Recovery

February 11th, 2015

I forgot what a gem Going Long: Training for Triathlon’s Ultimate Challenge by Friel, and Byrn is. While this book is targeted towards the athlete training for an Ironman distance triathlon it has a lot of overlap with long distance running material and endurance athletics in general. Here are a couple sections and ideas I liked.

Success Traits
The successful traits of an athlete are listed as: confident, focused, self-sufficient, adaptable, quietly cocky, and mentally tough. Confidence is loosely described as balancing respect for yourself and your athletic abilities. Self-sufficiency by taking full responsibility of your actions, and taking calculated risks to try to win rather than trying not to lose. Quiet cockiness because “[they] know they have what it takes physically to succeed [but the] most successful ones never brag about this … their assuredness is obvious to anyone who watches … they don’t talk about how good they are … they are afraid it would come back to haunt them.” That last trait really resonates and follows the behaviour I’ve observed in world class athletes.

Being Your Goals
The section on being your goals expands on the success traits. It’s suggested that in order to be a champion we need to eat, train, recover, behave, and become a champion. By becoming a champion we’re striving to be the best we can. In our diet it’s suggested that we: eliminate processed foods, get our energy from whole sources, limit starchy and sugary foods to during and after workouts. Champions know that “success does not imply arrogance”. There’s also mention of how “athletes have a fear of truly committing to their goals” and I can certainly relate.

In addition to these broader soft ideas there’s a lot of good technical information on training plans, workout phases, breakthrough workouts, recovery, etc… All of which share a lot of commonality with ultra marathon / marathon training plans. I’m always amazed at the time commitment these Ironman level triathlons require – 15 hours weekly to just complete one! Imagine what a runner could do with 15 hrs or running per week.

A couple thoughts on recovery from Friel, and Byrn:

Remember that there is no such thing as a ‘recovery run.’ Recovery sessions should be non-impact oriented

Your mind will try to convince you that you are different from everyone else, that you need less recovery. History has shown that almost everyone is best served by resting.

Rushing recover is a false economy. When your body needs rest, it will take the rest that it needs by any means necessary. Fatigue, illness, burnout, and injury…

If you’re wondering, Friel, and Byrn suggest recovery should take four to six weeks following a full effort race. This is definitely a book worth picking up.

Author: Adam Kahtava Categories: Book, Review, Running Tags:

Book Reviewed: Rework by Jason Fried and David Heinemeier Hansson

May 27th, 2010

Rework by Jason Fried and David Heinemeier Hansson has been on Amazon’s top ten list for a couple months now and for good reason, it’s captivating, easy to read, engaging, and fun. However, I was disappointed with the lack of references. If the authors had included references to texts that back up many of their opinions (books like the Mythical Man-Month, Peopleware, etc…) then Rework could have more impact on corporate decision makers. Unfortunately, without the external references this book is easily passed of as highly opinionated and subjective.

Author: Adam Kahtava Categories: Book, Review Tags:

More Reasons For Testing: Prevent The Morning-After Syndrome

March 11th, 2010

Testing (Test Driven Design, Unit Testing, Mocking) is a part of developer popular culture – most developers understand that by writing the tests first we’re forced to focus on the important details as we build software, that by writing tests we prove that our software works as we build it, and that by running our test suite against our changes we gain assurance that our code still works, but did you know that testing is also a cure for the ‘morning-after syndrome’?

The ‘morning-after syndrome’ as described by Uncle Bob (Robert C. Martin):

Have you ever worked all day, gotten some stuff working, and then gone home, only to arrive the next morning to find that your stuff no longer works? Why doesn’t it work? Because somebody stayed later than you and changed something you depended on! I call this ‘the morning-after syndrome’. – Robert C. Martin, Agile Principles, Patterns, and Practices in C#

Bob makes the point that by writing tests we make our code more stable and brittle to change, which prevents our coworkers from making casual breaking changes. Sure-sure, brittle tests are frustrating when refactoring, but at the same time these brittle tests accentuate the importance that the code under test should not be modified. Core components that your system depends on should be stable and brittle.

Bob continues:

Many factors make a software component difficult to change: its size, complexity, clarity, and so on. But we are going to ignore all those factors and focus on something different. One sure way to make a software component difficult to change is to make lots of other software components [like tests] depend on it. A component with lots of incoming dependencies is very stable, because it requires a great deal of work to reconcile any changes with all the dependent components. – Robert C. Martin, Agile Principles, Patterns, and Practices in C#

Author: Adam Kahtava Categories: Book, Quality Assurance, Testing Tags:

The Sheep Dip: Developer Boot Camps, Training Events, and Evangelism

October 5th, 2009

I found Andy Hunt’s description of Sheep Dip Training funny:

A sheep dip is a large tank in which you dunk the unsuspecting sheep to clean them up and rid them of parasites. The sheep line up; you grab one and dunk it in the tank … It wears off, of course, so you have to dip them again.

Sheep dip training follows the same model. You lineup unsuspecting employees, dunk them in an intensive, three-to-five day event … and proclaim them to be Java developers, .NET developers, or what have you. It wears off, of course, so next year you need to have a “refresher” course – another dip.

Companies love standardized “sheep dip” training … There’s only one drawback. This naive approach doesn’t work … – Pragmatic Thinking and Learning by Andy Hunt

Author: Adam Kahtava Categories: Book, Musings Tags:

Free: Win a Copy of: JavaScript: The Definitive Guide by David Flanagan

July 23rd, 2009

Free to a good home: JavaScript: The Definitive Guide by David Flanagan.

It’s rare for technical books to be held in such high esteem, but the numbers speak – this book has close to 200 five star ratings on Amazon, confirming that The Definitive Guide is still one of the seminal guides to the JavaScript language. Flanagan’s book is a must read for developers and designers alike. Along with JavaScript: The Good Parts by Douglas Crockford of course. I reviewed this book a while back, you can read my review.

The Details:

  • Comment on this post
  • Leave a valid email in the email comment field
  • The winner will be chosen at random and notified through email on Oct 1st
  • I cross my fingers hoping that you don’t live on the other side of the world (I pay for shipping)

Good Luck!

And the winner is Dan Carlson!

Author: Adam Kahtava Categories: Book, Contest, JavaScript Tags:

Book Reviewed: Designing with Web Standards by Jeffrey Zeldman

July 20th, 2009

The title of Jeffrey Zeldman’s book (Designing with Web Standards) says it all – this book promoted accessible, usable, search engine friendly web design and development through the use of XHTML and CSS while debunking the myths surrounding web standards. Zeldman is a well recognized name among web developers and designers – he’s the the founder of A List Apart, and co-founder of The Web Standards Project (WaSP). His writing is entertaining, witty, easy to read, and insightful – it’s very much like the content we’re used to reading at A List Apart. It’s also fair to mention that this book has been edited by industy experts and influencial writers like Eric Myer. Any developer that works with the web should read this book along with JavaScript: The Good Parts by Douglas Crockford.

Author: Adam Kahtava Categories: Book, CSS, DOM, JavaScript, Review, Web Standards Tags:

Book Reviewed: Domain-Driven Design: Tackling Complexity in the Heart of Software by Eric Evans

June 15th, 2009

Eric Evans Domain Driven DesignIn Domain-Driven Design: Tackling Complexity in the Heart of Software Eric Evans shares his extensive development and consulting experience as he outlines his approach to software development and design using Domain Driven Design (DDD). Evans’ writing style is easy to read as he maintains a comfortable conversational tone while pragmatically guiding us through the many patterns and concepts that encompass DDD. However; be-warned the concepts that lie within are occasionally dense, abstract, but ultimately enlightening as Evans’ forces us to look at development from a new perspective.

It’s also fair to mention that this book has been charged as being just another patterns book, and while I can see this perspective, some of the concepts do come across as being overly abstract without clear implementations (code) to reference, but this books is much more than another patterns book. As a developer you don’t want to overlook this book, it’s an insightful snapshot into the mind of an experienced developer. From my experience the concepts and patterns surrounding Domain Driven Design frequently crop up in Service Orientation, MVC/MVP structured Web Applications, Object Orientation, Test Driven Development, Model Driven Development, and other modern staticly typed best practices. If you do find yourself grasping for more concrete implementations then you’ll want to read Jimmy Nilsson’s Applying Domain-Driven Design and Patterns: With Examples in C# and .NET book too – Nilsson’s book provides many code examples while directly referencing Evan’s text.

I highly recommend this book, it’s a great reference to have alongside Steve McConnell’s Code Complete, Facts and Fallacies of Software Engineering by Robert Glass, and the Martin Fowler blessed books too.

A group of us reread this book as part of The Calgary Book Club. View my review on Amazon.

Author: Adam Kahtava Categories: Book, DDD, Review Tags:

New Perspectives For The Year: Life Is Short, Humans Are Dumb, Careers Are Your Responsibility, and We Need More Heretics

January 30th, 2009

These books set the tone for my perspective in this new year.

A Short History of Nearly Everything (Bill Bryson) emphasizes that, as humans we rarely know what we're doing – our existence as a species on this earth is a tiny fraction of time, but we continue to kill ourselves while obliterating other species and our environment. This book was also a great reminder that the greatest innovators and inventors are individuals with a burning passion – not individuals with a laundry list of formal qualifications.

The World Is Flat 3.0: A Brief History of the Twenty-first Century
(Thomas L. Friedman) argues that, we can't accept complacency in our jobs or careers – the world has changed and you'll be left behind. Bureaucracy on every level may save your job today, but this won't be the case in an increasingly global world. As individuals our careers and future are solely our responsibility – we should be versatilitsts, not specialists.

The Age of Heretics: A History of the Radical Thinkers Who Reinvented Corporate Management (Art Kleiner, et el) demonstrate that, most corporations / business / organization don't really know what they're doing (MBA theory is based on the past, and not entirely relevant for the future). Many successful businesses have been run by heretics – people who understood the system around them, then push the limits of these systems to provide more value, innovate, and become successful. Also, that success is almost entirely dependent on people, teams, integrity, honesty, and the relationships that ensue.

The Last Lecture (by Randy Pausch, Jeffrey Zaslow), is a sober reminder that living life to the fullest and living a good life are what really matters. Also, that: “engineering isn't about perfect solutions; it's about doing your best with limited resources” – Randy Pausch.

Cheers to another great year as we continue to gaining broader perspectives, seek out a better quality of life, get out and do more things, meet new people, and cultivate existing relationships. :)

Author: Adam Kahtava Categories: Book, Musings, Personal Tags:

Vernacular Culture and Heretics: Humanity the Zen of Zen?

October 30th, 2008

I found Art Kleiner’s concept of vernacular culture interesting in his book The Age of Heretics: A History of the Radical Thinkers Who Reinvented Corporate Management.

Vernacular as described by Kleiner:

Despite the power of corporate practice, something desperately desirable has been lost in everyday corporate life, and without it, corporations could not truly perform. This lost quality, unnoticed and yet desperately needed, was the vernacular spirit of everyday life …

there is no better word than vernacular for the quality of relationships and culture that dominated community life before the advent of the industrial age … 

Vernacular life was the way of life that still exists in these villages of our dreams … In a vernacular culture the best things in life are free, economic and personal life are mixed together … and every exchange of goods is not just an economic transaction but an expression of the community’s spirit …

the builders of industrial culture didn’t have to reject vernacular culture; they merely ignored it or destroyed it in passing, while the power of finance and operations, the power of the numbers culture, undermined the relationships that vernacular culture depended on.

There’s strong parallels to the vernacular culture, the Agile / Lean movement, open source, buying locally, the Toyota Way and an innate human need for community and contribution. Today, many of the institutes that have been built on industrial culture (GM, Ford) seem to be faltering, whereas those that have been built on vernacular culture (Toyota, Google) seem to be succeeding.

Through the book the author suggests that heretics are often responsible for transforming industrial cultured institutes to ones that embrace vernacular culture.

Kleiner describes a heretic as:

someone who sees a truth that contradicts the conventional wisdom of the institution to which he or she belongs and remains loyal to both entities – the institution and the new truth.

One of the concepts that is continual presented within this text is that conventional wisdom and institutions are often incorrect, as individuals we can change our situation, our work environment, and our world, but in order to make change we need to identify, verbalize, and seek out new ideas and approaches.

I don’t know how I was recommended this book, but I’m really enjoying it!

Author: Adam Kahtava Categories: Book, Musings, Open Source Tags:

The Three-step Sequence: Incorrect Assumptions and Experience

September 30th, 2008

the obvious … is never seen until someone expresses it simply. – Kahlil Gibran

The preface of Object Oriented Software Construction literally introduced me to the three-step sequence:

the well-known three-step sequence of reactions that meets the introduction of a new methodological principle:

(1) “it’s trivial”;
(2) “it cannot work”;
(3) “that’s how I did it all along anyway”.

(The order may vary.) – Bertrand Meyer

Naturally people consider themselves smart, which sometimes translates into knowing everything, and these three reactions are probably a manifestation of thinking you’re overly enlightened. If we put ego aside – along with our natural predisposition for being lazy (trying to avoiding learning new things) – we often change our views altogether.

Looking back at my technological naivety: I was once wrongly convinced that client-side languages would never work and server-side languages / frameworks would dominate (until I really learned JavaScript), I had also mistakenly assumed that I was already doing TDD (until being introduced to the concept of Mocking), and I even thought that HTML table based design was the future (until I really learned CSS). With a little bit of knowledge and some experience I changed my views altogether.

Reflecting on these incorrect assumptions and decisions promotes growth – with every experience we grow. Which of my latest assumptions / reactions will change over time?

Author: Adam Kahtava Categories: Book, Musings, Personal, Software, Testing Tags: