Your Coding Teacher
372 subscribers
10 links
Coding, software engineering & #bitcoin technologies. I'll make you a better thinker, not just a better developer | Ex
Amazon, Senior DevOps @eBay
Download Telegram
Some people prefer changing the specification to fit their code than the other way around
Readability counts - The Zen of Python
You can increase the reliability of a service by masking some deficiencies of its subservices A queue that might drop messages? Have a process to put them back in the queue and redeliver them Worst case you get them twice, which isn't an issue for an idempotent system
Profanity is the only language all programmers know well
Change your IDE to render comments in Red-black. If they're there, there must be a reason to read them. If you read a comment that should not be there, delete it. Comments rot, just like code. Nobody maintains them. Comments don't make up for bad code.
In Python, if you need to created nested dictionaries (dictionaries of dictionaries), consider creating a hierarchy of classes. It improves the API and adds a layer of abstraction between interfaces and their implementations.
In theory, theory and practice are the same. In practice, they're not.
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.
To understand recursion, you must first understand recursion.
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.
Nothing is more permanent than a temporary solution
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