←back to thread

172 points yatrios | 4 comments | | HN request time: 0.881s | source
Show context
0xbadcafebee ◴[] No.42184298[source]
For those not aware, Shift Left[1] is (at this point) an old term that was coined for a specific use case, but now refers to a general concept. The concept is that, if you do needed things earlier in a product cycle, it will end up reducing your expense and time in the long run, even if it seems like it's taking longer for you to "get somewhere" earlier on. I think this[2] article is a good no-nonsense explainer for "Why Shift Left?".

[1] https://en.wikipedia.org/wiki/Shift-left_testing [2] https://www.dynatrace.com/news/blog/what-is-shift-left-and-w...

replies(12): >>42185611 #>>42186878 #>>42187331 #>>42187375 #>>42187393 #>>42187419 #>>42187454 #>>42187463 #>>42187501 #>>42188834 #>>42192801 #>>42194403 #
leoc ◴[] No.42185611[source]
So “shift left” is roughly equivalent to “tests first” or “TDD”?
replies(5): >>42185876 #>>42185932 #>>42185960 #>>42186122 #>>42188425 #
hitchstory ◴[] No.42186122[source]
That's just one example of it.

Other examples:

* Replacing automated tests with (quicker) type checking and running it on a git commit hook instead of CI.

* Replacing slower tests with faster tests.

* Running tests before merging a PR instead of after.

* Replacing a suite of manual tests with automation tests.

etc.

replies(2): >>42186754 #>>42187010 #
1. js8 ◴[] No.42187010[source]
So aside from automation (which also has tradeoffs), when you shift left, what gets shifted right?
replies(1): >>42187322 #
2. saynay ◴[] No.42187322[source]
The knowledge needed to do the 'shift-left' tasks. The downside of making your developers take on more tasks that used to be handled by someone further down the chain is they need to know how to do those tasks.
replies(1): >>42187451 #
3. hammock ◴[] No.42187451[source]
Why can’t you shift the “someone further down the line” left along with the task?
replies(1): >>42188527 #
4. ElevenLathe ◴[] No.42188527{3}[source]
This is interesting. Seems like it would mean something like having QA or infosec pair program with app devs. I'm sure somebody does this and am curious how it works out in practice.