Apr 24But you are kind of proving my point.1Leo LiouWe may just have to agree to disagree here -- you keep making these broad, absolute claims ("you…We may just have to agree to disagree here -- you keep making these broad, absolute claims ("you will be kicked out of the game") that do not match reality as I've seen it. In this particular case, I've bounced back and forth between backend and frontend development repeatedly during…2 min read
Apr 23…t unexperienced kid out of school. So yes! It is not over once you are a 45 year old web developer, you just need to change your mindset from a programmer’s mindset to an manager’s mindset.Are old developers worthless?39637Leo LiouI'm sorry, but this is nonsense.I'm sorry, but this is nonsense. I'm in my mid-50s, and I'm still working as a highly-placed IC programmer working for cool startups. I've done management, and I'm not bad at it, but it's not to my taste. You can stay active as a programmer indefinitely, if and only if…2 min read
Nov 23, 2021A Philosophy of Testing 8: SummaryBack to Part 7. If you’ve gotten all the way to the end of this series: thank you! This has been a bit of a labor of love, distilling the lessons from many years of building Scala test harnesses whilst building Scala services. By way of summary, let’s tot up…Scala2 min read
Nov 23, 2021A Philosophy of Testing 7: Code for TestingBack to Part 6. In the previous post, I made a number of suggestions about how to build your system in order to make it reliably testable. There’s a bit of controversy nestled in there, so let’s tackle it head-on. It’s not unusual for folks to take the viewpoint that…Scala8 min read
Nov 17, 2021A Philosophy of Testing 6: The Quest for DeterminismBack to Part 5. Having discussed what sorts of tests to write for Scala services, and how extensively to test, let’s change gears and talk about a more basic principle: reliability. How many times has this happened to you? You commit your code, open a PR, your integration pipeline runs…Scala5 min read
Nov 16, 2021A Philosophy of Testing 5: The Case for 100%Back to Part 4. So far, I’ve argued that Scala services should favor scenario tests instead of old-fashioned unit tests in most cases. Let’s move on to the next topic: how much do you need to test? If at all possible, your Scala code should have automated test coverage, using…Scala8 min read
Nov 16, 2021Improved main methods coming alongTaking a brief break from A Philosophy of Testing for a little bit of good old-fashioned Dotty news: This morning, I noticed this Draft PR, titled “Generalize main annotations”. That’s pretty exciting. One of the nice features of Scala 3 is the new @mainannotation, which allows you to more-easily create…Scala1 min read
Nov 15, 2021A Philosophy of Testing 4: Scenario TestsBack to Part 3. Having argued passionately, in the last article, against writing too many unit tests, that begs the question: what should you be doing instead? In this part, I’m going to lay out the Scenario Test approach. Stepping back a bit, it’s common for folks to focus on…Scala7 min read
Nov 12, 2021A Philosophy of Testing 3: The Problem of Unit TestsBack to Part 2 In the previous article, I argued that Scala is a different language, and its testing requirements are different. Let’s examine a key difference: why old-fashioned unit-testing is mostly not a good idea for Scala services. (Please remember that this series is focused on testing services specifically…Scala5 min read
Nov 11, 2021A Philosophy of Testing 2: Idiomatic Scala and TestingBack to Part 1 This series of articles is specifically about testing applications written in Scala. Even more specifically, we’re going to be talking about idiomatic Scala. Now yes — there is no hard-and-fast definition of “idiomatic” Scala, and folks may disagree with the details here. But I think there’s…Scala5 min read