Notes on Arrogance
Podsnap
by Peter Fraenkel
3y ago
What is Arrogance Recently, while reviewing some code, I found myself using the phrase, "breathtaking arrogance" and later wondering exactly what I meant. Well, I knew what I meant, but I did wonder what I might be implying. I feel reasonably confident that arrogance involves an offensive level of self-assuredness and claims of superiority. I am less sure about whether privately held (but possibly inferable) belief in one's own superiority counts as arrogance, of the degree to which arrogance can be collective, or achieved by association with those one believes to be superior, of the relevanc ..read more
Visit website
Headfirst Search
Podsnap
by Peter Fraenkel
3y ago
In another post, I prattled on at some length about the scala Set class. To understand its nuances, it was helpful to print out a graph of class and trait inheritance. Here's a contrived example that's simpler than Set: trait C1 {} trait C2 {} trait D extends C1 with C2 {} trait E1 extends D {} trait E2 extends D {} trait E3 extends C2 {} trait F extends E1 with E2 with E3 {} The hierarchy of F looks like: C1 C2 \ / \ D \ / \ \ E1 E2 E3 \ /__/ F which the proposed utility will display as: i ..read more
Visit website
Game, Set, Match
Podsnap
by Peter Fraenkel
3y ago
Around a year ago, there was a lively debate about the type invariance of the immutable Set in Scala. Dogpile argumentation on a subject far outside the popular interest is of course thrilling in itself, but the topic also provides a nice focal point for exploring and clarifying some important aspects of the Scala type system. We recall that Scala collections (and other higher kinded classes) can be invariant, covariant or contravariant in their type parameters, corresponding repectively to declarations as class Whatever[A], class Whatever[+A] or class Whatever[-A]. In the case of covariance ..read more
Visit website
Making a pretentious logo using CSS
Podsnap
by Peter Fraenkel
3y ago
My pride in not being a "front end guy" is notoriously obnoxious and obviously compensatory. On the other hand, having crappy front ends for my projects might help disguise deeper flaws and thus actually be an advantage. Came a time, however, when I wanted to make myself a logo. Faced with the horrific prospect of doing actual art, I had no real choice but to use markup. Make no mistake, the linguae francae of our browsable universe -- html, css and javascript -- are a collective insult to science and beauty. But you can do cool stuff sometimes. My new company, is what is known as a disregarde ..read more
Visit website
Porting a land line to Google Voice and Obihai
Podsnap
by Peter Fraenkel
3y ago
The assumptions here are that you have a US land line, it has a phone number you've grown attached to, you or someone else in your household prefers to talk on something traditionally phone-like, you want to pay as little as possible for the privilege, that you have a high tolerance for - or ideally derive pleasure from - configuring gadgets, and that pains in the ass don't count as payment for the purposes of the fourth assumption. At this point, we're probably down to me, as there is low or negative correlation for simultaneous applicability of the forgoing assumptions. There internet contai ..read more
Visit website
Typecasting, part 2
Podsnap
by Peter Fraenkel
3y ago
Some time after my recent fiddles with IMDB, I read an interesting article about using a perceptron to classify words as parts of speech based on features that precede them in text. It's all done in python or some such sh*t, but whatever. Still very cool. Since I had all of this IMDB data accumulated in Mongo, I thought I would try to play with it, and the idea I had was to predict metacritic scores from the actors that appeared in each film. In retrospect, it's far from clear that such a prediction can be made and especialy that a perceptron is well suited to making it. I tried a few things ..read more
Visit website
What if John Conway Wrote Esolangs?
Podsnap
by Peter Fraenkel
3y ago
This is about a month old. Actually, scrap that. This kind of thing never gets old. To wit, a presentation on implementing and "using" Fractran, via clojure of course. The least silly aspects of the show are (1) that we can implement the language very concisely and functionaly, and (2) to interpret the results, there's a nifty sieve of Eratosthenes - the real one. The code is on github ..read more
Visit website
Hollywood Typecasting - Adventures with typed clojure and IMDB
Podsnap
by Peter Fraenkel
3y ago
I am broadly sympathetic to view that scalable systems must be built with statically typed langages, for reasons outlined in this wonderful screed, and, until recently, that has made it difficult for me to recommend clojure for institutional use. With the introduction of core.typed, that has changed. The author has says that core.typed is now production-ready, and I agree. It's not perfect, but it will find bugs in your code without breaking it or causing performance problems. It's also pretty cool, and in many ways more expressive than type declarations in "normal" statically typed languages ..read more
Visit website
Deriving the Y-Combinator in Clojure
Podsnap
by Peter Fraenkel
3y ago
At some point, everyone wakes up in the middle of the night, in a cold sweat of panic that they don't truly understand how to derive the Y-combinator. Well maybe not everyone, but at least me. (Note that I'm talking about the higher order function, not the startup incubator.) I ended up reading through quite a few web pages, all of which presupposed a slightly different background, before I finally understood. This post distills my understanding, expressed in clojure, which happens to be what I'm into now. It can now be one of the pages that someone else finds not quite adequate for understand ..read more
Visit website
Computer Chess is not just a bad movie, it is a despicable movie.
Podsnap
by Peter Fraenkel
3y ago
"Remember when you told me to tell you when you were acting rudely and insensitively?" First things first. It it is certainly a bad movie. That isn't in itself so rare, of course, but it's nice to think that foul intent is always accompanied by shoddy artistry (which requires momentarily forgetting Leni Riefenstahl, but never mind). It would also be comforting if hateful crap were technically incompetent as well, so you tell immediately and find something better to do. Unfortunately, technical excellence is so easy and cheap to attain these days that it's no longer a reliable metric for anythi ..read more
Visit website

Follow Podsnap on FeedSpot

Continue with Google
Continue with Apple
OR