Tuesday, July 27, 2010

Muscles I Didn't Know I Had

So, I took a canoing trip with my wife and some friends last weekend.  Nothing crazy, just a 10 mile trip down a lazy river... which turned out to be an incredibly congested lazy river.

The plan for this trip was that we would lash our canoes together to form a flotilla.  This flotilla would be armed with a series of water cannons for the express purpose of laying siege to anyone who looked at us funny.  Normally, this might seem like an evil purpose, but know that it was nearly 100 degrees with high humidity.  So, in actuality, we were providing a vital public service.

Once we were putting the canoes into the river we quickly saw that we were not going to be alone on this trip.  It seems like everyone decided to canoe that day.  This required an alteration to our plan.  Originally we were going to go with a four canoe flotilla... instead, we went with three and a single destroyer boat to quickly move between the crowd.... my wife and I went for the destroyer role.

The trip was fun and rather uneventful for us.  It was amazing how many people managed to sink a canoe in three feet of water, but I digress.  Our plan of drenching people with gallons of water went well, and my wife an I had a blast paddling circles around people soaking them from all angles.  The remorse of the days events hit hard though. 

That night around 2AM I woke to an awful feeling.  Was it my conscience tormented by the drenching we gave to those poor river folk?  Nope, cramps and significant joint pain.  Seems my arms and shoulders weren't used to the rowing action.  Here I was thinking that my amazing typing skills had prepared me for this physical exertion; I was wrong.

After a few hours of stretching and hydrating I was able to get the pain to subside enough that I could go back to sleep, but it took a few days for the effects to wear off completely.  So, what can be learned here?

Interestingly enough, this is a lesson I've learned before.  The context was a little different, but the lesson was the same.  See,  I work for a company that services the SMB space with computer and networking needs.  I really grew up in this organization and learned quite a bit through working in hundreds of different networks, each with their own requirements and quirks.

My role stared in an entry level call center position and moved through basic field service work and eventually put me in the lead network infrastructure and security role.  It is in this role that I got comfortable.  It's not that I was lazy; I feel I have a pretty solid work ethic, and  I believe my boss would echo that sentiment.  The issue was that I stopped pushing myself.

A few years down the road, my organization branched out into a new arena for us, remote monitoring.  With that new product line came a new role.  This role would be a consulting role that would advise clients in the monitoring program.  It was new and exciting, so I jumped at the chance.  I dove in with all the enthusiasm of running a destroyer canoe around a battlefield drenching poor unsuspecting kayakers.  Not long into this new role though, I found that I was using new and heretofore unexercised muscles.  I quickly found that I needed time to ramp up... I might even, gulp, need help.  Fortunately, I have some fantastic co-workers and a consultant that assisted me in laying out the role more efficiently and devising a plan around communication responsibility.  That's not to say things are perfect, but the regiment is now defined.

Right around the time of this experience I listened to an episode of the GRM n00bs podcast (http://www.grmn00bs.com/2009/12/16/podcast-episode-9-when-they-were-n00bs-with-rob-fullermubix) where Rob "Mubix" Fuller (http://twitter.com/mubix)was interviewed.  In that interview he talked about a time when he was training for a physical evaluation.  He said he was never one of the fastest runners; though, there was nothing that physically kept him from excelling.  During that training, one of his senior officers noticed his comfort in completing within the deadline and told him that he should adopt a different view.  See the people he was running with were holding him back from how well he could do.  As long as he was willing to just be where he was, he would never find out how far he could go.  His new goal was to be to run past each of the people in front of him and as he passed he would tell them to run faster.  In essence, he needed to step up and lead so that all would become better, not just be happy with success.

I've since adopted this mentality in my work.  I'm not satisfied to get though the day successfully.  It's time to drive toward excellence, not just success.  Where will this lead me?  I honestly don't know, but I'm sure not willing to settle for simple success any longer.  It's time to stretch the muscles and discover new ones.  It's time to uncover the new arenas of knowledge and understanding that I lack.  Most of all, it's time to get the whole team running faster.

################# 

PS:
Some of you may be asking yourself... does this mean that you're going to apply this to your physical fitness to?

Here's my answer.  Begrudgingly, yes.  I feel that there is no way that I can operate at my peak level professionally without my physical body matching.  So, in the spirit of accountability, I need your help.  Tweet me @charon79m with ideas on getting in shape with limited time.

Thursday, July 15, 2010

Fun with Asterisk (* and I ain't talkin' sports records)

Recently a friend of mine, Rob "Nosbig" mentioned me in his blog entry "My Live With Asterisk".  So I figured I'd give you my perspective and experience.

I'm not new to VoIP, but I am new to rolling my own, so to speak.  I've been using a Linksys SPA900 IP-PBX, SPA400, and SPA942 phones.  You might ask why I've got such a home setup... well it has everything to do with a funky firmware on the SPA400 and a company that wasn't willing to wait for a more stable version... but I digress.

Here's my setup; be warned, it's UGLY.  My voice connection comes into my home via a VoIP provider that does not permit me to "Bring Your Own Device" (BYOD).  Because of this, I take the FXS  on the back of my SIP provider's device and  plug it into the FXO on the SPA400.  When a call comes in and rings the SPA400, it hit's the SPA9000 which in turn has a ring-all group that rings the SPA942s in my house.

This setup has worked pretty well but I really don't like a few things.  First, I don't like that when a call rings all the phones and you pick it up, all the other phones now have a "missed call."  Second, I'm limited on features.  I'd really like to have some sort of find-me feature where my home PBX rings my cell if I'm not at home.  Lastly, I HATE the SIP to Analog to SIP conversion.  The call quality is amazingly good... but on principal I'm disgusted.

So, how do I fix this?  Well, I set aside some time with my good friend Nosbig and we talk Asterisk.  Now, what's Asterisk you ask... Well, it's an IP PBX.  It's the swiss army knife of Telephony.  It's an enterprise class telephone system that is FREE!

Rob filled me in on the advances of the FreePBX interface, and it sounded like something that I could get into.  I showed up at his house with two P4 boxes, a handful of SPA942s, and associated peripherals.

I tossed the freshly burnt disk into the CD-Rom and booted into a simple install.  Yep, it's the ol' RedHat'ish install.  It agrevates me that it doesn't let me setup any user other than root, rename the machine, or set the IP address... all this must be done after the install.

Once thins were rolling, we had some issues getting calls going.  We ended up having to load some Asterisk modules by hand, chan_sip and func_dialplan... not sure if this was an artifact of updating and not reloading or what.  Once we did that all was well.  We were dialing around in well under an hr.

Once I cut my teeth on the basics, I took my new toy home and really had some phone.  I created a trunk to my SPA9000 allowing me to 4-digit dial all the other phones in my house.  I also created a trunk to my SPA400 permitting me to dial to the outside world.  In less than half a day I had a fully functional phone system, and I hardly even knew what I was doing.

With some more playing I just kept getting more and more impressed.  Quickly I began to see options.  I setup my VPN connection on my laptop and a SIP client and boom... extension to may SIP client.  Hmm... Droid?  Yep, there's an app.  Type type RING!  SIP phone goodness on my Droid!  Oh, this is going to be fun!

So, what's the point of this post?  Geeky stuff can be FUN!  That's the beauty of Free and Open Source Software.  You can have all the fun of REALLY EXPENSIVE toys w/out needing to spend a dime.  That being said, if you want to use this in an enterprise setting, it's ready to roll and there are wonderful geeks out there like Nosbig to support you with it.  So, if you are looking for some fun with phones in your home, check out Asterisk.  If you're looking for an incredibly capable phone system for your company, CHECK OUT ASTERISK.

Thanks for the mention, Rob.  Also, if you're looking for more info on home network setup, look back here shortly.  I'll be doing a few posts on the upgrades I've got going on here.  More Asterisk, Firewall Replacement, NAS, and much much more!

Friday, July 9, 2010

Local Food When You Can - And IT Too!

So today I had the pleasure of making pancakes with my family.  It's a bit of a monthly, or so, weekend tradition with us.  My eldest, Amilia and I mix up the batter, she used to love to crack the eggs but has gotten in her head that the evil germs will get her if she gets egg on her now (long story there...).  Regardless, it's a fun time.

The first pancake never quite turns out.  Either the temperature isn't quite right or the batter.  Amilia, Bella (our dog), and I share the first one.  We comment on how we might adjust things...  Bella always says she needs just one more bite to have creative input.  It's quite a good time.

Well, you might be saying now, "Why are we talking pancakes on a tech blog?"  Good question, and the answer will probably confuse you a little at first.


See, this set of pancakes was a little different than usual.  This week my wife and Amilia made a quick trip to a local store, The Blueberry Patch.  As you might have guessed from the name, they sell blueberries, and now's the time to pick'em.  There's nothing quite like fresh blueberries; you just can't get that at a chain store.  Oh, and my wife and daughters picked them by hand themselves too. 


The dynamic of a local company is that if you end up not liking what they sold you, you're likely to tell others of the quality of what you got, and that will have a direct impact on their bottom line.  That's why it's best to deal with local providers, and IT is like that too.

Find a local provider with a great reputation' someone that can cover the basics.  Lean on that organization to refer you to specialists when in need; DON'T ask them to be the one-stop-shop, it's just not realistic.  Interview possible providers and ask for references!  Also, expect to be interviewed too.  Any good IT provider will be careful of the accounts that they bring on as well.  Hey, if they can't make money servicing your account, they won't be in business long.

Be leery of the one guy shops... Yes, you'll get a great price and probably decent service, but that guy's got to take a vacation once in a while... and what happens when he lands just one more account than he can properly service?  Would you buy your blueberries out of the trunk of a car?  Then why buy your IT that way?

There are many great options  in almost any market.  Ask around and you're sure to uncover great providers... and remember, interview!