If this resonates with you, you might love Sri Lankan Garlic Curry
TIL that (a) tentacles and arms are two different things and (b) there is a lot more diversity to this family1 than I’d imagined!
This beautiful piece was sculpted in Japan around the 13th century and is about three feet tall. The subject is a Zen Buddhist monk Shinchi Kakushin, who lived till the ripe old age of 95. After his death, he was given the title “perfectly awakened national teacher of the Dharma lamp” which is what “Hotto Enmyo Kokushi” means.
It’s at the Cleveland Museum of art. More info here.
The key takeaways in no particular order.
<noscript>. If you are using it, use it a lot more.
- There is no guarantee that chunks will load after the main one does; the user’s location and/or network access might have changed! Think CalTrain.
- ISPs, Corporate VPNs, and Browser Plugins1 can mess with the downloading and execution of JS.
I’m omitting CDN uptime (can’t do anything about this) and Browser compatibility (supporting 5+ year-old browsers is not something I care about doing given the work I do.)
Finally, not every fucking thing needs to be an App. For instance, your Terms of Service page can actually be a document on the Internet 😱
And not just the ones you install. I know of situations where a Chrome plugin was mandated by Corporate IT security (not my current employer.) ↩︎
by Ned Gulley at Star Chamber from a long, long while ago.
I remember telling them I’d resolved to have no more than, say, a hundred books on my shelves at any given time, and them telling me about an essay (or at least I think it’s an essay) in this book.
I’ve never come by anything by him before. Reading him is like watching a bee bob and weave and float around and just be and have fun. Words1 and ideas, lists and taxonomies: It’s a lot of serious whimsy.
Translated from French but still. ↩︎
I’d really hoped that this embarrassment would’ve been forgotten a few weeks after January 6th. But here we are.
“Should an attorney be sanctioned for his or her failure to withdraw allegations the attorney came to know were untrue?,” [U.S. Judge Linda Parker] said during a court hearing held by video conference. “Is that sanctionable behavior?”
She said she thought affidavits in the case had been submitted in “bad faith.”
[…] Parker dismissed the Michigan lawsuit last December, saying in a written decision that Powell’s voter fraud claims were “nothing but speculation and conjecture” and that, in any event, Powell waited too long to file her lawsuit.
[…] “What they filed was an embarrassment to the legal profession,” David Fink, a lawyer for the city of Detroit said during Monday’s hearing. “This was a sloppy and careless effort.”
During the hearing, Parker asked Powell and her co-counsel why they did not voluntarily dismiss their Michigan case on Dec. 14 when the Electoral College formally confirmed Biden’s election victory.
“Why did the plaintiffs not recognize this lawsuit as moot and dismiss it on that date?,” Parker asked.
Donald Campbell, the attorney representing Sidney Powell and the other lawyers, replied that the election was “fluid” and unpredictable and that the pro-Trump legal team believed its lawsuit was still viable after Dec. 14.
The Best People 👌
I bought this print at a thrift store a decade ago because it looked ‘nice’ and warm and I loved the colors. It’s an innocent celebration at a glance and from a distance, and a total bacchanal when you examine its scenes up close.
I never knew who painted it until now. It’s Pieter Bruegel the Elder (not to be confused with the Younger) who “was the most significant artist of Dutch and Flemish Renaissance painting, a painter and printmaker from Brabant, known for his landscapes and peasant scenes (so called genre painting); he was a pioneer in making both types of subject the focus in large paintings.” (Source.) I’m glad that’s settled.
A simple-enough argument about a dangerous, toxic worldview.
[…] To highlight that contradiction let’s try to explain these facts with individualist logic. Women and non-white people, by sheer coincidence, all individually chose to be paid less for more demanding jobs. Also by coincidence, they chose to work those jobs and be paid less than women and non-white people in other similarly developed countries. Simultaneously, people born in the same zip codes all just happened to make choices that led them to similar incomes, similar lifespans, and similar rates of disease. Those born to poor families chose, with little or no outside influence, to work lower paying jobs. The rich also chose, of their own accord and without significant systemic advantages, to work higher paying jobs. The huge differences in the inequalities between America and other wealthy nations is also a coincidence caused by Americans choosing to be lazier.
Rather than consider that centuries of enslavement and systemic racism has sabotaged the quality of life for black americans, individualists insist that black individuals choose to live in poverty more frequently than non-black people. Rather than consider that society exists, individualists have created a web of absurdities and chosen to live there. They also insist that none of these absurdities are racist, sexist, or classist. We shouldn’t temper our language here: anyone who claims that individual choices rather than systems entirely determine how most people live should be dismissed outright. It’s an embarrassing and absurd worldview and even the tiniest bit of research should make that clear.
[…] Individualism is a worldview created not to explain the world but to control it. It’s designed to fragment strong communities, turn workers against each other, and diminish the power of solidarity among the people. When you see yourself as the morally upright hero and everyone else has competition, you’re turning your back on what it means to be human. There’s plenty to go around, or at least there would be if it weren’t all funneled straight to the top, to the people who manufactured the idea of individualism.
See also: “We Ought to Live in a Society, not an Economy”
The point is, some products are sold directly to the end user, and are forced to prioritize usability. Other products are sold to an intermediary whose concerns are typically different from the user’s needs. Such products don’t HAVE to end up as unusable garbage, but usually do.
Jira and Confluence, which I use at work, come to mind as formerly amazing products which have gone down the shitter with unnecessary Enterprise™ feature-bloat over the past few years. I wonder if there’s a way out of this mire (maybe start saying “No”?) Until then, #jobsecurity I guess.
Simply delightful. Here’s an article about him.
I have a dying peace lily. I’m a bit attached to it and don’t know that I’ll be able to save it. Searching the internet for any hope led me to this post (cached) which made me feel slightly better about my inexperience.
The first mistake is relying upon the plant’s visual cue that needs water: the leaves droop. But, as the post notes, this can happen when they’re both over and under-watered!
[…] This would be a good indicator of when to water, except that by the time things reach the point of laying flat, damage has been done: the roots die back slightly each time this happens, and if it happens often enough, it will eventually fail to come back at all.
[…] it’s difficult to get the watering just right. […] If it’s too wet, there’s a tendency for plants to rot where they sit, except that they do it in such a way that you don’t necessarily realize what’s going on. One day you go to pull off a dead leaf, and a whole rootless plant comes out. This will generally not be salvageable. To make things trickier, the plant (like a lot of other plants) responds to being too wet by – you guessed it – drooping, which would make an inexperienced grower think that it needs more water.
I think I ruined mine by transferring it to a larger pot, thinking I was ‘suffocating’ it in a smaller one.
However, it’s been my experience that, nine times out of ten, a peace lily with black leaf edges is suffering from root suffocation, either because its soil has broken down and compacted, or because part of the soil never gets to dry out. Especially in a very large pot, and especially especially in a plant that’s been overpotted (put in a pot that’s too large for the plant), and especially especially especially in a plant that’s in a very large pot, too big for the plant, with no drainage hole, the top of the soil can dry out while everything after the top three inches is soaking wet.
Contrary to marketing material, they are not easy beginner plants:
In the time I’ve been at Garden Web (since Dec. 2006), I’ve seen more people post about issues with their peace lilies than any other plant, no contest: too many marketers think that the only important thing about a plant is how much light it needs. It’s true that Spathiphyllum doesn’t require a lot of light; that doesn’t make it the best plant for you, any more than knowing Jennifer Anniston’s name makes her your best friend.
So what does one do?
Common sense is important. If your plant is droopy and the soil feels wet, the plant is obviously not drooping because it’s too dry: don’t give it water. If the plant looks fine and the soil feels dry, the plant doesn’t need water just because the soil is dry: wait for the leaves to get a little limp first. Spathiphyllums are nothing if not good communicators.
And don’t worry about humidity. And use progressively larger pots. I think mine is too far gone at this point 😔
Not sure why this actually got to me.
Not at all crazy. They’re just kidding. Can’t you take a joke?
From an interview with Vincent Connare, creator of Comic Sans:
Q. What do you think of comic sans’ detractors?
A. I think most of them secretly like Comic Sans — or at least wish they had made it. Interesting fact: the main designer at Twitter tweeted that the most server space is used by complaints about: first, airlines; second, Comic Sans; and third, Justin Bieber. So not even The Bieber can beat Comic Sans!
Here’s the tweet he’s talking about (it’s from 2010.) Also:
Regular people who are not typographers or graphic designers choose Comic Sans because they like it, it’s as simple as that. Comic Sans isn’t complicated, it isn’t sophisticated, it isn’t the same old text typeface like in a newspaper. It’s just fun — and that ‘s why people like it.
“It’s like, ‘Not only am I going to refuse to submit these documents, but I’m going to use a typeface that doesn’t submit to the solemnity of the law, and Congress and public institutions,” said Michael Bierut, a partner at the design firm Pentagram. “Or maybe he just likes Comic Sans. It’s hard to say. Few typefaces are this freighted with public opinion.”
I think these are the final words on the matter from the creator himself:
If you love Comic Sans you don’t know much about typography. And if you hate Comic Sans you need a new hobby.
A lecture at UCSB by Douglas Adams (RIP)
- Personal Exceptionalism
“I am special.”
- Dichotomous Thinking
“X is sh*t. Y is genius.”
- Correct Overgeneralization
“I see two dots and draw the right line.”
- Blank-Canvas Thinking
“Painting by numbers isn’t art. And I want to make art.”
“I am a creative destruction machine.”
TL;DR be a ruthless, inflexible, self-absorbed dick so you can identify, refine, and deliver Value™.
Lovely stuff. Cached here.
Being a long and informative post that leads to “Use
/dev/urandom” and features a quote by DJB and a list of computationally secure PRNGs. Cached here.
>>> n = 0 >>> print "%d item%s" % (n, "s"[n==1:]) 0 items >>> n = 1 >>> print "%d item%s" % (n, "s"[n==1:]) 1 item >>> n = 2 >>> print "%d item%s" % (n, "s"[n==1:]) 2 items # If you might want to print negative items, add abs to the test: >>> n = -1 >>> print "%d item%s" % (n, "s"[abs(n)==1:]) 2 items # If a word has irregular plural morphology, use a list: >>> n=1 >>> print "%d %s" % (n, ['abacus','abaci'][n!=1]) 1 abacus >>> n=2 >>> print "%d %s" % (n, ['abacus','abaci'][n!=1]) 2 abaci
There are also full-size illustrations
See also: “Where profits come from”
Translated from the original Korean
LaTeX, pdfTeX, XeTeX, LuaTeX and ConTeXt. That’s a lot of TeX! This was most helpful, even though MacTeX solves all my problems.
Our learning objectives are straightforward. After taking the course, you should be able to:
- Remain vigilant for bullshit contaminating your information diet.
- Recognize said bullshit whenever and wherever you encounter it.
- Figure out for yourself precisely why a particular bit of bullshit is bullshit.
- Provide a statistician or fellow scientist with a technical explanation of why a claim is bullshit.
- Provide your crystals-and-homeopathy aunt or casually racist uncle with an accessible and persuasive explanation of why a claim is bullshit.
We will be astonished if these skills do not turn out to be among the most useful and most broadly applicable of those that you acquire during the course of your college education.
I don’t think there’s more critical a juncture than now for courses like these. Just wish more people took them.
“Two novels can change a bookish fourteen-year old’s life: The Lord of the Rings and Atlas Shrugged. One is a childish fantasy that often engenders a lifelong obsession with its unbelievable heroes, leading to an emotionally stunted, socially crippled adulthood, unable to deal with the real world. The other involves orcs.” – Kung Fu Monkey
A still-very-relevant 9-year old article. Pandas has gone from strength to strength since he wrote that.
In terms of expressing your computations, Hadoop is strictly inferior to SQL. There is no computation you can write in Hadoop which you cannot write more easily in either SQL, or with a simple Python script that scans your files.
SQL is a straightforward query language with minimal leakage of abstractions, commonly used by business analysts as well as programmers. Queries in SQL are generally pretty simple. They are also usually very fast - if your database is properly indexed, multi-second queries will be uncommon.
Hadoop does not have any conception of indexing. Hadoop has only full table scans. Hadoop is full of leaky abstractions - at my last job I spent more time fighting with java memory errors, file fragmentation and cluster contention than I spent actually worrying about the mostly straightforward analysis I wanted to perform.
If your data is not structured like a SQL table (e.g., plain text, json blobs, binary blobs), it’s generally speaking straightforward to write a small python or ruby script to process each row of your data. Store it in files, process each file, and move on. Under circumstances where SQL is a poor fit, Hadoop will be less annoying from a programming perspective. But it still provides no advantage over simply writing a Python script to read your data, process it, and dump it to disk.
In addition to being more difficult to code for, Hadoop will also nearly always be slower than the simpler alternatives. SQL queries can be made very fast by the judicious use of indexes - to compute a join, PostgreSQL will simply look at an index (if present) and look up the exact key that is needed. Hadoop requires a full table scan, followed by re-sorting the entire table. The sorting can be made faster by sharding across multiple machines, but on the other hand you are still required to stream data across multiple machines. In the case of processing binary blobs, Hadoop will require repeated trips to the namenode in order to find and process data. A simple python script will require repeated trips to the filesystem.