Friday, April 22, 2016

What a motto?

... "Nuthin', what's a motto you?"  (Lion King)

I can't hear the word motto without thinking about Timon and Pumba.  Now a bit more than 30 days into the job, motto had become super important to me of late.  It may sound as if I am simply "drinking the Kool-Aid", but when you have a good motto, its worth talking about.  Coda's motto (or tagline) is Do something great.  Every day.  Being in the software business, there is a very real risk of missing the mark with your solution should it come out at an inappropriate time, be irrelevant in its message or function, or any other number of conditions that have led many good things to an unfortunate end.  Every day I try to do my part to ensure this does not happen with Maestro. 

Coda's motto couldn't be more appropriate for our line of work, as if we do not move the needle even just a little bit each and every day, there is a chance someone else may seize our market.  Keeping an eye on the future, while managing the tasks of the day, and learning from the past and those before you can definitely leave someone with a dizzying view of life.  We don't have to always see in all directions, just never lose sight of the goal and nudge, leap, claw, climb, run, fly, whatever you need to in the right direction and good things will happen.   Maintaining momentum is easier than trying to generate it in the first place  Motivating multiple teams to move in one direction to build, market, sell, and manage the flagship product offering for a new company has been extremely rewarding and an amazing growing experience so far, and it is JUST starting! 

So my advice to all, do SOMETHING every day.  Make it great, or trust that it will be a step towards something great regardless, and see what happens.  Positivity is as contagious as negativity, but has a better effect on morale and productivity.  Try to see the positive in all that is happening around you, and continue on your respective journeys.  You never know how your journey may overlap someone else's and the amazing things that happen when you get the right band together.

Thursday, March 24, 2016

Introducing: Coda Global

For the majority of my career I have been a consultant.  An information technology consultant.  A geek.  While the lifestyle (no, consulting is not just a career) afforded me opportunities to travel a bit, see different parts of the world, experience different foods and people, it came at a price: family time.  The importance of work-life balance, not missing so many "firsts" with my four children, and enjoying the fruits of my labors a bit in the moment (as opposed to the perpetual "some day") is more important than maintaining gold status with a given airline.  I needed to realize that and work towards right sizing my work life.

Beyond racking up status points, I also highly valued the customers who saw me as their "trusted advisor" for all things within my area of expertise.  Building the laundry list of skills like a buzz-word dictionary to describe what I "do".  So, what do I do?  I have always gravitated towards collaboration as a focus area of expertise.  Over the years this discipline has been referred to as knowledge management, or more recently social collaboration, or others I cannot think of at the moment.  Regardless, my career has been largely centered around helping people work together better, faster, or more efficiently.  I do not see this entirely changing, but for me it is evolving.

This brings me to the topic at hand, which is Coda Global.  This latest chapter in my career is built on the same foundation as always, helping people work together better, but with a twist.  Among other focus areas, Coda is a product company, and I am the first to bear the title of Conductor.  Our business platform is a cloud solution, built with a combination of open source and proprietary IP, designed to provide large enterprise like capabilities to small and medium size businesses in an affordable and flexible manner.  Conductors in music help direct and shape the performance of a group, so too do Coda Conductors  We take the base platform (our score) and work with customers and our service professionals (the orchestra) and deliver a solution (performance) to solve the complex and sometimes unique needs of our customers.  The most significant difference for us is that we do not see each of the movements of our piece as stand alone engagements, but rather a variation on the theme, which offers opportunity for features and capabilities to find their way back into the product.   This productized approach also affords us the opportunity to be prescriptive with certain behaviors and aspects of the tooling, but our services arm is capable of tailoring to the business needs of the individual customers we work with.

So, take a moment to get to know Coda Global.  Understand our differentiators and capabilities.  Perhaps we can bring better harmony to your organization too.


Monday, March 02, 2015

Making Ubuntu MEAN!

One of the coolest things I saw at ConnectED was a utility out of Lab Services called Project MUSE.  It is a collection of JavaScript technologies put together to enable rewriting of HTTP packets on the fly for rebranding and injecting custom modules for SaaS customers.  This means even multitennant Connections customers will be able to brand and customize the UI to their hearts' content.  The IBM Distiguished Engineer, Jason Gary gave a wonderful demo and walk through the stack and its capabilities.  One of the things the team used in MUSE was the MEAN application stack.

If you are not aware, MEAN is a fullstack JavaScript framework comprised of MongoDB, express, AngularJS, and nodejs.  This JS app stack is extremely flexible and I wanted to learn more about the underlying technologies used in MUSE.  To get started, I figured I would fire up an Ubuntu server and install the stack.  Sounded like a simple enough task, and obvious place to begin.  After a day or so of failed attempts, hunting down error messages, troubleshooting, and piecing together documentation from the four corners of the internet, I have the formula for making the stack work.  Here are my notes in the event they prove to help anyone else.  (and so I don't forget)

I started with Ubuntu 14.04 LTS.  As always I immediately ran the apt commands to refresh the repo information and then install the latest patches.  I will assume that the readers know how to do this, and a fully patched Ubuntu 14.04 LTS installation is the starting point.


  1. First I needed to install a few things to make the environment ready for development tasks.

    sudo apt-get install gpm vim vim-doc vim-scripts build-essential curl git
  2. One of the issues I encountered was a WRITE SAME error when installing MongoDB.  To prevent that issue, I found a helpful script in an article (referenced) linked here to address the issue:
  3. Next I needed to install MongoDB on my own.  I followed the instructions provided in the link found in the reference section to  They were:

    sudo apt-key adv --keyserver hkp:// --recv 7F0CEB10

    echo 'deb dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list

    sudo apt-get update

    sudo apt-get install -y mongodb-org
  4. After installing MongoDB, I then continued on to install nodejs.  I was able to follow the simple instructions from the site.
    curl -sL | sudo bash -

    sudo apt-get update

    sudo apt-get install nodejs
  6. Git installs and does not always setup the git:// protocol resolution correctly.  To compensate for that I had to run:

    git config --global url."https://".insteadOf git://
  7. With MongoDB, Node ,and the necessary underlying system stuff underway, I now turned my attention to the mean tools.

    npm install -g grunt-cli

    npm install -g bower

    npm install -g mean-cli
  8. With mean installed, I now had the stack, but there is a default administration application that needed to be setup.  I used mean to initialize the default admin application.

    mean init <myApp>  (where <myApp> is the name of whatever you want to call your default application)

    cd <myApp> && npm install
  9. Now I started the application I just setup.

  10. I then just pointed my browser at my server on port 3000 and was able to see the default app.



Tuesday, February 03, 2015

IBM ConnectED 2015, As I Saw It

I did not always know I was going into technology.  In a previous life, like so many of my technical brethren, I was a musician.  During the mind-late 1990's I played in a band that would do events like weddings, bar mitzvahs, etc.  We would close each night with this Eric Clapton song.  It speaks of getting ready to go out with your wife, then the realization of how luck you are to be the one with her, and end with her tucking you in at the end of the night the way only your better half can or does.  I felt this sentiment through the entire week of ConnectED this year.  It started with careful preparation, more so than years past.   I packed more suits than typical, enjoyed the time spent with customers and being able to say that they were there with me, and finally a gentle farewell.  The speculation among the community that this was the last hurrah for the Swan/Dolphin to host the ICS conference, and the sentiment was undoubtedly there for me this week.  I feel extremely privileged to have been able to attend this years conference, especially if the speculation proves to be accurate.

The key messages for the week were definitely centered around IBM Verse and whats new in IBM Connections.  If you have not found what Verse is, take a look here.  It is without a doubt one of the biggest innovations in personal information management.  Blending Watson with email, calendar and a really intuitive UI.  It is definitely something to keep an eye on.

For Connections, Luis Benitez kicked off the week with a spectacular demo of what is coming, including Watson search and analytics integration, an improved homepage, and the most exciting community customization enhancements I have seen to date.  Luis has a great summation on his blog.

There was other news from the IBM camp about realignment of resources, new offerings, and the normal smattering of great stuff.  Of particular note to me was a small project out of the IBM Labs, Project MUSE.  It is an amazing little collection of JavaScript technologies that enables one to customize and extend cloud delivered offerings as if they were on-premise.  It injects customizations into the HTTP packets on the fly, and by using caching and predictive services, there is no performance hit.  (They showed studies of performance gains to be honest.)  I can definitely say that MUSE is now very much on MY radar and am extremely eager to see what happens with it.

To all friends, old and new, it was a pleasure roaming the halls of the Swan and Dolphin with you once more.  Until the next time we all get to gather around a fountain and raise a glass, be safe, work out-loud, and continue to innovate without caution.