All posts by joshholmes

Resume Tip – Above the Fold

In today’s resume tip, I talk about the importance of an old concept on your resume. That old concept is “Above the Fold”. The short version, don’t make the person reading your resume go hunt for the reason to hire you.

My big caveat with this series is that I’m not in HR, I’m not a professional recruiter, I’m just a manager who has read a bunch of resumes. The tips are my perspective on things.

Resume Tip – Tell me what you did

I’m starting a little Youtube series on resume tips. Over the past handful of months, I’ve read close to a thousand resumes and there are some things that really make a resume stand out, good and bad, to me. I’ll be covering these in small bite sized chunks. My goal is one a day. Help hold me to that… 🙂

My first tip is about telling me what you did, not what you were responsible for.

I don’t really care what work people assigned you. I care about the work that you drove and the things that you accomplished. That gives me a far more interesting look into your past.

My big caveat with this series is that I’m not in HR, I’m not a professional recruiter, I’m just a manager who has read a bunch of resumes. The tips are my perspective on things.

Online Conference Chat

I’ve attended a few online conferences recently and one of the most important features, the group chat, is arguably the least functional of the features of the web infrastructure. The reason I attend conferences rather than just watching content on Youtube is the interaction with the rest of the audience. Since we can’t do that in person these days, the group chat in the conference is often the closest thing and I’ve not seen an online conference that does this well yet. That’s not a fault of the conference, it’s that there’s not a group chat that is actually built for conferences that I’ve seen yet.

I’ve spent some time researching this feature set and haven’t found anything that actually does what I believe that a conference chat should do. There are some things that are close but nothing that I’ve seen that actually fulfills all the requirements.

I’m posting here on my blog because I would love input, argument, additions to, … the features that I think are important and if there is a viable solution in the market at the moment. If there is, fantastic. Otherwise, I might start a project to fill this niche in the community. More on the possible project at the end.

  • As a conference organizer, I want to easily embed a seamless chat experience into my conference website
  • As an attendee, I want to be able to comment to the other attendees of the conference in the large group chat
  • As an attendee, I want to have the chat switch to a track specific chat when I’m watching a specific chat
  • As an attendee, I want the ability to declare a “hallway discussion topic” and invite have other attendees join me in that side conversation and have that hallway discussion close once people have left.
  • As a conference organizer, I want the ability to easily spot issues and moderate content, both in an automated fashion and manual fashion, in all those forums
    • Auto-moderation around words, phrases, …
    • Turn on and off links and other such features
    • Ability to boot and ban attendees if needed
  • As a conference organizer, I want to be able to pin an important message to the top of the chat
  • As an attendee, I want to log into the conference web site and have that log into all parts of the website including the chat
    • This one is tough because all kinds of authentication could be happening and we’d need to figure out what the min set of authentication schemes we’d need to support. And likely make this very modular so that it’s easy enough to add another scheme later.
  • As a conference organizer, I need to be able to control all the data to adhere to privacy laws in various geos
  • As a speaker, I’d like to be able to run simple polls in the chat during my talk
  • As an attendee, I would like the navigation at least localized in my preferred language
  • As an attendee, I would like to have the content of the chat translated to my preferred language
  • As a conference organizer, I want the chat to be brandable with conference coloring and logos

I’m sure that there are other features that are important and I’d love it people could suggest them here until such point as we get a github repo going and we can just put things in issues there. I’m holding off on the github repo at the moment though as I’d love to find an existing solution to the features above.

So far, there’s a bunch of things that do subsets of these features but they are typically company chats, not conference chats, that we are trying to bend to our use case but they definitely don’t actually do everything we need as conference organizers and attendees. I’m not going to drain all of these options such as Slack, Discord, Microsoft Teams, … as it does them a disservice. They are awesome products but not purpose built for conferences.

I’d LOVE for this to be a solved problem. 🙂

What I’m thinking about doing is starting with Kiwi IRC. It has a ton of the right functionality already so a large part of the heavy lifting would be creating UI around the existing features to make it easily usable for people who are not intimately knowledgeable with IRC.

  • The backend is node.js and flat files so it’s not expensive to run, fairly easy to deploy and will run on whatever server the conference is already hosting their conference website on. This gives the conference the control over the data that they need.
  • It already has the main chat obviously.
  • It’s easy and programmatic to add additional topics which is how we do tracks.
  • It’s got a fair amount of moderation tools built in already.
  • It has an embeddable web client already.
  • It is already localized into a large number of languages.
  • It already has theming support.
  • It does not integrate into your authentication scheme easily
  • While you can have multiple tracks, we’d have to add UI to make it really simple, through the embedded front end, to add a hallway track and be able to navigate back when done.
  • Some investigation would be needed into automated moderation
  • I don’t believe you can do polls at the moment
  • bonus is that anyone could connect to it with their favorite IRC client and interact that way rather than through the website if that’s desired.

Anyway, I’ve been thinking about this and would love some thoughts and opinions.

Also, feel free to tell me that while this is not a solved issue, that I’m the only one stressing about it so I should move on. 🙂

Looking forward to the discussion.

Seattle GiveCamp 2019

The Seattle GiveCamp Crew 2019

We just wrapped the Seattle GiveCamp 2019. If you’ve never heard of GiveCamp, make sure to check out https://givecamp.org/. The short version is that we get a number of non-profits with technical needs and a number of willing technical volunteers to come help them with those technical needs – lots more detail below.

Josh Holmes presenting at Seattle GiveCamp

I’ve been involved in the Ann Arbor GiveCamp back when we were really early on in figuring out the process. Chris Koenig got this movement started in Dallas. I got involved when Jennifer Marsman and Michael Eaton ran one in Ann Arbor. I feel in love with the movement and have been involved a ton. Two years ago, while at a conference and giving a talk about building community, I talked heavily about GiveCamp and the Seattle GiveCamp leads, Paul Litwin and Suzanna Litwin, came up to me and asked me if I’d like to get involved in the Seattle GiveCamp. Of course I said yes and have helped with the last two.

This year has been a fantastic labor of love. We had 10 non-profits this year:

  • Cancer Pathways — provides support to those affected by cancer. They run an annual contest for teens to write about how cancer affected them. They had just a folder of PDFs which we helped to organize better, convert to HTML, allow for search and much more over the past 13 years worth of contest articles. You can see that work live now at – https://cancerpathways.org/winning-essays/.
  • Freedom Project — supports healing connection and restorative communities both inside and outside prison through the strategies of Nonviolent Communication, mindfulness, racial equity and anti-oppression. As their non-profit rep said, the website looked like an encyclopedia with lots of walls of text. They needed a redesign that embodied their culture and mission. You can see that live now at http://freedomprojectwa.org/.
  • Friendship Adventures — is dedicated to enriching the lives of people with developmental disabilities by providing social, recreational and educational activities in a safe, engaging environment—building interpersonal skills, confidence and lifelong friendships one smile at a time. I have a special connection to this one as my daughter Maura is likely to become a member as she approaches her adulthood. They were doing the registration of all 1500+ of their members by hand on paper. They desperately needed way to do this all electronically. You can see the form that we created for them live now under Yearly Registration Form – https://friendshipadventures.org/forms/. Freedom Adventures GiveCamp Team
  • iD.A.Y.dream — inspires youth to daydream out loud. They needed a website that would embody their mission and have automation around email lists and more. Deeper than that, we had a fantastic designer on the project who helped them produce a complete brand language including colors, fonts, logos, … You can see that live now at https://www.idaydream.org/
  • Neurological Vocational Services Unit — helps people with neurological conditions gain independence one person, one job, at a time. This non-profit was a repeat customer of the Seattle GiveCamp. They had build a website with us many years ago but as tech moves on, the template that had been used was no longer supported by the latest versions of WordPress. Take a pause and realize that they were actually updating their WordPress install themselves – I love that. They needed a refresh on the site and a new theme that would be compatible with the new versions of WordPress. You can see that live now at http://nvsrehab.org/.
  • PeaceTrees Vietnam — heals the legacy of war by removing dangerous explosives, returning land to safe use, promoting peace and cultivating a brighter future for the children and families of Vietnam. It’s amazing, they will turn a landmine filled field into a park, school, library, … They needed an interactive map that can show their projects all over Vietnam so that they could show their impact for their donors so that they can get funding to accomplish even more. We built that complete with an admin portal that can edit the points. It’s not quite live at the time of writing here but it’s coming soon. Peace Trees Vietnam GiveCamp Team.
  • Roots Young Adult Shelter — builds community and fosters dignity through access to essential services and a safe place to sleep for young adults experiencing homelessness. Their site was unwieldy and complicated to manage. We helped them rebuild their website so that it was far more accessible to their audience and manageable by their staff. You can see that’s live now at https://www.rootsinfo.org.
  • Special Bunny Rabbit Rescue — is a Seattle-area house rabbit rescue. Bunnies are the number three most adopted pet and the number one abandoned. Special Bunny Rabbit Rescue rescues these rabbits and helps those who have special needs bunnies. They had an overly complicated to navigate and maintain website which we helped them redesign and rebuild. They are live now at https://specialbunny.org/. Gil the Bunny
  • Street Youth Ministries — provides youth in Seattle’s University District with life-skills, resources, and relationships that bring hope and healing to their lives and the community. This is another repeat customer to GiveCamp. Last year, we helped them build their light weight CRM so to speak. They have a highly customized use case and which only used about 5% of the functionality of a traditional CRM but required at least that much custom work. This year, we helped them implement new functionality and bug fixed a few things from last year. That’s an internal tool that they’ve already rolled out to their staff.
  • Transplant House — provides thoughtful and clean spaces for transplant patients and their families, a home away from home so to speak. They had been doing the hoteling for all of their rooms manually with a lot of excel spreadsheets. We built them a workflow that helps them manage that on the back end of their website complete with reports and more. Transplant House GiveCamp Team

We helped a lot of people this weekend. As always, it was an incredibly rewarding and incredibly exhausting experience.

Paul and Suzanna have been running the Seattle GiveCamp for the last 9 years and have decided to step back a little. They will still be involved but not running things next year. They have asked me to lead next year and I’ve said yes.

Looking forward to next year’s Seattle GiveCamp! It will be Oct 23-25, 2020.

If you are or know of a non-profit in the Seattle Area, have them sign up for notification when we have the call for non-profits, have them sign up at http://seattlegivecamp.org/nonprofit.aspx.

If you would like to volunteer, either as a tech volunteer or as a operational support volunteer, please register to be notified when we open our call for volunteers at http://seattlegivecamp.org/volunteer.aspx.

Visiting Ireland

Over the years, I’ve had a ton of folks ask me for tips on visiting Ireland. I lived in Ireland for close to three years and, honestly, still consider it my second home. I’ve spent a ton of time writing people emails and guides and decided that I really need to just publish this on my blog so that I can refer people to it.

Map of Ireland with Points of Interest
Map of Ireland with Points of Interest
I’ve written about quite a few places below but the map linked above has pinpoints to a ton of great places. Enjoy!

Dublin

Obviously most people start in Dublin as that’s the largest city and there’s a big international airport. Dublin is awesome and has a ton to do.

  • Downtown
    • Grafton Street – amazing walking street with a ton of shops and street performers – especially on the weekends.
    • Book of Kells – Awesome book hand-painted by monks that dates back to 384AD. Contains the 4 gospels from the Bible.
    • National Leprechaun Museum – Ireland has a huge legacy in folklore and this museum tells the stories. It’s amazing…
    • Tidal Flats – One of the things I love in Dublin is walking on or even just looking at the tidal flats. It’s beautiful and goes on and on.
    • Dun Laoghaire Pier – Great place to stop and get an ice cream, walk along the pier or watch the sailboats coming and going.
    • Dalkey Castle – Living museum where the tour guides are dressed in period clothing and give the tour in character. Fantastic peak into the old world…
    • Killiney Beach – Quiet little beach to walk on and collect shells, sea glass, play with dogs…
    • Howth Pier – Lovely pier with sea lions and lots of fresh fish restaurants.
    • O’Connell’s Bar – This is not on the drinking list because you should stop in here and have one of the best fish and chips you’ve ever had…
    • O’Neill’s Pub – Again, not on the drinking list as it’s a great “Carvery”. Go here for lunch and it’ll be worth it…
    • Hairy Lemon – Get the bread pudding.
  • Downtown Drinking… There’s a ton of great pubs but some of my favorites…

Northern Ireland

There’s a ton to see up north and I’ll be adding more as time goes on but here’s some highlights. And yes, I’m conflating some Northern Ireland and Republic of Ireland places.

  • Giant’s Causeway – Fantastic views and stories here as there are huge pylons with a very cool octogonal shape. There’s a great legend involving giants and deception and more!
  • Europa Hotel Belfast – The most bombed hotel in all of Europe. It’s actually a beautiful hotel with a great pub.

Western Ireland

  • Cliffs of Moher – Many of the locals will tell you, “Oh yeah, you should go to the cliffs”. What they don’t tell you is that these cliffs are the “Grand Canyon of Ireland”…
  • The Burren – amazing natural place that’s about 30 square miles of limestone and amazement.

Galway

  • Quay Street – Pronounced “key” – great walking street with a ton of little pubs, shops, live music and so on…
  • Claddagh Jeweler – The Claddagh ring is a mainstay in Irish traditions and the original was made in Galway at this shop. Very cool little shop.
  • The Pie Maker – Some of the best meat pies that I’ve ever had in my life…

Cork

  • The English Market – stunning indoor food court and market.
  • Blarney Castle – Definitely worth visiting. I was terrified that this was going to be way too touristy but it wasn’t. It was awesome. Pro-tip though, the tour busses show up about 9:15 or so. They open earlier than that so get in early. There’s an awesome B&B across the street called The White House.

Other places in Ireland that you should definitely go

I’ll be adding to the list here and categorize these better sometime soon. The ones that ended up in this list are awesome and I love them, they just don’t categorize with the other items geographically.

  • Newgrange – This is where the celtic swirls are first spotted in this manmade structure that pre-dates the pyramids at over 5200 years old.
  • Sean’s Bar – This pub dates back to 900AD in the same location…
  • Kilbeggan Distillery – One of the oldest working distilleries in Ireland. They make some awesome whiskey here including one of my favorites – Connemara Peated Whiskey, the only peated Irish whiskey on the market.
  • Kilkenny Castle – beautiful castle and grounds in a beautiful little village. Oh, and have the Kilkenny Cream Ale in any of the pubs.
  • Knock, Ireland – in 1879, there was an apparition of the Holy Family and the heavens plus a few saints thrown in. They’ve built an amazing set of grounds for the 1.5 million pilgrims that come each year.
  • Derrynane Beach – When God made the world, this is where he put his thumbprint. It’s remote, quiet and absolutely beautiful. And the surfing is great!
  • Fethard On Sea, Wexford – Specifically, you should look at the Hook Lighhouse which is the oldest working lighthouse in the world. It’s sooooo cool.

Wrap up

This is far from complete and I’ll definitely be adding to it but this is a starting list with some descriptions.

Back in the Web Dev World

So I’ve switched roles at Microsoft. For the last 11.5 years at Microsoft (which is 9.5 years longer than I thought I’d be here), I’ve been in some form of developer relations. However, I’ve never shipped a product at Microsoft.

In my new role, I’m joining the Web Platform Team to run the Web Applications and Frameworks team – my new title is the Principle PM for WAF. I’m managing two products related to people writing apps with web technologies. The first is WWAHost which is how we write Progressive Web Apps which are native apps written with web standards and technologies.
Check out Get started with Progressive Web Apps for more details.

The second is Webview which is how you incorporate web tech into a standard native app written in .NET, C++ and so on.
Check out Microsoft Edge WebView for Windows 10 apps for more details.

I also work with JavaScript frameworks internal and external to Microsoft. To this end, I’ve got a great dev on my team named John-David Dalton. He’s had a continuous streak of activity on Github since July 23, 2013. This has included building lodash, contributions to Babble and even as far as adding ESM support to Node.JS and NPM.

I’m looking forward to shipping a product that touches millions of people. 🙂

Doing the wrong thing…

There are times that your customer will ask you to do something so you do it. But did you stop to ask them about why they need that done? The story here is an old one that you might have heard but recently someone gave me an addition to the story and it blew my mind.

If someone comes to you in the hardware store and asks for a quarter inch drill bit, what do they actually want? Quarter inch holes. A drill bit is just a tool and if there’s a better way to give them the quarter inch hole, give it to them.
The addition was, now ask why they want quarter inch holes… Turns out they are hanging a ceiling fan. Ask them why they are hanging a ceiling fan. Turns out they are trying to sell their house and they were told that a ceiling fan in the bedroom would help. Ask if you could come take a look… Turns out that the paint outside is faded and cracked so the reality is that when they asked for a quarter inch drill bit, really they needed 5 gallons of paint and a ladder and in all honesty, they should slap you for selling them the drill bit.

I’ve been reflecting on this a while and I’ve come to the following…

I’ve long had a philosophy that I’d like to

“Do something, anything, even the wrong thing, learn from it and iterate.”

This has been my guiding light and has helped me keep from getting stuck in analysis paralysis and drives the analytical people around me absolutely nuts (Looking at you Gary Sweeting…) 🙂
That said, I was talking to my new friend that I met at Collision Conf this week, Bas Wouterse (CTO at http://telm.nl), and I realized that I’m slightly off there. It was an aha moment for me as I realized that I’ve been voicing my actual process wrong for years.

Here’s my new motto

“I’d rather do the wrong thing than solve the wrong problem”

The original motto still applies once I figure out what the problem is that I’m solving but it’s not enough to just start doing stuff. I was out with a young developer who asked what’s the difference between an architect and a developer. My answer was “An architect is an experienced developer who cares about the requirements phase of the project.” And that’s the case. I care about the requirements. I’ll investigate until I get a grasp of the problem. Then I’ll start doing stuff in that direction. I’m normally wrong in my approach the first several times. However, as I get more experience, I have gotten better about being less wrong about my direction even in those early phases. The trick is to quickly realize that I’ve made a mistake and fix it. I don’t try to make mistakes, however I’m not scared to make them.

The biggest mistake though, as I’m learning from my previous mistakes, is to solve the wrong problem. It doesn’t matter how correct your solution is if it’s the wrong problem. This goes from macro to micro.

At the macro level, I’ve met a ton of startups who are solving the wrong problem. Normally this means that they are solving a problem that their users have but not solving a problem that their potential customers have. Noodle on that a bit… 🙂

On a micro level, customers always tell me that X is not responsive enough or something very generic and sweeping like that. Rather than digging into the speed testing and all that, I ask them what they mean and start unpacking “responsive” means to them specifically. Often it turns out that you and your customer have very different definitions of responsive. Once you figure out what responsive means, anything that you do to solve the responsiveness issue has a much higher probability of being a step in the right direction.

Summing up, spend the time to ask that next question that will get you closer to solving the right problem.

Open Sourcing Mental Illness

Open Sourcing Mental IllnessAt PHP Tek 2014, I saw a set of talks organized by a guy named Ed Finkler. This included a talk by Greg Baugues and Paddy Foran. They really opened up and talked about their own mental health issues including anxiety, depression and more. There was not a dry eye in the house. I’m not going to tell their story. That’s their to share. What I am going to share is how it affected me and my story.

Reason I’m blogging about this now is that I recently had a chance to interview Ed and post that to Code to Live.

I’ve always joked about having ADHD but it was always just a joke. My wife, Phoebe, was talking to someone (I don’t remember who) and they recommended that I read a book called Delivered from Distraction.  The first thing that I did when the book came in was the self diagnosis and wow did I score highly on that. The one set of questions that I missed on were the ones about relationships. I got lucky and married a very supportive wife. One of the big things that I learned was that one of the dark sides of ADHD is that people with it suffer from low self-esteem and depression. While I’ve suffered from this myself, I had never attributed it to ADHD and while I joked about it, I hadn’t thought that I actually had it or had any idea how to deal with it until I read the book. And very importantly, I was making the biggest mistake that most people make here – I was trying to deal with it on my own rather than seeking help.

Shortly after this I went to a therapist who specializes in ADHD. He worked with a phycologist and between the two, I was officially diagnosed with ADHD in 2008. I was prescribed with Adderall. The good news is that I knew what that was because I had read about it and the upsides and the side affects. There are two basic types of ADHD meds, anti-depressants and stimulants. They work very differently and sometimes one works better for one person than the other. If you suffer from ADHD, you should work with your mental health professional(s) to figure out what’s going to work for you.

This happened in 2008 but the reality is that I didn’t talk to people other than good friends until 2014 because I was ashamed about it. Ed, Greg and Paddy showed me that we need to talk about mental illness and take away the stigmas. That’s the only way that we can actually create a supportive and healthy environment. The worst thing that we can do is try to suffer in silence and not seek help.

If you want to learn more, if you’re suffering or are not sure if you’re suffering a mental health issue, there are resources up on Ed’s site at http://osmihelp.org.

What is ¡Pura Vida!

I recently got back from an amazing trip to Costa Rica. It was absolutely amazing and has changed me (I hope) forever and for the better. Unfortunately it wasn’t 31 days, but rather it was only 8 days. However I’m taking on a writing challenge of writing something every single day for 31 days straight. I decided to write about the change in my life…

¡Pura Vida! is the Costa Rican way of life. Translated it’s “pure life” which sounds pretty simple but in practice it goes much deeper. Most of the time folks look at it as just like a “hang loose” or something like that. But it goes a lot deeper than that.

It started in a 1956 film from Mexico called Pura Vida in which the main character said the catch phrase all the time as an expression of unbridled enthusiasm. The movie was a hit and the phrase started spreading. It was slow but by the 1970s, it was all over Costa Rica. It was even officially recognized in dictionaries in the 90s.

The phrase really means that life is wonderful, that there is always someone who is less fortunate that you and we are all in this together. This pervasive outlook on life is outstanding and something that more of us need to adopt.

As I looked around Costa Rica, I saw some real poverty but everywhere I looked I saw amazing generosity, joy and community. Jeremy Sublet and I were driving through a small town and stopped for lunch. The town obviously didn’t have any money and everywhere I looked I saw joy and love whether it was couples walking in the park or having lunch together or kids playing in the streets. At the end lunch, we were headed back to the car when one of the guys at the bar held up his beer to us and I heard that phrase for the first time – “¡Pura Vida!”.

At the time I didn’t understand what it meant. But I laughed and said “¡Pura Vida!”.

Now that I understand more about it, I look at my life and think about all of the times when I’m wallowing in self pity. Yes, I have hardships in my life. But there are so many people who have so many more real troubles in their life.

Over the next 31 days, I’ll be writing about ¡Pura Vida! and how I’m going to be trying to incorporate it into my life.

Deciding to go to Costa Rica

Justin Bronder in a boat at Rio Clara

Justin Bronder in a boat at Rio Clara

The first time that I met Justin Bronder, he was just back from a trip that he acted like was the trip of a lifetime. He showed me amazing pictures of obscure birds and crazy little monkeys. Actually, the first picture that I saw was of a monkey’s behind as it mooned the camera. I thought he was nuts, that he was was awesome and that we’d be friends all at the same time. Turns out I was right on all accounts.

Fast forward a year and I know for a fact that Justin has got one of the biggest hearts that I know. And amazingly, he headed back to Costa Rica and invited me to come with him. Something in Costa Rica had touched him and he wanted to share that with more people.

The restaurant at Copa de Arbol at night.

The restaurant at Copa de Arbol at night.

While I was excited to go, I really didn’t know what to expect. Justin had talked about the both the jungle and 5 star resort and pointed me at the hotel web site – http://www.copadearbol.com. When I looked at the web site, I saw that it was both – a 5 star resort in the middle of the jungle. There were some other things that were fun. The resort is right on the edge of the Corcovada National Part which is a green zone. There’s no roads to the property so everything is water taxi or hiking. That made me even more excited.

I talked to my wife and got permission to go.

Honestly though, I didn’t spend enough time researching Costa Rica. That was a failing on my part.But I didn’t look at the amazing country that I was about to go to other than seeing it’s in Central America. I spent a little time reviewing my pathetic Spanish. “Gracias”, “Hola”, “Adios”, “Caliente”, “Frío”,  “Uno, “Dos”, “Tres”…  I spent some time looking at my camera gear, picking up waterproof backpacks (I picked up an awesome one – Phantom Aquatics Walrus 25 Premium Waterproof Backpack Dry Bag) and the like.

It was all completely selfish but the good news is that despite this failing, I was ready to start packing for the trip.