Readit News logoReadit News
omnicognate · 3 years ago
I wish this approach were more supported by those producing documentation. Looking things up in reference docs is one of those cases where reducing friction yields huge productivity benefits, but I still end up using a search engine (Kagi now as Google hides authoritative reference docs under a pile of poor-quality, irrelevant spam these days). I've tried Zeal multiple times but while the app is nice and many of the docsets are good, many of them aren't good: badly formatted, badly indexed, outdated or simply nonexistent. A search engine requires no setup and covers everything. It's just so horribly slow.

If we were grown ups, all software authors/vendors would be providing their reference docs in a standardised form, findable, downloadable and displayable by a wide range of tooling, consistent across languages, IDEs and platforms. Zeal is the closest we have, and it's a noble effort, but IME it doesn't solve the problem well enough to be useful because there's no buy-in from the people producing the docs.

(First to mention ChatGPT gets slapped with a wet fish. Just try me.)

nerdponx · 3 years ago
And on the other side of things, there's a growing trend in the Python library ecosystem of simply not writing reference documentation at all, instead providing either a few or a lot of user guides and tutorials, and directing users to either read those and try to interpret their mysteries, or expecting users to read the source code and interpret those mysteries. It makes no sense to me. The Pydantic issue tracker for example is absolutely full of people simply trying to figure out how to use the damn thing.
distcs · 3 years ago
Glad you picked on pydantic. There is no reference doc whatsoever. The expectation is that you are supposed to learn by reading examples!

Back in the days of yore, software engineering teams led by greybeards used to be conservative in what dependencies they import into the projects. Those days are gone! Everyone imports everything today without any discerning eye.

benrutter · 3 years ago
Yeah, I was struggling with this trend earlier when looking at the Textual library, which has amazing examples but doesn't seem to have very detailed full API documentation.

I wonder why this trend is happening, especially when python in particular has a bunch of standards and tools to make generating full API docs pretty straightforward.

kaycebasques · 3 years ago
I'm a technical writer. I have felt this a lot myself. It is very comforting to know that the man pages are always there if I need them. Same with the Rust docs. And Beej's Guide to C Programming (I downloaded the PDF). Conversely, it kinda sucks to have to rely on a website to get info. I will kick off a discussion around offline docs in the technical writer communities that I'm part of.
bippihippi1 · 3 years ago
rust docs is one of the reasons it's the so nice to use. Javadocs are nice but so many libraries have their own format. Everyone using the same thing makes it so much better
senko · 3 years ago
In hope I avoid getting slapped with a wet fish, I would love to see a future version of Zeal with an option to ingest the docsets into a vector database and "chat" with it using a (local) LLM that's fine tuned for answering technical docs questions.

To stay on topic, I feel the pain: Zeal is so nice I curse when I need to look up something in the docs that aren't supported (Django REST Framework, in my case), since they use a different doc framework and can't be easily prepared for Dash/Zeal.

worldsayshi · 3 years ago
Somewhat related: wonder if using a local LLM could make it more feasible to federate reference documentation by translating various doc formats into a common one.
macjohnmcc · 3 years ago
I miss the documentation that was part of Microsoft MSDN subscription. I now work in a sandboxed environment and cannot access help for the APIs from within that environment so something that I can download in it's entirety and get into that environment would be ideal.
whitten · 3 years ago
Does IME == In My Experience ?
omnicognate · 3 years ago
Yes. Apologies. I'm used to using that in chat with people familiar with it, but shouldn't have here. Random unexplained acronyms are annoying.
jmholla · 3 years ago
It does.
bombcar · 3 years ago
https://www.kiwix.org/en/ Has some nice stuff for offline, but it’s not really optimized for it.
larusso · 3 years ago
I’m a happy user of Dash (macOS) for years now. Sadly Zeal is not 100% the same in terms of integration etc. at least I never got it running on windows and Linux like on Mac. I only use hot key setup (alt-space in my case) No fancy ide hot keys and such.

There used to be some controversy (around 2015) when the author (single dev) put out yet another breaking version with new license upgrades. The free version was artificially slowed down. He added a new search backend and wanted to be compensated. So all users had to pay again. I upgraded 3 or 4 times. I think it’s a great tool that solves a problem. Some feel that he only wrote a parser/display tool and that the price is too high. I wished I came up with the idea though ;)

rjzzleep · 3 years ago
I didn't know zeal was being updated at all since the last "release" is almost 5 years old.

I recently discovered devdocs.io and the emacs integration[1] and like it so far.

[1] https://github.com/astoff/devdocs.el

larusso · 3 years ago
I actually don’t follow the releases just know that it is the variant for windows and Linux.
prox · 3 years ago
Couldn’t one use Obsidian to do the same task? It sounds like it could.
bityard · 3 years ago
I have Zeal installed on my Linux desktop but I rarely use it.

The reason is that most of the time, I want to read documentation for a specific version of whatever thing I'm using. Zeal only has docs for the latest version, or in some cases, major versions. Take Ansible and Python, for example. These tend to have breaking changes, new features, and hard deprecations in their minor version releases. So knowing that I'm looking at the docs for Python 3.8 vs 3.11 can be very important.

One of my "someday" projects is to write a doc viewer with an obnoxious plethora of sources including docs shipped for every minor version of a program, docs for operating systems, man pages, info pages, maybe even wiki content for exceptional wikis like arch and gentoo.

Groxx · 3 years ago
I've seen this in a lot of offline/fast/??? focused documentation systems... and I really don't get it. Version matters a lot to developers. Wouldn't the developers know this... being developers themselves?

But then I see similar things in supposedly mature and even-more sophisticated systems, like mypy's typeshed which only supports a single version of external libraries' type declarations.

How? What madness leads to this? Why not support multiple versions, and offer a way to select them per project from standard dependency declarations, so you're always reading the correct version?

Hackbraten · 3 years ago
Does the Python documentation not meticulously list the entire history of changes at method level?
jnovek · 3 years ago
The opposite is also true: the JavaScript AWS SDK on Zeal is v2 and the bleeding edge is v3.
destedexplan · 3 years ago
Or use devdocs.io on the web. It works well offline.
qbasic_forever · 3 years ago
I wish it had a proper installable app. Relying on browser local storage is a nightmare since your browser will randomly and with no warning delete it all. The whole point of offline docs is that they're available... offline. On more than one occasion I've gone back to devdocs.io and everything I saved locally is wiped out, and of course I'm offline and just can't do anything.

Give me local HTML files I can stash in my filesystem. I actually just use wget to recursively archive entire documentation sites to local folders and serve them up with python's built in web browser. It's the only way to be sure I have accurate and up to date offline docs.

microtonal · 3 years ago
Give me local HTML files I can stash in my filesystem.

Apparently devdocs does have an API to download docsets. I just installed the Emacs package that someone recommended in another thread and it let me download the docs.

0cf8612b2e1e · 3 years ago
Sign me onto this same worry. It only takes one incident of offline mode borking to get upset.

Since the devdocs representation is so standardized, I have wondered if I could dump their database into SQLite and browse it with datasette. Should even be able to maintain text searching.

denysonique · 3 years ago
>your browser will randomly and with no warning delete it all

With Chrome based browsers this seems to happen usually on browser restarts after version upgrades, however With Firefox I have never had such issue

There seems to be an Electron Desktop client: https://github.com/gengjiawen/electron-devdocs

clone1 · 3 years ago
I use this (https://github.com/astoff/devdocs.el) emacs package to download devdocs locally and access them from emacs, which is pretty great.
worldsayshi · 3 years ago
Is there no browser plugin that can give a more reliable offline browsing experience than browser cache and more convenient than wget?
AltNick · 3 years ago
https://devdocs.io/ absolute recommendation
hirundo · 3 years ago
I love devdocs.io when it works, but almost every other time I open it, it has forgotten my documentation configuration and I have to start from scratch. I don't have problems losing cookies, etc., elsewhere. And I have a peeve with it asking me to reload the page over and over and over, and each time I do it loses my place. It's a great source otherwise.
yboris · 3 years ago
Looks great. Related product for comparison: Dash https://kapeli.com/dash
warmwaffles · 3 years ago
I loved Dash when using a mac. But I've been full time in linux for the last 6 years and Zeal is the only thing _close_.
aosaigh · 3 years ago
I've tried to use an offline documentation browser a few times before (Dash on Mac) but have never really been able to get into the habit of using it. I generally just end up Googling for what I'm looking for. Outside of low-connectivity situations, what benefits do people find with these viewers?
kaba0 · 3 years ago
Google has become a terrible search engine to the point that the first mention of the official documentation will be half a page down with some random version. I have to enter like 3 queries for the most trivial workflow of displaying the official documentation’s relevant pages.

Also, even with high speed internet, it is several seconds at least, while zeal/dash will return it basically instantly.

temp51723 · 3 years ago
> what benefits do people find with these viewers?

I stop and think about the issue instead of just googling for an answer.

Also, I removed the wifi card from my laptop so I can work from a room without ethernet letting myself get distracted by the internet.

zomgwat · 3 years ago
For me, the combination of Dash and Alfred is the productivity boost. Alfred makes it very easy to search documentation in Dash. You can have unique keywords in Alfred to target specific packages in Dash. For example, “guava: ImmutableList” or “sidekiq: Client”. I find it especially useful with Dash on a secondary monitor while the editor is on the primary so that both are visible at the same time.
maleldil · 3 years ago
What's the difference between using Alfred to search vs using the hotkey to open a Dash window in search mode?
Linux-Fan · 3 years ago
For many queries, Google offers more of a "ready-made" solution e.g. from a StackOverflow post or blog.

When looking at the offline documentation, I know that I am looking at a supported version (not something ancient or much newer than what is deployed in production) and that I am looking at the "authorative" answer i.e. the "real" docs not some third party comments.

When the program I am developing is expected to run correctly even in the presence of errors, it makes a lot of sense to me to consult the authorative documentation rather than "the web" which rarely covers all of the possible corner cases.

cloogshicer · 3 years ago
Speed and snappiness mainly. Skips at least two slow page loads (Google and the docs page).

But yeah, it took me a while to get into the habit as well, and the benefit was pretty small. It mainly just feels nice.

mindhunter · 3 years ago
Exceptionally quick lookups: alt + space and Dash is there with the search focused. I search and press alt + tab or esc to get back into my editor.
mxuribe · 3 years ago
I actually only started using Zeal during the last few months...but similar to you, the trap i fall into is that muscle memory has not been built up with me to *remember* to check zeal before resorting to a search engine. However, those few times that i *did* remember to use zeal, for me it was really great, solid experience!
XorNot · 3 years ago
Honestly: that it's not Google.

A more limited and focused selection of documentation gets me exactly what I need. It's also a lot faster then documentation websites.

eddieroger · 3 years ago
I have felt the same way, and curious to what others say about it. I assume the problem I have is that I am not always good at asking the questions of the documentation that I mean, and Google is good at inferring my meaning. More often than not, I don't just need the method signature, but some narrative around what and why. But I try things like Dash again when they come up, or moments like this. To your question, offline browsing is the biggest benefit I see. Long plane ride ahead, or cruise, or train ride? Take your doc with you.
djha-skin · 3 years ago
A program on the bus without internet access so this is just perfect. I often download whole websites for this reason or bit better you can print pages off as PDF documents.
e12e · 3 years ago
Maybe I'm blind - but i can't seem to figure out a) what you get when you pay for Dash on Mac vs download? Or b) why i can't use zeal on Mac?
larusso · 3 years ago
Dash is a commercial software on macOS. The author created the whole docset parsing/plugin stuff and markets the tool. I use it for years and upgraded multiple times since it’s a timesaver.

There has been controversy in the past about the tool since it is a glorified man page reader. The author even shared at one point his earnings and what he is doing with it.

And no there is no zeal for macOS. I don’t know the details behind that deal. I can only say that zeal is not as good as dash. The integration into macOS is way smoother than what one gets on windows and Linux. I tried all versions.

hn92726819 · 3 years ago
IIRC, Zeal and Dash have a deal with eachother - since Dash has no plans for non-mac devices, Dash told zeal the docsets can be used free of charge as long as zeal does not provide release builds on Mac. I believe you can build zeal on mac on your own.
Croftengea · 3 years ago
It’s not widely advertised (probably this is the deal) but Zeal works fine on macOS, see this: https://github.com/zealdocs/zeal/wiki/Build-Instructions-for...

You don’t need to build it yourself, there is a brew formula.