Is there anyone eager to hire a good FE dev with 1.5 years of commercial experience? 🤔
I'm talking FE dev I mentored myself from scratch: 10+ months 1on1 advanced training, heavily coding-focused. Good person, great attention to details and communication skills 💪
Bartosz Cytrowski retweeted
Nowy rozdział w podkaście trzeba zacząć mocno 🔥 Dziś zapraszam na rozmowę o architekturze makro front-endu Atlassiana, monorepo z ponad 1k pull-requestów dziennie i pracy przy takim systemie. Gościem specjalnym jest dziś Bartosz @cytrowski, prowadzi @tomasz_ducin 🔥
Advent of Code. Day 17th. I have to let it go this time. It's about time to start chasing other aspects of my life 😅
Maybe next year I'll finally manage to show up on the global leaderboard at least once 🙃
I just completed "The Floor Will Be Lava" - Day 16 - Advent of Code 2023 adventofcode.com/2023/day/16 #AdventOfCode
So far the most fun one 🤓
I just completed "Lens Library" - Day 15 - Advent of Code 2023 adventofcode.com/2023/day/15 #AdventOfCode
At 6am it took me over 30min to understand the task description.
I just completed "Parabolic Reflector Dish" - Day 14 - Advent of Code 2023 adventofcode.com/2023/day/14 #AdventOfCode
Memoization is king 👑
I just completed "Point of Incidence" - Day 13 - Advent of Code 2023 adventofcode.com/2023/day/13 #AdventOfCode
It was good to have transpose at hand from day 11 :D
Bartosz Cytrowski retweeted
🔥 #Architecture #Focus 🔥
🏗️❓ Why long-lasting projects should maintain an Architecture Decision Record (ADR)? 📝👷🏼♂️
ADR is:
📝 documenting Architecture Decisions (ADs)
📝 only important ones
📝 they focus on the WHY was a decision made
📝 it's rather short
📝 NOT a code documentation, but high-level decisions 🏗️
🤔 SO WHY? 🤔
🪄 Imagine you join a project and after some time you start QUESTIONING DECISIONS made (like "who wrote that piece of ...⁉️" 🤬).
☺️
💪 you might think an incompetent person made a wrong decision and 🦸 you 🦸 will FIX IT.
🧑💻 but as you start diving into the problem, it seems that there we SO MANY FACTORS you HAVEN'T TAKEN INTO ACCOUNT 😨. Ooops 💩 the initial solution includes them... it's not that bad afterall. Important reasoning (the WHY) was just not documented.
HOW to do ADRs?
🔍 forget your perspective, try walking in shoes of people who would join your project in the future
🔍 what might be non-obvious for them?
🔍 what decisions might be great today, but become dangerous in the future?
🔍 what consequences of the decision do you expect? What benefits and what costs?
🔍 how could your future self EVALUATE the decision? In the long run, was it good?
... and what would make a 💩y ADR?
💩 write long things nobody wants to read
💩 describe things easy to find in the code
💩 focus on things which outdate easily
💩 focus on things which are easy to change
💩 describe how things work
👷 EXAMPLE CONCERNS:
🏗️ why did you decide to use a #monorepo?
🏗️ why did you decide to use a #distributed state management solution?
🏗️ why do you synchronise your state across the system in a certain way?
🏗️ why did you move your #frontend app to #microfrontends?
🏗️ why did you choose a certain architecture style in an #angular app?
🏗️ why did you drop #redux from a #react app?
Embrace ADRs in your system.
😇 Future maintainers will thank you for this 😇
➡️ example ADR template: github.com/joelparkerhenders…
➡️ about ADRs: adr.github.io
➡️ more templates and examples: github.com/joelparkerhenders…
"Hot Springs" - Day 12 - Advent of Code 2023 adventofcode.com/2023/day/12
One of those I won't forget. I struggled a lot and after searching through solutions thread I realised the missing bit in my code was memoization.
This post saved my day: reddit.com/r/adventofcode/co…
December for some reasons is a month of programming challenges. You can find "advents" of everything. This one I didn't know before: typehero.dev/aot-2023
I just completed "Cosmic Expansion" - Day 11 - Advent of Code 2023 adventofcode.com/2023/day/11 #AdventOfCode
I woke up too late for this one 😪
I just completed "Pipe Maze" - Day 10 - Advent of Code 2023 adventofcode.com/2023/day/10 #AdventOfCode
I'm not proud of my code at all. But it tells the answer 😅 (so many complex cases today)
I just completed "Mirage Maintenance" - Day 9 - Advent of Code 2023 adventofcode.com/2023/day/9 #AdventOfCode
My frequency of "off by 1" errors is starting to annoy me 🥲
I just completed "Haunted Wasteland" - Day 8 - Advent of Code 2023 adventofcode.com/2023/day/8 #AdventOfCode
I'm feeling a first crisis of waking up each day at 5:45 😮💨
I just completed "Camel Cards" - Day 7 - Advent of Code 2023 adventofcode.com/2023/day/7 #AdventOfCode
I just completed "If You Give A Seed A Fertilizer" - Day 5 - Advent of Code 2023 adventofcode.com/2023/day/5 #AdventOfCode
I had to give up solving it in Chrom Dev Tools. This time I needed the Bun ♥️ performance: bun.sh/
#bun #bunisfast
I just completed "Scratchcards" - Day 4 - Advent of Code 2023 adventofcode.com/2023/day/4 #AdventOfCode
It's one of those days when non-native English speakers cry trying to understand the rules.
I cannot agree more 😅
PL: Dla wszystkich dotkniętych "barreliozą"
PSA 📢: Avoid Barrels
(A barrel is a file that exports code from other files)
Barrel benefits:
✅ Shorter import paths
✅ Support importing many files via one import
✅ "Hide" modules - Only export some modules for the "public" interface
But, I avoid barrels. Here's why:
🚫 Bloats the bundle. Inhibits tree shaking.
🚫 Increases memory usage.
🚫 Slows tooling (builds, tests, linting). Barrels create more modules to parse.
🚫 Slows code navigation ("Find all references" finds the barrel instead of the actual source).
🚫 Barrels shorten import paths and group related imports. Sounds nice, but it's an outdated benefit because I don't write imports anymore - my editor reliably auto-imports.








