mercredi 20 janvier 2010

Deep survival

Once again a very good book from PersonnalMBA !

Written by Laurence Gonzales, it explain how accident happens and why people live or die in survival situation.
This is actually the two main parts of the book.

This book use a lot of philosophy (mainly Stoicism and Taoism), a lot of real examples and statistics studies.

This is a very opening and inspiring book and, even if it's main public is people who wants to go to the wild or do dangerous thing, it's also very useful for "common" people or business.

At each time of your life or your business, you will find yourself facing difficult situation : divorce, loosing your job, a big contract ... At this time, you should have a survivor mentality (or philosophy) to pass these events with the less problems !

Here, the survival's rules directly taken from the book :
  1. look, see, believe : accept the reality of the situation.
  2. Stay calm : use humor; use fear to focus.
  3. Think/Analyse/Plan : get organized; set up small, manageable tasks.
  4. Take correct, Decisive action : be bold and cautious while carrying out tasks; Willing to take risk to greater good; Break down large task into small one.
  5. Celebrate your successes : take joy in completing tasks.
  6. Count your blessings : be grateful, you're alive !
  7. Play : engage the crisis almost as a game.
  8. See the beauty : relieve stress and creates strong motivation and allow to take new information more effectively.
  9. Believe that you'll succeed
  10. Surrender : let go your fear of dying; "Put away the pain"; "Resignation without giving up"
  11. Do whatever is necessary : be determined, have the will and the skill, don't expect or even hope to be rescued.
  12. Never ever give up : let nothing break you're spirit; Embrace the world in which you find yourself and see opportunity in adversity.
There is also some advise to stay out of trouble :
  1. Perceive, believe then act : attempt to make prediction accurate but, as environment change, you need versatility; Avoid the "Four poison of the Mind", fear, confusion, hesitation, surprise.
  2. Avoid impulsive behavior; Don't hurry.
  3. Know your stuff like Marcus Aurelius, the Roman emperor and general, said : "Of each particular things, ask : what is it in itself, in its own construction ?"
  4. Get the information.
  5. Be humble.
  6. When in doubt, bail out. And don't underestimate the difficulty of doing this !

These information are enterely quoted from the conclusion of the book. The whole book needs to be read to get the full comprehension.

you can also have a lot of info on the website : http://www.deepsurvival.com/

If want more info or more details, don't hesitate to ask questions :)



Paris JUG - Soirée performance

Résumé de cette soirée animé par Kirk Pepperdine et Dan Hardiker, tenant le site http://www.kodewerk.com/.

La présentation fut similaire à celle ayant eu lieu au Devoxx 2009 (visible ici http://beta.parleys.com/#sl=1&st=5&id=1594) donc vous pouvez voir les transparents.

Ambiance bien sympathique surtout par la dynamique du duo.

Coté technique, dans l'ensemble, la présentation portait plus sur le coté méthodologie et bonnes pratiques de l'amélioration des performances d'une application. Seuls des outils de base mais indispensable ont été utilisés (suivi des processus système, JMeters tiré du profiling netbeans ou encore Thread Dump Analyzer).

Kirk nous a présenté un ensemble d'anti-patterns liés aussi bien à la technique qu'à la méthodologie.

La panique.
Erreurs : ignorer des éléments clés, pointer du doigt ("Ca vient de la base de données ou du reseau !"); la pression des utilisateurs et des manageurs; beaucoup de stress.

Pas de "stress testing".
Erreur : utiliser le navigateur pour faire des tests (non répétable, difficile à réaliser).
Besoin : avoir une specification claire du besoin du client en terme de performance; Aucune réponse de plus de 3 sec.

"Shot in the dark".
Erreur : ne pas travailler sur des intuitions, par exemple, code propre et non propre ont souvent les memes performances. Faire des optimisations de facon prématuré est inutile.
Besoin : mesurer pour connaitre l'origine du probleme. Identifier les principaux consommateurs. Tester chaque niveau de l'application, dans l'ordre Hardware puis JVM/OS puis application puis le client associé à des patterns d'utilisation.
Par exemple si au niveau de l'OS, si les ressources affectés au processus se partagent également entre l'application et sa gestion par le systeme, il y a surement un probleme de threads.

Dans la scéance des questions / réponses, il est ressorti qu'un des principaux objectifs du consultant sur des questions de performance va etre de faire parler les différents acteurs du projet. Les problemes de performances Java se repartissent à 40% sur des problemes de mémoire et à 40% sur des problemes d'accès base de données (JDBC).

Allez le compte rendu + wave par Olivier Croisier : http://thecodersbreakfast.net/index.php?post/2010/01/23/Paris-JUG-Performance-Kirk-Perpperdine

TED: Ideas worth spreading

TED (http://www.ted.com/) est une conférence annuelle dont l'idée est de "transmettre les idées" .... et quelles idées !

Sérieusement toutes les videos que j'ai pu voir ont toutes leurs intérets et très souvent effectuées par des gens passionnés et renommés dans leurs domaines respectifs.
Les sujets sont devenus très variés meme s'ils s'orientent historiquement sur la technologie, le design et le "fun".

Ce genre de conférence me redonne espoir sur notre futur :)

Et clairement certains discours meriterait réellement d'etre plus pris en compte !

A regarder sans modération et en plus c'est souvent sous titré.

Trois examples :