The Energy Bus

This is a WIP post for reading notes on The Energy Bus, recommended by my manager. It’s sometimes hokey but generally good. Through this post, I hope to boil the book down to a few nuggets that really resonate with me, as well as some concrete action steps for making my life even better :).`

TODO: reflect on dog-eared pages up to P.56

The first few chapters are setup: the main character has a negative attitude. One day, he gets on a flat tire and has to ride the bus, and boards the titular “Energy Bus,” where the driver Joy espouses a series of rules for better living through positive thinking.

Rules of “The Energy Bus”

  1. You’re the driver of your bus
  2. Desire, vision and focus move your bus in the right direction
  3. Fuel your ride with positive energy
  4. Invite people on yoiur bus and share your vision for the road ahead
  5. Don’t waste your energy on those who don’t get on your bus
  6. Post a sign that says NO ENERGY VAMPIRES ALLOWED on your bus
  7. Enthusiasm attracts more passengers and energizes them during the ride
  8. Love your passengers
  9. Drive with purpose
  10. Have fun and enjoy the ride

Agree:
“Feed the positive dog.” There are

A

Disagree:
There’s a bit about visualization. I believe visualization is powerful, but I think the attribution to the “law of attraction” is hokey, lazy and maybe pandering.

Keep a Daily Journal

Every day at 4:45 PM, I get a reminder to write my daily journal entry. Then I open a markdown editor, expand a snippet to create a journal template, and record the day’s accomplishments and thoughts.

  • Daily journaling helps in several ways:
    • Cement the day’s learning
    • Get ready for the next day by preparing for team communication (e.g. daily standup)
    • Pick up faster in the morning with next steps
    • Reference notes to help update your resume, write blog posts, or update the team wiki
    • Come armed to review meetings with concrete notes about what you’ve accomplished

How to Write Your Daily Journal

Keep it pretty short and scannable. Following advice related to daily “standup” meetings inspired my daily journal template: include accomplishments, next steps, and blockers.

I use TextMate for my daily journal. Other text editors can get the job done, and if I decide to change horses, markdown ensures my journal entries are portable. The features I need most are:

  • Markdown support
  • Snippet expansion

Here’s the TextMate snippet I use to write my day-end journal:

End-of-Day date +%Y-%m-%d
Did:
Next:
Blocks:
Ahas:
Ideas:

Sometimes I fill out “Ideas” and “Ahas” as I work. I save all my journal entries in journal.md, in a file synced to my Dropbox account (using the Dropbox app for Mac).

JavaScript Object Creation Methods

Questions:

  • What are some different styles of object-oriented JavaScript? Is it possible to delineate?
  • What differentiates object creation methods?
    • myFun = New myObj()
      • MDN New Operator

        The new operator creates an instance of a user-defined object type or of one of the built-in object types that has a constructor function.

    • Object.create()
      • MDN Object.Create

        The Object.create() method creates a new object, using an existing object to provide the newly created object’s __proto__ . (see browser console for visual evidence.)

 

var cardboardBox = new BoxConstructor(details)

    1. Creates a new object
      {} //<3
    2. Sets prototype of cardboardBox to prototype of BoxConstructor
      aThing.prototype = Something
    3. Call BoxConstructor with this = cardboardBox
      BoxConstructor.apply(cardboardBox, arguments)
    4. Return the object created

All together now!

function makeNew(constructor){
  var obj = {}
  Object.setPrototypeOf(obj, constructor.prototype)
  var argsArray = Array.from(arguments)//es6
//var argsArray = Array.prototype.slice.apply(arguments)//es5
  constructor.apply(obj, argsArray.slice(1))
  return obj
}

 

JavaScript Bind()

Fun Fun Function video on bind examples

functions are values that can be passed around, but they don’t ‘bring’ their context

‘this’ refers to the context of the calling function

‘bind()’ creates a copy of a function, changing ‘this’ to refer to the bound object:

var bindingVar = boundFunction.bind(objBoundTo);
bindingVar() //this refers to objBoundTo