in ,

Falsehoods CS Students (Still) Believe Upon Graduating, Hacker News

Falsehoods CS Students (Still) Believe Upon Graduating, Hacker News


November 1st, 2019

Yep, it’s one of thoseFalsehoodslists. This one (followingall the falsehoods about falsehoods lists) is derived in part from my experienceteaching Unix Programming and System Administration, in part from observation of new hires in the industry. But let’s just go ahead:

  1. They “know” “C / C “.
  2.   

  3. Java is a reasonable choice for almost all programming tasks.
  4.   

  5. Programming==Computer Science.
  6.   

  7. People with a CS degree are good programmers.
  8.   

  9. People with a CS degree know how to program.
  10.   

  11. CS professors know how to program.
  12.   

  13. CS professors know how to use a computer / mobile device or how the internet works.
  14.   

  15. You should always addlots of commentsto your code.
  16.   

  17. Sprinklingprintfstatements is an efficient debugging technique.
  18.   

  19. Compiler warnings can be ignored, as they’d be errors otherwise.
  20.   

  21. If it builds on your laptop, it will build on everybody else’s.
  22.   

  23. Answers posted to StackOverflow are always correct.
  24.   

  25. If the code is on the internet, that means you can use it.
  26.   

  27. Free software is free.
  28.   

  29. Open Source means it has fewer bugs and is more secure.
  30.   

  31. ‘git’ and ‘GitHub’ are synonymous.
  32.   

  33. ‘Unix’ and ‘Linux’ aresynonymous.
  34.   

  35. ‘Email’ and ‘Gmail’ are synonymous.
  36.   

  37. ‘Bash’ and ‘sh’ are synonymous.
  38.   

  39. AWS and ‘cloud services’ are synonymous.
  40.   

  41. ‘Privacy’ and ‘Confidentiality’ are synonymous.
  42.   

  43. ‘Encryption’ and ‘Security’ are synonymous.
  44.   

  45. Smart people write clever code.
  46.   

  47. Productive coders write lots of code.
  48.   

  49. Being able to program is the most important aspect of being a good software engineer.
  50.   

  51. Having a CS degree is a necessary and sufficient condition for being a good software engineer.
  52.   

  53. Real Programmers(TM)useneon-green on black terminals.
  54.   

  55. Command-line tools should print colorized output.
  56.   

  57. TED talks are Science(TM)and the information presented is accurate.
  58.   

  59. Software with version numbers ending in ‘. 0‘are buggy and you should wait until the next release.
  60.   

  61. Parsing timestamps and dates is trivial.(And all the otherFalsehoods about Time
  62.   

  63. They know how to validate an email address.
  64.   

  65. They know how to validate a hostname.
  66.   

  67. They know how to validate an IP address.
  68.   

  69. They know how toparse HTML.
  70.   

  71. They are good at multi-tasking, as is evident from their ability to take notes in class and check Facebook at the same time ..
  72.   

  73. They understand team work based on their senior design project.
  74.   

  75. Employers care about which courses they took.
  76.   

  77. Sure, they could go on and get a PhD, but first they’ll make some money; they can always come back later.
  78.   

  79. The network is reliable.(And all the otherFallacies of Distributed Computing
  80.   

  81. Third-party services are reliable.
  82.   

  83. AWS is reliable.
  84.   

  85. Ok, but it is when you have redundancy in multiple geographic regions.
  86.   

  87. Funny names are funny, you can always change them later.
  88.   

  89. Variable names should be as short as possible; vowels cost extra.
  90.   

  91. I / O efficiency increases linearly with the size of the buffer you use to read data into.
  92.   

  93. You can read the entire file into memory.
  94.   

  95. You can always write to the current working directory.
  96.   

  97. You can always write to/ tmp.
  98.   

  99. The error message ‘No space left‘means you are out of disk space.
  100.   

  101. Ok, but in general, using temporary files iseasy and risk free.
  102.   

  103. After afork (2), the parent always executes first.
  104.   

  105. malloc (3)always returns a valid pointer.
  106.   

  107. main‘takes two arguments,argcandargv.
  108.   

  109. If you see a process with the same PID you saw previously, that means it’s the same process.
  110.   

  111. If you get a permissions error,chmod 777.
  112.   

  113. “setuid” means the program hasrootprivileges.
  114.   

  115. File deletion requires write permissions on the file.
  116.   

  117. Race conditions are only rarely triggered.
  118.   

  119. Object-oriented programming is the best and most common programming paradigm.
  120.   

  121. Using a custom writtenVectorclass makes your program object-oriented.
  122.   

  123. Dropbox is a suitable backup solution.
  124.   

  125. They can’t be hacked or phished because they understand computers.
  126.   

  127. They understand computers.
  128.   

  129. Most of the important lessons they need to learn are behind them.
  130.   

  131. Spreadsheets and powerpoint are for business majors.
  132.   

  133. Programmers spend most of their time programming.
  134.   

  135. Elon Musk is a genius.
  136.   

  137. Zuck is a genius.
  138.   

  139. Steve Jobs was successfulbecause, notin spite ofbeing a jerk.
  140.   

  141. The ad-driven profit model is a necessary but reasonable trade-off to make the world a better place.
  142.   

  143. Software engineering is a meritocracy, because computers do what you tell them to.
  144.   

  145. Technology and algorithms are neutral.
  146.   

  147. Success implies talent.
  148.   

  149. Failure implies fault.
  150.   

  151. HBO’s “Silicon Valley” is satire, not a documentary.
  152.   

  153. Jokes about recursion are funny jokes about recursion.
  154.   

  155. The humanities requirements were a waste of time.
  156.   

  157. They will use lots of math in their career.
  158.   

  159. All traffic on the internet is either UDP or TCP.
  160.   

  161. DNS traffic always uses UDP.
  162.   

  163. ICMP is only used forpingandtraceroute.
  164.   

  165. If Google uses it, then your company should use it.
  166.   

  167. If Facebook does it, then it’s ok for your company to do it, too.
  168.   

  169. If it’s younger than 5 years, it’s a fad.
  170.   

  171. If it’s older than 5 years, it’s obsolete.
  172.   

  173. Usinglambdain Python is a good idea because it shows others you have a CS degree and understand the “Lambda Calculus”.
  174.   

  175. Rewriting an algorithm to use Red-Black Trees is worth the time.
  176.   

  177. They will encounterHuffman codingat least once in their career after college.
  178.   

  179. Two people with a CS degree will have a very similar background and shared experience / knowledge.
  180.   

  181. Algorithmic complexity and O-notation are used all the time in the “real world”.
  182.   

  183. Algorithmic complexity and O-notation are never used in the “real world”.
  184.   

  185. Academia somehow is not the “real world”.
  186.   

  187. There is a “real world”.
  188.   

  189. Brooks’s Lawhas exceptions.
  190.   

  191. Conway’s Lawhas exceptions.
  192.   

  193. Murphy’s Lawhas exceptions.
  194.   

  195. This could never happen.
  196.   

  197. Nobody would enter that sort of data.
  198.   

  199. This list is finite.

November 1st , 2019

Related:

    

Brave Browser
Read More
Payeer

What do you think?

Leave a Reply

Your email address will not be published. Required fields are marked *

GIPHY App Key not set. Please check settings

Ilkay Gundogan opens up on Man City dressing room reaction to Liverpool defeat – Mirror Online, Mirror.co.uk

Ilkay Gundogan opens up on Man City dressing room reaction to Liverpool defeat – Mirror Online, Mirror.co.uk

Opioids have more side effects than benefits on humans – The Asian Age, Asianage.com

Opioids have more side effects than benefits on humans – The Asian Age, Asianage.com