site banner

Small-Scale Question Sunday for July 23, 2023

Do you have a dumb question that you're kind of embarrassed to ask in the main thread? Is there something you're just not sure about?

This is your opportunity to ask questions. No question too simple or too silly.

Culture war topics are accepted, and proposals for a better intro post are appreciated.

3
Jump in the discussion.

No email address required.

How the heck do you people program all day without pulling your hair out? I've spent 5+ hours just trying to clone a jupyter lab notebook from GitHub and open it, and good lord even with GPT's help it's like pulling teeth.

Some intellectual work is novel and intricate - at an extreme, research mathematics, but including coding. Other work is more rote, just application of potentially hundreds of relatively simple ideas - think filling out paperwork, law, medical practice.* The 'plumbing' part of programming - getting your environment set up, figuring out why you misconfigured dependency 37 and your build is failing with a new message, docker kubernetes terraform cloud yaml CI - is often the latter. You just need to know a few thousand distinct facts. Having a good command of the fundamentals is critical - what is a folder and a file, what is a program, what are users and file permissions, what's a packet, how are files laid out on my operating system, what's a git, what's a http... And then the facts specific to whatever frameworks/languages/systems you're using - what's my system package manager, my language package manager, do they conflict, what are rust crate features, what's a python wheel, what directory is pip installing to... The latter especially becomes a mess. In the past decade it's gotten a lot better, but that's come with new tools and ideas to learn.

So as for 'how you do it', you just need to pick up the thousand different facts. Read docs, follow tutorials, and figure out why each step works. And once you've done that for one or two things, it'll be easier to pick up new stuff, because you'll have a sense of why things work the way they do.

I'm curious what your issue specifically was, and if you got it to work?

*this is a continuum, there's no difference in kind, just lower and higher levels of complexity, which is philosophers have had trouble with in the past. Coding you have trouble with would be rote to someone incredibly smart, and even filling out a form requires a lot of generalization that we just don't notice, like we don't notice breathing or walking.

I'm curious what your issue specifically was, and if you got it to work?

Cloned the repo, but can't get jupyter lab to have the right PATH to that directory. Still working on it unfortunately.