TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: How to hole up in a cabin in the woods to write my great software idea?

6 pointsby mynjinabout 5 years ago
It&#x27;s discouraging that it seems that in order to write software I&#x27;m expected to have constant and fast internet access to Stack Overflow or whatever search site to find answers or download crazy large toolchains.<p>How did people program working solutions before instant online answers and is it even possible to hole up in a completely distraction free, out of the way locale for that next great side project?<p>I&#x27;m jealous of the idea of the novelist holing up in a spartan cabin with just an idea and a typewriter. Maybe a dictionary, maybe some prepared research notes; but completely cut off and only running off meager brought materials.<p>So how would a programmer prepare enough to code up their idea without internet access? What documentation, books, or materials would one bring? Are these materials general, like journal articles about algorithms and CS? Or very specific to the OS, framework, standard library, etc? Are there first principles at each abstraction layer from bare metal, OS, user space, and application level that allows cobbling software solutions without external resources?

11 comments

pryelluwabout 5 years ago
I used to rely on manpages, documentation (bundled in), and lots of trial an error. Honestly, the big difference today is having access to how others have solved a problem. This makes things quicker. Do I still learn? I learn more now because of the access.<p>Now, are you expected? By who? This is your own project. Just do whatever works for you.
Durgasoftabout 5 years ago
If you read The Art of Computer Programming or Djikstra&#x27;s writings they will tell you how this was done. They took a piece of paper, and they wrote down in a high level what their program should do. Then they took another piece of paper and they started to split up the first piece of paper into smaller subroutines. Then they took some more paper and split the small subroutines up into smaller and smaller subroutines.<p>Then they sat in front of a computer and they wrote the program from the simplest subroutine up the tree and at some point totally trashed everything realizing they didn&#x27;t fully understand the problem because architecting a program is difficult until you actually implement it. So back to the paper they did the exact same design algorithm using the new experience they had from actually trying to implement whatever they were doing but this time with the added experience of knowing more about the problem they were trying to solve. Then when the chance came to implement their program on a likely shared computer with limited time, they wrote this program the exact same way from the bottom up testing all the way until it was finished. Everytime I&#x27;ve asked a question on stackoverflow&#x2F;exchange I realized half way through preparing and formatting my question that my program is too complicated, I should break up the logic and then I don&#x27;t need to ask a question. I swear this is why they make posting there so tedious where you need carefully format and search for existing questions before posting a new one because odds are, you&#x27;ll figure out what you trying to ask before even asking it.
评论 #23076692 未加载
cdiamandabout 5 years ago
One potential avenue - download stack overflow data for your particular tech stack -<p><a href="https:&#x2F;&#x2F;meta.stackexchange.com&#x2F;questions&#x2F;221397&#x2F;is-there-a-way-to-download-an-offline-copy-of-the-stack-overflow-questions" rel="nofollow">https:&#x2F;&#x2F;meta.stackexchange.com&#x2F;questions&#x2F;221397&#x2F;is-there-a-w...</a>
mbrockabout 5 years ago
Download a pleasant language distribution with a capable base library and documentation, like Racket.<p>You might not need to do everything in the fastest or most scalable way. Like how a writer in a cabin will produce something that later needs editing and typesetting for mass distribution. So, like, if you forgot how to use an SQL database or didn’t bring Postgres, just serialize a big hash table and do your queries in your programming language.<p>So you can build the program out of parts that you might need to replace once you’re back online.<p>You can also do a lot of work with a specification language like TLA+ where you don’t need to actually implement every algorithm. If you need a hash function you can just postulate a function from your domain type to the naturals.
amagasakiabout 5 years ago
On macOS there is Dash - <a href="https:&#x2F;&#x2F;kapeli.com&#x2F;dash" rel="nofollow">https:&#x2F;&#x2F;kapeli.com&#x2F;dash</a> which can download and make easily searchable many documentations as well as StackOverflow answers. I have been using it sparingly, but for coding without an internet connection it seems ideal
评论 #23076233 未加载
ohiovrabout 5 years ago
The northern part of the US and lower part of Canada is going to have starlink in theory this year. Hugesnet is pretty terrible but might be workable. Or maybe try putting a cellular phone as a hotspot on hosted to the top of a flagpole might reach service..
pdevrabout 5 years ago
* Download Stack Overflow data dump.<p>* Download Wikipedia data dump.<p>* Download documentation for the technologies you will be using.<p>* Make sure you have power.<p>* Take backups regularly.<p>* If you get stuck, think and solve the problem. Consider it as an opportunity to employ your brain in a way you (probably) have not done before.
mybestaccountabout 5 years ago
I would strongly recommend not doing this. The worst thing you can do when creating a piece of software is isolate yourself for x number of months and build it out entirely in isolation. I&#x27;ve effectively done this in the past, only to find out the product I built was not something people wanted to use.<p>If it&#x27;s just for personal use, and&#x2F;or you don&#x27;t care about people using it, go for it. But if you care about adoption&#x2F;traction, I would suggest surrounding yourself with people that may use your software, and constantly solicit their candid feedback (e.g. show them the software, but not tell them it&#x27;s yours, etc...). Building software should be a collaborative process between you and your customer.
cdnsteveabout 5 years ago
Have you tried looking into devdocs.io? I believe it supports offline mode.
评论 #23076413 未加载
kleer001about 5 years ago
&gt; How did people program working solutions before instant online answers<p>Slowly
评论 #23076291 未加载
cpachabout 5 years ago
John Carmack did something like that a while ago<p><a href="https:&#x2F;&#x2F;lobste.rs&#x2F;s&#x2F;o1xjaq&#x2F;john_carmack_on_openbsd_c_machine" rel="nofollow">https:&#x2F;&#x2F;lobste.rs&#x2F;s&#x2F;o1xjaq&#x2F;john_carmack_on_openbsd_c_machine</a>
评论 #23076198 未加载