Category Archives: Boolean Logic

Boolean Strings, Semantic and Natural Language Search – Oh My!

An entertaining blog post by Matt Charney was recently brought to my attention in which he tells the world to shut up and stop talking about Boolean strings – he argues that Boolean search is a dying art and that “investing time or energy into becoming a master at Boolean is a lot like learning the fine art of calligraphy or opening a Delorean dealership.”

You can read the snippet regarding Boolean Strings below – click the image to be taken to the entire post, in which Matt addresses mobile recruiting and employer branding.

Matt Charney Boolean Strings

I enjoyed Matt’s post and his approach, but I did not find his arguments to be thoroughly sound – although I suspect he wasn’t trying to make them so (after all, his blog is titled “Snark Attack”).

I’m going to take the opportunity to address the points Matt raised – not because I am trying to stay “relevant,” as some might suggest (my blog is a not-for-profit personal passion and I don’t consult/train for a fee), and also not because I have a vested interest in “keeping Boolean search alive” (because I really don’t) – rather, because I am still amazed that a fundamental lack of understanding of search and information retrieval – both “manual” Boolean search and “automated” taxonomy driven and/or AI-powered semantic search – and I am constantly trying to help people not only understand both, but also appreciate their intrinsic limitations, as well as separate reality from hype.

So, without further ado: Continue reading

LinkedIn Certification, Talent Connect and Boolean NOT Update

LinkedIn Recruiter Certification

In case you missed it, LinkedIn has launched a recruiter certification program!

LinkedIn Certification-Badge

If you think you’re ready to get certified, between now and December 31, 2013, LinkedIn will waive the exam fee for the first 500 customers that register for the LinkedIn Certified Professional—Recruiter certification exam. Click/see the coupon code below:

LinkedIn recruiter certification free

Before you attempt to take the certification assessment, you will definitely want to see what I only recently discovered about LinkedIn’s support of Boolean search exclusion operator (NOT vs. Minus sign) – skip to the bottom of the post to learn more.

LinkedIn Talent Connect

Talent Connect 2013 Logo

I’m honored to be presenting again at both Talent Connect events this month in Vegas as well as Talent Connect London, which happens to be the largest corporate recruiting event in Europe.

The event in Vegas is sold out, but you can view the live stream – click here to to register.

I will be presenting two sessions on LinkedIn talent sourcing on Wednesday the 16th in Vegas and one session on Thursday the 24th in London,  covering core principles and advanced strategies.

Now that LinkedIn has grown to over 238M profiles, finding people has become easier, but finding the right people has actually become more challenging. As such, knowing how to effectively source talent on LinkedIn is now more important than ever. In the foundation session, I’ll be reviewing information retrieval best practices, the importance of understanding the behavior of the people you’re looking for and that of your competitors, and how to develop the ability to ask better questions with Boolean logic. In the advanced session, I will cover Dark Matter concepts, Maximum Inclusion, Adaptive Search, Strategic Exclusion, and Moneyball Sourcing.

LinkedIn Boolean Search Exclusion: NOT vs. the Minus Sign

You may recall that I broke the story on LinkedIn’s undocumented Boolean search operator over two years ago.

In preparation for the LinkedIn Recruiter Certification, I inquired with the team at LinkedIn about any differences between the Boolean NOT operator and the minus sign (-).

They responded, and you should know that LinkedIn officially only supports the NOT operator for exclusion, as there are some “corner cases” in which the minus sign will not work for exclusion – this is true for searching LinkedIn for free as well as for LinkedIn Recruiter.

Now, if you’re a fan of words like I am, you may especially appreciate their specific use of the term “corner case,” which clearly came from their engineers. If you’re unfamiliar with the term, Wikipedia offers an excellent explanation:

corner case (or pathological case) is a problem or situation that occurs only outside of normal operating parameters—specifically one that manifests itself when multiple environmental variables or conditions are simultaneously at extreme levels, even though each parameter is within the specified range for that parameter.

For example, a loudspeaker might distort audio, but only when played at maximum volume, maximum bass, and in a high-humidity environment. Or a computer server may be unreliable, but only with the maximum complement of 64processors, 512 GB of memory, and 10,000 signed-on users.

Contrast a corner case with an edge case, an issue that occurs only at a (single) maximum or minimum parameter. For example, a speaker that distorts audio at maximum volume, even in the absence of other extreme settings or conditions.

Corner cases are part of an engineer‘s lexicon—especially an engineer involved in testing or debugging a complex system. Corner cases are often harder and more expensive to reproduce, test, and optimize because they require maximal configurations in multiple dimensions. They are frequently less-tested, given the belief that few product users will, in practice, exercise the product at multiple simultaneous maximum settings. Expert users of systems therefore routinely find corner case anomalies, and in many of these, errors.

Mind you, you can still use the minus sign in lieu of the Boolean NOT operator to exclude terms and OR statements, but be advised that there are some rare scenarios where the minus sign won’t work.

Now, I’ve personally never encountered a situation in which the minus sign did not work exactly as the NOT operator, so what are the corner cases in which the minus sign won’t work?

Ah, you know I have already asked the LinkedIn team…I am eagerly awaiting their response.


Talent Sourcing: Man vs. AI/Black Box Semantic Search

Back in March 2010, I had the distinct honor of delivering the keynote presentation at SourceCon on the topic of resume search and match solutions claiming to use artificial intelligence in comparison with people using their natural intelligence for talent discovery and identification.

Now that nearly 2 years has passed, and given that in that time I’ve had even more hands-on experience with a number of the top AI/semantic search applications available (I won’t be naming names, sorry), I decided it was time to revisit the topic which I am very passionate about.

If you’ve ever been curious about semantic search applications that “do the work for you” when it comes to finding potential candidates, you’re in the right place, because I’ve updated the slide deck and published it to Slideshare. Here’s what you’ll find in the 86 slide presentation:

  • A deep dive into the deceptively simple challenge of sourcing talent via human capital data (resumes, social network profiles, etc.)
  • How resume and LinkedIn profile sourcing and matching solutions claiming to use artificial intelligence, semantic search, and NLP actually work and achieve their claims
  • The pros, cons, and limitations of automated/black box matching solutions
  • An insightful (and funny!) video of Dr. Michio Kaku and his thoughts on the limitations of artificial intelligence
  • Examples of what sourcers and recruiters can do that even the most advanced automated search and match algorithms can’t do
  • The concept of Human Capital Data Information Retrieval and Analysis (HCDIR & A)
  • Boolean and extended Boolean
  • Semantic search
  • Dynamic inference
  • Dark Matter resumes and social network profiles
  • What I believe to be the ideal resume search and matching solution
Enjoy, and let me know your thoughts.

Beyond Boolean Search: Proximity and Weighting

Beyond Basic Boolean

Most sourcing, recruiting, and staffing professionals are familiar with the basic Boolean operators of AND, OR, and NOT. However, I have found that few are familiar with what some refer to as “extended” Boolean functionality, such as proximity search and term weighting.

Proximity and term weighting, where supported, are not actually logical (Boolean) operators – they are more accurately referred to as text or content operators.

Whatever you call them – extended Boolean or text operators – they offer sourcers and recruiters significantly more control, power and precision when executing searches, and in the hands of an expert, they can enable semantic search. Continue reading

Beyond Boolean: Human Capital Information Retrieval

When I recently spoke at SourceCon in New York, I showed an example Boolean search string that could be used as a challenge or an evaluation of a person’s knowledge and ability.

The search string looked something like this:

(Director or “Project Manage*” or “Program Manage*” or PM*) w/250 xfirstword and (truck* or ship* or rail* or transport* or logistic* or “supply chain*”) w/10 (manag* or project)* and (Deloitte or Ernst or “E&Y” or KPMG or PwC or PricewaterhouseCoopers or “Price Waterhouse*”)

During the presentation, an audience member asked me why there wasn’t any use of site:, inurl:, intitle:, etc. I responded by acknowledging that for many, sourcing and Boolean search seems to be synonymous with Internet search – however, this is definitely not the case. Continue reading

Boolean Search Does Not = Internet Search

If you read certain sourcing and recruiting blogs and discussion groups, you might get the impression that Boolean search pretty much equals Internet search – such as searching for people and profiles using Google, Yahoo, or other search engines. Some sourcing and recruiting professionals may be surprised to learn that Boolean logic significantly predates the Internet and even computers – by a couple hundred years!

The word “Boolean” comes from the man who invented Boolean Logic in the 19th century – George Boole. Boolean Logic is the basis of modern computer logic, and George Boole is regarded in hindsight as one of the founders of the field of computer science.

Now that you know Boolean logic was created in the 1800’s – it’s pretty obvious that Boolean logic is not just for searching for people and information on the Internet. Practically any information system from which you need to search and retrieve information from “speaks” Boolean to some extent, whether you realize it or not.

Applicant Tracking Systems

I was first exposed to Boolean search back in 1997 B.G. (Before Google) when my sole source of candidates was a Lotus Notes resume database by the name of CPAS, made by VCG. Although the CPAS product (which no longer exists) was far from a fully featured Applicant Tracking System, thankfully it did support full Boolean logic, with very few limitations. If it didn’t support full Boolean logic, this blog would probably would not exist – and if it did, I wouldn’t be writing it. Thank you CPAS!

The CPAS search interface allowed me to hand-code highly precise and effective Boolean search strings using all three standard Boolean operators: AND, OR, and NOT. While there are some applicant tracking systems on the market that do support full Boolean logic, it is an unfortunate fact that too many ATS’s available today do not support creating searches using full Boolean logic, which significantly handicaps sourcers and recruiters from leveraging their internal corporate candidate databases.

Job Boards

In contrast – all of the major job board resume databases (Monster, Careerbuilder, Hotjobs, Dice, etc.) support full Boolean logic. As I have written about many times before, Monster even supports “extended” Boolean search functionality with the incredibly powerful NEAR operator.

Social Networks

While most social networks are painfully difficult to search with their extremely limited search interfaces, LinkedIn does support creating search strings employing full Boolean logic. In fact, it appears that you can create Boolean search strings of unprecedented length and complexity on LinkedIn. If you haven’t already, please read this post I wrote that compares searching LinkedIn using LinkedIn’s search interface with searching Linkedin using Google and the x-ray technique. I got tired of entering words into LinkedIn’s search bar after cramming 316,638 characters into it. That’s the equivalent of a Boolean search string that contains over 60,000 words and is approximately 120 pages long!

Internet Search

What’s especially ironic about the wide spread perception that Boolean = Internet search is that most Internet search engines don’t even support full Boolean logic. For example, although Google supports Boolean search strings containing AND, OR, and NOT (with the minus sign) functionality, you cannot use the NOT/- operator on an OR statement.

Let’s look at the results when we try and run this search string on Google: Continue reading

Basic Boolean Search Operators and Query Modifiers Explained


Basic Boolean Operators Explained

No, those aren’t my hands.

I never cease to be amazed by what you can find on the Internet and what people take pictures of.

Now that I have your attention, this post is going to focus on the basic Boolean search operators and search modifiers symbols and will not go into any detail of the many special Internet-only search commands/operators.

Although a great many people seem to think that Boolean = Internet search, Boolean logic and searching has been around WAY before the Internet. And here’s a quick fact: you don’t have to capitalize Boolean operators on any of the major job boards and many of the major ATS’s.

Go ahead – try it. Nothing will explode and your searches will execute.

And now, back to the Boolean basics…

Boolean Search Operator: AND

The AND operator is inclusionary and thus limits your search.

It should be used for targeting required skills, experience, technologies, or titles you would like to limit your results to. Unless you are searching for common words, with every AND you add to your Boolean query, the fewer results you will typically get.

Example: Java AND Oracle AND SQL AND AJAX

On most Internet search engines and LinkedIn, every space is an “implied AND,” and you don’t have to type it, as every blank space is interpreted as an AND operator.

Example: Java Oracle SQL AJAX

Bonus: You can use the ampersand (&) as the AND operator on Monster.

Boolean Search Operator: OR

The OR operator offers flexible inclusion, and typically broadens your search results.

Many people incorrectly think the Boolean OR operator is an either/or operator, when in fact it is not.

The OR operator is technically interpreted as “at least one is required, more than one or all can be returned.”

Although some search engines, such as Google, do not require you to encapsulate OR statements with parentheses, if you don’t on most databases and LinkedIn – your search will run but execute in a way that you probably did not intent.  As a best practice, I tell people to always use parentheses around OR statements as a matter of good search syntax.

Example: Java AND Oracle AND SQL AND AJAX AND (apache OR weblogic OR websphere)

The returned results must mention at least one of the following: apache, weblogic, websphere. However, if candidates mention 2 or all 3, they also will be returned, and most search engines will rank them as more relevant results because of such.

The best ways to use OR statements is:

  1. To think of all of the alternate ways a particular skill or technology can be expressed, e.g., (CPA OR “C.P.A” OR “Certified Public Accountant”)
  2. To search for a list of desired skills where you would be pleased if a candidate had experience with at least one, e.g., (apache OR linux OR mysql).

Bonus: You can use the pipe symbol (|) for the OR operator on Google, Bing, and Monster.

Boolean Search Operator: NOT

The NOT operator is exclusionary – it excludes specific search terms and so the query will not return any results with that term (or terms) in them.

Example: If you were searching for an I.T. Project Manager, you may want to employ the NOT operator in order to eliminate false positive results – results that mention your search terms but do not in fact match your target hiring profile.  In this case, you could run: “project manager” and not construction – this search will not return any results with “project manager” and the word “construction” contained within them.

On all of the major job board resume databases, some ATS’s and LinkedIn, you can use the NOT operator in conjunction with an OR statement.

Example: .Net AND NOT (Java OR JSP OR J2EE) – that search will not return any results with any mention of Java, JSP, and/or J2EE.

Bonus: NOT has 2 main uses

  1. Excluding words you do not want to retrieve to reduce false positive results (most common usage)
  2. Starting with a very restrictive search with many search terms, you can use the NOT operator to systematically and progressively loosen the search into mutually exclusive result sets (not so common usage, but very effective strategy)

Basic example:

  1. “Project Manager” AND SQL AND Spanish
  2. “Project Manager” AND SQL AND NOT Spanish
  3. “Project Manager” AND NOT SQL AND Spanish
  4. “Project Manager” AND NOT (SQL OR Spanish)

Bonus: You can use the minus sign as the NOT operator on many sites and search engines, including LinkedIn.

Boolean Search Modifier: ASTERISK *

The asterisk can be used on most resume databases and non-Internet search engines as a root word/stem/truncation search. In other words, the search engine will return and highlight any word that begins with the root/stem of the word truncated by the asterisk.

For example: admin* will return: administrator, administration, administer, administered, etc.

The asterisk is a time saver for search engines that recognize it (most major job boards and ATS’s) because it saves you from creating long OR statements and having to think of every way a particular word can be expressed.

LinkedIn does not support the asterisk, so you will have to construct large OR statements to search for all of the various ways someone could mention each term you’re searching for. For example: (configure OR configuring OR configured OR configures)

Boolean Search Modifier: PARENTHESES

As a best practice, use parentheses to encapsulate OR statements for the search engines to execute them properly.

Remember, the OR operator is interpreted as “I would like at least one of these terms.” Think of parentheses as your way of telling the search engine you’re looking for one of THESE: (_______________).

For example: (apache OR weblogic OR websphere)

If you don’t enclose all of your OR statements, your search may run but it will NOT run as intended.

Boolean Search Modifier: QUOTATION MARKS ” “

Quotation marks must be used when searching for exact phrases of more than one word, or else some search engines will split the phrase up into single word components.

For example: “Director of Tax” will only return “Director of Tax.” If you searched for Director of Tax without the quotation marks, on some search engines, it will split up the words Director and Tax and highlight them as relevant matches even when not mentioned as an exact phrase.

Bonus: Google auto-stems many search terms, so if you are looking specifically for the word manager, it will still return managed, management, etc. – even if you don’t want it to. If you put quotation marks on a single word in Google, it will defeat the auto-stemming feature and only return that specific word.

There you have it – Boolean basics!

If there is something you would like to see me post about with regard to Boolean logic and search tactics and strategies – let me know.