You don't need to know every detail of JavaScript, Python, Java or C++ to write useful programs Focus on programming techniques, not on language features
  Pasting code from the Internet into production code is like chewing gum found in the street
  Throw exceptions instead of returning None to indicate that something went wrong. None and other values (zero, the empty string) evaluate to False in conditional expressions. This can be troublesome Let the caller handle exceptions properly. Document your exceptions.
  2-choice hashing uses two different hash functions, h1(x) and h2(x), for a hash table.
  Git shortcuts $ git commit -am "commit message" // -a: any files previously added $ git branch -D [name]// To delete a branch $ git checkout -b [name] // To create a new branch and switch to it
  There will be bugs in your codebase. The question is: will fixing these small bugs make a dent? Focus on what will bring the max benefit to your team and customers. The task of solving a few bugs will always be there.
  Better train people and risk they leave than do nothing and risk they stay
  In a Unix system, what user ID corresponds to root? . . . . . . . . . . . ID = 0
  Sometimes I fantasize about finding a job like this, automating it, and then relaxing and collecting the salary.
  5 Common bit manipulation interview questions 1. Check if an integer is power of two 2. Position of rightmost set bit 3. Add two numbers without using arithmetic operators (+-*/) 4. Like 4., but multiplying 5. Like 4., but dividing Try to solve them (easily googable)
  Hash tables implement the insert and contains operations in constant time, depending on: - Load factor - Hash function - Collision resolution method: chaining, probing, ... Rehashing allows a hash table to grow/shrink, improving its load factor
  Use pen and paper or a whiteboard to sketch a solution before you start coding. Unless you are solving a trivial problem, try to come up with different alternatives. Then, try to break your own design
  Student: How long will it take me to master your martial art? Teacher: Ten years Student: But I want to master it faster than that. I will work very hard. I will practice everyday, ten or more hours a day if I have to. How long will it take then? Teacher: 20 years
  You'll spend most of your time reading code. Python's syntax makes it easy to write complicated, difficult-to-read, single-line expressions. Consider refactoring them into their own separate functions. Make your code readable.
  Relational Databases Available in AWS: - SQL Server - Oracle - MySQL Server - PostgreSQL - Aurora (proprietary) - MariaDB Which one is your favourite?
  