[HN Gopher] Every Programmer Should Know
       ___________________________________________________________________
        
       Every Programmer Should Know
        
       Author : EntICOnc
       Score  : 25 points
       Date   : 2021-12-22 19:06 UTC (3 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | rubylark wrote:
       | The problem with general statements with "every programmer
       | should" is that programming has become such a diverse field that
       | there are definitely things that not _every_ programmer will
       | need. For example, as an embedded software developer, I would say
       | that every programmer should know I2C/SPI, EEPROM/Flash,
       | semaphores/mutexes, RTOS task scheduling strategies, assembly
       | language, what a HAL is, etc (I don't see any of those on the
       | list from my brief perusal). In my field, if you don't know any
       | of those, you're going to have a tough time getting a job. But
       | the reality is that most programmers don't need to know the
       | majority of what I use day-to-day and I don't need to know some
       | things they need like basic web UX practices or how to serve a
       | terabyte of data that I'm sure is the absolute fundamental
       | minimum required for certain other development positions.
        
       | racl101 wrote:
       | :q
       | 
       | :wq
       | 
       | :q!
        
         | saltyfamiliar wrote:
         | Okay, but in all seriousness
         | 
         | q [a-z] Some sequence of actions that you might want to
         | automate q Now use the macro with @ and the letter you chose
         | earlier
         | 
         | I used vim for longer than I care to admit without realizing
         | macros are useful.
        
         | based2 wrote:
         | :x
        
       | peakaboo wrote:
       | Nobody I have ever worked with has known 5% of this list.
       | 
       | You do not need to know this to be successful.
        
       | 99_00 wrote:
       | "Every Programmer Should Know"
       | 
       | I take that statement to be aspirational. I can look at that list
       | and stress about everything I don't know very well or I can look
       | at it and think that there are so many opportunities for me to
       | improve my knowledge.
        
         | racl101 wrote:
         | It's the only way I can see it. Otherwise, I might as well give
         | up and call it a day.
        
       | buscoquadnary wrote:
       | Was hoping this would be a collection of resources like -
       | Falsehoods Programmers Believe About Names[0] - Falsehoods
       | programmers believe about addresses[1] - Falsehoods programmers
       | believe about time [2] etc.
       | 
       | Was a bit disappointed to realize it is more standard
       | foundational papers on various CS topics.
       | 
       | 0. https://www.kalzumeus.com/2010/06/17/falsehoods-
       | programmers-...
       | 
       | 1. https://www.mjt.me.uk/posts/falsehoods-programmers-
       | believe-a...
       | 
       | 2.
       | https://gist.github.com/timvisee/fcda9bbdff88d45cc9061606b4b...
        
       | valbaca wrote:
       | I'm pretty sure given the enormity of the entire field of
       | programming, the only things _Every_ programmer should know are:
       | 
       | 1. if and loops
       | 
       | 2. Readability is very good. Comments help.
       | 
       | 3. pointers/references vs values
       | 
       | I think these are the only things that are truly universally
       | necessary to understand, whether you're writing assembly, for the
       | web, for a game, or anything else that executes code.
        
         | rubylark wrote:
         | Definitely agree. Coding is so different depending on the
         | language and the field. I'd also add:
         | 
         | 4. Version Control
         | 
         | I've onboarded some new grads, and was surprised to find they
         | don't teach version control in college. Students generally
         | picked it up on their own, but I'd kind of expect at least 5
         | min of the first lecture of CSCI 101 to be something like
         | "here's git and here's why you need to use it".
        
           | chunkyguy wrote:
           | 5. How to seek help online.
           | 
           | or how to post questions and copy answers posted on
           | stackoverflow.com and make them fit in your own code.
           | 
           | I see a lot of comments on SO asking to tailor down the
           | answer further for their exact problem.
        
           | valbaca wrote:
           | Exactly.
           | 
           | If anyone wants such a reference, there's the "Missing
           | Semester" which is all about practicum. Lecture 6 is on Git:
           | 
           | Lecture 6: Version Control (git) (2020)
           | https://www.youtube.com/watch?v=2sjqTHE0zok
        
             | teitoklien wrote:
             | Missing Semester is one of the best resources i've come
             | across on youtube, related to programming, so happy to see
             | it here.
        
       ___________________________________________________________________
       (page generated 2021-12-22 23:02 UTC)