Your Coding Teacher
Відкрити в Telegram
Coding, software engineering & #bitcoin technologies. I'll make you a better thinker, not just a better developer | Ex Amazon, Senior DevOps @eBay
Показати більшеКраїна не вказанаТехнології та додатки98 126
334
Підписники
Немає даних24 години
Немає даних7 днів
Немає даних30 днів
Архів дописів
Programming is hard It's not just a lot of if and while statements put together It's about creating systems made of small components that can be understood and easy to maintain and extend. This takes lots skills
Never attribute to malice that which can be adequately explained by stupidity.
Some books that helped me when I got started - Code Complete - Clean Code - Programming Pearls - Effective C++ First 2 are almost language agnostic, focusing on principles The other 2 in C and C++ There's also Effective Java and Effective Python
A GCP role is a sets of permissions - Primitive. Apply to the entire project. 3 concentric roles: Viewer, Editor, and Owner - Predefined. To access to specific services, for example, storage.admin - Custom. Lets you create your own roles, combining the permissions you need
Concurrency 101 - Two events are concurrent if we cannot tell by looking at the program which will happen first. - Concurrent programs are often non-deterministic -> it is not possible to tell, by looking at the program, what will happen when it executes.
The broken windows theory is states that visible signs of - crime - anti-social behavior - civil disorder create an urban environment that encourages further crime and disorder, including serious crimes. Stay on top of broken windows in your code (and your life).
Higher-order functions are functions that: - Accept other functions as arguments or - Return a function Higher-order functions are useful to abstract over actions, not just values.
"Watch what people do, not what they say" In the software development realm: "What people say" -> The comments "What people do" -> THE CODE Code never lies
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
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)
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
In coding, it's not only about choosing the right technology. Putting good practices into place is key.
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
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
"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
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
