Why Initiative and Deep Learning are Essential for a Career in Tech
NeetCodeIO
Summary:
- The speaker expresses frustration over a perceived decline in initiative and critical thinking among some individuals in the tech community.
- He criticizes a YouTube comment [0:03:19] where a user watches LeetCode videos for entertainment, arguing it promotes laziness rather than genuine learning, despite his platform offering over 800 detailed solutions [0:04:01].
- He addresses a "dumb question" on a LeetCode problem [0:07:07], explaining that the answer could be found with basic self-calculation, highlighting a lack of independent problem-solving.
- The speaker notes a societal shift where people expect to be spoon-fed information and training, rather than actively figuring things out.
- He references Reddit discussions [0:10:54] on CS job market struggles, where people are unwilling to pursue alternative fields like actuarial science due to perceived "hard work" or necessary exams.
- A tweet from game developer Jonathan Blow [0:13:53] is cited to support the idea that companies expect candidates to cover most of the learning distance themselves.
- The speaker advocates for self-learning and developing a problem-solving mindset, suggesting that without genuine effort and initiative, individuals may struggle to succeed in the tech industry.
Introduction and Rationale for Direct Feedback [0:00:00]
The speaker begins by acknowledging his potentially controversial message, noting that he's passionate and wants to be honest. He recognizes the current difficulty of the tech job market, especially for entry-level positions. His motivation for the video stems from recent observations that have "triggered" him, leading him to believe that his methods might not be having the intended positive effect.
Critique of Passive Learning and Lack of Initiative [0:02:20]
"Entertainment-focused" LeetCode Consumption [0:02:42]
The speaker highlights a comment from a previous video on an "easy" LeetCode problem, where a user stated they watch his videos for "entertainment" rather than active "grinding" or practice.
- Speaker's Argument: He contends that passively watching videos, even for educational content like LeetCode, does not lead to effective learning. True understanding comes from active engagement.
- Abundance of Resources: He points out that he has created over 800 LeetCode video solutions on his website (neetcode.io), emphasizing that if that many resources aren't enough, learners should transition away from relying on video solutions entirely.
- Historical Context: He recalls a time before widespread LeetCode videos or tools like ChatGPT, where individuals had to figure out solutions independently, which fostered stronger problem-solving skills.
- Concern: He worries that by continuing to provide easy-to-access solutions, he might inadvertently be enabling laziness rather than truly teaching people how to "fish."
The "Dumb Question" on LeetCode [0:05:53]
The speaker then describes another frustrating experience involving a "dumb question" on one of his videos explaining a greedy solution for a LeetCode problem (Greatest Sum Divisible by Three). The problem involved adjusting a total sum based on remainders after division by three.
- The Problem Context: The video discussed a greedy approach to modify a total sum based on remainders after division by three to make the total divisible by three.
- The Question: A user asked why the solution didn't consider a case where three numbers, each with a remainder of one, would be removed to adjust the sum, assuming this combination might be smaller than the two cases he discussed (removing one number with remainder one, or two numbers with remainder two).
- Speaker's Frustration: He was exasperated that the user took the time to type out the question rather than spending "60 seconds" to work out the basic modular arithmetic themselves with pen and paper.
- Mathematical Explanation [0:17:39]:
- Goal: To remove the smallest possible sum of numbers to make the overall total divisible by three, if the initial sum has a remainder of 1 or 2.
- Cases for a remainder of 1:
- Remove the single smallest number that itself has a remainder of 1 when divided by three.
- Remove two smallest numbers that each have a remainder of 2. (e.g., 2 + 2 = 4; 4 % 3 = 1).
- The User's Question Addressed: The user asked why removing three numbers, each with a remainder of 1 (e.g.,
one1 + one2 + two1 from his code example, meaning the two smallest numbers with remainder 1 and the smallest number with remainder 2, or three numbers with remainder 1: 1+1+1 which gives remainder 0, or 2+1+1 which gives remainder 1), wasn't considered.
- Proof by Inspection:
- Taking three numbers with remainder 1 (1+1+1) gives a sum with remainder 0, not 1.
- Taking three numbers with remainder 2 (2+2+2) gives a sum with remainder 0, not 1.
- The only combination of three numbers that results in a remainder of 1 is
2+1+1, which sums to 4 (4 % 3 = 1).
- Conclusion: Removing three numbers will always result in a larger sum being removed compared to removing just one or two numbers, assuming all numbers are positive. Therefore, the earlier two-case greedy approach naturally covers the optimal solution for minimizing the removed sum.
- Broader Observation: He suggests this incident exemplifies a general decline in students' ability or willingness to apply basic critical thinking and effort to self-solve problems. He links this to factors like "grade inflation" and the diminishing value of higher education.
Wider Societal Trends and Expectations [0:10:54]
The Tech Job Market Reality (Reddit Post) [0:10:54]
The speaker references a Reddit post where a user suggested that struggling computer science majors consider actuarial science, a field with high demand and low unemployment, but requiring significant math and statistics exams.
- Critique of Attitude: He criticizes the comments that dismissed actuarial science as "too hard" or requiring "5 to 10 years of post-college life studying." He points out the irony of complaining about the difficulty of securing a CS job while simultaneously rejecting alternatives due to the required effort.
- "Easy Learning Curve" Myth: He suggests that CS became popular partly due to a perceived "easier learning curve," leading many people into the field without genuine passion or aptitude. This, in turn, dilutes the job pool with underqualified applicants.
Entitlement in Training and Hiring (Jonathan Blow Tweet) [0:13:53]
The speaker then discusses a tweet by game developer Jonathan Blow, which resonated with his observations. Blow critiqued the "weird entitled attitude" of some individuals who expect companies to hire and fully train them, even when they lack fundamental knowledge or initiative.
- Speaker's Agreement: He strongly agrees with Blow, stating that many entry-level candidates have misconceptions about what it takes to succeed. They often prefer to follow tutorials, collect certifications, and expect to be told "exactly what to do," rather than developing independent problem-solving skills.
- Impact of Modern Education: He argues that modern education, amplified by online resources and AI, has failed to teach "how to learn." Instead, it has fostered a reliance on external tools without encouraging critical engagement or deep understanding.
- Consequence for Employers: Companies are less likely to hire individuals who cannot autonomously tackle challenges and might slow down a team with constant questions and a lack of initiative.
Conclusion: The Call for Self-Sufficiency [0:24:05]
The speaker concludes by reflecting on whether his role as a content creator has genuinely taught people "how to fish" or merely provided them with "fishes." He emphasizes that teaching self-reliance and fostering a proactive mindset is far more impactful than just giving answers. He reiterates that if individuals are unwilling to put in the consistent effort required for deep learning and independent problem-solving, they might be better off pursuing different career paths.