Monday, March 21, 2011

Practical Planning

Tonight’s the night we make history …

Image via Wikipedia

This last weekend, a group of us from the San Francisco Bay Area Chapter of PMI were set to attend the PMI – 2011 Region 7 Leadership Summit in Reno.  We made it to Reno and back in record time (although not in the direction one usually associates with breaking records).

It was a classic example of project management at it’s finest: we made plans, with allowances for expected risks, and the world accommodated our plans by giving us additional challenges along the way.

We had decided to try and save the chapter some money by carpooling over the mountain to Reno from the Bay Area. Knowing that there is always the possibility of snow this time of year, we made sure to rent an SUV with 4WD, and made allowances for extra time in case there was snow. I’d driven in that area in the snow quite a few times, and a couple of others in the car were OK with driving through the snow as well.

No surprise, a big storm blew in the Friday we were due to travel. There was a mixer that we were due to attend Friday evening at 7pm, so we left in the morning leaving around 10am for an anticipated 6 hour drive.

Once we got to the mountains, the snow started coming down. It wasn’t too bad and it was looking like we had left early enough to miss any problem in getting over the pass. We stopped at Ikedas market in Auburn to enjoy a nice lunch, and were on our way into the snow around noon.

The first thing I noticed as we started through the snow was that there was a low pressure notification for our right rear tire. I was hoping that it was just the cold weather (I’ve seen those sensors go off when the temperature goes down). We adjusted the plan to stop at the next gas station and check the tire pressure.

We got to about Colfax, when the traffic slowed to a crawl. This wasn’t too worrisome, as we expected it to take a few hours to get over the hill. We were still doing OK until we saw the CHP officers waving us off at the next exit and telling us to go back westward because the highway was closed.

Once again, we talked about options and decided to head back down to Auburn and wait for the highway to open in comfort. This also would give us a chance to check the tire pressure.

We drove back down to the first gas station we saw, only to find that the tire was pretty much flat. We pumped it up as much as we could, and headed out to find someplace to get the tire repaired. A helpful chain installer pointed us down the road to a tire store where we got the tire repaired.

Back down the hill, we stopped at  a Peet’s inside a really nice Raley’s market to wait out the closure and discuss options. I called my brother-in-law Myles, who works in the area to see if there might be a good alternate route with the snow coming down. His advice was to not to take an alternate route a local had suggested (he drives up there all the time, and if he wouldn’t drive it, I didn’t figure it was a good idea for me to try).

We looked at the DOT site to see whether there were any estimates on when the road would reopen, and asked others who were on the road what they knew. Eventually we heard that there had been a 40+ car pile up with at least one fatality and 20 or so injured. There had been at least two big rigs involved, so it was going to take some time to clear.

We started checking on places to stay in case it started getting too late for us to make it that night. By five or six, we’d pretty much decided it wasn’t going to open that night, and Ray Ju (our current chapter president) had spoken to his nephew who had volunteered to put us up in Roseville. The plan was adjusted again, and our new goal was to get to the conference in time to support our fellow members who were there presenting.

After arriving at Mike and Linda’s house, we got directions to a Japanese buffet called Mizu. Once again we found ourselves adjusting plans as we somehow missed the restaurant and ended up in downtown Roseville. I pulled out my iPhone and got us to where the restaurant was supposed to be, only to find it had been renamed.

By this time we’d realized that the team could respond to just about anything, and rolled with the changes. We had a great meal, returned to Mike and Linda’s and decided to roll out of the house by 5am the next morning so we could try and make Sharawn’s presentation.

Getting up early with a good night’s sleep, we sojourned forward over the pass. The snow started up just above where we’d been turned around the night before, and just kept getting heavier as we climbed. After fighting with ice fighting on the windshield (which we fought by turning the defrost up to 80°) the snow started slowing down as we approached the summit.

We arrived at the hotel at around 8am and were greeted by Alan Yue (the incoming chapter president), checked in and met our goal of being there in time to check-in, shower and support Sharawn in her efforts.

We had a great conference and watched the weather nervously for our expected trip home Sunday afternoon. The weather was supposed to be getting worse, and as time went on, it looked more and more like the pass was going to close again. By 10 or 11am, it was clear that the pass had been closed, and there wasn’t much chance that they’d be reopening before Tuesday.

San Francisco Bay Area highlighted in red on a...

Image via Wikipedia

The trip home was planned with the best expert advice possible: Victor our new best friend from CalTrans, Google Maps, and some vague experiential knowledge from Rob. The word on the street was that the only remaining open pass would take at least 14 hours to get home at best (since everybody would be driving on that two lane road at 10 mph or so).

So we put on our PM hats again, huddled, considered options (including staying a day or two longer in Reno), and came up with a new plan. The lowest risk approach it appeared was to drive far south, avoiding the passes, and completely skirting the mountains. Our preliminary estimate put that drive at 10 hours or so, which was better than any of the alternatives we considered, and also would theoretically get Myles Lawless (chapter’s PMO Director) home in time to make it to his new client location the next morning.

Well of course it wouldn’t be historic if there weren’t more challenges. Driving south took much longer than what we’d anticipated, and then just as we had realigned our expectations on the arrival time, we ran into (luckily not literally) another snow storm outside Bakersfield.

PMI SFBAC Team

PMI SFBAC Team

We did what project managers always do, plan as well as we can with the information available, decide on a course of action, and adjust as we go along. It was  a great bonding event for all of us, and will make the year ahead even more fun as we already have a really long journey with a shared vision behind us.

Friday, March 11, 2011

Microsoft tries to Think Different

I got an email from Microsoft today (Office Insider) that included an article about how to add a calendar to Outlook that would give you the March Madness schedule in Outlook as an example of publicly shared calendars.

Publicly shared calendars are nothing new, they’ve been around for years: Apple created the webcal URI to access iCalendar files using WebDAV (over HTTP) for iCal.

So I figured Microsoft probably wouldn’t have reinvented the wheel here and tried clicking the link in the article to see if it would fire up iCal.

webcals dialog box

Turns out that the URI in the link was very slightly different than a standard iCalendar, so instead of the normal “webcal://” it starts with “webcals://”, which interestingly enough tried to fire up Outlook (in my Windows virtual machine).

Luckily this URI isn’t yet associated with a particular app, so I was able to click on the “Choose an Application” button and pick the iCal application.

Once iCal is chosen, the dialog box shows both Microsoft Outlook and iCal:after choosing iCal

After choosing the iCal application, and clicking “OK”, iCal fires up with a dialog asking you to enter the URL of the calendar you wish to subscribe to, with the URI from the web page showing:

iCal URL entry

Now clicking “Subscribe” of course doesn’t work, since iCal has no idea what to do with “webcals” as a URL.

So to fix this, you have to modify the URI to be either “webcal://” or “http://”  (turns out “https://” works as well).

So even though the URI is not quite the standard webcal one, it is possible to open as a web calendar with iCal, and the same trick works for Google Calendar. Just copy the URI from the link in the page (webcals://calendars.office.microsoft.com/pubcalstorage/9rc05lhz2204226/2011_NCAA_March_Madness_Calendar_Calendar.ics) by right clicking and copying the link:

copy link location

Going to my Google calendar, I then click the little “Add” button at the bottom of the “Other Calendars” area, and choose “Add by URL”.

This brings up the dialog box that lets me add the calendar, and I paste in the URL I copied before, and just edit the first part to be “https”:Add Calendar by URL

Since it’s already a public calendar, I didn’t check that box, although I’m thinking that makes it a public calendar on Google, which might make it easy to find with Google.  At any rate, now the calendar shows up for me both on iCal and Google (obviously it would work in Outlook as well had I followed the original link).

Google calendar with March MadnessiCal with March Madness

Saturday, March 5, 2011

Project Managing my Career

I was talking to my friend George Ross the other day about the job search that we both unexpectedly find ourselves in, and it occurred to me that I haven’t been approaching my career management with the same level of commitment to planning that I have when managing projects and programs.

A while ago, I made the conscious decision to pursue program management as a way to round out my skills in heading my career into the domain of technical leadership. I’d spent most of my career as a developer with my referent power derived from keeping one step ahead on the technology curve.

In my early career, I had managers and mentors who saw something in me that I didn’t see in myself, which was the ability to lead. Several managers tried to push me into leadership roles, and at first I pushed back, preferring to keep my head down, and learn as much as I could about everything that I could.

Well, you do that long enough, and those opportunities stop happening, so I found myself at a new place in my career where I actually understood the value of managing others. I’d finally realized that even if I was better than the people I managed, multiple people could get more done than I could as an individual. Even if they worked half as quickly as me, as long as there were enough of them, more work would get done and more quickly.

So understanding this, and meeting a few individuals who’d managed to make that transition from technical geek to technical leader, I set my sites on that CTO sort of role.

So I had an goal, and I had an inkling of an idea of how to get there, but still no formal plan. What occurred to me last night was that like any other goal, without a plan to get there, the path wanders, and you may never get there.

pwc

That said, I was conscious enough to know I needed to round my skills, and I did set my sight on some intermediate targets. First was to get some management experience, which was what led me to PwC and managing web development there.

The truth is, that I wandered a bit more in my career, not really making direct progress toward anything like the CTO role. I gathered a bit more experience as a technical architect, expanded my skills leading small teams, and learned a lot about being a consultant and managing expectations.  Still, without a plan time marched on.

Image representing Cisco as depicted in CrunchBase

Image via CrunchBase

I was exposed to solid project management at places like Cisco (which is probably the most project based organization I’ve ever worked at) and the value of true project management. It occurred to me that moving into the project management end of the process would round my skills in a way that being an architect would not. It would also round out my business and soft skills in ways that the more technical role would expose me to.

So having no idea what project management was, I talked to a few of my friends and heard about the Project Management Professional (PMP) certification from the Project Management Institute (PMI). From watching a few of the better PM’s that I knew go through this certification, I had no doubt that it was a challenging and as real a certification as any I’d come across.

I took a couple of PMP prep classes and studied as much as I could, in order to understand the best practices of project management. I began to understand things that I was doing right, and reasons for things I had not understood before (like what a critical path actually was).

The Golden Gate Bridge as seen from Fort Point...

Image via Wikipedia

During the “downturn”, I became more involved with expanding my skills through volunteering and continuous learning. I helped to form a non-profit aimed at getting people jobs, and learned a great deal about interpersonal networking (both virtual and physical).

Continuing that growth in leadership, I’ve joined the board of directors of the PMI San Francisco Bay Area Chapter as Secretary and VP of Operations (officially starting on April 1st, 2011).

Now I’m feeling the skills are getting pretty rounded, and I still don’t have a real plan to get from here to there. So the first step in my plan is to write down that I need a plan. Next I think I’ll need a few good mentors to help me figure out a real plan ….

Tuesday, February 8, 2011

Where did my space go ?

The other day I got a notification from the Plesk control panel for Carticipate telling me that the user account was about to expire. I logged into Plesk only to find out that the disk on the VPS was full.

Now this was really confusing, since the entire Carticipate system consists of a web2py install, on Linux with a fairly small MySQL database, and the VPS had 20 gigabytes of disk space.

I looked around and found that there were three full backups each about 14Gb, with several incremental backups of a gig or so. Thinking this was the issue, I deleted all but the latest backup.

Well apparently, those backups are stored somewhere not on the server, so that made no difference to the space problem. So I did the next natural thing which was to look for big log files, clear out /tmp, and anything that might be causing the problem. I only managed to clear out a few megabytes of space.

I dug around some more and found a lot of files under the /root directory that seemed to be related to updating Plesk. Since that’s provided as part of my 1and1 VPS service, I called the support number to see whether they could help me figure out where my space had gone. Unfortunately, for the first time, they were not very helpful, suggesting that I needed to research and find out where the big files were on my system.

After some frustrating arguing with the support guy, where I pointed out that I couldn’t get support from Plesk, only they could, I finally gave up and went to my old stand by of Google.

First a quick search to find where the mysterious gigabytes of space were being consumed. First I did a quick “find” command with:

find . -size +20M -exec du -h {} ;

Going to a few of these folders and running “du -hs” gave me the folders that seemed to have a lot of files in them and were eating up a lot of space.

A few more searches on the Parallels site, and found a couple more references telling me that these were both OK to clean out.

The /root/psa folder is where Plesk was configured to download updates, and apparently it doesn’t clean out those folders after the update is successful.

The other folder is where all the dumps from the local backups get placed, and that was the primary problem area. The /var/lib/psa/dumps folder was over 14Gb of the 20Gb, so cleaning that out got me started again.

Looking at the dump directory, it appears to have daily dumps of all of the Plesk stuff going back forever, so this may happen again, but for now, my VPS backup is down to a much more reasonable 2Gb.

Monday, December 13, 2010

Version problems? To the Cloud !

JetBlue Airways logo Category:Airline logos
Image via Wikipedia

I was on my way home from a business trip and wanted to print my boarding pass. Most hotels have a PC set up that is primarily for that purpose, and this one was no different.

The PC they provide is set up so that it wipes itself every time somebody logs in, which in theory protects you from somebody eavesdropping and/or stealing your information. The down side to this approach is that you’re stuck with whatever they decide is the right version of software to work with.

The problem (for me) came in because I was flying JetBlue. Now I love JetBlue, but they (for some unknown reason) use Flash in the page to print out your boarding pass.

You’d think this wouldn’t really be much of a problem, since I’m sure they probably have some sophisticated check that will catch if the browser doesn’t have Flash and redirect you.

… Except …

The PC did have Flash loaded, but the JetBlue page wanted a higher version installed than was on the machine. So the browser helpfully asked if I wanted to upgrade, which I said “yes” to, only to find that the generic login doesn’t have install permissions (surprise, surprise).

So I asked the desk to help, but they had even more locked down machines, so I figured I’d just have to punt.

Until I remembered that I had my Mac with me. I went to my room, ran through printing the boarding pass from the JetBlue site straight to PDF. Then I uploaded the PDF to my Google Docs.

Back down to the hotel computer, log into my Google Docs, open the PDF and presto – the boarding pass is printed !

Bottom line is that by relying on Google to connect me, I was able to get what I needed in spite of the software incompatibility. Once again I’m loving the cloud (and Google Apps).

Friday, November 5, 2010

How to Copy a SharePoint Site

I had a bit of a fire drill the other day when a SharePoint site that I had been using needed to be retired. I have moved content around before, but only lists and small numbers of documents, never an entire site.

After some research, and with help from my colleague James Robertson, I now know how to make a copy of a SharePoint site that includes the content on that site. This is useful if you are archiving a site, or need to create a working copy in order to do development and testing.

First of all, it appears that you must be a “Site Collection Admin” to do this task. If you don’t see the link to save the site to a template, you may need to request permissions from your SharePoint administrator.

Step 1 – Go to “Site Settings” from the “Site Actions” menu:

Step 2 – Click on the link that says “Save site as template”:

Step 3 – Name the template and check the “Include Content” check box:

Click the “OK” button

Step 4 – Use the new template by choosing “Create new Site”:

Step 5 – Name your new site and choose the template you created before from the “Select a Template” list (Click the “Custom” tab to see saved templates):

Step 6 – wait for the site to be created:

Step 7 – You should see the new site once it is created:

DONE – Now you have a complete clone of the site (including content, permissions, etc) as it was when the copy started.

Thursday, August 26, 2010

Problems with connecting at a hotel …

When traveling and trying to use the hard wire at a hotel, you may find that the provided Ethernet cable won’t work. This is because hotels typically have a very outdated infrastructure and are still running at 10Mbps.

Most new computers are set with network speed set to auto detect, but this relies on the hardware being able to handle that detection, which older, cheaper network boxes aren’t able to do.

In the lower right corner of your screen, you should see your network icon that will look something like:

The network connection is the one that looks like a pair of computer screens ().

The ).

When you are connected to a hard-wire, the tray should look something like:

The icon for the network connection will flash as network activity occurs.

If you don’t see the icon for the Ethernet connection, right click on the one for the Wi-Fi to get the context menu and choose “Open Network Connections”:

This will bring you to the network connections, which will list all of the available network options that have been configured on your machine:

If the connection shows “Limited Connectivity” instead of “Connected”, you most likely don’t have an IP address.

Right clicking on the “Local Area Connection” (or whichever one is associated with your Ethernet card) will give you a similar context menu that should let you check your connection by choosing “Status”.

This will show you a more detailed status of the connection:

You can try clicking the “Repair” button to force the connection to restart, but this typically won’t work in the hotel scenario. So going back to our context menu for the Ethernet connection, choose “Properties”:

This will bring up the property sheet for the connection:

Click on the “Configure” button next to the adapter to get to the settings. This will bring up the properties:

Go to the “Advanced” tab to change the link speed to 10Mbps:

Click “OK” and the adapter should reset and you’ll be good to go.