In my experience (using Zeal - which is the Linux QT port of Dash and uses the same repos) the docs generally seem to have some glaring oversights at the moment.
Possibly Zeal's search just isn't as good yet, but I had a heck of a time finding things about Python which are trivial to locate on the website through Google.
Having just built a docset for Python 2.2.1 [1], I think the issue with search is that it relies on generated indexes. If the index does not include the keyword you're looking for, it won't return anything. For example, in my docset I've indexed all modules, which is what I'm usually interested in, but not the entire language specification (although it's in the actual package).
One thing that I wish devdocs had was Java integration, but it's been repeatedly stated (just one example here: https://github.com/Thibaut/devdocs/issues/26) that they can't include the JDK because of it's restrictive licensee.
But, it seems like Dash includes the JDK, so how exactly are they able to do it but not DevDocs? My knowledge on the legal front is limited but if Dash is able to redistributed these docs I don't see why DevDocs couldn't do it.
This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means.
DevDocs is just a hobby of mine and I don't want to waste my time on a documentation that I may have to remove. If Oracle is willing to grant DevDocs a license (I haven't asked them) I'd gladly add the JDK docs to it.
DevDocs is wonderful! I have the source up and running on my home laptop to be able to have the documentation I want, lightning fast and without internet connection. The source is available here: https://github.com/Thibaut/devdocs
It's in there under std::list, but for some reason erase and begin are linked to externally. All the other member functions seem to be present/offline.
The thing about Dash is that it's just so much faster at displaying documentation than going to the browser and doing a search query - I use it even when I'm online with Alfred integration.
Agreed. I started using it back when it was a free beta and bought it once that was an option (iTunes receipt says that was a few days over two years ago), and I've probably used it daily since then. The ability to almost instantly search through tons of different docsets and find what I'm looking for, narrow them down, create groupings, and so on has made it absurdly useful to me.
I make a lot of my own docsets as well (i.e., ones for GLFW 3, Gambit Scheme, JeroMQ, and so on), since kapeli was hesitant in the past to add docsets that would be only of interest to really narrow groups of people, though it looks like the user docset thing on GitHub sort of fixes that. Either way, it not being closed off to outside docsets was nice, since I imagine it would've been easy to not allow it.
Anyway, glad to see it on HN since I'm a huge fan of Dash after using it for years. Sort of a shame it's Mac-only, since I keep looking around for ways to jump to Linux, but it looks like there're some open source alternatives. So, yeah, Dash was probably the best $30 I spent back in 2012.
I bought Dash a year ago. I've barely used it. My brain is wired to search on the web, not on Dash. The only times I've used it were when I had no internet connectivity, and it saved me.
Great product, it just doesn't fit into my routine.
Dash is great. The only reason I don't use it is that it offers only latest docset versions; once you update (in-app, great feature) the docsets, there is no way to access previous versions.
I would pay and use it immediately if I could access all versions (for example, Django 1.0 thru 1.7 etc)
I'm not able to find the docs for Django 1.0 and 1.1, but all others should be doable. Right now I'm focusing on fixing things for OS X 10.10, but I've added a todo entry for this and as soon as I can I'll add them.
Bought this a while back and was very impressed, definitely a worthwhile purchase if you ever spend some time without much internet access. The integration with Alfred + the fuzzy searching is just the icing on the cake.
Also as a little side note, I thought the way it handled the UI for tabs was interesting, though it does leave little room to grab the window and drag when you've got a few open.
I'm Dash's developer. Currently there is Zeal, that has access to all of Dash's docsets - http://zealdocs.org. Native apps for iOS and Windows are also under development and recently an app for Android has been released (http://lovelydocs.io/). Note: these apps are made by other developers, I'm just providing the docsets.
Zeal looks nice... but am I missing something or are there no urls available for just the docsets on the dash/zealdocs pages? I get that zealdocs can download dash docsets -- but quickly skimming the c++ source for editdocsets didn't reveal any obvious link to a http repo?
> Native apps for iOS and Windows are also under development
Oh, that's nice! I've had Dash for a couple of years now and love it, but it would be very nice to have it open on my iPad while I develop on my mac! Awesome!
I agree. I'm mainly using Linux so I've started working on a Linux version (also targetting Windows). If you like it you can use Zeal[0], which is free -- works on Linux/Windows. There's a signup page for my app[1] if you want to get notified of the launch/beta.
I've never heard of Kivy before, but judging purely from the gallery on that page, my first impression is that I see no screenshots of any native-looking desktop apps. Unless that's just an omission in the gallery, that would be a good reason to use Qt.
Here is my reason for Qt. Qt won the Linux tool kit wars (My opinion) and it is used by so many projects that it keeps the ecosystem more standardized. Plus when I am at work on my one Windows box I like seeing Qt on there also.
There's LGPL PySide (http://qt-project.org/wiki/PySide) which should be suitable for commercial projects under LGPL, but PySide is Qt4 only. There is also PyQt (http://www.riverbankcomputing.co.uk/software/pyqt/license) with Qt5 support, but its free license is GPL-only, so if you're not doing open source, it's not going to work, unless you buy their commercial license.
BTW, Zeal's original author here - thanks for mentioning Zeal and good luck with your project!
As some personal advice, I wouldn't try Kivy for such content-oriented desktop app. I've tried briefly using it once for doing a very simple application, but it seemed much harder to implement usual desktop-like widgets. Overall it looks like it's good for graphics-rich and custom-rendered applications.
Ubuntu is my main development platform. To be honest I've had some doubts about targeting Linux for my app because I don't know how many devs are using Linux as their OS for development, but I hope I'm not wasting my time.
Dash has been one of the most amazing tools to improve my day-to-day workflow. It's incredible.
I love to travel and specifically I love to travel to places that dont have wifi. Often times I take fly fishing trips to Montana, or shorter trips to the Smokey Mountains and during these times I need to be able to work an entire day without internet and Dash is the only reason I can do this effectively.
Dash + Alfred + Sublime are probably my most used tools in any given day (aside from Spotify which is rarely ever turned off)
Dash is great and a big shout-out to the developer (@kapeli) who is really responsive to support requests. I found that the backbone docset was actually using the Edge version not the latest stable release. He had it fixed in a few hours.
Agreed; a few weeks ago my license of Dash (purchased via iTunes) somehow went out of sync. Within 5 minutes of forwarding Kapeli my iTunes receipt of purchase I was back in business. Fantastic support.
The advantages of searching document's offline really can't be emphasized enough, 'hotkey - search term - answer', all provided in a floating window that doesn't interrupt the programmers workspace.
Just bought this recently. I feel that I got my money back with all the time won over Google searches multiple times already. The low latency and absence of unrelated results helps me stay in the flow. For me the trick was to assign a global shortcut to invoke the tool.
I like the idea, I bought it and have it open all the time, however I don't find myself using it that often. That's probably because I know most of the tools I work with out of memory (angularJS), and the documentation I do have to look up sometimes (UnderscoreJS) I actually prefer to see in the browser; the navigation on the browser version has a better subdivision in Underscore modules (functions, arrays, objects etc) which Dash's index is missing.
(subtle feature request: subcategories for the underscore docset, or headers/sections in the method listing)
The method listing does show headers/sections for Underscore. See http://i.imgur.com/agqawiL.png. As far as I can tell, this is the same as the side menu at http://underscorejs.org/. If anything is missing, let me know!
Great developer too. I've put in docs request (for ColdFusion) and he constantly sought feedback from me to ensure it was presented in the best way possible and if he was unsure about something himself.
I was very happy to see this in HN. This is one of my favourite everyday job tools in my Mac. It's also easy to integrate with vim, emacs or sublime to show the docs for the selected keyword.
Yes, I originally bought Dash for iOS development and was pleasantly surprised to see ClojureDocs appear one day. Really freaked me out ... in a good way!
Would be willing to pay even more if it integrated well with ReadTheDocs — there are tons of (not only) Python docs living there which I need regularly.
And yes, I know #662 exists [1] on the RTD side and the future is not so clear.
I've been using Dash for more than a year now. I love it. It is great for quickly looking up things, and best of all it works for multiple languages. I regularly write code in Clojure, Perl, Java and C, I also use Redis and PostgreSQL, and Dash helps with all of that.
My only wish is that someday I could get Intel's x86 manuals and ARM Cortex M0 and M4 instruction set documentation in Dash.
My experience is at the opposite end of the spectrum. I installed it roughly one year ago, played with it and admired its functionality, then never used it since. It might be just that I'm way too connected to my Chrome tabs.
You just need to get used to incorporating Dash into your workflow. If it helps convincing you, Dash also has tabs and uses the same shortcuts as Chrome.
Building a package is very easy, it's more a question of how parsable / structured your documentation is. I don't know how those manuals are distributed, but if you have an HTML version, it should be doable.
Definitely a requirement on the next non-Internet-accessible development opportunity!
I would like to see a utility that would collect (readability-ified) urls and package them nicely for Dash/Zeal. This would make it easy to build an ultra-custom collection of useful info - a searchable offline bookmarking tool. Best of all would be something that knew how to periodically refresh this archive.
Also, these tools should include a timeline tracking what was useful so that as I return to projects/problems I can scroll back and pick up where I left off.
Dash really is an indispensable developer's tool for OS X, but it took me a bit to integrate it into my work flow. Now I use it all the time, it's great.
This is pretty sweet. How do the docsets get prepped for download? The author scrapes the html doc pages at the tool's site? But for example in the case of Node.js, the menu nav on the left side of the official docs [0] aren't found in Dash's docset.
If you are comfortable managing your own problems, giving the author Apple's 30% cut is probably appreciated. However, the app store handles long-term hassles like re-installation, etc. A support incident is probably more expensive time-wise than the $6.
Consider however that if we all bought off the app store, then while apple may take 30% of our payments, the author may benefit far more from the increased exposure due to the inherent popularity contest that is the app store.
They probably prefer the customer buy on the website, since Apple get's their 30% cut on App Store sales. However, the App Store apparently gives great exposure to some apps. The Pixelmator creators are fans of the Mac App Store: http://allthingsd.com/20110125/pixelmator-co-founder-mac-app...
Is there a way to tab into the content for a query (right side column) instead of having to mouseover and scroll? Also it would be nice to be able to search the content area as well so I can more effectively jump to the material I think I need.
I've really found this app incredibly helpful; I use a really wide variety of libraries and APIs and not having to go to each site has saved me tons of time. Maybe it's not for everyone, but I've loved it. Worth trying out.
Dash has become a part of my standard workflow in the last few months. It's great and it's always getting better. @kapeli responds quickly to feedback/questions on Twitter. I use it with Alfred and the vim plugin.
Wow, this is probably the most incredibly useful app for the Mac I've come across in a long time! The UI is seamless and well-made. I'm gonna love using this. :-)
Kudos HN, for bringing this app into the limelight!
Looks good, particularly alfred and sublime integration. It doesn't download any docsets for me on the OSX10.10 preview but I'll try it again when Yosemite is a bit more prepared for the real world!
Dash is great combined with Alfred. I changed the keyword to a period (.) with no space so lookups look like ".extend" and bam I get the results for extend from four docsets.
This looks great, assuming it's very useful when you want to do concentrated coding with internet off to avoid distractions. I'm sold, buying this when I get out of work.
This is awesome. Although an excellent resource, there are many times I get very distracted using Google to get this kind of information. This could help me stay on task.
When Dash first came out, I liked it a lot, and found it better than Google for finding what I needed in almost any language I used.
But for some reason that even I don't really know, I stopped using it. I just checked the App Store on this computer, and it says Install, not Buy, which means I already paid for it long ago, and could have been using it this whole time. If only the developers could figure out why I stopped, they could probably make a lot more money.
That said, I do still see an App Store notification pop up every once in a while saying Dash needs to be updated, and it is pretty annoying how often that happens compared to any other app.
A great example of a purpose-built app which does one thing really well (i.e. searching docs from a single location). Easily beats having to google for docs.
I haven't set up a site yet for posting about progress but that's because I've been busy, not for lack of interest in doing so. There's a list of people interested in the Linux version and I will email the list once I set up the site. If you want to add yourself to the list you can do so at http://dash-port.launchrock.com/ .
The SO docsets are specific to a tag. Some of theme are gigantic. Therefore you have the option of downloading them in their entirety for offline use (I think the iOS one was 300-400MB's) or you can download just the index (which was like 20MB) which allows for fast search results but needs a connection to retrieve the full content.
Seriously, if you want to do this just get a mac. I made the switch several years ago after being a loyal Linux user for a long time, after I realised how much easier it made life.
I know they're expensive (though a low-end macbook air is pretty reasonably priced) but I've found it well worth the money given it's what I spend almost every waking hour in front of.
And with decent enough hardware Linux runs very nicely under a virtual machine when you need it.
I just personally find the mac platform in general to offer a better user experience, esp. with regards to not having to waste hours getting stuff to work.
This is just my personal experience; if Linux works for you then great.
I deeply respect Apple for its attention to user experience and design, but I don't agree with all of it's choices they make for me. I wish there were many different Apples, then I could choose the one I like, but unfortunately we have only one.
In my very limited encounters with OS X's desktop environment, I didn't find it practical, and the proposition is: take it or leave it, right? Changes to the default desktop environment are as outlawed as they are in Windows, or aren't they?
I maintained an xmonad environment for a couple of years on various versions of ubuntu and switched to osx last year. I share your view that Apple frequently makes choices that don't map to my expectations of an OS.
I use slate + pckeyboardhack + keyremap4mac to control my windows via keyboard. Instead of using multiple monitors I switched to a single larger one which is easier to control.
I guess my point is that you can kind of change things, but you might need to compromise in some areas. I don't know of a way to get multiple desktops, for example, but I can switch between apps by binding keys to names of them and get around that way.
It's also going to be hard to try these sorts of things out in the store, and given how expensive the devices are it's difficult to justify given you may end up with an expensive tool you don't want to use.
I'm not quite sure how outlawed they are in windows, but I've replaced the alt-tab/cmd-tab with Witch by manytricks, to make it more windows like. But something like XMonad, while it runs, only affects X apps, and is not quite so useful.
As a loyal user of Dash, I find the interface to fit in very seamlessly with OS X. An app built using either offline HTML or a cross-platform toolkit would be unlikely to achieve the same level of consistency with OS X conventions, at least based on my experiences with other such apps.
Lots of ways actually: it could be hosted on the web but use HTML5 offline storage and caching; it could use something like node-webkit or atom-shell; it could be a Chrome extension.
Are you saying that its shady that it has a free trial period (with nags) or that it used to be free and then became a product that the developer charged for? And how are either of these things shady?
Call me stupid, but I can't get simple question answered by reading the page: What is Dash? A website? Locally run server listening at 8080? Desktop application? From the screenshots I guess it is probably OSX app, but is it so hard to put it clearly somewhere in the top?
people shouldn't have to infer these types of things. Not everyone's brains makes the same connections in the same way, not because they're stupid, but because we all process information differently.
I looked at the page and it wasn't immediately obvious to me what it was.
Dash is... an app? a site? a collation of data?
If I'd hit the front page to something like:
> DASH
> An application for browsing API documentation sets
see you kind of prove my point about how people process data.
you thought perhaps my comment was a complaint, an angry statement, this couldn't be further from the truth. In actuality I was just reflecting on how good signposting (through pertinent language and UI) helps people interpret meaning on websites.
If you design your website so that your potential users/customers cant look at the front page and have an instant grasp of what your product is, then your website is failing to do its job.
Again I say, people shouldn't have to infer what something is by association. Saying "what is this? oh look, there's an appstore link, it must be an app" is not the right way to tell people what you've made. Unambiguous and engaging language is.
I assumed, looking at the site that it somehow scanned your code and attempted to document it for you. I may be cognitively challenged, but it wasn't clear to me what it was.
"Must be really good I don't use a Mac though" is regrettably ambiguous. It can either mean "Dash looks great; too bad I can't use it since I don't have a Mac" or it can mean "It's really great that I don't use a Mac", especially when read quickly.
Also, you were terse so that there isn't much content in your comment. As always, ask yourself if your comment is worth the time for people to read. Cheers.
Frankly, I don't know whether AppStore offers only OSX apps (or you can also buy iOS apps, or certain website access). It also doesn't mean that it's not some kind of portable application (working also on OSX). That's also suggested by the "Download" link below AppStore link, which may mean that there is also other forms of whatever Dash is, apart from the form which is available through AppStore.
Ok, I guess the target audience would in 99% _guess_ what Dash is, but that still doesn't mean that it shouldn't be written somewhere clearly.
Right bellow is a download button. My immediate thought was that OSX platforms obtained the app from the appstore while other platforms could use the download link. When I see an appstore link I don't immediatly assume OS X only.
"App Store" _hints_ that "Download" must be an application for Mac OS X, but I had to download and browse through the .zip archive to make sure. I think it could be stated more clearly, at least somewhere on the page (if the author doesn't want to ruin the illusion that there are only Apple products by stating it at the top)
Dash is also Debian's shell: https://en.wikipedia.org/wiki/Almquist_shell
If someone tells me "I'm using dash" I'll think about the shell, so I think they should call it "dash the API browser" to make it obvious that it is NOT what everyone thinks about.
Nice advertising. It's a decent app that will hold you hostage for data unless you feed it 20 bucks. If they get a better(cheaper) financial model I could see myself doing it.
I don't understand what do you mean that it will hold you hostage for data unless you feed it 20 bucks. All the data Dash displays is available publicly on the internet, no?
Possibly Zeal's search just isn't as good yet, but I had a heck of a time finding things about Python which are trivial to locate on the website through Google.
Speaking of: http://zealdocs.org/download.html
Dash-docs for Linux, PPA for Ubuntu/Mint available! It uses the exact same documentation sets and supports downloading in app.