My most recent blather that I don't want to show up on my main blog. posts

This is the complete source code for a client-server web application that estimates the strength of a password the user enters, updating the estimate after every keystroke.

Note the total lack of html, javascript, routes, callbacks, or any of the usual web cruft. It's using the threepenny-gui haskell library and a little bit of FRP. Pretty awesome library, although the GUIs it renders only work when javascript is enabled.

  import qualified Graphics.UI.Threepenny as UI
  import Graphics.UI.Threepenny.Core
  import Text.Password.Strength (estimate)

  main = startGUI defaultConfig $ \window -> do
        prompt <- UI.input
        estimatedisplay <- UI.string ""
        getBody window #+ [ element prompt, element estimatedisplay ]
        promptIn <- stepper "" $ UI.valueChange prompt
        let showEstimate = show . (`estimate` []) <$> promptIn
        element estimatedisplay # sink value showEstimate
        return ()
Posted posts

This reminds me of doc/unfinished/free-software-sf-essay which I see got left at an 80 line outline. Anyway, the root idea of that essay, if I ever finish it is that there's really surprisingly little SF that engages with free software concerns and ideas.

The only books I know of that do so at all are by Vinge, Stephenson, Doctorow, and Egan.

Posted posts
strawberry winter

Enjoying a fire, latkas, and fresh strawberries, . Which winter is this, past blackberry winter and dogwood winter? For me: strawberry winter

Posted posts
crepe diem

Rhubarb, mint and maple syrup crepes.
(Followed by tomato, parm, and herb crepe.)

Second time I've made crepes. And I've reached peak cast iron -- I have a dedicated cast iron crepe pan.

Posted posts

Having some keyboard trouble. Mostly dooubleed letters, but also for some reason it stopped letting me type the capital leetter I. Alright then.

Posted posts

MP3 isn't dead, just journalism -- mavhc

Posted posts

"Haskell is a memetic virus, and monads are the eggs it lays out in innocent programming forums to entice others to become infected." -- hobophobe via spj

Posted posts

Putting some almond milk in my rooibos tea.

... It's coming on the season for raspbetty zinger cold brew tea, but I don't have space in my tiny fridgedare to have it whenever I want.

Posted posts

Or, gpg was ignoring my --keyserver for its own inscrutable reasons.

Posted posts

I guess if I really care about BW, I'll make it try a non-http connection and fall back to http + websockets..

Posted posts

Really annoying thing is, I'm only using http because of port blocking. We can tunnel anything over http websockets, which makes port blocking irrelevant, at a cost of many extra bytes. And of course that reduces pressure for ISPs to not block ports. Progress.

Posted posts

"like using a lunchbox to make lunch"

Posted posts

Wireshark says yes.. A 183 byte websocket frame contains 95 bytes or so of data. And then there are some 86 byte TCP ACKs..

Posted posts
websocket overhead

Does sending a message to a websocket really use 250 bytes of bandwidth for websocket stuff? Seems to in my tests..

Annoying ... I've relentlessly whittled my protocol down to 75 byte packets from 170+ using some fairly serious hackery. And now all this additional overhead!

Posted posts
close squeeze

After detouring around the flood this morning, my detour was almost flooded this evening. Only one lane of dry highway left.


I'm not a user of it yet, but by chance I noticed your activity mixed into the git-ssb-web feed the other day, including commits on keysafe, which I had never heard of before.

Then today, looking over the project's github repos, I noticed an attempt at a Shamir's Secret Sharing backup system. It seems to work by just sending the shares to your choice of friends. As I understand it, unlike email, it not possible for them to delete the message.

Although compared to keysafe's independent servers, it seems much more possible for two people you know to both have been compromised (or just to collude, but presumably they'd have a good reason for doing so).

- NickNovitski


I happened to be wearing my old LinuxCabal T-shirt when I ran across this video.

Wow, memories.

first snow

of the season..

learning blues harmonica

First try at learning blues harmonica. So far I'm concentrating on learning to play single holes. Hard enough for now, although I think I managed to bend a note once.

I have found my happy sound though. Just draw through hole #1 on my C harp and I get that nice lonesome train sound. This is the easiest hole to draw, too.

perfect popcorn

Weird popcorn experience. I screwed up the first pan, burnt and mispopped everything. So I cleaned it out and put it back on the stove, still quite wet, tossed in a small amount of (olive) oil and popcorn (no test kernels, just all at once), and tried again. This time the corn took quite a while to start to pop, I could hear the water/oil mixture sizzling and splattering the inside of the pan. When it started to pop, it was all over in under 5 seconds, no trail off of slow to pop kernels like I typically get. And only 2 kernels didn't pop. Perfect.

Something went on with that water/oil mixture. My guess is that the water regulated the temperature, as long as the water was in there everything was kept right around the boiling point. When the last water evaporated, the temperature must have shot up to popping point very uniformly and quickly.

mackerel sky

With a full moon behind the blue clouds. Gorgeous tonight! And windy, and brr..


Black bean soup and garlic shrimp home cookin'.

seth on diablo

Driving up Diablo, we're always in awe of the bikers going up it. When we're not thinking they're insane. :-)

Seth biked up. Awesome, and happy b-day!

everyone should program

Funny, I use vimoutliner just like Matther Palmer, and like him I also think that everyone should learn to program. If you don't know how to program, you can't truely use a computer. You can only fiddle with constructs someone else has made for you on a computer.

Somehow I doubt either of these ideas will catch on, but it's nice that I'm not alone in my heresies.