You must be a great programmer because there is no way I could program without Stack Overflow/Google.
You must be a great programmer because there is no way I could program without Stack Overflow/Google.
That addictive, power-through flow state is hard to maintain without instant SO/Google access, and for many years that was the only way I coded. But I've begun to relish the other mode of programming: the deep thought and careful mental construction of the optimal program, piece by piece, module by module. Sure, I can't bang out as many lines at night, but when I go into the city in the morning I have a mental view of underlying structure – laid out in clear, bold strokes – that makes my SO-enabled coding so much more effective, and directed.*
(*I've noticed that letting SO answer a question prevents any pause which would make you step back from your work and ask "Am I even taking the right approach here?" Low latency, REPLs, and quick access answers make it very easy to go down a rabbit hole – the dark side of exploratory coding.)
And yes, as others have mentioned, I do cache and wget all the docs for whatever tools I'm currently using. With all that, it's hard to get truly stuck, even without the internet.
http://zealdocs.org/ (Linux/Windows)
* Zeal is an offline documentation browser inspired by Dash, available for Linux and Windows.
* Quickly search documentation using Alt+Space (or customised) hotkey to display Zeal from any place in your workspace.
* Search in multiple sets of documentation at once.
* Do not depend on your Internet connection.
* Integrate Zeal with IDEA, Sublime Text, or your favourite IDE with a variety of plugins.
https://kapeli.com/dash (OS X)
* Dash is an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 150+ APIs (for a full list, see below). You can even generate your own docsets or request docsets to be included.
Sure, you miss out on StackOverflow's expertise, but if you really just need to refer to API documentation, that should be doable.