[HN Gopher] Can you make a basic web app without googling? I can't
       ___________________________________________________________________
        
       Can you make a basic web app without googling? I can't
        
       Author : azhenley
       Score  : 102 points
       Date   : 2021-01-29 19:40 UTC (3 hours ago)
        
 (HTM) web link (web.eecs.utk.edu)
 (TXT) w3m dump (web.eecs.utk.edu)
        
       | henning wrote:
       | It matters if you're applying for a job and the people
       | interviewing or the hiring manager think you should.
       | 
       | People like Mike Acton and Jonathan Blow give incredibly
       | condescending speeches about "practice" like you should be able
       | to just make a Win32 API app that calls DirectX (or some other
       | comically absurdly bad API) from memory. Blow in particular loves
       | harping on this and loves saying that web developers are
       | incompetent and wasting their time creating awful products.
       | 
       | How much time do you spend making new apps on long-lived
       | projects? At many companies, the answer is zero. These same
       | companies may think you suck shit at programming if you can't
       | remember command line options you never have to use in day-to-day
       | work.
        
       | jjk166 wrote:
       | Can you build a house with one arm tied behind your back? I'm
       | sure someone theoretically could, but not why anyone would. Is
       | relying on having two hands a detriment to being a handyman? Does
       | such a person lack critical expertise?
       | 
       | Professionals use the tools at their disposal. Instant access to
       | the sum of all human knowledge is an incredibly powerful tool,
       | and you don't get any bonus points for leaving it in your
       | toolbox.
        
       | dusted wrote:
       | I can, but it will be basic! I might have to use a JSON file for
       | the backend because I probably can't remember any database libs
       | well enough to use without documentation.
       | 
       | However, lots of programming is much closer to plumming than to..
       | programming.. any time you're using a lib or api, you're just
       | looking up what kind of fittings that comes with and what length
       | of pipe to attach to it.. So don't worry about not being able to
       | do anything really useful without looking in the docs :)
       | 
       | Now, if you have to look up basic language syntax for the
       | language you use every day, I'd say its bad and you probably need
       | to practice a bit ^_^
        
         | bch wrote:
         | > use without documentation
         | 
         | Of course people's projects can be unique, and my work may not
         | be representative of the readers work, but I guess this raises
         | the question: what does "using Google" mean? I frequently use
         | "lots of things" on my computer: man pages, other installed
         | documentation, will browse source code of libraries I'm using,
         | or indeed my own previous work. I can do this if, say, I have
         | no Internet connection, but that doesn't mean I've got a fully-
         | formed bug-free implementation of my goal floating around in my
         | photographic memory.
        
           | dusted wrote:
           | It's a good point, I take it to mean search for how to use or
           | do something, even as google is becoming worse at finding
           | things, it's still often waaay better than the search
           | functionality available on the websites of many libraries and
           | utilities.
           | 
           | So yeah, I guess I take it to also mean searching through
           | local documentation, but I know that's maybe not what was
           | meant.
        
         | burlesona wrote:
         | 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 wrote:
           | > 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.
        
       | nwsm wrote:
       | I've been developing web apps and related services professionally
       | for 3 years and use google for work almost every day.
        
       | Nextgrid wrote:
       | Something that has dramatically reduced my reliance on outside
       | resources is an editor that can lookup symbol definitions.
       | 
       | I'm using Django and I used to use Sublime Text without any
       | plugins which meant (at the time) it couldn't automatically show
       | me the definition of a function or object from a library, forcing
       | me to search around for its documentation.
       | 
       | Switching to PyCharm/IntelliJ meant I could now just Command-
       | Click (Ctrl-Click for Linux & Windows I believe) and see the
       | actual definition and logic of the underlying function without
       | having to rely on the online documentation. This of course works
       | recursively, so I can repeat this process again and again up
       | until I eventually reach the core standard library which is in C
       | and isn't introspective (at this point I can rely on my knowledge
       | or some trial and error to figure out its behavior).
        
         | devoutsalsa wrote:
         | I'd argue that's just having Google-lite built into your IDE.
         | 
         | Personally I think that focusing on how you solve the problem
         | loses sight of the fact that the only important thing is that
         | you can accomplish the mission. If you can't build a basic web
         | app on your own, but you can while salsa dancing w/ a mountain
         | gorilla, I'll pay for your subscription to Spotify so you can
         | stream Havana Kings while tearing up the dance floor w/ a
         | Silverback (must provide own gorilla).
        
           | DangitBobby wrote:
           | Well, it's not really like having "Google-lite" built in
           | because all of that information is available on your
           | filesystem. It's more like knowing exactly where your site-
           | packages are and being very skilled with grep or some other
           | search tool.
        
       | TrianguloY wrote:
       | For me, and I think the majority, memory is where you keep what
       | your brain thinks that it will use again.
       | 
       | If your job is to make and fix/tweak the style of a web page, and
       | you do it practically everyday, you probably can make a pretty
       | decent css file without even looking away from the editor. But if
       | you then need to make a basic html page, you will probably
       | search.
       | 
       | If you use an ide with autocompletion, you probably won't
       | remember the correct camelCase of even common functions (is it
       | instaceof or instaceOf?) but if you work on an embedded system
       | with a plain console editor you probably remember them all (or at
       | least the most used ones).
       | 
       | I remember when I was actively using Lightning Launcher (an
       | android launcher with JavaScript capabilities) that I could make
       | full scripts almost without pressing delete, when its editor was
       | simply a big textarea (no autocompletion, no colors, not even
       | automatic indentation). I did need to check the docs from time to
       | time, but their limited (and logical) set of basic functions made
       | it easy for me to remember. Nowadays I need to check everything
       | again, because I simply forgot due to not using it much.
       | 
       | Answering the question: yes, yes I can, a very basic but working
       | one, simply because I like making small tool pages for myself,
       | coding directly from my phone (in a basic text editor). But when
       | I need to do something not so basic, like checking if the user
       | has scrolled to the bottom of the page, I search it.
        
         | danaliv wrote:
         | _> For me, and I think the majority, memory is where you keep
         | what your brain thinks that it will use again._
         | 
         | There's some pedagogical theory around this. (I learned this
         | through the FAA's instructor training.) Sort of common sense
         | stuff, but it's helpful for structuring learning. Basically
         | you'll remember things that you use a lot, have used recently,
         | experienced intensely (e.g. actually used rather than just read
         | about), and had fun learning. In addition, the first way you
         | learn to do something tends to stick.
         | 
         | Cite: https://en.wikipedia.org/wiki/Principles_of_learning
        
       | ChrisMarshallNY wrote:
       | I love googling and stackoverflowing. I know a great deal, but
       | I'm like Kelly Bundy; I can only hold so much in my pretty little
       | head.
       | 
       | I generally forget stuff a week after last using it, and am
       | googling even the most basic things.
       | 
       | In a few days, I'm gonna have to put my Swift code aside for a
       | week or two, while I modify my backend (PHP). I guarantee that
       | I'll be like duuu-uhhh for the first couple of days, with serious
       | Google-Jistu katas.
       | 
       | Then, the same thing will happen again, when I switch back to the
       | Swift frontend.
       | 
       | I tend to avoid using dependencies, so I write a lot of code.
        
       | INTPenis wrote:
       | I could if I had the framework docs. I have also made a few
       | boilerplate projects to make it easier and faster to get started
       | with simple stuff like Flask modular app and tornado consumer
       | daemon.
       | 
       | If I had a book on each framework I use with their docs reference
       | material I could do without Google.
       | 
       | It's a fun question but can it really happen realistically? I
       | mean if there is still a demand for web apps then there is most
       | likely some sort of way to index the existing web and search it.
       | Even if that isn't google anymore.
        
       | olenin wrote:
       | I couldn't, some undoubtedly could, but that's not the point.
       | What a wonderfully posed question with much broader implications,
       | especially relevant to Australians ATM vis a vis the government's
       | attempted tussle with the big people. I hope this discussion
       | spreads. This is a thank you message. Cheers.
        
       | djhaskin987 wrote:
       | People used to buy big books and stick to languages with more
       | batteries included. I still remember the big huge fat Java book I
       | bought when I was in high school.
        
       | tomcooks wrote:
       | As a sidenote on the availability of Google to look things up,
       | how often do you find yourself stuck on a problem and locked into
       | a result bubble where Google keeps on showing you the wrong
       | results, usually spammy articles?
        
       | ksec wrote:
       | I would not be surprised if even Professional Web Developers cant
       | do it. Especially if you include deployment.
       | 
       | This isn't the old days of FTP, Perl or PHP anymore. There are
       | too much information I cant memorise every single bit of it. And
       | I dont think you should either. Especially in the age of Google.
       | My memory capacity has its limit, and there are things I just
       | decide it is not important enough to memorise when I could easily
       | search for it. ( Or if I am relying on Heroku )
       | 
       | I have long thought of Directing a video, where we have famous
       | Developers, or developers from a pieces of software that normal
       | people would have heard of, filming them doing work, looking up
       | silly things in Google. Starring at the screen for hours and
       | absolutely dont have a clue what the code is doing. Not typing
       | any code for hours. Sort of like Reality TV shows for
       | Programmers.
       | 
       | Hollywood Movies and Anime has made the perception that proper
       | Software programmers should be super fast touch typist and typing
       | code with insane speed. It makes people uneasy when they learn
       | programming. It turns out they have to constantly look up some
       | manual, googling, copy and pasting and for most of the time not
       | typing anything. They thought they are just not any good at it
       | and many simply gave up.
       | 
       | The reality is, hopefully the video would show, even top level
       | programmers dont know everything. And it is perfectly normal to
       | look things up.
        
         | joshspankit wrote:
         | You could probably sell and create this as a "coding reality
         | show" with live camera and screen feed.
         | 
         | Maybe a "Big brother season 1" style. I'd watch that.
        
         | treis wrote:
         | >I would not be surprised if even Professional Web Developers
         | cant do it. Especially if you include deployment.
         | 
         | I'm pretty sure I could do it depending on our definition of
         | basic web app. With something Rails it's not even really that
         | hard. Rails g scaffold [Model] gets you 95% of the way there.
        
         | wffurr wrote:
         | In the old days, we had books and offline documentation (CHM,
         | local HTML, man pages, etc.) to supplement our memory.
         | 
         | Things are more complex, but a lot of documentation is also now
         | online instead of printed or distributed on floppies.
        
         | bryanrasmussen wrote:
         | I'm reasonably sure I could write a basic site, make it look as
         | good as I can make things look given my sense of design,
         | without searching.
         | 
         | If I was allowed to look at what I already have on my machine I
         | could even set up a build process for my site. If not allowed
         | then no build process.
         | 
         | But it would probably be pretty slow to write this, depending
         | on how basic the site was, and it would not be as good as if I
         | could look things up when I needed to.
         | 
         | But I wouldn't be able to deploy without searching.
        
         | colecut wrote:
         | I remain living happily in the old days of PHP, somehow making
         | functioning applications and being paid well. Life is easy and
         | good.
        
           | whimsicalism wrote:
           | Do you live in Europe?
        
             | jellygraph wrote:
             | Or perhaps the Soviet Union.
        
             | colecut wrote:
             | San Diego, California
        
           | hrjfkgkgk wrote:
           | it's hilarious. people using ruby and python and wondering
           | why they cant build web apps without copy pasting stuff off
           | of stack overflow.
        
             | viraptor wrote:
             | The question is not about stackoverflow, but googling in
             | general. As in, without project documentation accessible.
        
               | hrjfkgkgk wrote:
               | in the php world you usually have decent man pages for
               | webservers handling php requests and generally speaking
               | php frameworks and packages have good inline
               | documentation. also there is a package for anything you
               | may need and and ide will usually give hints based on
               | that documentation.
               | 
               | most frameworks come either with examples or commands to
               | get your started. symfony even had their docs available
               | for local reading as well.
               | 
               | with python i always have to delve into reading obscure
               | documentation that either makes no sense or is not up to
               | date. and there are too few packages for what you
               | normally need in a scalable app. so yeah you can write
               | php code without googling, as long as you are not a
               | complete noob in web development.
               | 
               | if its 2021 and you still write code using vim and niche
               | languages then you are doing it wrong, and indeed google
               | is your only hope.
        
               | viraptor wrote:
               | There's nothing unique here. Virtually all libraries and
               | languages have local version of docs. I think you're too
               | biased to continue in good faith argument.
        
         | cvhashim wrote:
         | Some developers already livestream on YouTube as they program
         | up web apps or other software. George Hotz for example used to
         | livestream on YouTube/twitch. You can find many others.
        
       | offtop5 wrote:
       | Flutter web + auto complete with VS code. Even then it feels like
       | an exercise in futility
        
       | icedchai wrote:
       | There's so much involved, it's almost impossible to do many
       | things from memory, especially across all different languages,
       | frameworks, tools, platforms, etc. In the old days (for me, late
       | 80's to early 90's, programming without the Internet), I remember
       | having books next to the computer. Things were much simpler then.
        
       | makach wrote:
       | Don't worry about it. Googling has come to stay. There is a lot
       | of skills related to identifying what piece of code is relevant
       | for your purpose.
       | 
       | No skills are basically required. No one is expected to do a
       | basic web app from scratch - heck - most IDEs has boilerplate for
       | creating a web app.
        
       | sixdimensional wrote:
       | This is slightly perplexing. I love the intention of this post.
       | Some thoughts..
       | 
       | I feel one could argue that there is a chicken-and-egg problem
       | here. Nobody could code anything without a reference to start
       | from. But, then, who developed the first language without a
       | reference?
       | 
       | Ah, there - the start of something - those who invented the first
       | programming languages - the very concept of "stored programs" as
       | punches on a card, for example - assembly language, etc. - they
       | did not have a reference. They invented the reference. But, it
       | was also, by today's standards - much "simpler" and a much
       | "smaller surface area" - while probably quite technologically
       | complex and difficult for those at the time.
       | 
       | But after that, everyone else, who didn't invent the technology,
       | but was rather using it.. was therefore - by definition - using a
       | reference. Standing on the shoulders of giants... how else to
       | learn?
       | 
       | For instance, I learned BASIC coding first by studying other
       | people's examples - in magazines, by looking at code that came
       | with my first compiler as samples, reading books. Same way I
       | learned Pascal and C++ - the tooling/IDEs back then couldn't
       | "help you learn" with autocomplete.. you learned when you wrote
       | something, and it either compiled or it didn't. You learned by
       | using "help" or books or talking to people or looking at
       | examples.
       | 
       | I'd argue that even those who invent most things today are
       | inventing it at a higher level of abstraction, and therefore
       | still looking at references for levels below the level of
       | abstraction they work at.
       | 
       | So.. "can you make a basic web app without googling"? Well,
       | actually, yes, sure I can. But that is because I learned HTML,
       | CSS, JS (and supporting languages like Perl, PHP, etc.) when the
       | surface area was still small - from the Internet itself, by
       | looking at examples and reading things like the entire HTML
       | specification when it was smaller. Then I memorized it by doing
       | it.. a lot. Then things changed, but a lot of the basics are
       | still possible to do today and still work. That said - "will that
       | basic web app work in every browser platform or any every
       | server/OS platform that exists"? Well, if you stick to the true
       | basics, possibly yes - but, this raises the question of
       | technology and implementation variability and complexity.
       | 
       | I think the bigger question being posed here, isn't the
       | headline... it would be better to ask, "does it matter if you
       | can't make a basic web app without Googling"? There, I think, is
       | the point of the post - and - yes, it matters in a lot of ways.
       | But if you are coding for the web - presumably you are already
       | using the web.. so.. perhaps that specifically is not as
       | important as the next bigger question...
       | 
       | "Has writing code for modern systems become so diverse and
       | complex, and the surface area so large, that it is difficult to
       | build systems? Has the variability and diversity of our platforms
       | become so large that it is difficult to build once/deploy many
       | with certainty?". There again, I feel, is a much deeper and more
       | interesting question. This too can be answered simply - avoid
       | complexity and choose simpler languages/platforms that accomplish
       | your goals, learn their surface area, and do your work. But, this
       | might be more difficult/non-obvious to those just getting started
       | - and there some good work could be done to make it more
       | accessible.
       | 
       | And here we look to things, for example, like WASM - trying to
       | build simple primitives that can work on nearly any platform,
       | upon which many complex languages can live - engineering
       | solutions to attempt at reducing complexity based on variability
       | and diversity of platforms and implementations.
       | 
       | This question... surely relevant during this time of resurgence
       | of "low/no-code" platforms and in relation to what we might have
       | once thought of as "4GL" (or beyond) programming languages and
       | related implementations/platforms.
        
       | hacktember wrote:
       | If I really need that capability, I personally would download a
       | LAMP/WAMP/MAMP setup with all the docs downloaded but needing to
       | Google things isn't inherently bad.
        
       | paxys wrote:
       | I used to program with 6 thick reference books around me. Has
       | memorizing SDKs, APIs, libraries ever been a thing? Or is this
       | just the daily "everything is bad nowadays" post?
        
         | jermaustin1 wrote:
         | Getting a simple application up and running shouldn't be that
         | difficult without scouring reference guides if it is a thing
         | you do.
         | 
         | The number of times I google how to do the thing I'm supposed
         | to do is relatively low, but the number of times I have to
         | google how to fix something that has come up AFTER I did the
         | thing I was doing is probably 90+% of my googling.
        
         | mywittyname wrote:
         | Back in the days of PHP, I could develop web apps without
         | references for the most part, using a simple text editor. It's
         | a pretty similar story with Python too, unless I'm using
         | Pandas, I generally don't use reference material much.
         | 
         | Today with node/angular, I'm generally leaning on Google (well
         | DDG) pretty heavily throughout the day. Web platforms seem
         | substantially more complicated today than they used to be. Then
         | again, maybe the mid-aughts was the golden age of programming.
        
           | rzzzt wrote:
           | I read Python and PHP's offline .CHM files, and was quite
           | happy with the level of information contained there.
        
         | t8e56vd4ih wrote:
         | you name it ... looking something up in a book takes much more
         | effort than just googling. that's why there was a stronger
         | incentive to memorize.
        
         | strictnein wrote:
         | Yeah, I was just thinking of how every developers cube used to
         | have stacks of books and binders of CDs from MSDN.
        
         | azhenley wrote:
         | Every interview I've done required me to have everything
         | memorized, so it seems this is _very_ much a thing.
        
           | tutfbhuf wrote:
           | But then it's rather a problem with the interview itself.
        
           | bennyp101 wrote:
           | I had an online interview last year, and it was basically me
           | coding up as they supplied the criteria (in PHP). For the
           | life of me, I couldn't remember how to use array_column, but
           | I knew that was what I needed to use.
           | 
           | They basically said "errr, you could just look it up?" -
           | like, it was obvious that the interview was more about what
           | you knew, and how to do things, rather than can you remember
           | every little thing from ever about your job that you don't
           | use day in day out.
        
         | kube-system wrote:
         | Think about the days before the internet. Was there any
         | technical profession where you'd find offices without lots of
         | books?
        
       | swiley wrote:
       | Does looking at old code I've written and have locally count?
       | 
       | What about offline documentation like help() in python?
       | 
       | Without either of those it would be iffy. I could probably do
       | something that updates data consistantly but using a serious
       | database or doing authentication correctly might be a stretch.
        
       | HDMI_Cable wrote:
       | I'm guessing you could use a .pdf reference manual for a specific
       | language instead of googling, but it does feel like frameworks
       | and workflows have gotten more complex overtime.
        
       | danaliv wrote:
       | I don't think I've ever been able to write software without an
       | API reference, and I've been at it since the (late) 1980s. I
       | guess it depends on what you're Googling. Sometimes I can work
       | out a way to do something, but what I really want is the
       | _idiomatic_ way to do it. No way to get there but to look it up.
       | Or I need to know some specific fiddly bit about how a function
       | behaves. That 's a reference lookup. If I'm Googling "how to
       | reverse a linked list" ;-(, well, that's maybe not so great.
        
       | whoisjuan wrote:
       | I can't and I don't care. I consider my programming skills to be
       | 100% based on my ability to know what to search for and not
       | necessarily on my ability to remember trivial things like the
       | exact sequence of things needed to initialize a framework or
       | whatever.
       | 
       | What I care about is having good foundations that help me to
       | undestand what exactly I need to look for and that's by itself
       | and invaluable skill.
        
       | sosodev wrote:
       | Does it actually matter if I can? Is using reference material a
       | bad thing?
       | 
       | Edit: I know the article touches on that idea briefly but my
       | argument would be "of course it doesn't matter".
       | 
       | Sure, I _could_ develop slightly faster with a more encyclopedic
       | memory but I really doubt it would make an observable difference
       | in the long-term.
       | 
       | Most of my time isn't spent referencing libraries or syntax but
       | instead I spend most of my time thinking out the logic and higher
       | level relationships of my code. I suspect that is largely the
       | case of any development even remotely non-trivial.
        
         | mch82 wrote:
         | You are 100% right. Of course it doesn't matter.
         | 
         | > Does an over-reliance on documentation indicate a lack of
         | critical expertise that will ultimately result in considerably
         | lower job performance?
         | 
         | Technical research is a skill. I love working with teammates
         | who understand how to find, evaluate, and apply proven
         | solutions. Most projects can spare the time to do a reuse trade
         | study before writing something from scratch.
         | 
         | Use (and authoring) of documentation is also a skill.
         | Professionals use documentation to communicate with teammates
         | so projects can scale efficiently.
        
         | [deleted]
        
         | warkdarrior wrote:
         | It matters because SWE interviews rely on coding without
         | googling. Maybe we need to change how interviews are done to
         | test people on their Googling skills. For a given coding task,
         | what do they search for? Do they Google for the right terms? Do
         | they converge quickly on the right website to copy from?
        
           | spideymans wrote:
           | A measure of a good developer is how they choose and utilize
           | tools. I really don't see the benefit of prohibiting
           | developers from using tools that they'd otherwise have
           | complete assess to on the job
        
           | deeeeplearning wrote:
           | Or just give them free reign to use whatever tools they would
           | use in an actual work environment and see what the end
           | results are. Sure makes more sense than seeing how many
           | leetcode problems you memorized.
        
           | slg wrote:
           | >It matters because SWE interviews rely on coding without
           | googling.
           | 
           | Some (probably most) SWE interviews rely on coding without
           | Googling. However I have been through plenty of interviews in
           | which that wasn't the case. Coincidentally I also find this
           | type of honesty in the interview process is a good indicator
           | of how much I would enjoy working at the company.
        
           | kortilla wrote:
           | SWE interviews (at FAANGs at least) don't care about library
           | specifics though. As long as you know the syntax and how to
           | write algos/data structures, you can make it through.
           | 
           | There is a strong argument that being good at that isn't
           | required for most SWEs (including at FAANG), but it is
           | something that having library/framework references doesn't
           | really help with.
        
             | 908B64B197 wrote:
             | > There is a strong argument that being good at that isn't
             | required for most SWEs (including at FAANG)
             | 
             | Algos/data structures are used as a proxy for problem
             | solving and how fast someone can learn. Plus every decent
             | CS program will have a few courses on it.
             | 
             | Also, internal codebases are, well, internal. You won't get
             | a nicely formatted Stack Overflow response on how X works
             | if X is deep in the Google Source tree.
        
         | phkahler wrote:
         | Let's say Elon starts that colony on Mars and you think "Ima
         | move there and write code for a living." You might have the
         | internet, but its 15 minutes each direction. Nothing
         | interactive works, and while they brought copies of Wikipedia,
         | stack overflow didnt package so easily.
         | 
         | Or more simply, can you write a web app without internet
         | access?
        
           | ALittleLight wrote:
           | Do we not have a cached version of the web on the Mars
           | colony?
        
           | rzzzt wrote:
           | You can cache documentation locally: https://devdocs.io/
        
           | tutfbhuf wrote:
           | > stack overflow didnt package so easily
           | 
           | You just need some copy of something like: the way back
           | machine, google cache or archive.is and then do asynchronous
           | mirroring and you are not so far behind.
           | 
           | Zoom meetings might be a problem though.
        
             | lostlogin wrote:
             | > Zoom meetings might be a problem though.
             | 
             | If it prompted the meeting organiser to put their one point
             | into an email, thereby saving 6 people a 45 minute meeting,
             | would it be a problem or a feature?
        
               | tutfbhuf wrote:
               | Would be an interesting case study to find out if remote
               | developers from Mars are actually more productive due to
               | lack of synchronous communication.
        
             | jeegsy wrote:
             | I think you might be missing the point of the hypothetical
        
           | megous wrote:
           | That would be a colony on The Sun.
        
           | twox2 wrote:
           | What use is a web app without internet access?
           | 
           | Also, as if no internet access = no refernce.
        
           | yosamino wrote:
           | > Or more simply, can you write a web app without internet
           | access?
           | 
           | I understand what you are trying to say - but what would be
           | the point of that ?
           | 
           | If we were to prepare an essential list of documents that are
           | required to write web applications without access to the net,
           | we would probably be able to cobble it together and make it
           | available offline.
           | 
           | I mean MDN, CanIuse and CssTricks.com would already get you
           | like 90% there.
        
             | martijnvds wrote:
             | Add the RFC library for fallback/server side of things.
        
           | cosmodisk wrote:
           | Elon would take care of it : Tesla Code X(c) - whether you
           | are underwater,on the moon or Mars, we got you covered with
           | Reddit, HN, Stack Overflow dumps in an easy searchable
           | database. Add-ons for PornHub are available separately.
        
           | akiselev wrote:
           | Vast majority of documentation and even the websites
           | promoting most web related libraries are autogenerated from
           | git. Run a bash script with a bunch of `git clone` on an
           | Earth based server and and ship the disk image, latency be
           | damned.
           | 
           | Dash [1] does package up StackOverflow and a bunch of library
           | docs too.
           | 
           | [1] https://kapeli.com/dash
        
           | jjk166 wrote:
           | And what if you wanted to go camping on the ocean floor? Can
           | you start a camp fire underwater?
           | 
           | That you can imagine some convoluted scenario where a skill
           | could be employed does not mean it is an efficient use of
           | your time to develop that skill, particularly when that
           | scenario is easily avoidable.
        
             | scubbo wrote:
             | Well said.
        
         | yarcob wrote:
         | It's not a problem when you look up the spelling or the order
         | of arguments in the reference.
         | 
         | It's a problem when you search for the solution to every
         | problem with a search engine.
         | 
         | So many answers on the internet are written by absolute
         | beginners, who happened to have the same problem, and then
         | blogged about the solution after spending 5 minutes of
         | googling. Sometimes these answers are alright, but often they
         | are shallow and miss context.
         | 
         | The problem is excacerbated by the fact that 1000s of sites try
         | to get into the top results for programming questions. So you
         | end up with crappy shallow answers, and never learn the
         | underlying details.
         | 
         | And then there's the problem that the more experienced you get,
         | the less you look up answers, so the less you are exposed to
         | sites like Stack Overflow, and the less you contribute to Stack
         | Overflow. So the result is that the least experienced
         | contribute most to the answers on the web.
         | 
         | My preferred solution is to buy books. Find the best book on
         | your topic and read a chapter, and you'll learn more than if
         | you had googled 100 questions.
         | 
         | The downside of books is that it only works for "old" tech. If
         | you want to learn about the hot new Swift UI Declarative
         | Reactive Whatever, your out of luck and you need to scrape
         | together any info you can find from random blog posts...
        
           | onion2k wrote:
           | _My preferred solution is to buy books. Find the best book on
           | your topic and read a chapter, and you 'll learn more than if
           | you had googled 100 questions._
           | 
           | Books are also written by amateurs a lot of the time,
           | especially if the topic is a bit niche. I've had people from
           | publishers reach out to me to write a book about things based
           | on a single blog post in the past.
        
             | allie1 wrote:
             | Doesn't make books bad. It still requires someone sitting
             | down to organize his/her thoughts and do the research.
        
             | dbcurtis wrote:
             | In the pre-web days I had a shelf full of O'Reilly books.
             | Everyone did. But O'Reilly has gone down hill, and the
             | popular tools have good on-line doc that is much fresher
             | than a book can ever be.
             | 
             | Technical books have become a dumpster fire. Some
             | publishers (I'm looking at you Packt) are so bad their
             | books are not worth the space they take in a dumpster.
             | Total waste of trees.
        
         | mywittyname wrote:
         | I mostly agree, but I think there are situations where it does
         | make a difference.
         | 
         | I had a position working on a pretty complicated 3d application
         | in Angular. At times, it felt like I was fighting a war on two
         | fronts, one dealing with Angular complexities and the other
         | dealing with domain complexities. A better understanding of
         | Angular in general would have greatly increased my
         | productivity.
         | 
         | Now, whether or not an increase in team productivity would have
         | really mattered is hard to gauge.
        
         | 908B64B197 wrote:
         | That's the reason I do algorithmic whiteboard instead of full
         | blown "real world" coding exercises.
         | 
         | I don't care that someone memorized whatever command line
         | syntax to create a new project in whatever framework. That's
         | just rote. Even what we write on the whiteboard I don't expect
         | it to compile. Is it ToString or toString? Can't recall either.
         | 
         | What I care about is that someone can ask the relevant
         | questions, come up with a design and explain what and why they
         | are doing something.
        
           | lvncelot wrote:
           | Last interview I had, I was encouraged to google and
           | afterwards, we talked about the resources I sought out and
           | how I used that information. It was a good experience - if
           | it's a part of my job, why not make it a part of the
           | interview?
        
           | _the_inflator wrote:
           | And afterwards? What is the hired guy then doing? Fixing the
           | size of a button? ;)
        
             | munk-a wrote:
             | That really depends on how much management there is for
             | hand holding. I expect a good developer to get a ticket to
             | fix the size of a button and be able to follow up with
             | stakeholders about the size of the button next to it.
             | 
             | It'd be really weird if we sunk so much effort into ticket
             | writing that everything really was just reduced to a task -
             | at that point the ticket author should just go ahead and
             | fix the thing.
        
               | 908B64B197 wrote:
               | A dedicated ticket to go fix a button. That's a symptom
               | of a pretty dysfunctional org.
               | 
               | If my requirements are that precise I'll farm that to
               | offshored contractors.
        
       | ganafagol wrote:
       | I never thought that there is a benefit to working at a shop that
       | is using an obscure, poorly documenyed in-house language. Since
       | most of it is in conventions and institutionalized knowledge, the
       | "core" of it that we actually use/type on a day-to-day basis is
       | so small that it fits into everybody's mind, and it's getting
       | constantly refreshed as well. No temptation to google anything,
       | there wouldn't be answers anyway. And our in-house stackoverflow
       | clone died from not being used years ago.
       | 
       | Wow this sounds terrible. But it's actually an awesome place to
       | work at!
        
       | olenin wrote:
       | I couldn't either. No doubt many could. But that's not the point.
       | What a wonderfully posed question with such broad relevance,
       | especially for Australians ATM vis a vis the government's current
       | attempted tussle with the omniscient platform. Please let this
       | discussion grow. This is just a thank you message. Cheers!
        
         | olenin wrote:
         | P.S. as evidence of my incompetence I couldn't even operate the
         | comments function correctly and posted twice ;)
        
       | exabrial wrote:
       | I mean, using a maven archetype, I sure can get a Hello, World
       | going in about 30s.
        
       | abeppu wrote:
       | This specific case, and the norm of interviewing without access
       | to references is not that interesting.
       | 
       | But it is kinda like a specialized version of a fun party
       | question, "With what you know now, if you were sent back in time,
       | how far could you go and usefully employ your knowledge of the
       | future?" (E.g. I know chemical fertilizer is a big deal, but I
       | definitely do not know how to make it. I studied heat engines in
       | a physics class, but could not spark the industrial revolution a
       | century earlier.)
       | 
       | Maybe the midway point between these is something like, "if you
       | were sent back to an earlier era in computing, how far back could
       | you go while usefully applying your current knowledge?" E.g. I
       | work with the jvm constantly and I know that it was a big deal
       | for a popular language to have an actually described memory
       | model, but I couldn't build it myself in the 80s. Maybe I could
       | build MapReduce or Spark in the 90s?
       | 
       | It's _hard_ working without the informational resources you're
       | used to, but there are so many more fun ways to explore that
       | gradient than web apps.
        
         | Olreich wrote:
         | The going back in time question is actually really good. What
         | are the fundamental concepts you need to kickstart stuff? Those
         | fundamental insights are still going to be relevant today,
         | which is why they sparked revolutions and major changes to the
         | landscape.
        
           | abeppu wrote:
           | A close parallel, which I refuse to play until the world
           | becomes a less scary place is about rebuilding after an
           | apocalypse.
           | 
           | One "out" that can make the exercise more inclusive depending
           | on the group is germ theory. Any modern person could save a
           | bunch of lives in almost any period if they can convince
           | people to wash their hands, boil suspect water, separate
           | wells and sewage by a wide margin, etc. And yes, definitely
           | still relevant today.
        
       | racl101 wrote:
       | Depends.
       | 
       | Are you asking if I can make a web app from memory? Probably not.
       | 
       | I have ebooks, I have my Dash app which downloads documentation.
       | 
       | So while, I could technically do it without Googling, I can't do
       | it without documentation. If I can't Google then I'd have to look
       | at documentation and my ebooks.
       | 
       | Why?
       | 
       | Well, I work with a lot of languages and frameworks. I can't
       | commit all these technologies to memory.
       | 
       | Few could.
        
       | noisem4ker wrote:
       | Yes, I definitely could do it without Googling(TM). There's
       | plenty of search engines and little need to advertise one in
       | particular by coining a word just for it.
       | 
       | Sorry about the snark and completely missing the point of the
       | article.
        
         | themodelplumber wrote:
         | Yeah, the googling point is kind of strange in that way.
         | 
         | My first thought was, OK I'd probably go back to some projects
         | in my bookmarks db that seemed interesting last time I was
         | looking into web apps. HTMX maybe. That project has some good
         | examples in the docs.
         | 
         | Googling can help in some ways, but it's also casting way too
         | wide a net in others, especially if you keep repeating that
         | step. It's like walking out into the street and shouting, "I
         | WANT TO BUILD AN APP" infrequently, and then wondering why you
         | keep doing this instead of building apps.
         | 
         | Perhaps it would help the author to think more about creating
         | their own process for selecting, refining, and testing
         | methodologies first, then ramp up to building an app second.
        
       | stereolambda wrote:
       | It's something that I'm mildly interested in because 1) finding
       | the same thing on the Internet again is not always easy (the
       | answer can be buried somewhere in the search results, the site
       | rankings change)[1], 2) going to the web browser can be
       | distracting, 3) there are the odd situations when you don't have
       | Internet connection.
       | 
       | So here's my attempts. I store some annotated snippets in Joplin
       | (could probably use org-mode or similar). I also collect
       | programming ebooks and PDF'ed docs: sometimes you can still find
       | them, sometimes you can 'print to PDF'. No idea how one would do
       | it with javadoc for example.
       | 
       | The problem is interface for searching this stuff locally and
       | reading. I use recoll for full text search and qpdfview for PDF
       | viewing (the main reason is that it has tabs). Admittedly, this
       | is not completely satisfying. Simple text search doesn't have the
       | sophistication, PDF's feel less pleasant than web pages. Maybe
       | something I could get used to if I went fully that route, but for
       | now I don't feel compelled to do that (besides some
       | experimentation).
       | 
       | My guess is that _if_ you use a small language /libraries, or
       | have a self-contained codebase, or do fairly rote things, it's
       | possible to go without searching documentation. Otherwise... no?
       | 
       | [1] Or you could use bookmarks, but then, why not archive.
        
       | jkingsbery wrote:
       | I probably could at some point. It's pretty easy: you do the
       | right commands to generate a Java project from a maven archetype
       | or to start a Rails project, you hook up your git repo to Heroku,
       | tweak some HTML. Today if I wanted to, I could memorize the
       | sequences to stick some node.js inside of an AWS Lambda.
       | 
       | There are at least a few problems with this: 1. I don't have to
       | create a basic web app frequently, so I've forgotten the
       | commands. They're easy to find with googling. It's not worth my
       | time to memorize them. (When I was learning to program in the
       | 90's my family didn't have Internet access yet, but if you
       | replace "google" with "looking through helpfiles or programming
       | books," you get the same effect.)
       | 
       | 2. The kinds of webapps professional software engineers build
       | generally aren't "basic." Webapps at the professional level are
       | complicated. Rather than "an over-reliance on documentation
       | indicate a lack of critical expertise that will ultimately result
       | in considerably lower job performance," reliance on documentation
       | seems to be more about having more tools at our hands to build
       | software that's more maintainable in the long run. We have
       | frameworks/services that handle payments, security, storing data,
       | and so on for us. The trade-off for delegating to others solving
       | ancillary problems for you is that you have to read their
       | documentation.
       | 
       | 3. More and more in my career, I find myself not just googling
       | technology but to try to understand business domains. Our job
       | isn't to tell our boss "Here's a webapp!" Our job is to solve a
       | customer need, and that involves understanding who the customer
       | is. Could I shovel some code out the door without googling around
       | for something? Maybe, but it probably wouldn't be very good.
       | 
       | 4. All else being equal, I'd rather work with an engineer who is
       | good at finding information quickly rather than someone who
       | insists on figuring it out. Google is not some magic mind reader
       | - you have to know the names of some of the things your trying to
       | do, you have to assess the likelihood of an approach is worth
       | trying, and even if you do get an answer from Google, you'll
       | inevitably need to adapt it in some way to meet your need.
       | Sometimes, it's not enough to look it up in Google, you have to
       | reach out to other people, and you need to know how to formulate
       | your question to help others help you. There is skill involved in
       | finding information.
       | 
       | 5. I look up things that I already know all the time. Just
       | because you know something, that doesn't mean you shouldn't
       | double check that you know it as well as you think, or that there
       | isn't some better answer or solution. For one example within
       | programming, I'll look up articles I read 6 years ago that do a
       | good job of explaining an idea to someone before I give feedback
       | on a code review and I have to explain a similar idea.
       | 
       | So, engineers don't just memorize stuff for the sake of it.
       | Anyone reading this article shouldn't feel like they're not a
       | real engineer because they can't do what the author suggested.
        
       | jwlake wrote:
       | The corollary to this is can you write a simple c program without
       | a compiler and have it do the right thing and compile without
       | syntax errors the first time.
        
       | ALittleLight wrote:
       | I think I'd be able to do this, especially from my desktop where
       | I have the code for many basic web apps to look at if I need to
       | (which feels a bit like cheating). I am also not a professional
       | web developer but I make random websites sometimes for fun.
        
       | refactor_master wrote:
       | And even if you could, you're probably using a framework that
       | does too much, and that's cheating.
       | 
       | Or was this a criticism about Google and the internet all along?
       | 
       | Wait, what was the point again?
        
       | jeffreyrogers wrote:
       | I doubt most developers can do this. Especially if it involves
       | all the configuration needed to deploy the site. I don't think
       | they need to anyways. Most development involves a small amount of
       | custom application logic and a large amount of hooking things
       | together and manipulating data into the right format. Any
       | programming of this sort requires lots of documentation checking
       | to make sure everything is integrated properly.
        
       | burlesona wrote:
       | Yes. It's not that hard, so long as your definition of "basic web
       | app" is server rendered HTML and CSS. I could certainly do that
       | from scratch in Ruby without Google. If I didn't have Google I
       | wouldn't want to use Rails - even though I know the framework
       | well, there's a lot there to remember.
       | 
       | But I would expect anyone who is (a) proficient with a high level
       | programming language and (b) has ever built a web app from
       | scratch would be able to say yes to this as well, so long as they
       | get to work in the language they know well.
       | 
       | The author of this post specifically does not fit this criteria:
       | 
       | > To be fair, I'm not a web developer so I'm not entirely shocked
       | by this. I only have the itch (and time) to throw together a
       | small web app about once every 6 months.
       | 
       | Also, JS is part of the problem. Even avoiding the chaotic world
       | of front-end by assuming strict SSR using something like Express,
       | Node would be one of the more difficult ecosystems build in from
       | memory, because JS doesn't have the level of standard library
       | that most languages do, because it changes so fast, and because
       | it's drunk the micro package kool-aid so hard (aka left_pad).
       | 
       | But for developers fluent in Ruby, Python, Go, Java, PHP, and
       | probably several others, I would think this is a very realistic
       | ask.
        
       | indymike wrote:
       | Most of the time, we're not starting a project, so making a basic
       | web app isn't something most of us do often. That said, there's
       | still an over-reliance on google and the web. A better test would
       | be: can you close tickets in your current project without
       | googling?
        
       | Animats wrote:
       | There are books. But the O'Reilly guides aren't keeping up.[1]
       | The market is dead.
       | 
       | [1]
       | https://www.goodreads.com/list/show/96192.O_Reilly_s_Pocket_...
        
       | trey-jones wrote:
       | Well there is this quote, often attributed to Einstein himself:
       | "Never memorize something that you can look up."
       | 
       | I don't know whether he really said or thought anything like
       | that, and I also don't actually agree with the literal meaning.
       | There are some things that it pays to memorize, in my opinion. As
       | I keep reminding my daughters: times tables (or math facts as
       | they seem to be known nowadays) are important forever.
       | 
       | The principal behind the quote, however, I'm fully behind. I live
       | in the docs. Even if it's something that I know pretty well, I
       | often like to check to make sure I understand exactly what's
       | going down. There are too many little details that are easy to
       | forget. If it's important and you aren't sure, look it up!
       | 
       | Finally, I could probably claim to be able to write build a
       | simple web app without using google, but I'm sure I would lean
       | heavily on my editor to remind me of argument order, syntax, etc.
       | Maybe there is a little bit of difference there: if my editor/IDE
       | can tell me what I need to know, it's probably just that bit
       | faster than searching for it in a browser.
       | 
       | Shoutout to lsp-mode.
        
         | burlesona wrote:
         | There is some truth to that quote, namely that becoming
         | effective at looking things up is a big productivity booster.
         | 
         | But there is no productivity booster as large as knowing
         | exactly how to do something without needing to look it up. This
         | is almost by definition the level of mastery that comes from
         | significant practice / experience.
         | 
         | I've noticed that some of the very smart people I've worked
         | with for years did not ever really achieve mastery of their
         | language or tools, and I think that's at least partially
         | because they didn't care to take the time to try and figure
         | things out without looking them up, and thus the inner workings
         | of things remained inscrutable to them.
        
       | rsync wrote:
       | Yes, I can and I have done it before, under time pressure.
       | 
       | I was one of the original employees of k12.com, working as a
       | Sun/Solaris sysadmin and late one night the "web team" had a
       | next-day deadline to make a registration system work.
       | 
       | There were press releases and print materials being released the
       | next morning with addresses and registration forms that needed to
       | work and their big bloated "stack" was not producing anything
       | workable for any of them.
       | 
       | I ftp'd over an old, personal copy of cgi-lib.pl and hacked up a
       | little web page that dumped to a flat file and cc'd an email
       | address with every registration.
       | 
       | It took about 45 minutes and _they used it for a year_.
        
       | Arainach wrote:
       | In my opinion, there's a difference between having to go to the
       | docs _once_ and having to go to the docs (or example code) _every
       | time_.
       | 
       | I am not a (frontend) web developer by career. I did LAMP webdev
       | work as a college job 12+ years ago and, like the author of this
       | article, do small personal web projects perhaps once or twice a
       | year. I did one of them earlier this week.
       | 
       | Yes, I went to Google for basic things like "Javascript map
       | lambda" or even "Javascript foreach syntax", but I refreshed
       | myself on those exactly once and was then able to keep it in my
       | short term memory through the completion of the project a few
       | days later. I switch around so many similar-but-not-identical
       | languages (Java, Go, Python, C++, etc.) in a year that it's often
       | not worth it for me to memorize the minutae of each one. I know
       | how to conceptually do something in whatever language, and use
       | search engines and stack overflow to remind myself where to put
       | the semicolons and the brackets.
        
       | ape4 wrote:
       | The web is recursive. You can only make the web without the web.
        
       | lostgame wrote:
       | Yes. I'm a mobile and web developer of 15+ years and I often will
       | just hit File->New in Dreamweaver and proceed to create the JS,
       | CSS, PHP; etc, on its own while prototyping quite often without
       | the need to use anything but my own head.
       | 
       | Granted, that knowledge came from, originally, reading a _ton_ of
       | books, which; as the Internet can be much, much more up-to-date
       | with ever-changing APIs and technologies, I am happy to have as a
       | replacement to heavy and quickly out-of-date books - and also
       | came from 15 or so years of practice.
       | 
       | YMMV.
        
       | jcims wrote:
       | I think one of the questions beneath the question is how much
       | would you be able to justify paying each month for a
       | subscription-only Google? How about Internet access?
        
       | lbj wrote:
       | What an odd piece. Who would expect a non-web-dev to develop a
       | webapp without using google?
       | 
       | I do a lot of webdevelopment and have zero issues.
        
       | hackernews wrote:
       | One of my fondest memories programming was on a sailboat crossing
       | the ocean.
       | 
       | When ever I hit doldrums, I'd pull out the laptop and work on the
       | app to pass time. Luckily I had a good collection of gems locally
       | that I used for reference.
       | 
       | Wasn't a web app, but I'm quite proud of it.
        
       | FriedrichN wrote:
       | Yes I can, but I won't. Because I'm not insane.
       | 
       | I know for a lot of people coding is all about fun and lifestyle,
       | but at some point it becomes a job and you just need to get shit
       | done without being fancy, cool, hardcore, eXtreme, 1337, agile,
       | lean, mean, whatever.
       | 
       | Or maybe I'm just becoming grumpy and old.
        
       | cat199 wrote:
       | $ ed ~/public_html/cgi-bin/basic-web-app.cgi         #!
       | /usr/bin/env perl         ...
        
       | f430 wrote:
       | Of course not because any written software is the result of
       | learning and we simply cannot learn every permutations that can
       | be called a "web app".
       | 
       | If we are talking about deploying something using framework which
       | automatically generates CRUD boilerplate then perhaps yes.
        
       | csharpminor wrote:
       | I definitely cannot do this, but the tool that gets me close is
       | using backsearch to find old terminal commands. This might sound
       | really basic, but I have worked with surprisingly tenured devs
       | who jaw drop when I show them backsearch (yes, really).
       | 
       | I'm personally a fan of fzf. ctrl-r has saved me many google
       | searches. If you're just getting into software development it's a
       | lifesaver.
        
       | mattlondon wrote:
       | There is a difference between "how do I do this?" And "how do I
       | _do_ this? "
       | 
       | I know without even thinking precisely how I would assemble a
       | simple web app - I do not need help to understand what needs to
       | be done in turns of building blocks. I.e. architecture, how it
       | all hangs together, how data is stored and transmitted etc.
       | 
       | But do I need to search specific arguments for a library function
       | call, some DSL syntax, or other reference material? You bet I do
       | - time is too short to memorise that sort of thing, and totally
       | not worth it IMO (especially since tech moves fast - what is
       | relevant today, is obsolete and dead next year)
        
       | eikenberry wrote:
       | Title is misleading as they wanted to do it without any online
       | resources, including online documentation. Using docs is a lot
       | different from googling. I'm not surprised at all that they
       | couldn't do it without documentation. I would have been a bit
       | surprised if they couldn't do it just without google/SO, though I
       | would have blamed that more on poor documentation.
        
       | lostmsu wrote:
       | Totally not a problem in the world of .NET + Visual Studio.
       | 
       | Create new project -> web site -> you get a template filled in
       | with auth and minimal database.
       | 
       | No need to google function arguments, because in statically typed
       | language autocomplete provides nearly 100% discovery.
       | 
       | CI style deployment would be a problem, but manually you can
       | deploy from the project menu.
        
       | bennyp101 wrote:
       | I guess that depends on what an 'app' is.
       | 
       | Can I knock up a site with some PHP/HTML/CSS without references -
       | sure.
       | 
       | Can I knock up a standard server side app - sure, but I'm gonna
       | want to look up certain functions and what arguments they take.
       | 
       | Can I put together an SPA without? Probably not. I know what I
       | need to do, but I'm not going to remember which packages I need
       | to install, or how they are configured, or if package x works
       | with webpack4 or if I have to have Vue2 because a certain thing I
       | want to use doesn't support 3 yet etc.
       | 
       | There are so many moving parts now for an 'app' that it is not
       | feasible to keep it all in your head. Thats why there are so many
       | starter-packages for things, because people forget what they did
       | the first time around, so just create a new git repo with the
       | skeleton to get going again ... only to be replaced in 6 months.
       | 
       | It was perl and flat file site counters when I started, and now I
       | have to google how to make webpack work nicely :D
        
         | number6 wrote:
         | Yeah I guess I can crank out a basic CRUD-App without looking
         | up anything. All depending on what app means. If I have to work
         | with new technologies I clearly look up the best practices and
         | different solutions to common problems but on my hometurf? I
         | look into the source code to know my way around. It's quicker
         | most of the time. Or I ask in the forums - is this allowed?
        
       | johnsonjo wrote:
       | I could do it, but I would likely have to have access to Dash [1]
       | which is actually quite useful when you're on the go. I am a
       | proud purchaser of Dash (though not at all affiliated with them),
       | because it comes in handy when I'm somewhere with little to no
       | internet.
       | 
       | [1]: https://kapeli.com/dash
        
       | jmuguy wrote:
       | Most of my googling is just for API and SDK references. So, yes,
       | with something like Dash or another offline reference.
        
       | madhadron wrote:
       | So the crucial thing for me would be: are the reference docs for
       | may language/library/OS considered external resources? Can I type
       | man in a terminal? Can I use a Python repl to explore the data
       | structures? If so, then, yes, I can. But I had to go double tab
       | on http.server to remember what was in there.
       | 
       | I used to commute on a ferry, and was offline for that commute.
       | Often I would do some coding (more often I was writing), and a
       | tool like Dash that put reference docs offline was essential.
        
       | csours wrote:
       | I tried to make a one file java console app the other day. I know
       | I did this in college. I gave up and just did the task in a
       | python notebook.
        
       | andersco wrote:
       | The meaning of and technology needed to build a "basic web app"
       | is in a continual state of evolution. Therefore, googling is not
       | so much required due to a lack of knowledge but rather due to
       | that this knowledge needs to be continually kept up to date.
        
       | stakkur wrote:
       | 'Before Google', it seemed to go something like this:
       | 
       | * Ask coworkers
       | 
       | * Look at documentation
       | 
       | * Try things out
       | 
       | Things don't seem way different today; we've just replaced the
       | first two items with a search engine.
       | 
       | There is _one_ difference I 've noticed, though: an instant-
       | access search engine makes it easier to 'fake' your way through
       | something with less skill and knowledge. In the long run, this
       | seems detrimental to professional growth and development.
        
         | gabereiser wrote:
         | Before google it was exactly like that. When I was younger and
         | junior and eager to build whatever my boss wanted, coworkers
         | would rely on each other for figuring things out. No fear of
         | being labeled "incompetent", "unskilled", or "underperforming".
         | It was more team oriented.
         | 
         | Trying to reverse-engineer some crazy DHTML javascript
         | algorithm used by one site so we can reproduce it in ours (for
         | their members portal).
         | 
         | Coworker came to me asking if I could help her deconstruct the
         | hair ball javascript code into something meaningful. It used
         | variable names like "a, z, t1" etc.
         | 
         | While you can quickly google something and get back a barrage
         | of answers, usually on the same solution, this is software we
         | are talking about - there isn't a _One True Way_ and there
         | never will be. The more we try to make a "right way to do
         | things" we invent a new way.
         | 
         | Do I google when coding, sometimes. Do I need to? No. Does it
         | make me faster to put my thinking cap on the wall and just go
         | with #1 SO answer? Unfortunately yes.
        
       | megous wrote:
       | I used to take work with me to places without the internet. You
       | just need some local reference docs and a few years of
       | experience.
        
       | [deleted]
        
       | ceedan wrote:
       | Only if you let me use another search engine ;)
        
       | egfx wrote:
       | Yes I can and I did after the enyojs framework went completely
       | bye-bye and replaced with an entirely different framework called
       | enact based not on enyo but on react! It reminded me of the time
       | Qualcomm decided to one day purge all brew documents from their
       | website. Google is fickle. The truth is in the source code of
       | whatever you're working with.
        
       | core-questions wrote:
       | > To be fair, I'm not a web developer
       | 
       | Kind of a non-article. Could I make an outdoor irrigation system,
       | fix my head gasket, or anything else complicated without doing
       | some research?
        
         | azhenley wrote:
         | Author here. I'm a professor that teaches software engineering
         | and occasionally web development, sooo I think your comparison
         | is inapt...
        
           | core-questions wrote:
           | So in my metaphor, that would be like perhaps a gardener
           | assembling irrigation, or someone in a mechanical trade
           | fixing the gasket. There's still a ton of specific knowledge
           | to the job in question.
           | 
           | Of course, it shouldn't be that Google specifically is
           | necessary - just some literature or reference source (i.e.
           | consulting with someone).
        
           | resonantjacket5 wrote:
           | I am wondering are you using some external framework
           | angular/react or just "only" js?
           | 
           | "Or even deeper, does an over-reliance on documentation
           | indicate a lack of critical expertise that will ultimately
           | result in considerably lower job performance?"
           | 
           | I don't think so, and I don't know why relying on
           | documentation would be bad.
           | 
           | In a more general sense even for making a todo list app I'd
           | imagine the fundamentals aren't changed even across
           | frameworks e.g. of when adding a todo it needs to be added to
           | some sort of a list.
        
         | auslegung wrote:
         | The rest of the quote is quite relevant.
         | 
         | > To be fair, I'm not a web developer so I'm not entirely
         | shocked by this. I only have the itch (and time) to throw
         | together a small web app about once every 6 months.
         | 
         | A better rebuttal is, do you make a [small] outdoor irrigation
         | system or fix a [simple] head gasket "once every 6 months"? I
         | added the adjectives to better compare to his stated "small web
         | app".
         | 
         | I think it's reasonable to expect someone who "throw[s]
         | together a small web app about once every 6 months" to be able
         | to do it without googling, but it isn't how software
         | development is taught. When studying something to master it you
         | start with the basics and do them over and over until you
         | understand them. We don't (tend to) do that in software
         | development, I think for two primary reasons: 1) there's more
         | "important, urgent" things to do and 2) things change so
         | quickly that probably half of what you learn today will be
         | unused in a year (of course if you learn the very basics those
         | rarely change, but I'm talking about the things we all know
         | change so frequently, but were good decisions at the time)
        
       | plesiv wrote:
       | Easy...                 mkdir example-1       cd example-1
       | yarn init -y       yarn add next react react-dom       mkdir
       | pages       cat <<EOF > pages/index.js       const Page = () =>
       | "Hello world!";       export default Page;       EOF       yarn
       | dev
       | 
       | Didn't test. There could be typos and you need to care about the
       | indentation of the HEREDOC.
       | 
       | I can't do it with an arbitrary set of tools either, but that's
       | why good tools matter and that's why you should use Next.js.
        
       | omarhaneef wrote:
       | I remember one of my physics teachers told me that what it used
       | to mean to be a good mathematician was you could do mathematics
       | quickly in your head.
       | 
       | But then cheap and ubiquitous calculators changed all that, and
       | what it meant to be a good mathematician was solving complex
       | chains of problems.
       | 
       | But then cheap computers changed that, and what it means to be a
       | good mathematician now was just setting up the right equation.
        
       | jascii wrote:
       | Yes I can.
       | 
       | I regularly disconnect for a hacking session, reduces
       | distractions and I find it often helps me come up with simpler
       | solutions then building something up out of what's already there.
       | 
       | Its also nice to spend some time on my boat and still get some
       | work done :)
        
         | gabereiser wrote:
         | I was going to post something along the same lines. I know my
         | framework, I know my code, and I absolutely can create a web
         | app offline without using google.
         | 
         | I also enjoy boats and working from them from time to time.
         | 
         | A lot of people missed the fact that good intellisense style
         | code completion, local docs (rdoc, what have you) are still
         | viable. Also having some PDF's on your machine of programming
         | books helps you not google for solutions.
        
       | matt7340 wrote:
       | It obviously doesn't matter that much if you can or can't. We all
       | google all day long.
       | 
       | But through my career at various times I've been able to say yes,
       | usually after spending multiple years on a project and the
       | platform/tech its built with.
       | 
       | Speaks to the really enjoyable side effect of productivity and
       | unencumbered expressiveness that comes with being immersed in a
       | platform or technology for a longer period or time.
        
       ___________________________________________________________________
       (page generated 2021-01-29 23:02 UTC)