The Educated Software Engineer | Writing over @ https://t.co/EVIvqJCm8q | YouTube @ https://t.co/Wucct0uW1H
22 subscribed
Sep 20, 2023 • 8 tweets • 2 min read
If you're using AWS Lambda, stop scrolling and find out how you can potentially save a few to a few thousand dollars a month.
I actually saved my employer 8k dollars a month from only two Lambda@Edge functions running for each CloudFront request:
Did you know that whenever you deploy a Lamda function to AWS, it automatically tries to create a log group for you and automatically starts to send even only access logs through that pipe?
Feb 21, 2023 • 21 tweets • 8 min read
Git is by far the most used source control management tool out there.
It is basially an essential to know. And this justifies knowing a few of the most important git commands you need in your daily work.
Here are 19 that any developer should know: 1. Initialize a repository
git init is the most basic command.
It initializes a new repository in your current folder and starts the version control flow for your repository.
Feb 20, 2023 • 13 tweets • 3 min read
I've seen some people complaining about Twitter putting text-based 2FA behind the paywall.
There is gladly a far better way that still works for everyone (and to be honest, text-based 2FA is flawed).
A small tutorial:
Go to "Settings and Support".
Feb 9, 2023 • 5 tweets • 1 min read
If you learn Rust, you'll learn much more about computers and optimization/programming than many other programming languages can even teach you.
Want an example?
The Rust compiler can optimize away the discriminant of an enum by using invalid bit patterns for fields. ↓
Consider this scenario:
enum GlassState {
Filled(u8, bool)
Empty
}
And let's now simplify how that "looks" in memory:
The hardest part of being a senior software engineer:
Having experience.
Sometimes, experience tells us to take care of a million things that might not even be relevant to the case at hand.
Sometimes, experience hinders you from iterating fast.
It may sound counterintuitive, but it can really be a problem.
"What if this happens?"
"We once had this case where X happened; we need to guard against that!"
"We should probably add X and Y, so we don't run into Z..."
Jan 20, 2023 • 10 tweets • 2 min read
Algorithms in Rust:
This is the infamous fast inverse square root implemented in Rust.
This particular implementation was initially discovered in Quake III Arena's source code and rose to fame in 2002 and 2003.
Oh, and it shows some pretty interesting traits:
As the graphic already states, the inverse square root is often used in computer graphics.
It is used to calculate reflections of lighting and shading, when normalizing corresponding vectors.
Jan 19, 2023 • 4 tweets • 1 min read
Most Software Developers don't code all day. You should never feel guilty for not writing code for 8 straight hours.
Software development is also about thinking, taking breaks, thinking again, and then writing a few lines of code, testing whether they work afterward.
If someone ever tries to tell you something else, they are lying.
Software has become so complex these days that it's sometimes impossible to get everything right the first time.
You need preparation to get an idea of how to solve a problem.
Jan 19, 2023 • 7 tweets • 2 min read
Algorithms in Rust:
Here is an implementation of finding the greatest common divisor of n numbers in Rust.
It uses Euclidean division to calculate the GCD of two numbers and recursion to calculate the GCD of n.
No fancy language constructs used, except slices.
The Euclidean algorithm is based on the principle that the greatest common divisor of two numbers does not change if the larger number is replaced by its difference with the smaller number.
Jan 6, 2023 • 12 tweets • 4 min read
With all the hype for ChatGPT, Midjourney, and other AI tools going on, you probably want to jump in yourself.
But did you know that you don't necessarily need Python to do that?
JavaScript can do that, too!
Here are a eight JavaScript libraries that will blow your mind:
0. Disclaimer
Before someone jumps in with the usual "BuT pYThOn iS WaY BEttEr tHAn JS!":
Python is only a wrapper about core logic implemented in native languages, and it has some nice syntactic sugar, but that's it.
JavaScript is equally as good as a glue language.
Dec 12, 2022 • 12 tweets • 5 min read
Let's be honest, CSS can be pretty difficult.
I had a hard time learning it, but there are a few resources that can definitely help you to understand the style language of the web.
Here is a collection of my favorite ones:
1. codrops
An extensive CSS reference that will serve you even better than MDN.
Definitely, my go-to resource when I want to look something up.
Having a good portfolio is crucial to showcase what you are capable of.
It can lead to jobs, gigs, and long-term clients.
Here are some ways to build a portfolio for software developers, developer advocates, data scientists, UX designers, and many more:
1. Create a portfolio page
A portfolio page is one of the most crucial things to have if you aim to market yourself and showcase your work.
You can be present on multiple platforms, but there should be one central place that you own.
Oct 11, 2022 • 12 tweets • 2 min read
Here are five tips that helped me to grow as a developer.
They aren't complicated and can be implemented directly while most likely giving you great results:
1. Learn To Listen
Listening is more important than talking.
If someone has something to say, listen to them, and don't interrupt them.
If you have questions about certain aspects of what they say, write them down.
Then ask those questions later and talk about them.
Sep 23, 2022 • 33 tweets • 5 min read
So many people say "learn the fundamentals", but sometimes it's difficult as a beginner to even remotely grasp what that means.
That's okay.
Let's talk about it, and let me give you some info on it (from my point of view):
1. What Actually Are Fundamentals?
Fundamentals are concepts, and maybe even techniques, that you can apply in multiple areas and multiple programming languages.
They are not tied to anything specific and are sometimes pretty theoretical.