The 10-80-10 Rule

I once read that padlocks only stop 80% of possible thieves. Ten percent of people never steal, ten percent will always steal, so a padlock only makes it more difficult for someone in the 80% to steal (the vast majority of people).

chain-lock

This idea of a 10-80-10 rule is related to the Pareto Principle (20% of people own 80% of the land). I don’t think the 10-80-10 Rule is always true, but it seems reasonable to believe there could be two small, stubborn groups at each end of the spectrum, and everyone else could possibly go to either side. Consider:

  • Voters: 10% always vote Republican, 10% always vote Democratic, 80% can be persuaded
  • Customers: 10% always satisfied, 10% never satisfied, 80% sometimes satisfied
  • Airline flights: 10% always late, 10% always on time, 80% sometimes on time

What does this mean to a software developer? Focus on the piece of the pie that yields results. Going by the Pareto Principle, optimize the 20% of the code that accounts for 80% of runtime, and acknowledge that there’s 10% of code that will probably never be refactored.

In addition to software, your co-workers, friends, and family may fall into one of the 10% ends of the 10-80-10 spectrum. When making a decision, the majority is usually willing to agree to either side; the two persistent groups of 10% will hold out much longer.

In what situations do you think the 10-80-10 Rule applies?

 

Posted in Psychology | Tagged , , | 1 Comment

CS Internship Guide #14: Recruiters Are People, Too

Part of the CS Internship Guide


Put Yourself in Their Shoes

One of the best pieces of advice for talking with recruiters was given to me by a friend: “Recruiters are people, too.” It sounds obvious, but these four words are insightful when deciding how to interact with potential employers.

Don’t feel intimidated

At a career fair, don’t feel intimidated. Another of my friends graduated with a computer science degree and started a job as a software developer. The next year, he returned to the college’s career fair–this time, as an engineering recruiter.

“It feels weird to see students act nervously around me,” he said. “I was in their place a year ago.” Sometimes, even my friend didn’t know exactly how he should act or what he should say as a recruiter. How do I greet students? What should we talk about?

Cheerful Businesswoman with Colleagues

Recruiters are people, too. If you’re wondering if what you should do, think, “If I were a recruiter, what would I want the candidate to do?”

I would want students to be warm and friendly, not exceedingly formal. I would enjoy talking about software and hearing about your accomplishments; it’s okay to emphasize your strong points. And I’d be more than happy to take questions, and answer them in an honest, insightful way.

The Interviewer Wants You to Succeed

In a programming interview, the interviewer wants you to succeed. Be friendly, act confidently and communicate clearly. Don’t take any bluntness personally; the interviewer may be recovering from a tiring overseas business trip.

After the interview, if you’re wondering whether you should write a thank-you note, consider how you would feel if you received one (or twenty, if the recruiter interviewed twenty candidates). Personally, I don’t think they have a significant effect on most engineers.

And when you’re rejected, don’t take it personally. Recruiters are people, too. Few people enjoy telling candidates they didn’t make the cut.

Recruiters are people, too

Did I mention that recruiters are people, too? Put yourself in their shoes. You’ll have an easier time in the internship interview process, whether you’re talking to an HR professional, a software engineer, or a company founder.

If you’re a recruiter, what advice would you give CS internship seekers?

 

Posted in CS Internship Guide, Software | Tagged , , , , , , | 3 Comments

CS Internship Guide #13: Volunteering and Resumes

Part of the CS Internship Guide


A few years ago, I was trying to improve my resume. My goal? Encourage recruiters to offer me more interviews. My college’s career center reviewed my resume, and they strongly suggested that I list any volunteer experience I had. I respectfully disagreed.

You don’t need volunteer experience to get a computer science internship. I didn’t put any volunteer experience on my resume, and I ended up with internships for three summers in a row.

teen-volunteer

(Usually) Leave Volunteering Off Your Resume

In most cases, I would skip listing volunteer projects on a CS resume. Volunteering shows how you have good character, but it doesn’t typically demonstrate your proficiency with data structures. The real estate on your resume should feature your personal projects and any past internships. Volunteering may help you stand out a little, but you need programming know-how to grab HR’s attention first.

So I’ll add a caveat: Adding a line or two of volunteer projects in an extracurriculars section is perfectly acceptable. Just don’t go into too much detail.  If you do have an urge to point out your volunteer experience, you can always bring up the topic in a conversation with a recruiter.

When To Highlight Volunteer Experience

You should highlight volunteer work when you’re applying to a company whose core business relates to your volunteering projects. Imagine you’re really passionate about climate change. You participate in environmental organizations and want to intern at a company that develops clean energy technology. Showing those recruiters your volunteer work would definitely make your resume stand out!

In addition, if you have lots of extra space on your resume, feel free to add all your volunteer experience. This is common among new CS students that don’t have many personal projects yet. (And if you don’t have some awesome projects to showcase on GitHub, get started now!)

A Positive Impact

If you want to volunteer, do it because you want to make a positive impact on the world, not because you want a resume bullet. Unless your volunteer work relates to the company or you need to fill up space, leave it off your CS resume. Or keep your volunteering bullets brief. Remember, recruiters look for technical know-how, impressive personal projects, and passion.

Posted in CS Internship Guide, Software | Tagged , , , , | 1 Comment

Six Tips to Make Your Message Stick

Whether you’re a recording a video, designing a user interface, or just talking with a friend, you’ll need to help your audience remember your message. Here are six tips to make your message stick:

  • Use descriptive image words
  • Remove distractions
  • Remove unneeded details
  • Add gestures
  • Use Unusual Material
  • Use New Material

IMG_1209.JPG

Use descriptive image words

People remember images more easily than words. “The colossal blue arch stood strongly after millennia” is better recalled than “the gate stood.” If you’re designing an interface, a picture and text is better than either a picture or text alone.

Remove distractions

This may seem basic, but it really does help people remember: remove distractions so your audience can focus on the message. For example, when designing a website, limit the number of visual weight on the sidebars (remove attention-grabbing advertisements!). When speaking, be sure that you can be heard over background noise.

Remove unneeded details

If a detail isn’t necessary, don’t mention it. It’s easier to remember a single important idea than a hundred facts.

Add gestures

When speaking, add gestures. Many great orators use their entire bodies to emphasize key points.

IMG_2147

Use Unusual Material

People tend to forget each individual leaf that they’ve seen. There are millions of them. But if you see a Unicordion, you’ll remember that creature for years.

Use New Material

People remember material that is new. From an evolutionary perspective, this makes sense. Humans that could recall novel ideas were more likely to adapt successfully in a changing environment.

Making Your Message Stick

Thanks to Dr. John Daly, Dr. Samuel Gosling, and Dr. Jamie Pennebaker, for inspiring this blog post. Remember these six tips to help your message stick:

  • Use descriptive image words
  • Remove distractions
  • Remove unneeded details
  • Add gestures
  • Use Unusual Material
  • Use New Material
Posted in Psychology | Tagged , , , | Leave a comment

How To Help Users Make Quick Choices

How can interface designers help users make quick choices? When a task is repetitive or time-critical, every second counts.

Remembering Hick’s Law helps users make quick decisions:

The amount of time to make a decision increases with the number of choices.

In other words,

Limit the number of things to choose from.

bigstock-chocolate-and-vanilla-ice-crea-29407994-771x512

Picking from 300 other flavors takes a lot longer than picking between chocolate and vanilla.

Intuitively, Hick’s Law makes sense. If you have 300 flavors of ice cream, a user might want to examine every flavor. When there’s only chocolate and vanilla, it’s easy to pick one or the other.

Some websites and products sport an ever-increasing feature set. These masses of options and configurations slow down users, which can have disastrous effects during emergencies (“I can’t find the exit button!”). If the user needs to select from a large number of options quickly, consider grouping related options into categories, such as a tree structure.

Lastly, Hick’s law doesn’t apply in high-complexity situations, or in tasks require a lot of concentration. It’s most applicable to simple tasks.

Have you ever used an interface that had too many choices? How else can interface designers help users make choices quickly?

Posted in Software | Tagged , | 2 Comments