Little Green Viper

littlegreenviper.com · Personal blog · on HN since 2019

Chris Marshall, a long-time software developer, writes about testing, design documentation, risk and his own apps, mostly in Swift.

What HN saysCommenters call it great content and discuss his testing harness versus unit test article; one points out a broken documentation link.
16HN people shared it
9linked it in comments
15stories submitted
159story points
4 months agolast shared
2019people per year2026

Most-shared posts

  1. 1
    Testing: Harness vs. Unit
    5 people · 6 points · first shared 2024 · discussion on HN
  2. 2
    That's Not What Ships Are Built For (2019)
    4 people · 7 points · first shared 2020 · 1 comments on HN
  3. 3
    Leaving a Legacy
    2 people · 25 points · first shared 2020 · discussion on HN
  4. 4
    Evolutionary Design Specification
    2 people · 2 points · first shared 2020 · discussion on HN
  5. 5
    The road most traveled by
    2 people · first shared 2020
  6. 6
    Infrastructure
    2 people · first shared 2024
  7. 7
    Forensic design documentation
    2 people · first shared 2020
  8. 8
    AppDocs
    2 people · first shared 2020
  9. 9
    Writing an SDK with Core Bluetooth
    1 people · 106 points · first shared 2020 · 2 comments on HN
  10. 10
  11. 11
  12. 12
    Show HN: A Simple Demonstration of PassKeys in iOS
    1 people · 2 points · first shared 2025 · discussion on HN
  13. 13
    Implementing the Swift Package Manager
    1 people · 1 points · first shared 2020 · discussion on HN
  14. 14
  15. 15
    Improving an SDK with Core Bluetooth
    1 people · 1 points · first shared 2020 · discussion on HN

What HN people wrote when they linked it

ChrisMarshallNY · 2026-04-10
Classic stuff. True risk management is pretty hardcore science. I’ve always taken a more casual, and “off-the-cuff” approach, and write about it here[0]. [0] https://littlegreenviper.com/risky-business/
andsoitis · 2022-09-11
From your GitHub page you link to this list of your current, active apps (others having been deprecated): https://littlegreenviper.com/AppDocs/ I’m sure you’ve done some amazing work over the years and continue to do so. At the same time, these are not, in my mind, a showcase of “big” or ambitious applications.
monkeyjoe · 2022-01-06
I started reading through your site a bit. Great content. Wanted to let you know that the "Here is the Doxygen-generated documentation for the BADGER layer" link is broken on this page: https://littlegreenviper.com/miscellany/forensic-design-documentation/
chrisweekly · 2025-08-25
"Compared to unit tests, a test harness is a [usually] simple standalone application that incorporates the system under test, and presents a user interface. Since it is for testing, it may expose internal metrics and allow the user to access parts of the code that are usually hidden." ^ from https://littlegreenviper.com/testing-harness-vs-unit/
glynnormington · 2025-08-24
Did you see this helpful link: https://littlegreenviper.com/testing-harness-vs-unit/. According to that usage of "test harness", it's not the same as a unit test. It's a way of driving code manually to explore different usages and to recreate certain kinds of bugs. It is used to complement unit tests.
jpc0 · 2025-03-25
Specifically in [0] all the images after and including the stirrups have less than one word of text next to them. If it helps inventions cuts off as inventi-ons. I'm on iPhone 8 safari if that helps but is also an older target so as I said if it's outside of scope not necessarily something I'm terribly worried about, it's still readable just a little annoying. 0. https://littlegreenviper.com/infrastructure/
polote · 2021-07-27
If you don't promote it, how do you want people to discover it ? Long post do well on HN comparatively with other boards. [1] is exactly the kind of post that I include in my newsletter, but if it is not posted on HN, I can't see it (there is a typo in the link you posted) [1] https://littlegreenviper.com/miscellany/the-road-most-traveled-by/
lmm · 2020-04-11
> Associated values in enums make sense, if you look at the enum as a class/struct, under the hood. But they don't make sense as enums. If you have to look "under the hood" to get a reasonable model of a feature, it's a bad design. > It's quite powerful, once you get your head around it. > I write about that here: https://littlegreenviper.com/miscellany/swiftwater/enums-wit... Like I said, you can write the same kind of thing very easily in Kotlin by using a sealed class - your example would translate line-for-line. It's a useful feature. But it's very confusing to call it a kind of enum rather than as a kind of class; as your other post acknowledges, it means Swift essentially has two different things that are differently implemented but both called "enum".

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close