Author
[guest author fields > title]
Warning: Undefined array key “link” in /srv/users/atlassian/apps/atlassianstaging/public/wp-content/plugins/curator/template-parts/cards/feed-card.php on line 146
Scala: Types of a higher kind
[cta] One of the more powerful features Scala has is the ability to generically abstract across things that take type parameters. This feature is known as Higher Kinded Types (HKT). This feature allows us to write a library that works with a much wider array of classes, whereas without the feature you are condemned to […]
Warning: Undefined array key “link” in /srv/users/atlassian/apps/atlassianstaging/public/wp-content/plugins/curator/template-parts/cards/feed-card.php on line 146
Why write one test when you can write a hundred?
One of the greatest things about our software development process is our need and desire to test everything. Unfortunately, this doesn’t always translate into absolute best practices in the test code, coverage, or design, but we are always improving. Something I have been been meaning to get around to is property based (or automated specification […]
Warning: Undefined array key “link” in /srv/users/atlassian/apps/atlassianstaging/public/wp-content/plugins/curator/template-parts/cards/feed-card.php on line 146
Scala and Erasure
Mention generics to anyone who knows much about them and they’ll usually have an opinion on type reification and erasure. For the uninitiated, erasure is where a List of Strings (or a List parameterised by the String type) “forgets” that it has been parameterised by the String type once it has been compiled – ie. the type parameter is […]
Warning: Undefined array key “link” in /srv/users/atlassian/apps/atlassianstaging/public/wp-content/plugins/curator/template-parts/cards/feed-card.php on line 146
Exceptions are Bad™
**Exceptions should be used for exceptional circumstances!** Exceptions are to be used when bad shit happens. Not because you got passed some bad data (as in not passing validation), but because someone pulled the plug on your disk drive, or an earthquake hit your data-centre. They’re for bad shit alright?
Warning: Undefined array key “link” in /srv/users/atlassian/apps/atlassianstaging/public/wp-content/plugins/curator/template-parts/cards/feed-card.php on line 146
Preventing Concurrent Operations
Some operations you don’t want to run concurrently for various reasons. Here’s a simple technique for preventing them.