Hacker News new | past | comments | ask | show | jobs | submit login
Quickref – Experimental search engine for developers (quickref.dev)
188 points by feross 11 months ago | hide | past | favorite | 43 comments

The biggest thing I miss from most search engines is first-class support for special characters.

I usually resort to spelling out the symbols I’m looking for (“shebang bin env versus bin bash”) but often people who ask questions or post issues on GitHub use the actual symbols, not the words.

I’ve tried a couple of symbol-specific search engines (e.g. https://symbolhound.com) but found it pretty hit-or-miss.

I really wish Google/DuckDuckGo had better symbol support natively.

Apparently, like DuckDuckGo, this is based on Bing results and suffers from the same general-web content indexing tradeoffs.

I was trying to research what types of tests are used to determine hormone levels yesterday, but of course all the results are health sites about how to get a hormone test or when you might need one. It takes several search refinements to get any information that you are looking for.

All search engines suffer from an over abundance of information, so much so that it's becoming more and more difficult to find useful information. You really have to know quite a bit about the field you are researching and what terms to use, but of course by that time you probably don't need to search for it.

I want a type of search engine that is predictive and can filter out results based on your search history (for example filter out surface level health information sites if I almost never click on them).

Yeah, health is the worst. So is anything related to parenting. In general, any topic that's relevant to the majority of people on the planet is totally swamped in content marketing garbage.

This makes me wonder how much a benefit the Internet really is for people, information-wise. These general audience articles I see polluting top search results tend to be at best non-informative, at worst spreading total bullshit, and they're also designed to maximize the time you're spending reading them.

Exactly, and it's a compounding problem. The sites with the best information don't win, it's the sites with content optimized to get clicks. It's a problem that gets worse with time and more "real" information gets crowded out.

If there's already a good paper or article on what types of tests are used to determine hormone levels I'm not going to make another one, even if it was difficult to find. There are no such barriers stopping health blogs from creating dozens of "why you need a testosterone test today!" articles, however.

> There are no such barriers stopping health blogs from creating dozens of "why you need a testosterone test today!" articles, however.

What's even worse, there's good business in manufacturing (often copy-pasting and lightly paraphrasing) such bullshit articles. It's actually an entire profession at this point, called "content marketing".

I like the idea of a search history filter for results, maybe locally as a Bayesian classifier based on a browser history, that I can edit, manually score, and that learns as my interests change. Custom search engine with arbitrary regex scripting would be worth a few bucks a month to almost any coder.

A good regular expression search engine would be a superpower.

What is that? I'm not familiar with the term.

Oh, I know what a regex is. But got confused about what wolf a regex search engine look like. I think I understand the idea, just wanted a clarification to make sure.

This hasn’t been a practical problem for me. I find that quoting my query almost always works for finding exact matches of strings, including those that include symbols.

May depend on your variation of 'practical', but I have had the opposite experience, and as trivial examples, "+-/" came up with nothing in:


Likewise no results for "+" "-" "" "/":


Edit: tried to escape the multiplication symbol/asterisk, but I think the italics speak loud enough on this issue

What do you expect for those results though?

I think a better example is searching "+= operator python", for which it successfully highlights the "+=" and finds relevant results:


You get arguably better results (though mostly the same) if you leave out the '+=':


Edit: Let me walk that back a little. The highlighting may be helpful in some cases and it follows that the operator search is better than I'd noticed in the past. Still an indexing and security nightmare to have loose user-def'd punctuation running over data. Go Big-G, doing what's hard.

Cool! This seems pretty high quality for documentation search. I've gone ahead and added it as my main web search engine for Dash App. Here's a few tests I gave it. I think these tests are all moderately ambiguous, so it's acceptable if the result isn't necessarily on the top.

- "componentdidmount" -> React Component documentation

- "express request" -> Express API documentation (monolithic documentation page)

- "quaternion lookat" -> Unity3D docs for "LookRotation" (the correct method name)

- "strings replace" -> go package is second result, adding "go" to query makes it first

- "dataframe read_csv" -> pandas read_csv documentation

It didn't handle these as well:

- "browserrouter" -> nothing useful, react router documentation appears to not be indexed

- "python readlines" -> official documentation on this isn't in the top 10 results, and the 12th result is python2's version

- "numpy normal distribution" -> a bunch of stack overflow questions that don't even talk about np.random.normal

A meta-note: my Mac changes "numpy" to "bumpy" (or "lumpy" or any other word it can think of ending in "umpy") and several other annoying autocorrects. Maybe disable autocorrect on the search field?

Everyone should be using devdocs their coding needs. https://devdocs.io/

If there was a nice way to import these into GNOME's Devhelp (my favourite documentation tool) it would be amazing.

I didn't know about this one. Thanks!

Great idea! I would love to be able to constrain the language/ecosystem either as part of the query or as a filter. I find myself working in one language and doing a lot of searches for it, then switching languages and doing a lot of searches for that one, etc.

I searched for "java.lang.String", the first result is from javadocs for java 7, then java 8, then java 9. Anything more recent is nowhere to be seen. This is even worse than google, where java 11 is the third result. I really like the idea, but I would expect the first result to be from up-to-date documentation, not from a version of java that was released almost a decade ago.

It seems that there could be a language filter too (`lang:c++`)

"shared_ptr" didn't pointed me to https://en.cppreference.com/w/cpp/memory/shared_ptr :(

Great Idea! With a little bit of improvement, this could be the "go-to" tool for developers. Its time there are specific search engines for specific purposes with nice filters like this one.

This is super cool but there's currently some rough edges. For example, when I search for "webtorrent", no official WebTorrent project link is returned until the 5th result. SourceForge seems over-weighted. The 7th result is a random GitHub issue. The GitHub org page is 11th and the main repo is 12th.


When I search for "C string", the first couple results are about "C# strings". I think this is a problem for a search engine aimed towards developers. At least it doesn't show me lingerie (thanks Google for taking my 11 year old innocence).

Yep its showing me swift code when I search for C. Pretty cool idea otherwise.

What's a (non-programming) C string? Any relation to a G String?

Yeah, it's the minimal amount of sub-waist underwear a woman can possibly wear and still be allowed on TV (and Google SafeSearch, heh)

This is an awesome idea! I couldn't find the project on Github (only the data sources txt's)... am I missing something? Making it an open-source project is really important if your target audience is made of devs.

When I search from Firefox (on Android), then hit back and try to change search terms, hitting "Go" on the keyboard shows results for the initial search terms, and the input box also reset to them.

I expected a commandline interface :-)

Motto: Google for people who know how to use Google

Edit: PS it's great!

I would like to see a git commit id search engine. Enter a git commit id and get a link to a repository hosting that commit.

I like this. Being able to easily filter on a certain type of result is a neat idea.

One major shortcoming I commonly experience in search engines is poor support for things like complex or custom logical symbols, bitwise operators and other non-alphanumeric strings. None of the major search engines do this well AFAIK.

Maybe he could use backticks for fine tuning instead of standard quotes

This will be fun to play with. It would be cool if there was duck duck go bang code for it.

You can submit a !bang request here pretty easily: https://duckduckgo.com/newbang

I've done it a few times so far.

Yes, that would be ideal. But how would bang-search work for a search engine that also supports bangs? Haha.

Great project! The query interpretation could better support phrasing and orderig of terms. The query "migrating from postgres to mysql" only returns results for "how to migrate from mysql to postgres"

only returns

Nice project, quick suggestion: you should map `/` to focus the search field.

nice! do you mind talking about, how you built it?

This is great, frank feedback: bad domain, extremely useful if it works, right now it kind of works, you should absolutely continue this (I've been writing code for 30 years, just to help you filter my feedback)

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact