1,003 karma · joined January 13, 2023
interests mostly: data engineering, open source, writing, obsidian, and neovim.
personal blog: ssp.sh second brain: brain.ssp.sh de vault: vault.ssp.sh book: dedp.online newsletter: subscribe.ssp.sh
socials: bsky.app/profile/ssp.sh, twitter.com/sspaeti, linkedin.com/in/sspaeti, https://github.com/sspaeti/
The Data Engineering Toolkit contains 70+ Technologies & Tools, 10 Core Knowledge Areas (from Linux basics to Kubernetes mastery), and multiple programming languages + their ecosystems. It is open-source focused.
It's perfect for new data engineers, career switchers, or anyone building their Toolkit. I hope it is helpful. Let me know the one toolkit you'd add to replace an existing one.
I couldn’t agree more with the sentiment of this article.
Writing yourself, _writing manually_ is much nicer, to hear your unfiltered thoughts, than condensing them through an LLM, and get average-sounding sentences with no soul. To me, LLM writing is soulless. I even started to turn to Grammarly and Copilot, as these were a mere distraction to the actual task at hand: writing. Instead of writing, I was constantly grammar fixing, and ultimately, nothing got done. I love the gym-analogy https://news.ycombinator.com/item?id=43888803 gave.
It's my most personal and vulnerable piece. It's 1.5 years old, and I have added to the path with self-employment and many more decisions since. We can't plan these things; you only connect the dots afterward.
Some learning:
- I was blown away by how much I missed because I didn't speak English
- Mini-retirement shaped me to be who I became
- Stay curious, follow your instincts early
- Podcasts/books are Pandora's box of wisdom
- Stoicism or any practice helps a ton
- Different cultures are a blessing
- Everyone is fighting a battle you know nothing about. Be kind
- Try to be happy with less
- Travel doesn't always need to be to the other side of the globe
- Money is essential, but you can't buy happiness
- It's not sure that we'll find our soulmate
Thank you, Paul Millerd, for the book. I'd recommend you to read it and try to reflect on your own pathless path.
> Ultimately, it's your path, and it's never-ending. Stay curious, make memories, and follow your instincts.
The core of data engineering remains largely the same:
- Python is still the dominant language
- Key challenges persist: data integration, pipeline maintenance, quality assurance, process automation, and big data handling
- Fundamental skills (SQL, data modeling, ETL) are as crucial as ever
Some predictions that held true:
1. Python's rise in data engineering and science
2. Shift towards more programmatic skills in data roles
3. Growing importance of data engineering in data-driven companies
While tools have evolved, the underlying techniques and craft haven't changed dramatically. We've seen the rise of ELT and more flexible architectures, but the core purpose remains: making data accessible, reliable, and valuable for businesses. What's your take?
Much of it also reminds me of the days of Data Warehouse Automation, when I could template all of the tables with 2-3 templates and generate the whole DWH. Actually, these tools are still out there and used daily. Time to revive?
btw: I made a YT video of how I update it, in case of interest: https://youtu.be/myHKHM2mIis?si=8bZtmO0cdpItDZV7
Before I wrote about it too: https://www.ssp.sh/blog/obsidian-note-taking-workflow/
Key features:
- Covers 100+ core data engineering topics
- Inspired by Second Brain and Digital Garden methodologies
- Includes links to books, podcasts, and thought leaders in the field
- Updated regularly
- Ideal for both beginners and experienced professionals
Happy to get feedback :)
As the first paragraph explains, "This book is different from usual books. It does not come finished." The idea is to write a living book and share as I go. If you do not want early versions, skip for now and return later.
Suppose you like to explore the beginning of data engineering and challenges; you might find the intro chapters interesting. The greyed-out chapters are the ones I'm working on, and I'm planning to publish them later down the road.
Regarding the paywall, as mentioned here [1], part 2/3 of the chapters are closed, except for sponsored chapters such as The History of Data Orchestration [2]. I need to clarify what's free and what's not. Thanks for the hint.
[1] https://www.dedp.online/subscription.html [2] https://www.dedp.online/part-2/4-ce/bash-stored-procedure-et...
There's quite a bit of content around general DE knowledge. However, the anticipated design patterns are still in the works. Suppose that's what you're most excited about. In that case, you'll find the beginnings of exploring the patterns of `caching` and `ad-hoc querying` in the first Convergent Evolution chapter, but otherwise, you need to wait for more.
Vim is based solely on shortcuts. When I discovered that and played around a bit, I felt numb and a little stupid, having not learned the shortcuts (called Vim language) much earlier in my career.
> The Vim Language (and Motions)
Vim has a terrific language or grammar behind its shortcuts. Instead, remember a thousand shortcuts; you can learn a couple and combine them. This has nothing to do with the editor yet; they are universal and available in other editors as well.
> Vim is the only editor that optimizes editing text instead of writing from a blank page.
When you launch Vim, you are not typing what you click on your keyboard as you are not in the “insert” mode that you know. Instead, the normal mode you are in lets you do the commands.
> Why Neovim?
Today, there is even a newer version of Vim called Neovim. Super popular. Compared to Vim, Neovim uses Lua, an actual programming language, to configure and extend Neovim. This makes writing plugins and configuring Neovim easier compared to Vim native Vimscript.
> Learning Vim is hard
I also love learning new things and, even better, under the umbrella to make me more productive. But as many of you might have experienced, the hardest part is to get started. The initial learning curve is very steep .
> When you should NOT learn
Suppose you prefer to avoid fiddling and optimizing your workflow or if you do not write or code for a living. You can start with your current editor and activate Vim mode. It will save you a lot of frustration, trust me.
Some terms explained extensively:
- Fan-Out: dagster.io/glossary/fan-out
- Partition: dagster.io/glossary/partition
- Wrangle: dagster.io/glossary/wrangle
There is also: - Data Glossary Airbyte: glossary.airbyte.com
- Data Engineering Wiki by Reddit: dataengineering.wiki
- Seconda Glossary: secoda.co/glossary
- Glossary Databricks: databricks.com/glossary
- Airtable Glossary: airtable.com/shrGh8BqZbkfkbrfk/tbluZ3ayLHC3CKsDb
And I'm collecting an updated list here (in case of interest): https://www.ssp.sh/brain/data-engineering-glossaries/Everyone who types on a computer eight hours a day should learn the Vim language. Yes it's hard initially, but that's the case with everything new and different. But getting better every day and having more fun coding or writing should be motivation enough. Also, imagine, if you work over a decade, how many times you had to learn a new editor (notepad++, atom, eclipse, ...) some of which do not exist anymore. If you once learned the vim language, you are getting stronger. There is a reason the editor has existed since the eclipse of programming.
The Vim grammar is exceptional, as spoken language has verbs, subjects, and objects, as does the Vim language. The grammar has different verbs, to begin with. Copying (or yanking) in Vim with y, deleting with d, pasting with p, changing with c, and so on.
You can also see in the comments here people fight over Vim and VSCode, where the natural beauty is the language behind Vim. If you do not want to configure and customize your own, use VSCode and add the Vim extension. But if you're going to get better at your job, you should try the Vim language.
Once mastered, you edit text at the speed of thought. Sounds cheeky, but it's true for me. Instead of thinking, "I want to edit that word," my fingers jump to it and change it with a few keystrokes.
I wrote more on https://www.ssp.sh/blog/why-using-neovim-data-engineer-and-w... in case you are interested.