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
There's never a time to start over and rewrite code. And it's never a good idea to start over and rewrite it.
An old running joke on Netscape: “We're absolutely 100 percent committed to quality. We're going to ship the highest-quality product we can on March 31st.”
Teaching people to program is different from teaching people where the semicolon goes.
Weak programmers focus on learning the latest frameworks. Strong programmers focus on mastering the fundamentals of programming.
Normalize testing your code
It's one thing to go learn a language for fun, but until you write some a big, complex system in it, you don't fully learn it.
Always try to do something a little harder. Something that is outside your reach.
Don't afraid of your ignorance. If you don't understand how something works, ask someone who does. Not knowing something doesn't mean you're dumb. It just means you don't know it yet.
7 tips to work more efficiently 1. Have a definition of done for your tasks 2. Define their scope 3. Time estimates are hard 4. Have a rule to decide when to automate a task 5. Work incrementally 6. Premature optimization is the root of all evil 7. Get a rubber duck
Java in 1995 by James Gosling at Sun Microsystems - Originally called Oak - OOP language - Write Once Run Anywhere philosophy - Java applications run on JVMs (machine independent code) - 3 billion devices currently run Java System.out.println("Hello, World!");
"Intelligence is the ability to avoid doing work, yet getting the work done." - Linus Torvalds
ssh 101 - ssh stands for secure shell and is used to securely connect to remote hosts - ssh creates a TCP connection on port 22 - Syntax: ssh username@hostname (or ip address)
Design patterns in 1 tweet There are 3 main types of design patterns - Behavioural. How do objects interact. Ex: Template - Creational. How to create objects. Ex: Builder, Prototype - Structural. How objects are composed to form larger structures. Ex:Adapter, Proxy
Counting sort is applicable when each input is known to belong to a particular set, S, of possibilities.
"Walking on water and developing software from a specification are easy if both are frozen." - Edward V. Berard
5 Random coding tips Modularize your code Improve your communication skills Learn to learn Collaborate cross-team Learn to delegate
"Syntactic sugar causes cancer of the semicolon." - Alan J. Perlis
Ethereum is considered “the world computer.” Do you know what that means?
6 Common string interview questions 1. Reverse a string 2. Reverse all words in a string 3. Remove duplicates in a string 4. Print all permutations of a string 5. Check if two strings are anagrams 6. Check if a string is a palindrome Try to solve them (easily googable)
Sources of bugs: - Memory allocation char* ptr; cin >> ptr; - Off-by-one int v[5]; for (i=0; i<=5; i++) f(v[i]); - No base case in recursion int fib(int n) { return fib(n-1) + fib(n-2); } - Not updating index in while loop while(i>2){ f(); }