The same way musicians practice scales, you should have some exercises to get you up to speed. For example, when I learn a new language, I make sure I implement some algorithms (that I already know) that cover the basics: - Tree traversals - BFS - Mergesort - Etc
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
If this tweet gets 4,294,967,296 likes, it might cause an integer overflow
π₯Only 15 subscribers away from doing our first Q&A call π₯
Help us get there by sharing this group with others: https://t.me/codinglanguages
Help us get there by sharing this group with others: https://t.me/codinglanguages
Telegram
Your Coding Teacher
Coding, software engineering & #bitcoin technologies. I'll make you a better thinker, not just a better developer | Ex
Amazon, Senior DevOps @eBay
Amazon, Senior DevOps @eBay
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(); }
"It's OK to figure out murder mysteries, but you shouldn't need to figure out code. You should be able to read it." - Steve McConnell
Coding is not about learning programming languages. It is about analyzing a problem, considering different solutions, choosing the best one, and then implementing it in some programming language.
Benefits of Test Driven Development - Confidence to make changes: you've written a nice test suite - Documentation: tests show how to use the code - Force to think about good design: you need to decouple modules in order to unit test them However, it's no panacea
Think twice before you start programming or you will program twice before you start thinking