Marnee Dearman (KG7SIO)

Hashcash in F#

Implementing the hashcash algorithm in F#

Why am I doing this?

The hashcash algorithm forms this basis of cryptocurrencies like Bitcoin. I have been getting into this kind of technology, like the blockchain and cryptocurrency, lately (this is the future!) and I thought it would be fun to try to implement the hashcash algorithm in F#. Plus the proof-of-work system seems to . . .

Read More

August 05, 2017

A bit of Railway Oriented Programming with Coconut

Using Coconut/Python to build a pipeline with error handling

Why am I doing this?

I recently did a talk on Coconut at the Tucson Python Meetup (aka TuPLE). I mostly demoed the examples in the tutorial and the documentation, but I also came up with a way to do error handling like I do in F# with Railway Oriented Programming that I learned from F# for Fun and Profit.

You can find my . . .

Read More

May 27, 2017

An IVR with Neo4j and F# -- Part 2 A

Modeling the IVR domain with algebraic data types

Why am I doing this?

In part 1 I talked about getting started on my graph-based IVR system. I started with modeling the authentication sub-graph. I wrote some Cypher queries to build the graph in Neo4j. In this part I am going to talk about how I modeled the graph in F# using algebraic data types, namely discriminated unions and . . .

Read More

February 01, 2017

F# and xUnit Class Fixtures

Startup and teardown test modules

Why am I doing this?

I use a combination of F#, xUnit, and FsUnit to do my unit testing on .NET. I want to run a database setup script at the start of some test modules. In this case, according to the xUnit documentation, I need to use IClassFixture (or ICollectionFixture). I recently wanted to figure out how to make this happen in . . .

Read More

January 22, 2017

Archive

Cover image credit: http://sciencevsmagic.net/fractal/#0060,0090,1,1,0,0,1

This update link alerts you to new Silvrback admin blog posts. A green bubble beside the link indicates a new post. Click the link to the admin blog and the bubble disappears.

Got It!