Archive for the 'Personal' category

Classical music and the job search

March 18, 2018 8:37 am

[This is a re-post from LinkedIn]

Picture this: You’re listening to a piece of classical music on the radio, and it really resonates with you. You want to listen to it again and again, so you want your own copy of it. But your radio doesn’t have RDS, and before you can find out from the radio host what it is, the signal dies, and all you hear is static. How would you know which LP/CD/MP3 you need to go look for? Chances are, you have no idea. All you know is that you heard some beautiful music, and you want to hear it again. You probably can’t tell which orchestra played it – was it the Vienna Philharmonic or the Boston Pops? So when you get to the record store/music download site, what will you do? Look for an enticing “cover” image/album art? Even if you find one that speaks to you and buy it, it may be that when you listen to the recording, it’s not the same. So now you’re out of money and disappointed. And the orchestra you really wanted to support has missed out on a small contribution to their financial well-being.

Now picture this: You’re at work, and you’ve convinced yourself that you need to hire someone to help you solve a problem. The people already on your team can’t solve it, or there is more work than they can take on. You’ve figured out the particular mix of skills a person needs to have to help you. How do you go and find that person? If you have a good network that might be able to connect you to someone with those skills, you probably start there. What happens if you don’t have that (or you come up empty-handed)? You probably talk to your HR people and tell them what you’re looking for, and since the people there are busy and don’t have the time to actually talk to the potentially hundreds of applicants that will be coming, they either call a recruiting firm or post an ad on a job-seeker website. Then applicants (who have been taught the rules of the job hunting game) craft a resume that matches 80% (or slightly more) of the skills you’re looking for (using an Internet service that promises to mimic very closely the applicant tracking system that will be used by the company to filter out “unqualified” applicants). They submit that resume, and the recruiter’s system (or the HR ATS) matches the resume and triggers an email. Then the recruiter (who most likely doesn’t really know anything about the mix of skills you’re looking for – they get paid for fast placement of people) may interview the person to make sure they didn’t exaggerate their skills. They send them on to the HR person, who probably also doesn’t know much about the skills you’re looking for (and that’s quite understandable – after all, HR has to deal with everything from custodial employees to CEOs). You get maybe ten or twenty resumes to look over, and you decide to bring five people in for in-person interviews. None of them turn out to have exactly the right mix of skills you need. So now you’ve lost time and you’re disappointed. And a person out there is missing out on a major contribution to their financial well-being.

What do you see in these two vignettes? What is broken? What is working? How would you change things? What advice would you give and to whom?

Where to look?

February 14, 2018 8:26 am

[This is a re-post from LinkedIn, just in case LinkedIn goes away some day… ;)]

Yesterday I had the opportunity to give an encore of my Agile 2017 workshop, provocatively titled “The Introverted Facilitator’s Survival Guide”. I presented it at ProMatch, and organization of volunteers partially funded by tax money. ProMatch helps people who are looking for work with learning about the current landscape of job hunting, presenting accomplishments, resume writing, interview skills, and networking. I find it a really valuable support system while I’m looking for my next opportunity.

I think about 16 people attended, which was a nice number considering the target audience: introverts. I won’t dive into the details of the workshop here (check my SlideShare for the digest version with most of the takeaways). It seemed to land well with everyone who participated, and at some point, I think we achieved what I half-jokingly called “quantum entanglement” 🙂

After the workshop I was pretty exhausted, but I chose to attend a meetup with the Silicon Valley ALN (Agile Leadership Network) anyway, and there I got to see a bunch of fellow (current and former) ProMatch folks (hi Andrew, Liz, Roberto and Jennie!) We learned from Bernie Maloney about harnessing the power of collaboration, and while I had done the activity from that session with one of my teams at work in the past, we ran through a variant that illustrated different aspects of what typically happens in real life.

After both of those experiences, I reflected on the day a bit, and posted a short blurb on Twitter about my satisfaction with the workshop I had facilitated, and how it seemed to have made a small difference in a few people’s lives. One person shared with me that they had a bit more appreciation for the strengths that their characteristics offer them. I interpret that as having been able to provide a small boost in self-confidence for someone else. And that felt very satisfying.

It got me to thinking about where we look to find confidence in our skills and capabilities. I think I tend to look at the people who are much further down the path of their personal agile journey than me, and I keep thinking “if only”. But yesterday I thought about whether that’s the right place to look. Maybe it would be better to look at where I am a half-step ahead of someone else and can bring them along with me a little bit. I wonder if in my quest for increasing my own skills and capabilities, I’m too focused on looking in the wrong direction.

Which direction do you tend to look?

Migrate Visual SourceSafe to Git – A short how-to

November 30, 2013 1:35 am

My hobby/learning projects have been residing in a single-person SourceSafe database for a long time (yes, I know you’re laughing; I don’t care – for single-person projects it’s just fine and dandy.) It was time to start using something new. I wanted to migrate everything, including history, to git.

The first step was to install the latest version of git (Git-1.8.4-preview20130916) on the system that currently hosts the SourceSafe database. If you’re long-term-memory-capacity limited like me and can’t remember git command-line arguments to save your life, you’ll also install something like TortoiseGit while you’re at it. One important step is to choose to run git from the Windows Command line during setup. (The next step needs git in the PATH.)

The second step was to install vss2git (http://code.google.com/p/vss2git/). After some trial-and-error with converting my entire database (a mistake, by the way, see step three) and getting error messages about the log file, I changed the permissions of the install folder to allow “read/write” for every user.

The third step was to convert each main project in SourceSafe (well, via a copy of the SourceSafe folder, actually, just to be paranoid) to a git repository by making sure to use $/Path.to.project in the vss2git tool’s Project field.

image

The fourth step was to convert each of these newly created full repositories to “bare” repositories for sharing across my local network. The command line for that is

git clone –bare –no-hardlinks Path.to.project Path.to.project.git

And that’s pretty much it. A fifth, optional step is to remove the original repository folders that served as the source for the bare repositories (so they don’t clutter up the Windows file share).

I am now the proud “owner” of 13 brand-new, independent little git repositories!

[Update 2013-12-01]

Well, I wasn’t too happy with the above solution. It creates too many nested folders (partly because of how Visual Studio creates stuff in VSS in the first place.) Once I clone the resulting repo, I get something like:

CloneRoot/Uncorked.root/Uncorked.root

That’s not what I want. I need it to be CloneRoot/Uncorked.root at most.

This answer on a StackOverflow question provided a good path to take. Based on that answer, I cobbled together a .cmd file to process all my repositories:

@echo off
for /d %%d in (*) do (
  if not exist %%d\config (
    echo %%d
    cd %%d
    attrib -h .git
    move .git %%d/
    cd %%d/
    attrib +h .git
    git init
    git add .
    git commit -am "moved git root"
    cd ..
    git clone --bare --no-hardlinks %%d %%d.git
    move %%d.git ..
    cd ..
    rem pause
  )
)

nVidia nForce 430 (MCP51 / RTL8201CL) and SME Server 8.0: working!

September 1, 2013 8:04 pm

Lately, my home network started showing more and more signs of aging. Accessing websites was erratic, whether via wired computers or wireless devices. WiFi clients (which for some reason have almost exploded in number over time) couldn’t reliably connect, causing shouts of “Daddy, the Internet is down!” with regular occurrence, coming from various bedrooms. Something had to be done. And what better time for that than Labor Day weekend!

The last time I had undertaken a similar venture was at the end of November 2006. Shortly thereafter I started preparing for the next time this would need to happen. Well, here we are… I had set aside a pretty neat “mini” system and found the necessary half-height network card for it (SME Server systems need two network cards to act as server/gateway on a network). I had even installed SME Server 7.5.1 in preparation for the eventual migration (the newest version at the time). Unfortunately I never found a way to make the on-board network card work, so the machine just sat on the shelf for a few years, until now.

 

Transferring data from the old system's drive

The trick to making the on-board NIC work was to grab the RHEL 5 driver from nVidia’s site. Extensive searches (based on the “Onboard LAN” information on the motherboard information page) led me to this thread, pointing me to an older version of the driver. From there it was just a small hop to the most up-to-date driver package. The trickiest part was getting it onto the new system’s hard drive before hooking it up to the network. I found a USB flash drive, FAT formatted it, copied the driver to it, and then got it mounted on the SME system. Quite a refresher on working with Linux command-line programs!

Once I had the driver installed (rpm –ivh nvlan-rhel5-0.62-1.25.i686.rpm) and the system restarted, I was able to run through the SME configuration with dual NICs to make the system a “dedicated server gateway”. I was a little worried that it might not pick up an IP address from my cable provider, but I just needed to restart the cable modem as well, and after one more reboot (I think), everything was back up and running. Luckily I had given the new system a non-colliding internal IP address way back when I set it up the first time. It was a snap to set the range of DHCP addresses to a non-overlapping set.

To complete setup, I had to re-create user accounts, ibays, domains served, VPN access, etc. I also needed to install the latest updates to SME Server 8.0 and the two “contribs” I consider essential to SME Server: AWStats and Sme8admin.

All that was left now was moving the data off the old system. I started out doing that over the network, but it became clear that the old system was truly on its last breath. So I decided to shut it down and hook the old drive up to the new system via the USB bridge you see in the picture above. There were about 20 GB to copy, so it took a while. Once it was done (including historical web server statistics data for AWStats), there was still some work with setting the right permissions on files and directories.

But now it’s all done, and the new machine is humming (quietly) in the spot where the old system used to live!

To round out this tale, here are the traditional “nostalgia” shots of the decommissioned hardware:

Note the power supply off to the side    A look inside the old system    Under the power supply    NICs in the back

One thing I had completely forgotten about is that I had put quite a bit of work into trying to make the old system as silent as possible. As you can see from the first picture, I had taken the power supply out of the system and put it on some pieces of vibration-dampening synthetic foam strips. In addition I had mounted the hard drive using various pieces of professional grade foam strips:

Green and yellow foam    Yellow foam and mounting pads

Luckily the new system was designed for quiet operation, so it didn’t need any extra work. It’s amazing how much quieter it is – I can hardly tell it’s on right now!