Learning to code is simple Things you don't need: - A genius IQ - A MacBook - Three screens - An expensive chair - Buying 2000 courses - A degree Things you need: - 1 or 2 good books/courses - Consistency - Patience
Don't envy money. Envy people whose code compiles at the first attempt.
People still haven't realized that coding 3 times a week is a thousand times harder than coding every day.
Bad developers are afraid to look dumb Good developers are afraid not to ask enough questions
There are many ways to become a developer. But I can assure you, mindlessly copying code from Stackoverflow is not one of them
You're allowed to make mistakes when coding. In fact, professional developers have made and still make many more mistakes than you. That's how they became professionals
You want to learn to program quickly, which is why it is taking so long.
Dogecoin, a coin created as a joke, reached a market cap of $69 billion, but you can't find 30 minutes a day to learn to code
"If you get it free, it is worthless. If you pay for it, it has value. If you build it yourself, it is priceless." - Raj More
9 commands you should know grepPrint lines matching a pattern findSearch for files in a directory hierarchy odOctal dump chmodChange access permissions wcWord count psReport process status manDisplay manual page infoRead info documents killTerminate a process
Some C++ notes for my Amazon interviews Iterate map: for (auto &itr : my_map) f(itr.first, itr.second); Random number in rage v= rand() % 30 + 100;// 100-129 Flip boolean b= !b; stable_sort vs sort -> guarantees that equal items retain their original order
In coding, it's not only about choosing the right technology. Putting good practices into place is key.
When working with objects and data structures, remember Demeter's law: - Objects should only talk to their friends; don't talk to strangers. equivalently - Objects should not rely on the inner workings of the objects they're interacting with
Timsort, derived from merge sort and insertion sort, was implemented by Tim Peters in 2002 for Python It finds subsequences of the data that are already ordered and uses them to efficiently sort the rest (merging them) Best-case time complexity is O(N), average is O(NlogN)
Optimal substructure: the optimal solution to a problem of size n, can be derived from the optimal solution of the same instance of that problem of size smaller than n. Divede & conquer: a problem that can be solved by combining optimal solutions to non-overlapping subproblems