4 ms·
I think this is an underappreciated point. I started learning to code a few years ago with online platforms and just flew through the exercises, but always hit
by ksdale 8y ago
I think this is an underappreciated point. I started learning to code a few years ago with online platforms and just flew through the exercises, but always hit a brick wall every time I tried to actually build something.
I stopped and started a handful of times, but I would always get so frustrated that I quit after a few weeks or months each time.
The most recent time, I realized that a lot of my issues were more logistical in nature. I didn't adequately understand how to use the command line, or where my packages were being installed, or how the files interacted with each other, or how to create and delete a development environment, or how to get an IDE configured.
All these things are things that felt like "not programming" to me, and indeed, when you Google "learning programming" you almost entirely get posts and articles about syntax and most of them gloss over setting up an environment.
Now that I've figured out how to get an environment set up and torn down and I can spend more time building things, I'm finding that it's nowhere near as complicated as I thought originally.
- TeMPOraL 8y agoThis is a good point, and still is the primary challenge I face when working. Programming in most jobs that I experienced (and most programming jobs in general, from what I gather) isn't that hard - gluing libs together, churning out CRUD, working around bugs of the libs you glued together, and occasionally writing something that actually uses some of the undergrad-level knowledge. But the logistics are still a PITA. Where do you deploy code? How do you deploy code? Where are the dependencies stored and when/how they update? Why that $&!@ Maven config broke, and how come none of the seniors in the team, including the boss himself, know how it works? These days, I can't feel comfortable around the project unless I know the answers to those questions. The codebase itself is much easier.
- dmos62 8y agoThe not-programming situation you described is a very typical experience. I'm delighted when I can work for a period of time just "programming", i.e. not trying to solve hard build/dev-environment problems that are blockers, but at the same time unrelated to the actual problem I'm solving. Unfortunately, in some tech, like web and mobile, in my experience, you'll spend a lot of time doing that, which is sad, considering how many people work in that industry and how many work-hours (work-years, -decades?) that makes up.
- solveit 8y agoI've had the exact same experience and it took actually getting a job to get out of the rut. I will also note that it's entirely possible to get a degree in CS without learning this stuff, in fact, that's the default for many programs. Only syntax and algorithms are mandatory, everything else must be learned through electives and osmosis. So the people who are: 1. Minmaxing life and taking the shortest path to a degree 2. More interested in CS theory 3. Just plain unlucky in that everyone teaching their elective courses went out of their way to provide a sanitized environment can end up mildly screwed.