An incomplete 🧵based on experience and observation:
2. Java is a reasonable choice for almost all programming tasks.
4. People with a CS degree are good programmers.
5. People with a CS degree know how to program.
7. CS professors know how to use a computer / mobile device or how the internet works.
9. Sprinkling printf statements is an efficient debugging technique.
10. Compiler warnings can be ignored, as they'd be errors otherwise.
12. Answers posted to StackOverflow are always correct.
13. If the code is on the internet, that means you can use it.
15. Open Source means it has fewer bugs and is more secure.
17. 'Unix' and 'Linux' are synonymous.
18. 'Email' and 'Gmail' are synonymous.
19. 'Bash' and 'sh' are synonymous.
21. 'Privacy' and 'Confidentiality’ are synonymous.
22. 'Encryption' and 'Security' are synonymous.
24. Productive coders write lots of code.
26. Having a CS degree is a necessary and sufficient condition for being a good software engineer.
28. Command-line tools should print colorized output.
30. Software with version numbers ending in '.0' are buggy and you should wait until the next release.
31. Parsing timestamps and dates is trivial. (And all the other Falsehoods about Time.)
33. They know how to validate a hostname.
34. They know how to validate an IP address.
35. They know how to parse HTML.
37. They understand team work based on their senior design project.
39. Sure, they could go on to get a PhD, but first they'll make some money; they can always come back later.
41. Third-party services are reliable.
42. AWS is reliable.
45. Variable names should be as short as possible; vowels cost extra.
47. You can read the entire file into memory.
49. You can always write to /tmp.
50. The error message 'No space left on device.' means you are out of disk space.
51. Ok, but in general, using temporary files is easy and risk free.
53. malloc(3) always returns a valid pointer.
54. 'main' takes two arguments, argc and argv.
56. If you get a permissions error, chmod 777.
57. "setuid" means the program has root privileges.
59. Race conditions are only rarely triggered.
61. Using a custom written Vector class makes your program object-oriented.
63. They can't be hacked or phished because they understand computers.
64. They understand computers.
66. Spreadsheets and powerpoint are for business majors.
67. Programmers spend most of their time programming.
69. Zuck is a genius.
70. Steve Jobs was successful because, not in spite of being a jerk.
72. Software engineering is a meritocracy, because computers do what you tell them to.
73. Technology and algorithms are neutral.
75. Failure implies fault.
78. The humanities requirements were a waste of time.
79. They will use lots of math in your career.
81. DNS traffic always uses UDP.
82. ICMP is only used for ping and traceroute.
84. If Facebook does it, then it's ok for your company to do it, too.
86. If it's older than 5 years, it's obsolete.
88. Rewriting an algorithm to use Red-Black Trees is worth the time.
90. Two people with a CS degree will have a very similar background and shared experience/knowledge.
92. Algorithmic complexity and O-notation are never used in the "real world”.
93. Academia somehow is not the "real world".
94. There is a "real world".
96. Conway's Law does not apply to them.
97.. Murphy's Law does not apply to them.
99. Nobody would enter that sort of data.
100. This list is finite.