The Story of a Coin

Shortly before leaving the U.S. Army, I was assigned to an administrative role due to an injury.  I was a Military Policeman, and dreamed of being recognized for my exceptional performance in law enforcement.  I was frustrated about the administrative role, preferring to lead my law enforcement team. While my attitude was terrible, I made the role my own and created a number of systems to organize my section, gaining recognition of leadership several levels above mine.  For this work I received a coveted Challenge Coin, a token for a job well done, from a leader I highly respected; a humbling experience to say the least.  

There is no time like the present

“Dress for the job you want, not the one you have.”  I have heard this quote so many times, but it misses an important factor of success.  We should always be preparing for our next role by being exceptional in our current role.  It is easy to spend too much time time thinking about the future, and how great things will be when we just get to the next level.

Some of the best career advice I have ever received was during a new hire training.  “Be awesome at your day job, and pursue your passion.”  This is easier said than done, but when we focus on the task at hand, opportunities to pursue our passion tend to present themselves.  This can then give us an opportunity to pursue the job we want.

Positive attitude beats talent alone

With great power comes great responsibility.”  Ben Parker left us with this wisdom in the Spiderman series.  Peter, of course, is too wise for his uncle, until it is too late.  Ah the wisdom of youth; it is amazing how much we know when we are young and how much less we know as we age.  Pride is a tough thing, thinking you know better than those who have walked the same path is dangerous.

“If you can’t say anything nice, don’t say anything at all.”  My mother used this line with my brother and I so many times, and all these years later it is more true than it was then.  Sometimes our attitudes are the only thing holding us back.  Realizing that we can learn from everyone we encounter, having a humble attitude, and putting a smile on our face when we are ready to give up goes a long way.  Always looking for the good and positive in people and situations can help us grow and learn.

Seek outside perspectives

Writer Kahlil GIbran said, “When we turn to one another for counsel we reduce the number of our enemies.”  It can be simple to look at our leaders, or those we work with and think of them as the problem.  Going to them and asking for their advice, in a humble and honest way, is almost always a growth opportunity for us, and a way to remove a potential roadblock to our dreams.

King Solomon of Israel reminds us, “Plans fail for lack of counsel, but with many advisers they succeed.”  Those who truly care about us, whether a spouse, a manager, or just a friend, will be willing to share the truth with us, but we must be willing to accept what they are telling us and act upon it.  We should all have people in our lives who will give us perspective, who care enough to help us work through our shortcomings, and who will keep us on our path to success.

I am thankful for the time I spent in the military, but as I reflect, I wish that I had been more present.  I spent too much time focused on things that were not important and I missed so many amazing opportunities.  My attitude was one of entitlement, they were lucky to have me.  I was frustrating to my leadership in many ways, challenging them when I should have realized they had my best interests in mind.  My biggest mistake though, by far, was thinking I had the answers.  Looking to those who were more experienced would have saved me so many arguments, and set my early career on a different path.

I carry the challenge coin with me now each day to remind me that I am where I need to be, and what I am doing is leading me to where I am needed next.  It is a small token, but we should all have something which reminds us that we are here to learn today, and we could all be a little more humble in our endeavors.

The Story of a Coin

Fun with Homekit

With the release of iOS 10, and homekit becoming a little more mainstream, I have finally begun to really take advantage of my homekit enabled devices.  It has been an interesting process, but I remain hopeful.

I wrote previously about my experience with my Ecobee3 Thermostat.  I purchased it instead of a competitor because of homekit specifically.  When I installed it, I didn’t really have a solid understanding of how homekit worked, and honestly didn’t take the time to research.  It worked through the app, and we were happy.

20151010103733

Recently on the Home On podcast #075, Richard Gunther had the CEO of iDevices, Chris Allen, on his podcast to discuss the state of homekit among other things.  During the podcast Chris offered a limited giveaway of his companies connected switch, which I was fortunate enough to be a part of.  I decided to use it for the plug controlling our Pond pump, replacing an analog dial controller which always seemed to lose time somehow.

idevices-switchWhen I went to setup the switch, just prior to homekit, I couldn’t figure out why it was so spotty when I joined it to the isolated device wireless network I previously discussed.  When I added it to the primary network it worked well, and suddenly siri integration worked.  Then I tried to use siri with my Ecobee3 Thermostat, which failed because, you guessed it, it was on the isolated network.

This lead me to the whiteboard where I started digging deeper into how airplay, airprint, bonjour, and most of the other apple protocols work.  It occurred to me if apple is using MDNS for almost everything else, that would be the logical way for homekit to work, and MDNS requires that devices be on the same network segment.  (Yes I could have just read the instructions, but I am a guy.)  Once I placed all homekit devices on the same network, everything worked fine, siri was responsive most of the time, and with iOS 10, the home app was generally functional.

I have noticed that devices tend to stop responding sometimes, and need to be power cycled.  I am assuming this has something to do with the wireless, although the signal is not the issue.  There have also been a few oddities with devices not wanting to retain their config, but that may have been something in the setup I missed.

If I didn’t have so many apple devices I am not sure I would have gone the homekit route, in favor of more amazon alexa or google home ecosystem devices, but the simplicity of apple devices, as usual, is unsurpassed.  The integration will continue to improve, but for the price, homekit has me hooked for now.

Fun with Homekit

Remotely Managed Home wifi

“Oh you work in the tech field?  Can you fix my wireless?”  We all get this request, it is why I have started pushing friends and family toward chromebooks and iPhones.  They seem to be the easiest to troubleshoot when things don’t work as expected.  Wireless on the other hand has always been a challenge, trying to help someone remotely, to explain why their wireless doesn’t work.  With home networks now relied upon for home automation, home media, security systems, and normal web browsing, a $50-$100 wifi router is not likely to cut it any longer.

Recently I decided to put in wireless for my mother, who has never had internet access, and lives 2 hours away.  We wanted to get her an iPhone, but wanted to make sure the experience was optimal.  I did significant research on how to control the system remotely, and even debated trying to teach my mother how to manage the system.  For our home, I had already installed the Ubiquity Unifi System, so after some research I opted for the same system for the remote site.

The setup was pretty simple.  I opted for the Unifi Secure Gateway  for the firewall, I need to write an update on why I made that decision later, and the UAP-AC-LR for the access point.  I chose the Long Range model because I was more concerned with coverage than performance, and because the only use case was internet access, no network storage or local media servers.  I used the Raspberry Pi 3 unifi controller from my previous post, but I opted for a local controller, rather than running both from the one controller, although it is possible based on this support KB.  My concern was if there was an issue when I was not home with the controller, I didn’t want to lose access to both systems.  For the price, it seemed prudent to separate them.

Making changes to the system was exceptionally simple since Ubiquiti gave us the cloud controller.  I simply enabled cloud access on my existing system, and the new one, and voila, I have remote access to the controller with no VPN and no port forwarding.

screenshot-2016-09-11-at-20-47-32

 

To manage the system I go to the cloud management site, http://unifi.ubnt.com and login.  I am able to access both controllers independently, make any changes, and push those to the firewall or the access points.

capture-image

I even went so far as to install a TP-Link Smart Plug so I can remotely reboot the controller if it becomes non-responsive.  This became necessary after I made a change that caused an issue with the controller and required my son who lives nearby going over to reboot the controller for me.

As I tend to support family and friends wireless, it occurred to me this has a number of potential use cases.  For several years I have supported the wireless internet at our Church, which usually leads to me driving 30-60 min each way when there is an issue, thankfully not often.  I am also working on some projects for an orphanage we support in El Salvador, one of which is wireless.  As I continue to build out my home and extended family wireless, I am seeing further uses for this type of a system.  Simplifying the management, and making it remotely accessible will make my life easier, but also change the way others use technology.

Wireless internet is changing the way we interact, my mother is on Facebook finally seeing more pictures of the grandchildren than ever, her brother is watching old television shows and old car races he remembers from his child hood.  Young girls in an orphanage in El Salvador are getting a better quality education, and going on to improve their country with their own knowledge, not foreign aid.  Providing a remotely managed wireless system helps create more opportunities to learn and share, changing the way we communicate and takes much of the burden off those of us who support multiple family members and friends.

Remotely Managed Home wifi

Technical Presentations: stop waiting, just get started.

As I write this, I am leaving VMworld 2016. It has been an amazing conference, I was able to reconnect with friends, work in the Hands on Labs, and present a session focused on security in healthcare. This is my second year presenting at VMworld, another year of struggling to meet deadlines, building slides, and trying to make sure I was ready. I wanted to share my experience, my struggles, and my opinion on this, mostly to provide the community with some encouragement to get up and share your knowledge with the rest of us.

What topic would you want to listen to?

 

The best sessions I have found started with a conversation. This year, I was talking with my manager, bemoaning the lack of security in technical architectures. Sure we threw in the checkbox items, but we missed the larger picture. We always assumed security was a product, missing the point that it was a design principle. After some heated debate, we realized that almost every part of the VMWare product set related to security. I am not a security specialist, which we decided made the messaging even more powerful.

 

When you are thinking about what to present, think about what interest you. Make your presentations credible, make them interesting to you. If you are presenting something you are passionate about, you are going to be more engaging. The best presentations involve the speaker making wild gestures, modulating their voice, and end with heated friendly discussions. Passion is everything, and if you believe in what you are saying, the passion should be natural.

 

Ask for help!

 

One of my biggest mistakes this year has been not asking for help. I took on too many tasks, spent too much time debating content with internal teams who wanted to help, and didn’t ask for the help I could have used. I work in a company full of amazing smart people. I have met so many people on Twitter and other medium who would have loved to help. I wrote a majority of the presentation myself, and waited far too long to get more eyes on. The best thing I did was to join a local Toastmasters group which did help me with the speaking skills.

 

We have all started somewhere, and nearly all of us want to help. There are more opportunities than every to be involved in community. Having a speaking mentor, using Toastmasters, looking within your team are all great ways to get some help. There is no weakness in admitting you need help, and it is a great way to meet new people who often become life long friends.

 

Rehearse, Rehearse, Rehearse, then Rehearse some more

 

I can’t say it enough. Knowing your content is key. I am very cautious about memorizing my content, but I know the slides inside and out. I write out an outline with key phrases to jog my memory. By the time I got to VMworld I had rehearsed so many times my brain hurt. When I got on stage, I knew my slides, I knew my content, and I still forgot half the things I wanted to say. Imagine if I had failed to rehearse.

 

Rehearsing is not fun. Very few people enjoy standing in front of a mirror, or a camera, practicing their content over and over. Having someone give you feedback is thought to take, especially when you pour yourself into a presentation, but it sure beats getting negative feedback from your audience.

 

One of my favorite parts about being in the technology field is being a part of this community. Every conference, no matter how good the sessions are, the best thing is the reunion with all the people I have worked with and met over the years. While we may give each other a bad time, we are a big community, and we are all here to support each other. Presenting can be a terrifying thing, but all of us have an important story to share that will help someone else. Give back to the community, your community by getting involved. Tell your story, and grow your career, there are so many of us who want to help you, so what are you waiting for?
Technical Presentations: stop waiting, just get started.

Ubiquiti’s Amplifi: My first install

I have to admit, I am becoming a bit of a Ubiquiti Fan Boy.  Since I started moving my family to all streaming media, wireless has been a huge challenge.  Trying to get internet to every corner of the house, without running cable through the walls, caused me to try out a number of products.  While most had a simple manageable interface most fell down on performance or features.  Last week, based on my recommendation, a friend of my wife purchased and asked me to install it for her to resolve her poor wireless coverage.

Initial Setup

The initial setup was pretty simple.  It consists of a base router/access point.  Once I had plugged that in and restarted the cable modem, I was prompted to download the app.  It nearly immediately found the wireless system, and walked me through a simple setup wizard.  The longest part of the install was the update.  All said and done the system was up and running, with both wireless extenders appropriately placed  in around 5 min.  I had her test the most remote TV with Netflix, and the most remote computer to validate.  The improvement in service was instant for her.

Management Interface

The management interface was very simple and intuitive.  Everything was available on my iPhone, no web interface to speak of, but really not necessary.  The main screen of the app displays the status of the main device and the two extenders.  This leads me to believe that it is unlikely there will ever be more than 2 extenders, which is probably sufficient for most home users.

The guest network was particularly interesting, the ability to schedule the guest ssid made it unique.  The thought being that if you have guests over, you can schedule the guest wireless for a few hours and have it shutoff automatically when they are gone.  The wireless device map shows who is connected to the network, not unique, but it is much simpler to use, and far more accurate than previous devices I have seen.

Limitations

As with any product, there is always room for improvement.  One of the things I would have liked to see what a bit more on the traffic analytics, and more specifically restrictions and parental controls.  A number of the “mesh wireless” competitors are adding these in as software updates, so I would think that this will come in a future release, but it would have been a huge win for Ubiquiti if they had brought this in the initial offering.  It can be done, but it is not intuitive for the audience they intend the product for.

The app is great, but I would have liked to see a full web client with all the features of the app.  The concept of mobile first is great, but sometimes when I am working, I don’t want to dig out my phone to make changes.  It is great to be able to just open a new tab and make any changes right there.

 

Which leads to remote management.  This one is not a huge issue for most users, including the target audience, but for those of us who travel for work, and manage our home network, and home networks of our family, having remote access to the network is fairly important.  It actually caused me to choose a Ubiquiti’s Unifi system over Amplifi for my mother who lives 2 hours away.  I did not want to explain to her how to manage wifi on an app, it is easier to let her focus on facebook and pictures of the grandkids.

 

I try not to do many product reviews, but I felt like this one was worth the time to write up.  Ubiquiti has really done a great job here, it won’t replace my Unifi system at home, but if they had the Amplifi system available when I installed it last year, I would likely have gone that direction.

Ubiquiti’s Amplifi: My first install

Building a Unifi Wireless Controller with a Raspberry Pi 3

rpi3Previously I talked about my Unifi wireless configuration.  A critical part of ubiquity’s wireless is the controller.  In a traditional home wireless configuration, the router, wireless access point, controller, and often a small switch are all built into the same device.  This makes the system simpler, but far less powerful and flexible.

As I was exploring my options, I originally put the controller software on my mac mini we use as a media server.  This caused some issues with port mapping since it uses port 8080 and 8443.  One of my other media management products used port 8080 so I started looking for another solution.  I tried following the documentation, which entailed building MongoDB, a painstaking process on an arm processor, so I opted to install the Debian package from the Ubiquity website.  Pretty simple, but here are my lessons learned, and some quick shortcuts to get it done.  As a side note, this seems to work on a Raspberry pi B+, but the performance is pretty spotty.  The Raspberry pi 3 B+ is much more suited to the task.

The first step is to install the latest version of raspian.  I opted for the “lite” version since I have no need for the desktop interface.  Once you boot up and go through the basic setup, including the wifi configuration, you will need to grab the latest package from the the Ubiquity site, https://www.ubnt.com/download/unifi/.  Make sure you grab the debian package as noted here.

Unifi Controller Download

Installing the package is pretty straight forward.  SSH into the Raspberry PI and run the following after you download the software.

sudo dpkg -i unifi_sysvinit_all.deb

This should return several errors.  To fix this, run the following commands.

sudo apt-get install -f
sudo dpkg -i unifi_sysvinit_all.deb

The second run of dpkg may or may not be necessary, but I like to be thorough.

Once that is done, simply open a browser on your computer and go to http://<raspberry pi ip>:8080.  It will walk you through a pretty simple setup, and voila, you are done.

I did look at the cloud key, but for the extra cost, the reviews didn’t seem positive.  At the cost of the Raspberry PI it is a simple and cost effective controller with minimal setup/maintenance.

Building a Unifi Wireless Controller with a Raspberry Pi 3

Who moved my VMware C# Client?

Years ago I was handed a rack of HP servers, a small EMC storage array, and a few CDs with something called ESX 2 on them. I was told I could use this software to put several virtual servers on the handful of physical servers I had available to me. There was a limited web client, available, most of my time was spent on the command line over SSH. The documentation was limited, I spent most of my time writing procedures for the company I was at, quickly earning my self a promotion, and a new role as a storage engineer.

Today VMware is announcing that the next release of the vSphere product line will deprecate the C# client in favor of the web client. As I have gone through this process, both as a vExpert and a VMware employee, there have been many questions. During our pre-announcement call with the product team at VMware, there were a number of concerns voiced about what will work on day 1 and what this does to the customers who have come to rely on performance. Rather than focus on the actual changes, most of which are still to be determined, it seemed more helpful to talk about the future of managing systems, and the future of operations.

george

When I started working on server administration, the number of systems one admin might manage was pretty low, maybe less than a dozen. With the advent of virtualization and cloud native applications, devops and no-ops, administrators are managing farms of servers, most of them virtual. We often hear about pets vs. cattle, the concept that most of our servers are moving from being pets, something we care for as a part of our family, to cattle, something we use to make money, if one of our cattle have a problem, we don’t spend too much time on it, we have many others, we can just make more.

Whether it is a VMware product, Openstack, or another management tool, abstracting deployment and management of systems is becoming more mainstream, and more cost effective. In this model, a management client is far less important than APIs and the full stack management they can enable. For the few use cases where the client is needed, the web client will continue to improve, but the true value is these improvements will drive new APIs and new tools developed for managing systems. While change is never easy, a longer term view both where we came from, and where we are going with the interfaces reminds us this is a necessary change, and less impactful than it may seem at first glance.

Who moved my VMware C# Client?