RSSAmplifier

Blog

Benwen Blog.

My set of unfiltered musings on life, technology, craft, and family. All opinions are mine. Copyright © 2014-2026 Benson Wen.

benwen.comRSS feed ↗10 posts

Latest posts

Configure the Universe

A rubric runon From where we are today, what is the best path to the configuration of the universe that has the highest likelihood of the biggest outcome with the least amount of risk and the lowest cost in the shortest amount of time in the way most aligned with our values and sense of aesthetic?

AI, AI, AI. That's the answer. Now, what was the question again?

When some new techno trend “foo” arrives, I find myself repeating the same chestnut: “Foo, foo, foo that’s the answer, now remind me again what was the question?” In my career there was an XML phase, a NoSQL fever, a Cloud boom. That was followed by Node.js, Docker, Blockchain, and for the last two years, AI. This AI one has lasted longer than the rest (barring the Cloud one). Now with the arrival…

Clojure Conditional Breakpoint on Passed Function Name

Conditional breakpoint in Clojure to match a passed function’s name/class, using Emacs and Cider. Clojure 1.8.0. CIDER 0.13.0. Insert this in front of the expression you want to break on. #dbg ^{:break/when (re-find #"draw_row" (str (class f)))}

Clojure recur and variadic functions

tl;dr: for a recur call to a variadic function, wrap the variadic parameters in a (list ..) I am writing this for my future self because I’ll stub my toe on this again if I don’t. Future self, you’re welcome. So, I was editing a function to use recur . It was my first time using recur with a variadic parameter. WTF. The recur invocation threw an error. Walking in the debugger confused me further.…

Boot and Vagrant

Boot is a new-ish software build system designed for and built with Clojure and ClojureScript . Here are some notes on using it with a Vagrant session on a Mac. 1 This is very much a work in progress. I generally like working with Vagrant to keep my development environments packaged, isolated, and repeatably built. No exception while I learn Clojure / ClojureScript, and as I decide on the…

Multisensor Data Fusion

Recently, I’ve come across this technical term that’s crops up a lot in the engineering world of IoT and mobile devices: Sensor Fusion. In its nominal usage, it means the ability to combine the output of common multiple mobile sensors like gyros, compasses, and GPS into a synthesized, more application-useful signal. A more precise term for that would be “multisensor data fusion”. That is, data…

Oculus Vertiginous

Unfortunately, I’m in the category of vertigo sufferers when donning the Oculus Rift. I tried one on tonight for the first time. I had it on for maybe 10 minutes before I had to take it off. I almost had to look around for a barf bag. A bit of a disappointment. Back in 1995 I had a prototype head-mounted display shipped from California for a Virtual Reality project we had undertaken. I distinctly…

Apple's New Market

Apple’s New Market Ben Thompson adds Apple’s recent astounding quarter to evidence against the Clay Christensen’s low-end disruptive innovation model… at least applied to Apple’s business. He ends with a sly reference to the further disruptive possibilities of the Apple Watch. To which, I agree heartily. Makes me wonder: What other businesses could this dis-commodification apply?

Naming Things

In roughly the order they spilled out of my brain. There are lots of other considerations that go into a name of a company or product. Here are a few acid tests to throw on your names ideas. Evokes your desired brand characteristics (e.g. strength, humor, compassion): +5 Is easy for most people to spell: +1 Is “scalable” meaning there are a variety of natural sub-names +1 You have to spell out…

ATT Telegram

Apparently ATT still stands for American Telephone and Telegraph company. This is the back of an actual ATT u-verse Internet service order form: To cancel this transaction… send a telegram to the address below.. Entire form