Nico Braun

1.6K posts

Nico Braun banner
Nico Braun

Nico Braun

@codingsafari

No bit is left unflipped, on my journey down the rabbit hole. 🐇

Universe Inscrit le Nisan 2015
262 Abonnements76 Abonnés
Tweet épinglé
Nico Braun
Nico Braun@codingsafari·
I feel like at any given time there exists only a handful of truly new tweets and countless copycat variants of them. #creativebutnotcreative #dev #tech
English
1
1
7
0
ThePrimeagen
ThePrimeagen@ThePrimeagen·
i think that every language should create its own build and package managing tool. the fact that JS didn't has hindered the industry for over a decade
English
32
12
357
62.7K
Nico Braun
Nico Braun@codingsafari·
@ThePrimeagen @igorguemusic there was nothing really to build before nodejs came along. The js code would run, w/o build, in the browser as this was the only place it could run. So I am not sure if js should pick up that responsibility just because someone decided to take the langauge out of context.
English
4
0
3
1K
ThePrimeagen
ThePrimeagen@ThePrimeagen·
@igorguemusic npm doesn't build npm just gets packages pnpm has monorepo yarn has both tsc does things vite does things turbo does both monorepo and build this is a mess
English
8
0
87
3.9K
Nico Braun
Nico Braun@codingsafari·
@semanticart Ok thanks. Sounds interesting for sure. But I assume as opposed to a canary, it adds complexity to the codebase. Because the code doesn't need to care about canary but it needs to contain extra logic to conditionally serve a feature or not.
English
1
0
0
61
Jeffrey Chupp
Jeffrey Chupp@semanticart·
I'm convinced Feature Flags are one of the best tools you have to mitigate risk. Roll something out to 1% of users and your bug tracker and alerting goes wild? Guess what? 99% of your users never had an issue. 😎 You should be using Feature Flags more.
English
27
42
460
77K
Nico Braun
Nico Braun@codingsafari·
@semanticart I just found this sentence: A canary release is also different from a feature flag release, as feature flags are used to expose a specific feature to a small subgroup of users. A canary release exposes a specific version of the entire application or service.
English
1
0
0
60
Jeffrey Chupp
Jeffrey Chupp@semanticart·
@codingsafari Canary releases can tell you if a deploy is healthy but are harder to help shake out bugs that only happen deep in a user workflow. If a bug is encountered there and you can turn the feature off via a click, that's helpful.
English
1
0
0
60
Nico Braun
Nico Braun@codingsafari·
@semanticart It sounds like you describe canary release, to me. What are the flags doing in this equation? I have no idea what FF are.
English
1
0
0
62
Jeffrey Chupp
Jeffrey Chupp@semanticart·
@codingsafari Rolling back via deploy takes however long your deploy process takes. With FF, turning off the 1% should be just a couple clicks and then be immediately effective. Any robust FF service or tool will support a percentage-based rollout.
English
1
0
0
300
Nico Braun
Nico Braun@codingsafari·
Thanks @dagger_io, especially to Sherie, for making this happen 🚀
Nico Braun tweet media
English
3
1
14
1.4K
zigo 101 - Zig + Go
zigo 101 - Zig + Go@zigo_101·
Although not perfect, Go toolchain design is the best among famous programming languages. It has many good points other languages toolchain developers should learn from: * no extra command * distributed * (comparatively more) secure * less configurations
English
1
2
21
3.2K
Nico Braun
Nico Braun@codingsafari·
@Carnage4Life Sounds like a fallacy. Just because a real rockstar may not play well with a real orchestra, which has to be proven first btw, doesn't mean this translates to a team where there is neither a real rockstar nor a real orchestra.
English
0
0
0
140
Nico Braun
Nico Braun@codingsafari·
@gunnarmorling Mock is a bit of s generic term. It depends on what you are mocking I guess. mocking I/O is perfectly fine, imo. For example, It can be real hard to spin up half of your service fleet to run tests, locally.
English
1
0
1
467
Gunnar Morling 🌍
Gunnar Morling 🌍@gunnarmorling·
Mocks in tests are mostly a happy story you are telling to yourself. In the better case, you're repeating what you've expressed yourself before in your actual code. In the worst case, you're retelling someone else's story, without being quite sure about all its details.
English
26
29
196
51.9K
ThePrimeagen
ThePrimeagen@ThePrimeagen·
@thdxr It always comes down to revert and cherry pick for me. If you cannot do these two operations reasonably, you should reconsider how you approach your version control. Specifically cherry pick
English
7
1
44
8.6K
dax
dax@thdxr·
never rebase a public branch rebase personal branches to catch up turn on rerere.enabled to remember conflict fixes require linear history, disallow merge commits on GitHub squash and merge prefer trunk based development (trunkbaseddevelopment.com) now you know how to git
English
36
89
1K
180.3K
Nico Braun
Nico Braun@codingsafari·
@t3dotgg Hooks are useful to automate some of my own tasks. Meaning they are personal in a way and ment to aid. For quality gates the only thing that makes sense is CI on pull request. Hooks can be bypassed anyway, so you cannot make them mandatory and you cannot trust they they have run.
English
0
0
2
625
Theo - t3.gg
Theo - t3.gg@theo·
Okay last one for the week (hopefully we can all agree) Precommit hooks are bad
English
135
23
829
246.3K
Nico Braun
Nico Braun@codingsafari·
@ngriffin_uk @t3dotgg If this stuff isn't running on you CI server, it doesn't do anything as those constraints can be bypassed or not even enabled. If it runs on the server, what do you need it locally for? Hooks can be useful in some cases, but not to enforce constraints.
English
1
0
1
664
Nicholas Griffin
Nicholas Griffin@ngriffin_uk·
@t3dotgg Hmm, what are you using them for? I use them to ensure that non devs are optimising images before they are committed in one repo, works great. (Only triggers if images are being committed too) I could understand this if you mean for lint checks, etc.
English
1
0
4
3.4K
Nico Braun
Nico Braun@codingsafari·
@GabrielRUrbina @ThePrimeagen I think one commit with a good message per PR, is the way to go. I usually do a bunch of commits with garbage messages and then do squash merge. But I also know projects doing a normal merge but requiring you to rebase/squash your feature branch beforehand. More or less the same.
English
0
0
1
358
Gabriel Ricardo Urbina
Gabriel Ricardo Urbina@GabrielRUrbina·
@ThePrimeagen That's why I keep few commits per PR and never retreat in rebases, we must defend the history from the merge commits
GIF
English
1
0
2
2.9K
ThePrimeagen
ThePrimeagen@ThePrimeagen·
fine if you use git merge and create merge commits in history you are a monster and have never worked in a large team
English
88
49
879
293.4K
Nico Braun
Nico Braun@codingsafari·
@rawkode Once again, no one with imposter syndrome would say they have it's. Saying you have imposter syndrome indicates that you think you are better than you are, in reality. So it's quite the opposite from imposter syndrome.
English
0
0
0
19
David Flanagan
David Flanagan@rawkode·
Imposter syndrome doesn’t go away with experience either, it actually can get worse. I’ve been doing this professionally for 20 years and I still have no idea what I’m doing.
English
9
2
53
9.1K
Nico Braun
Nico Braun@codingsafari·
@MrPeterLMorris @davidpine7 "Creating generic types at runtime". This should be illegal. Otherwise, you may as well write JavaScript.
English
0
0
0
13
Nico Braun
Nico Braun@codingsafari·
@tottinge Until they are in the middle of the way more simple rewrite and realize why things have been done this way. All the small things to consider, are missing when judging while glancing over things.
English
0
0
1
42
Tim Ottinger
Tim Ottinger@tottinge·
When something isn't obvious, people may declare it complex. "If I don't immediately understand it, as smart as I am, it must be because it's too convoluted. That's the only possibility." Anything unfamiliar is declared "complex."
English
17
6
50
9.7K
Nico Braun
Nico Braun@codingsafari·
@christiancmann @ansonphong @kentcdodds Bottom line is, yes there are solutions. But why would I make my life harder? If you don't have your brightest day, this stuff can cost you some time, to figure out and fix. I rather not create avoidable pitfalls. So I can sped my time or something else.
English
0
0
0
20
Nico Braun
Nico Braun@codingsafari·
@christiancmann @ansonphong @kentcdodds Yes, you do want spaces. But it's very hard to tell how to align properly if your editor is hiding the true indentation from you. Say you need to make sure your string is indented under a certain key or variable to have valid syntax.
English
1
0
0
29
Nico Braun
Nico Braun@codingsafari·
@ansonphong @kentcdodds I had already issues with that. When you use a multiline string and it looks ok in your code because tabs are displayed in a certain way, but actually it's broken. I had it in go and cue. So if tabs then 4 space width or nothing, for me.
English
1
0
1
151
🐸phong
🐸phong@ansonphong·
@kentcdodds Cool thing about tabs is you can adjust how much you want it indented. Depending on the particular code and screen then sometimes its 2, 3 or 4 spaces per tab makes all the difference for readability. 🤓
English
1
0
6
3.5K