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
Design patterns in 1 tweet Proxy: An object that represents another object Ex: credit cards act like proxies for money in your bank account. Instead of interacting directly with the funds, you interact with the proxy.
"An expert is a man who has made all the mistakes that can be made in a very narrow field." - Niels Bohr
Shell globbing: shell pattern matching for filenames. Ex: - ls *.png -> all png files - ls log-* -> all files that start by log- - ls *.* -> all files that contain a . - ls * -> all files The shell expands globs before running the commands
7 Things I wish I'd learned sooner - Things change fast in software industry - Focus on learning what you need to progress - Nobody's code is perfect - Don't be intimidated - Focus on projects and impact, not just technologies - Bias for action - Remember the big picture
"There are only two kinds of languages: the ones people complain about and the ones nobody uses." - Bjarne Stroustrup
Programmer - an organism that turns coffee into software
In an interview, many junior engineers think they're being evaluated for their past experiences They're actually being evaluated for their future potential: - To be able to learn new things - To execute and move things forward - To behave like a leader
Python allows else blocks to follow for and while loop interior blocks found_obj = None for obj in objects: if obj.key == search_key: found_obj = obj break else: print('Not found.') The else block only runs if the loop body did not hit a break
Docker - Creates a self-contained space for apps to run - Increases portability: no more "it worked on my machine" - Promotes the usage of microservices - dockerHub -> ~ Github for docker images - To orchestrate multiple containers, use Kubernetes or Docker Swarm
Writing stuff down on paper will allow your brain to focus on the logic.
Objective C was invented by Brad Cox and Tom love in 1983 It was the main language for Mac OS and iOS until the Swift appeared in 2014 It's possible to compile C programs with an Objective-C compiler and to include C code in an Objective-C class NSLog(@"Hello, World!");
Theory is when you know something, but it doesn't work Practice is when something works, but you don't know why Programmers combine theory and practice Nothing works and they don't know why
CIA Triad - Confidentiality: only authorized users can access the data - Integrity: to prevent unauthorized modifications of data - Availability: to ensure authorized users can access resources when they need them The Pillars of Information Security
Test Driven Development in 1 tweet 1. Write a test that fails. Not compiling is failing 2. Write the minimum amount of code that makes the test pass 3. Refactor (code and tests) or go back to 1 as necessary
"My definition of an expert in any field is a person who knows enough about what's really going on to be scared." P. J. Plauger
Recursion trades description for time
In the face of ambiguity, refuse the temptation to guess - The Zen of Python
Learn something. Build something.
Software Engineering isn't rocket science ... it's harder
The only way to get good, just like with anything else, is to practice.
Basic OOP modelling: - Inheritance: "is-a" relationship. What applies to parent classes also applies to derived classes - Composition: "has-a" relationship. A "car" "is-not-a" a "steering wheel" A "car" "has-a" "steering wheel"