“Hi, Raju. Thanks for thinking of me – these are exactly the sort of technical skills I’m using now. However, I have NO interest in commuting to McLean. The DC Beltway is a life-sucking endeavor. Good luck in your recruiting efforts!”

The above was my response to a recruiter who was looking for someone with microservices, Docker, and Kubernetes experience.  I fit all of that.  But he specified a job in McLean, VA.  For those of you who don’t live in the DC area, to get to McLean, VA, I’d have to go around the DC Beltway.  And, per my note back to poor Raju, “the DC Beltway is a life-sucking endeavor”.  The image that comes to mind is from The Princess Bride, where our hero Wesley is strapped into a machine that’s supposed to suck the life-force right out of him.  (For anyone not familiar with the scene, see https://www.youtube.com/watch?v=BbgyppGqBgg.)

For the record for any recruiter that may catch wind of this post, the Baltimore Beltway is only slighter better.  I’m not interested in traveling either of them, just as a matter of quality of life.  And yes, I’ve tried Metro and MARC.  No, your commuter benefits package to pay for those don’t interest me.  I’ll keep my career path nicely tucked away between the two circles of traffic hell, thank you very much.  But good luck in your recruiting!

 

Needed a pick-me-up, so went to the tea shop. Ooh, bubble tea. I’ve heard good things, let me give it a try…

Reaction: bleah. Tea should not have floaters. And then I looked up calories and carbs. Double-bleah. Straight tea and/or espresso for me next time.

We’re hiring at my company, Hayden Software, and I’ve been asked to help interview for my contract, so I’ve had a few different opportunities to ask candidates how they track down programming problem solutions.  The usual answer?  Either Google or Stack Overflow.  Both are reasonable answers, though are a bit broad brush in terms of their coverage.  If I find something mentioned in documentation, what I’d _really_ like is to see a working example of it.  Particularly since most programmers seem to write awful documentation.

I’ve taken, of late, to trying to use GitHub as my compendium of source code examples.  I’ll assume that the folks who cared about this post already know what GitHub is…  if you’re hear to read a post about clowning, you’ll have to wait for the next one…  GitHub announced in 2013 that it had reached over 10 million code repositories.  It’s not quite yet the infinite monkey theorem, but there’s definitely enough source code there to make me think that any library or framework feature that I’m interested in using already has a bit of sample code for it in someone else’s repository.

But how to find the examples I’m seeking?

Recently I was seeking examples of fabric8’s docker-maven-plugin in use.  It’s one of a couple of plugins that are supposed to help with managing Docker builds and Docker containers.  I don’t personally find Docker build files particularly challenging, but perhaps the managing the containers part would somehow be made easier with the plugin.  (TL;DR: finally didn’t find it useful, at least for our uses).  But in my hunt, I wanted to find examples of folks using this thing…

That plugin would be used in a pom file.  So, I want to find pom files that make use of the plugin.  In the case I originally went looking for, I wanted to use something called inline plugin configuration.  Basically, if I was going to use a Maven file to do the docker build, I wanted to keep all of the build information in the single pom file.  The docs described it as possible, but it just wasn’t coming together for me.  So, the query against Github:

(inline assembly docker-maven-plugin fabric8 dockerfile)  filename:pom.xml fabric8

Look across all repositories for a file named pom.xml which had certain keywords in it, and which were part of a repository or owned by a user which included the word fabric8. Found a few examples (and, and), but nothing which blew me away on the usefulness of that plugin and approach.

What about when I wanted to see examples of a particular routing package used in Go code?

language:go beego router

Wow, that gave me back 7K+ results.  Maybe narrow that down a bit?  I’d like to narrow that down by cross-checking the stars on the owning repository: theoretically, something with more stars would have more useful examples.  Interestingly, I cannot seem to get that to work as I’d like…  Although I can hunt for repositories with the phrase beego in their name or referenced in their description, I cannot get it to further check files.  The query below ignores the ‘stars’ descriptor and gives the same 7K+ results.  (I say ignores because I pulled up one of the repositories and it showed zero stars.)

language:go stars:>10 beego router

So, GitHub filtering has its challenges and quirks.  That said, I can also filter on looking for code within a particular repository or by  particular user, both of which help in filtering out the wheat from the chaff.

I can’t learn everything in software on my own, but if I can learn from someone else’s example (good or bad, assuming I recognize the difference), I can get the thing done and build upon my knowledge very efficiently.  Would love to hear if other folks have code search tricks and techniques, on GitHub or otherwise.

 

In last month’s Nerd Nightmare, I described the interruption of flow of a broken arm when one works at a keyboard.  So, here’s the update since then…  I did get a plate and some eight screws to hold everything to the bone.  I spent two weeks in a splint and a sling, and then got my stitches out and was put in a exoskeleton sort of removable hard splint.  Turns out, I get light-headed when I see fresh scars on me: nearly hit the floor the day the doc took the stitches out.  Since that appointment, I’ve been doing a twice a week physical therapy visit to work to get the mobility back in my wrist and arm.  Two days ago, the doc even told me to take off the exoskeleton..  Scary times.

The bones are apparently healing nicely, based on what the doc said this week after seeing new x-rays.  The marathon part refers to what it takes to get mobility and strength back.  Right now, my right (non-broken) wrist can pivot 90 degrees from thumb up…  I can go palm down or palm up, no issues.  My left wrist can go mostly flat if I go clock-wise.  And I maybe get 10 degrees counter-clockwise.  My right wrist can get close to 90 if I bend it up, and something much less than that bending it down.  My left wrist gets about half down what the right does, and barely makes it out of flat when trying to pull up.  Needless to say, push-ups are out of the question the right now.

My physical therapist tells me not to worry, that it’s a marathon.  I told her today, I’ve run marathons.  There are those who run sub 5 minute miles and finish in 2 1/2 hours (not me) and there are those who run 5 1/2 hours or more (me).  She laughed and didn’t comment further…

I got a turtle tattoo on my leg after my first marathon, as a marker of a dream accomplished and work put in.  What’s my wrist marathon tattoo, I wonder?  Got a handy 6 inch scar I guess I can work in…

I’m typing this out one-handed, as my left arm is in a splint with a broken arm and wrist.  Nerd nightmare.  Complete interruption of “flow”.  No longer do my thoughts just appear in code..  everything’s slowed down enough to make even the ideas disjoint, as well as my arm.  Pain coupled with frustration makes every day a slog…  and the guy who wanted to hold a design discussion in a chat room?  He held a special label in my heart that day.

Now, a few advantages just to help focus my mind in a better direction…

– I’m getting better at taking advantage of bash shortcuts, aliases, pulls from command history, etc

– More in-person chats to get things done mean a chance to get to know my co-workers better

– The more junior members of my team are getting more focused time from me.  Their hands on a keyboard solving a problem are much more efficient than mine.  My personal productivity is down, but our team’s going to look great at next week’s sprint review.

Tuesday I’ll get to become a bit bionic with a plate and screws, and some two weeks after that I might get the ok to do more than just open and close my hand.  So, there’s hope in sight. But only a week into this nightmare, I’m really not looking forward to several more…

Sunday evenings: are they filled with potential for the week ahead or remorse for the weekend now ending? For me, it’s an odd mix of both…

Sundays are generally relaxing. We sleep in a bit, at least as compared to the school and work week, getting up in time to make it to church. Since there’s no Sunday school during the summer, that means we need to be there by 10:30. Seeing as I work to get into work between 7 and 7:30, that’s a several hour difference of sleep and just general languidness and enjoyment of my bed, breakfast, and beagles.

Sunday afternoons, we’ll often go out to lunch as a family after church, and then maybe visit friends or play a softball game or go for a walk. There’s a real enjoyment to Sunday. And yet, I spent part of today feeling restless. What am I achieving in this restful state? (Besides observing a commandment…) I need to retrain my brain to enjoy the rest, to perhaps pursue a hobby (practice some balloon twisting? go for a run? cook something interesting?) rather than weigh examining government proposals or building recruiting budgets or checking out technology questions. Those are Monday through Friday things. (Saturday is catchup on lawn, on housecleaning, on commitments to volunteer efforts…)

So Sunday is also a day of anticipation, of getting back into the swing of achievement of Monday through Friday. I can dig back into Docker without thinking I’m short-shrifting something else. I can read code with appreciation and enjoyment. I can look at government SBIR descriptions and plan and scheme on how best to answer with a proposal.

Love this ebb and flow of go-getter-ness and slow-down-edness. I don’t think I could appreciate either one as well without the continual rhythm of shifting between the two of them.

Happy Sunday!

Someone had reason to look at my resume today, and commented on my nerderypublic.com URL. Nerd win! Hopefully it helped with the interview… And thank you, dear hubby, for an awesome web presence home.

Sitting in the last talk of the day for me before I give my own talk. Mentally running down the ‘yes, this is going to work out well’ game talk. Cataloguing for me to help me debrief later, as well as give me a checklist to consider for further talks…

Preparation:
– Came with equipment that works (advantage over last time, which went OK, though for a rougher week than desired), as well as repair kit and tools.
– Came with the beginnings of a presentation
– When I realized my plans to work on my presentation slides over the weekend got trumped by family schtuff, reprioritized the sessions I wanted to attend, and carved out a slot early in the week
– Checked out the room the day before the presentation and tried out my laptop – no issues. Also had the opportunity to sit in on a session in the same room: good talk, great inspiration for my own.
– Stream of consciousness wrote my talk itself and worked on it throughout several days
– Carved out time for run throughs two nights before: wasn’t happy with the result, so carved out more time the following evening. Prepped notes, rehearsed, refined, rehearsed some more to make sure I fit the time with the stuff that matters.
– Got some sleep. Not much, but some, the night before the presentation.
– Highlighted some key facts in my speaker notes, so I can look quickly and refer.
– Notes include setup requirements, and already have most of those tabs and windows up.
– Scheduled notifications to go off during the event time: won’t have to think about it.

Advantages:
– My talk is right after lunch, which both means folks will be able to get there, and I can get in early to do a last equipment check and rundown. Short lunch!
– Brought juggling balls to let me focus on something other than the talk itself once I get it set up.

Risks:
– my power supply seemed to stop working overnight: will need to plug in my Raspberry off of a cellphone charger either USB-linked to the site computer (??: suspect that’ll cause concerns…) or to an outlet that I’m not sure will be there.
– the Furby itself is acting flaky. While I’ll be able to talk to it, would really like to see the full demo come together.

Goals:
– Engage with the audience! That’ll help keep me focused and in the flow.
– Stay relaxed.

I’m prepped, I’m ready, and there’ll be something there that hits someone’s interests. I’ve defined my scope, and worked to focus my flow through. The work done to prep this was fun in itself, helped me learn some things, and gave me a chance to come out again to OSCON. Lots of wins from the build-up to this week. Time to bring it home.

When NPR writes about PowerBall, the country’s gone PowerBall crazy. Me included, though I think it’s a mild case. Given that the odds of winning are apparently 1 in 292 million, I’m not exactly banking our retirement and college planning on one of our few tickets hitting it big. In fact, as I’ve thought about the impact it’d make on our lives, I begin to wonder whether if I won, if I oughta avoid ever turning in the ticket.Continue reading