Oliver Jumpertz Profile picture
The Educated Software Engineer | Writing over @ https://t.co/EVIvqJCm8q | YouTube @ https://t.co/Wucct0uW1H
Shreyash Bukkawar Profile picture Rasika Gayan Gunarathna Profile picture Hritik Jaiswal 🚀👨‍💻 Profile picture Sathishkumar Profile picture Luis Profile picture 21 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: 19 essential git commands for every developer. 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. git init
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:

Filled(69, true) => [69, 1]
Filled(69, false) => [69, 0]

And what about Empty?

Well... -> Empty => [0, 2]
Jan 23, 2023 6 tweets 1 min read
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: const THREE_HALFS: f32 = 1.5; const WTF: u32 = 0x5f3759df;  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. /// Returns the greatest common divisor of n numbers pub fn 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.

tympanus.net/codrops/css_re…
Nov 13, 2022 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: 19 essential git commands f... 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. git init
Nov 10, 2022 12 tweets 3 min read
There is a global talent shortage of software engineers.

This shortage is projected to reach 85.2 million by 2030, but many developers get rejected daily because they unnecessarily fail their interviews.

Here is how you can do better and ace any technical interview: Interviews take a lot of preparation.

You waste a lot of time by not doing everything possible to shine in your interviews.

Additionally, you can potentially save many hundred hours by optimizing how you approach your technical interviews.
Nov 9, 2022 9 tweets 3 min read
Testing JavaScript can be difficult.

It can sometimes be hard to write excellent tests that assert that what you developed really works.

To support you, I compiled some beginner-friendly JavaScript testing resources for you: 1. JavaScript testing for beginners

This is a course that delivers one lesson each day to your inbox.

You can do it at your own pace.

Perfect for beginners, with some great advice.

marclittlemore.com/javascript-tes…
Nov 7, 2022 15 tweets 5 min read
13 best websites to learn how to code for free: 1. freeCodeCamp

Free online coding school, founded in 2014.

Offers education in (non-exhaustive):

- HTML
- CSS
- JavaScript
- Data visualization
- Testing
- Node.js
- Python
- Machine learning
- Data Analysis
- InfoSec

freecodecamp.org
Nov 2, 2022 32 tweets 5 min read
Data structures and algorithms are important for any software developer.

Sometimes loved, more often dreaded, but at the core of our craft.

Here is an introduction to the most important data structures, including learning resources: 1. Why you need to learn them

The reality is: You will and should never implement many data structures yourself on the job.

There are libraries for this purpose. Either a language's standard library or a commonly used library will provide them for you.

But is this all?
Nov 1, 2022 10 tweets 2 min read
Some of the most important tools beginners in web development should take a look at:

- ESLint
- Prettier
- Babel
- Webpack/Parcel/Snowflake/esbuild
- Mocha/Jest

Let's go over them individually: 1. ESLint

ESLint can take care of both code quality and code style.

Code quality covers issues like unused variables.

Code style covers issues like mixing spaces and tabs to indent code.

A good rule of thumb is to use ESLint to check your code quality.
Oct 31, 2022 20 tweets 6 min read
15 Top IT Certifications In 2022 (before the year ends!)

The industry loves certificates, but not all of them are equal.

An overview of the highest paying ones right now, according to studies. ↓ 1. CompTIA Security+

Security becomes more and more critical each day.

Even baseline skills necessary to perform core security functions in IT are in high demand.

Average salary: $110,974

comptia.org/certifications…
Oct 29, 2022 12 tweets 4 min read
GitHub hosts more than 200,000,000 repositories.

But only a fraction of them are valuable resources for specific niches.

Here are 10 of my favorites repositories that help you grow as a software developer: 1. Professional Programming

A collection of full-stack resources for programmers.

Everything to make you a more proficient developer.

github.com/charlax/profes…
Oct 13, 2022 18 tweets 4 min read
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.