Your Coding Teacher
371 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
Tutorials are useless if you don't build anything
What is your favourite text editor and why is it Vim?
Always Be Coding
Copy-Paste is the root of all evil.
Do not code if you are tired You'll end up redoing what you did Double waste of time
Interview question. Write a function to check if a string s is a palindrome Python be like: return s == s[::-1]
Special cases aren't special enough to break the rules - The Zen of Python
"Software is like sex. It's better when it's free.." - Linus Torvalds
Programming is at the heart of evolution
GCP has machine families with predefined amounts of RAM and CPU - General. Best price/perf for many tasks - Memory-optimized. For memory-intensive tasks - Compute-optimized. Highest perf/core - Shared-core. Cost-effective for small apps You can create custom machines too
If you don't have a job, get something to pay the bills. And design a plan to transition to a better job. Ex: use the tools you need for the next job to build something at your current job. You'll develop skills while being paid and help your team
Big O analysis tip Big O notation describes the rate of increase of an algorithm. It could be possible for O(N) code to be faster than 0(1) code for *some inputs*. O(N^2) sorting algorithms are generally good for small inputs.
Static vs Shared libraries - Static: code from the library is copied into the binary. Larger binary size. Must recompile if library changes - Shared: library code is loaded when needed. Processes can share the same library. No need to recompile everything if library changes
I've realised I learn by doing, not by reading or taking notes. This includes writing code and writing articles where I teach what I know.
UDP vs TCP in one line: TCP has higher overhead and latency, but guarantees that the messages will arrive (in the right order). Good for: - The Web - SSH - Emails UDP is "less reliable" but has lower latency. Good for - Multiplayer action games - Video calls - Streaming
Lisp (LISt Processing language) was developed at MIT in 1959 Lisp is considered the first functional programming language and was extensively used in artifical intelligence. (format t "Hello, World!")
A service mesh is a configurable framework that allowa you to connect, control, observe and secure microservices. It removes these responsabilities from you application logic, delegating them to the service mesh.
Some important root subdirectories in a tweet - /media: mount removable media - /mnt: user temp mounting - /sys: contains device & system info - /sbin: system executables - /tmp: temporary files - /usr: the bulk of the Linux system - /var: programs save runtime info here
What happens when you run ls in your terminal? The shell calls fork() to create a copy of the shell process This copy calls exec(ls) to run ls This is how new processes are created fork and exec are system calls - ways for your programs to interact with the kernel
90% of programming is saying WTF!!!