John Bokma

2,216 Flips | 13 Magazines | 2 Likes | 1 Following | 861 Followers | @jjjbokma | Freelance Perl programmer for hire. Born in the Netherlands but currently living in Xalapa, Veracruz, Mexico.

Without performance tests, we will have a bad time, forever

Today I was working on a client project when a seemingly innocent refactoring made the program 2x faster.

The wizard monoid

Recent versions of GHC 8.0 provides a Monoid instance for IO and this post gives a motivating example for why this instance is useful by building …

Haskell (Programming Language)

Sleep deprivation seems to affect healthy and depressed people differently

The first sign that something is happening is Angelina’s hands. As she chats to the nurse in Italian, she begins to gesticulate, jabbing, moulding, and circling the air with her fingers. As the minutes pass and Angelina becomes increasingly animated, I notice a musicality to her voice that I’m sure …

Sleep

The magic “Just do it” type class

One of the great strengths of strongly typed functional programming is that it allows <i>type driven development</i>. When I have some non-trivial function …

Programming

Blog

Design Patterns in Haskell<p>Part 1: The Strategy Pattern<p><i>Note: This is part one of a series of posts translating the Gang of Four design patterns for</i> …

Programming

argumatronic -

Julie Moronuki<p>I write Haskell books and other pedagogical materials. I give talks and teach. I am one of the co-founders of Typeclass …

How to Discipline Stubborn, ‘Unpunishable’ Children

You might not be able to control their behavior, but you do have control over what they learn.<p>Parents of strong-willed children have a unique set of …

Real-life ‘Spider Woman’ tells Moneyish about her job studying the crawling creatures

Cheryl Hayashi studies spiders for a living. Here’s what her job is like.<p>Cheryl Hayashi once had a job feeding spiders in a walk-in chamber that was …

Widespread bone-based fluorescence in chameleons

1.<p>Sparks, J. S. <i>et al</i>. The covert world of fish biofluorescence: a phylogenetically widespread and phenotypically variable phenomenon. <i>PLoS One</i> <b>9</b>, …

Biology

Beautiful Aggregations with Haskell

When we aggregate we often do so in association with or grouped by another piece of data. “I want the maximum price paid for each item on ebay.” We …

Is everything you think you know about depression wrong?

In this extract from his new book, Johann Hari, who took antidepressants for 13 years, calls for a new approach<p>In the 1970s, a truth was accidentally discovered about depression – one that was quickly swept aside, because its implications were too inconvenient, and too explosive. American …

Depression

Neovim for Haskell Development

Here’s how I setup neovim or vim 8 to be a functional working environment.<p>The focus will be on Haskell, but many of the plugins here are useful for …

The Joy of Haskell

Typeclasses in Translation<p>Second-language learners first speak by translating what they want to say from their native tongue to the target language. …

User-defined literals in Haskell via QuasiQuotes

A couple of days ago, somebody submitted a blog post to the Haskell subreddit, titled Abusing -XOverloadedStrings to Implement Type Directed …

Make way for megamarsupials: the migration of Australia's extinct megafauna

Perhaps nowhere is the debate regarding the causes of megafaunal extinction more prominent than in Australia. During the Pliocene and Pleistocene epochs, a magnificent suite of giant marsupials (mammals who carry their young in a pouch), reptiles and birds roamed Australia, only to meet their …

Anthropology

How to cut the cord with Apple TV 4K

Thanks to the many streaming services, "cable lite" companies, and on-demand apps, you don't have to settle for paying $100 or more every month for …

A Stunning Blue Tarantula And Its Friends Were Just Discovered in South America

"Something made me go back."<p>A previously unknown tarantula discovered in the forests of Guyana in South America is absolutely stunning - its legs and …

Nature

Replacing x86 firmware with Linux and Go

<b>Please consider subscribing to LWN</b><p>Subscriptions are the lifeblood of LWN.net. If you appreciate this content and would like to see more of it, your …

Linux

mind

Rachel Loewy was an undergraduate in 1995 when she answered a flyer seeking students to assist with a research study. A couple of floors up in a …

graphql-perl - graphql-js tutorial translation to graphql-perl and Mojolicious::Plugin::GraphQL

Version 0.16 of GraphQL implements most of using the Schema Definition Language to create schemas, rather than doing so programmatically. So let's …

Combined Restart / Shutdown Button for Raspberry Pi

A very simple systemd service for Raspberry Pi that provides a software-controlled restart / shutdown button. Code: scruss/shutdown_button Use …

Microcontroller

GHC Cross Compiler Binary Distributions

As mentioned in the September Edition of What is New in Cross Compiling Haskell, I’ve been working on producing binary distributions of cross …

Lego Is Finally Releasing a 'Women of NASA' Set And The Details Are Amazing

But someone notable is missing.<p>Lego announced on Wednesday that it would release a 'Women of NASA' set.<p>The US$25 kit goes on sale November 1 - just …

How To: Turn Any Phone into a Hacking Super Weapon with the Sonic

The Watch Dogs video game series came out in 2014, enamoring audiences with the idea of a seemingly magical smartphone that could change traffic …

Live Blog: The Huge Gravitational Wave Discovery We've Been Waiting For Is Here

"We shared in the joy and excitement of that moment."<p>Well folks, that massive gravitational wave announcement has been well worth the wait.<p>Read on …

Building your first Machine Learning model on iPhone

This tutorial will teach you how to build a ML model on iPhone using CorelML. Interestingly this is not the first time that Apple has come out with a …

Type Safety Back and Forth

11 Oct 2017<p>Types are a powerful construct for improving program safety. Haskell has a few notable ways of handling potential failure, the most famous …

Programming

Raspberry Pi Thermal Camera

Things used in this project<p>Hardware components<p>Adafruit AMG8833 IR Thermal Camera Breakout<p>×<p>1<p>Raspberry Pi 3 Model B<p>×<p>1<p>Buy from CPC<br>• Buy from SparkFun<br>• Buy …

Haskell Sucks! — Paul Bone

AuthorPaul BoneMeetingMelbourne Haskell User GroupDateApril 28th, 2016LinksPDF Slides, YouTube Video<p>Abstract<p>Now that I have your attention I'd like …

Tensorflow sucks

Introduction<p>Every few months I enter the following query into Google: “Tensorflow sucks” or “f*** Tensorflow”, hoping to find like-minded folk on the …