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.

PROCESS:

  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:

    http://ewen.mcneill.gen.nz/blog/media/disable-write-same
  3. Next I needed to install MongoDB on my own.  I followed the instructions provided in the link found in the reference section to mongodb.org.  They were:

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

    echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart 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 mean.io site.
    curl -sL https://deb.nodesource.com/setup | sudo bash -

    sudo apt-get update

    sudo apt-get install nodejs
  5. TIP: BE SURE TO INSTALL GIT IF YOU MISSED IT EARLIER!!
  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.

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

    http://<server.name>:3000



REFERENCE:

http://learn.mean.io/#m-e-a-n-stack-installation

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/?_ga=1.210389661.982565409.1424984373

http://askubuntu.com/questions/449232/problem-installing-14-04-in-vmplayer


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.

Tuesday, January 13, 2015

IBM ConnectED 2015

IBM's conference ConnectED 2015 is quickly approaching.  At the end of the month, many of us who work daily with IBM's collaboration sollutions will swarm on Orlando, Fl.  The topics of discussion this year will no doubt include IBM Verse.  If you are not familiar, this is the single largest innovation in email in quite a number of years.  It is a mail client that ir browser based and centered around making you more productive.  With a design direction of "two clicks to perform anything" and a search / recommendation engine which shares DNA with Watson, it is a very promising tool.

In the arena of Connections / Portal, we have seen a great deal of maturity.  I have been working for over a year now on building social portals with a few different organizations.  Taking advantage of Social Rendering, DDC, the advancements made with the Connections Portlets, and many other technologies.  I hope to see some coverage on these technologies as they have grown, but I don't expect them to be the crowning jewel of the show as they were in years past.

If you will be at the conference, please look me up, otherwise I will try to relay as much relevant and exciting information from the ground as I can along the way.  Safe travels from wherever you may hail!