4 ms·
Yeah I would say this is exactly right. You should be able to learn at least one language deeply enough that, given sufficient time, you could do just about an
by burlesona 6y ago
Yeah I would say this is exactly right.
You should be able to learn at least one language deeply enough that, given sufficient time, you could do just about anything without libraries or external dependencies, and therefore without needing additional documentation. Aspiring to and eventually developing that level of language mastery is, IMO, one of the core signs of maturity for a Software Engineer.
However, that would be wildly impractical in our day to day work, which is more about connecting pieces together in the right way, and hence is a lot about reading the manual for those pieces, understanding what it is they do and how they should be assembled together, and then actually assembling them together and testing that it all worked as expected. "Googling things" is an essential step in that process, but you could substitute Google for "read the manual" in an earlier era and it would be the same thing.
Perhaps what is sad is how many things these days ship without good manuals, because Google makes it easy enough for people to stitch together scanty release notes, comments in the source code, blog posts, Stack Overflow questions, etc. that you can actually get away with not having a manual.
- pcthrowaway 6y ago> You should be able to learn at least one language deeply enough that, given sufficient time, you could do just about anything without libraries or external dependencies, and therefore without needing additional documentation. Aspiring to and eventually developing that level of language mastery is, IMO, one of the core signs of maturity for a Software Engineer. I don't understand why so much emphasis is put on being able to do this without consulting the docs. Sure, it's nice to be able to pound out the most basic valid HTML page without googling it, but that's hardly a web app. If you need a backend component, I suspect the ecosystems where you can make anything practical using only built-in functions (no libs) are in the minority. You'd end up doing ridiculous stuff like using the filesystem as a database, plain javascript on the client side, node's builtin http in the backend. People with years of expertise may be able to do this, but it's just a side effect of having been steeped in the tech stacks for so long. I don't agree that being able to do this is something worth aspiring to. Rather, people should aspire to moving efficiently within their ecosystems and conserving mental space by knowing where to find things quickly.
- dusted 6y agoThanks for rephrasing it so much better! This is really what I meant!