RSSAmplifier

Blog

sencjw: blog

sencjw.comRSS feed ↗10 posts

Latest posts

Embedded Software

Embedded Software Posted on August 25, 2019 I’ve been really fascinated lately (last ~1 yr or so) by embedded software . In short, software that’s written to run on devices that are tiny by today’s standards. A typical microcontroller, say an ARM Cortex M4, may spec out as: 80MHz 32-bit processor 256KB Flash 32KB SRAM 2KB EEPROM In short, not a whole lot of storage for your programs and really not…

The Onion Approach

The Onion Approach Posted on January 22, 2018 I was once watching a lecture on TV – where I’m from there’s an over-the-air channel that’s just university lectures. Anywho, there I was, listening to a botanist, geneticist, or food chemist (don’t know which) talk about all the health benefits that eating raw onions confer. But raw is the operative word, there are all kinds of organic sulfur…

Practical Haskell

Practical Haskell Posted on October 20, 2017 Alternate title: A Haskell Talk That Would Definitely Be Rejected At a Functional Programming Conference First, for some background context, please go read Haskell Success Stories . While it’s not true, there’s the perception out there that Haskell’s only good for doing math-y things. Got some high-finance doohickey that you need to write? Sure. Do you…

The Quick Hack v. Developing Software

The Quick Hack v. Developing Software Posted on January 8, 2015 I find that I operate in one of two modes when I’m writing software. I’m either approaching a project as a quick hack or as developing software . As much as anything else, this affects how I approach the project and what kinds of results that I get. When I’m operating under the auspices of the quick hack, everything is moving toward…

Haskell Meetup!

Haskell Meetup! Posted on January 3, 2015 Haskell logo We’re doing a Haskell Meetup in Madison! I’m really eager to see what comes out of this. I remember that I first heard about Bendyworks because of a Clojure meetup. Getting a bunch of like-minded people together will be fun. Besides, maybe I can find some more people to blab to about free monads.

Getting to write Haskell at work

Getting to write Haskell at work Posted on December 22, 2014 Jon and I recently worked on a medium-sized Haskell project: https://github.com/bendyworks/api-server . It has been immensely gratifying to be able to work on this sort of thing at work. It also makes me realize the current dismal state of things. I tend to not try to wade into “language wars” or say things like “my way of doing things…

Writing code that I'm not smart enough to write

Writing code that I'm not smart enough to write Posted on August 17, 2014 I gave a short talk this week on my trip to Lambda Jam a few weeks ago. The topic grew out of a programming exercise/talk given by Runar Bjarnason called “Let’s make a programming language.” This talk is about how I was able (with some help) to write code that I didn’t really know how to write. It’s an enlightening…

BayHac2014

BayHac2014 Posted on May 19, 2014 I’m making my way back from BayHac 2014 as I write this but I wanted to put down a few thoughts while they’re still fresh. Friday The hackathon started out with a talk on Pipes by Gabriel Gonzalez and then one on Free Monads by Dan Piponi. Both were excellent. And excellent here means that I think they were both the most lucid explanations of their respective…

Lenses 101 (for me)

Lenses 101 (for me) Posted on April 30, 2014 Note: This is a short commentary on the new wreq library . These comments were directed at my coworkers, but I thought they’d be interesting here. This post is literate Haskell, you should be able to cut-n-paste. {-# LANGUAGE TemplateHaskell #-} module Main where import Control.Lens I think a big reason why I’m so stoked about this is that it’s a solid…

Feynman Understands Programming

Feynman Understands Programming Posted on April 22, 2014 Watch this video of Feynman explaining how he does physics work. Programming works the same way! Here’s the translation key: replace “theory” with “a potential program that solves my problem.” And replace “consequences of the theory” with either the correct operation of the program or of bugs (as revealed by tests breaking). All the…