Home Now Contact Wishlist github twitter Tags Archive RSS Knew me at Gompers? TIL feed
John Baber-Lucero
umop apisdn
Save and compare elements
2024-09-16

The javascript below makes it so double clicking an element on a webpage gives the option to save its contents or compare to what was previously saved.

function get_display() {
  return document.querySelector("#floater_display");
}


function update_display(text) {
  document.querySelector("#floater_display").innerText = text;
}


function update_display_dom(elt) {
  let d = get_display();
  while (d.firstChild) {
    d.removeChild(d.lastChild);
  }
  d.appendChild(elt);
}

function perform_save() {
  localStorage["saved"] = document.querySelector("#floater").dataset.content;
}


function perform_compare() {
  if ("saved" in localStorage) {
    let old = localStorage["saved"];
    let new_ = document.querySelector("#floater").dataset.content;
    if (old == new_) {
      update_display("Same as saved");
    }
    else {
      let table = document.createElement("table");

      let tr0 = document.createElement("tr");
      let th0 = document.createElement("th");
      th0.innerText = "Different from before:";
      th0.style.textAlign = "left";
      tr0.append(th0);

      let tr1 = document.createElement("tr");
      let left_th = document.createElement("th");
      left_th.innerText = "Saved";
      let right_th = document.createElement("th");
      right_th.innerText = "Current";
      tr1.append(left_th);
      tr1.append(right_th);

      let tr2 = document.createElement("tr");
      let left = document.createElement("td");
      let right = document.createElement("td");
      left.style.verticalAlign = "top";
      right.style.verticalAlign = "top";
      left.style.borderStyle = "solid";
      left.style.borderWidth = "1px";
      right.style.borderStyle = "solid";
      right.style.borderWidth = "1px";
      left.innerText = old;
      right.innerText = new_;
      tr2.append(left);
      tr2.append(right);

      table.append(tr0);
      table.append(tr1);
      table.append(tr2);

      update_display_dom(table);
    }
  }
  else {
    update_display("Nothing previously saved");
  }
}


function inject_floater() {
  let floater = document.createElement("div");
  floater.id = "floater";

  let save = document.createElement("button");
  save.id = "floater_save";
  save.innerText = "Save";
  save.onclick = perform_save;
  floater.append(save);

  let compare = document.createElement("button");
  compare.id = "floater_compare";
  compare.innerText = "Compare";
  compare.onclick = perform_compare;
  floater.append(compare);

  let content = document.createElement("div");
  content.id = "floater_display";
  floater.append(content);

  let close_ = document.createElement("button");
  close_.id = "floater_close";
  close_.innerText = "Close";
  close_.onclick = close_floater;
  floater.append(close_);

  document.body.prepend(floater);
}


function go_floater(elt) {
  let floater = document.querySelector("#floater");
  floater.style.visibility = "visible";
  floater.dataset.content = elt.innerText;
  document.querySelector("#floater_display").innerText = showntext(elt);
}


function close_floater() {
  let floater = document.querySelector("#floater");
  if (floater) {
    floater.style.visibility = "collapse";
    deselect_all();
  }
}


function deselect_all() {
  Array.from(document.querySelectorAll(".selected")).forEach(function(selected) {
    selected.classList.remove("selected");
  });
}


function select_element(elt) {
  deselect_all();
  elt.classList.add("selected");
}


function showntext(elt) {
  let fulltext = elt.innerText;
  if (fulltext.length <= 20) {
    return fulltext;
  }
  else {
    return fulltext.substr(0, 26) + "...";
  }
}


function universal_ondblclick(e) {
  e.preventDefault();
  e.stopPropagation();
  let clicked = e.target;
  select_element(clicked);
  go_floater(clicked);
}


function inject_css() {
  let style = document.createElement("style");
  style.innerHTML = `
#floater {
  background: #f7f7f7;
  width:90%;
  padding: 1em;
  position: fixed;
  bottom: 0;
  left: 1em;
  border-width: 1px;
  border-style: solid;
  visibility: collapse;
  z-index: 9999;
  color: black;
}
.selected {
  border-style: solid;
  border-width: 3px;
  border-color: red;
}
  `;
  document.head.prepend(style);
}

function main() {
  window.addEventListener('dblclick', universal_ondblclick);
  inject_css();
  inject_floater();
}

main();

Spicy Cabbage Soup
2024-06-10

Adapted from this recipe to

If I prepare the vegetables for storage long before cooking, I keep the onions separate and still chop the garlic fresh at cooking time.

Spicy Cabbage Soup

Directions

  1. Heat oil in big stockpot over "medium-high" heat.
  2. Sauté onions for 5 minutes. Stirring until softened.
  3. Stir in garlic and sauté for 2 minutes until fragrant.
  4. Add everything else, stirring until simmer.
  5. Reduce to medium-low for 30 minutes.
Brother printers
2023-08-25
2023-08-25

I buy genuine Brother toner out of gratitude.

Yara Lightfoot
2023-06-05

60% of quotes I like have dubious attribution. When I find a saying without an obvious source, I attribute it to Yara Lightfoot. Found a provable source? Tell me and I'll update.

She's a Swedish-Hobbit name from this generator that doesn't show up in google.

Clear source
History viewed from the inside is always a dark, digestive mess, far different from the easily recognizable cow viewed from afar by historians.
— Dan Simmons, Hyperion
Messy attribution/rewording, etc.
Fairy tales are more than true: not because they tell us that dragons exist, but because they tell us that dragons can be beaten.
G.K. Chesterton paraphrased by Neil Gaiman
God only knows
Some people are so poor, all they have is money.
— Yara Lightfoot
Good things microsoft has invented
2015-05-05
2023-06-22
Unfortunately, people are not rebelling against Microsoft. They don't know any better.Steve Jobs
Calculators
2006-09-01
Computers are useless. They can only give you answers.
Pablo Picasso

“Why don't they let us use calculators here?!”

I've been asked the above question by 90% of my college freshmen. I'll explain why calculators are forbidden on exams and generally discouraged for use in most math classes at most institutions of higher education.

“What's with this university?”
Almost anybody involved in "tertiary education" anywhere in the world agrees that learning mathematics should have nothing to do with using calculators. At one community college where I taught, I and my colleagues were forced by administrators to integrate calculator use into our lesson plans despite our objections.

The feeling that calculators hinder students is in no way unique to your university. Johns Hopkins professor W. Stephen Wilson has compiled an ad hoc list of math professors around the world who agree.

“So you don't think calculators are good for anything?”
Calculators certainly have their place. When I add the scores on your final exam, I will be typing them into my trusty TI. I don't trust myself to add long lists of numbers by hand accurately. When I'm finished with a long and difficult problem, I often check the answer on my calculator or computer to see if I've messed anything up.
“What's wrong with calculators anyway?”
  1. They lie.

    The calculator is a machine. It doesn't know anything about mathematics. A smart engineer has programmed it to give some pretty good answers to some math questions, but these are usually approximations, and, in the strictest sense, very often incorrect.

    For example, once you've become acquainted with elementary manipulation of exponents in algebra, you, a human, can tell that 20x×30x=600x so 20x×30x – 600x=0.

    Look at what calculators think the graph of 0 looks like when you write it as above:

    TI-92 tries to graph 0 maple tries to graph 0 Michelle succesfully graphs 0
    TI-92: $60 Maple: $995 Michelle - age 13: Priceless

    This problem is called “overflow error” and it's one of the many ways calculators lie to you if you don't carefully guess real answers based on their approximations. One instance of this error may have cost over $370,000,000.

  2. They can't understand or explain anything subtle.

    Humans can understand that the functions

    f(x)= x2
    x
    and
    g(x)=x
    are slightly different: g can take any number as an argument, but f is not defined at 0.

    Calculators understand this:

    TI-92 knows f is not defined at 0 maple knows f is not defined at 0
    TI-92 Maple
    but have no way to tell you when you're studying the entire function by looking at its graph:
    TI-92 doesn't graph well. maple doesn't graph well. Esther graphs well.
    TI-92 Maple Esther - age 15
  3. They can only give answers to a few types of questions and only if you ask just right.
    TI-92 can't tell it's square. maple can't tell it's square. Catherine can tell it's square.
    TI-92 Maple Catherine - age 14
    ChatGPT can't tell it's square.
    ChatGPT
  4. Asking for something to be done for you is not the same as doing it yourself.

    Depending on a machine to do your intellectual work is not just degrading, it also limits your understanding. If you want to do any kind of science from Engineering to Biology to being a practicing physician, you're going to have to understand mathematics. Understanding comes from doing.

  5. You need to be able to recognize when they err and possibly supply an alternative answer yourself!

    Your graphing calculator is a precision instrument that will probably not have a real bug for years to come. But, if you only learn how to do math with a calculator, you're going to have to depend on whatever machine happens to be around when you're doing your job. That machine might not be as dependable:

    BSOD
“Why do they want me to be good at calculating stuff by hand? It's so tedious.”
Math teachers don't want you to be fast accurate human replacements for calculators. Most teachers consider it their responsibility to craft test questions and exercises in such a way that the arithmetic involved doesn't invite too many errors. Limiting calculator usage in class is to help you learn mathematics, not learn fast arithmetic.
“But I don't know a bunch of elementary arithmetic!”
Ask me anything.

Please ask me about any aspect of mathematics that's escaping you. You can come by my office anytime. Don't have shame about anything. Teaching you is my job. Understanding your coursework is your job. I mean it. If you can't add 1/3 to 1/2 ask me how!

Gerrymandering
2022-11-13
Gerrymandering is a nasty thing only a politician would like. Few point out there are at least two direct solutions to the problem: I would say politicians get it and are just being disingenuous, but the press never points this out either. I think this terrible thing happens to America out of boring old ignorance.
Python packaging
2022-10-22

This keeps happening. I write something tiny in Python for my own use. Then I realize I want to add just one dependency and immediately want to rewrite in Rust just because cargo works so much better than pip.

I should think of Rust as much, much harder to use, but here we are.

Correlation vs. causation
2021-10-21
Charm is the ability to insult people without offending them; nerdiness the reverse.- Nassim Nicholas Taleb

Parents observed nerds' tastes and made their kids listen to Mozart and play chess.

I've just realized in 100 years, people will force their kids to play Dungeons & Dragons and watch Marvel movies.

Philosophical Positions
2020-08-19

Black's spheres

Consciousness

Chinese Rooms

Ant colonies

Robot Pancakes
2020-04-27
2024-05-11

My son has gotten accustomed to pre-made frozen pancakes. "Made by a robot in a factory". Through trial and error, I have figured out how to make pancakes that he can't distinguish from pre-made ones:

Robot Pancakes

Deadpool making pancakes
Building edbrowse on raspbian
2018-09-23
cmake:

    sudo apt-get install cmake

xsltproc:

    sudo apt-get install xsltproc

tidy-html5:

    git clone git://github.com/htacg/tidy-html5
    cd tidy-html5/build/cmake
    cmake ../..
    make
    sudo make install

curl:

    sudo apt-get install libcurl4-openssl-dev

libpcre:

    sudo apt-get install libpcre3-dev

readline:

    sudo apt-get install libreadline-dev

python modules:

    sudo apt-get install python-yaml

duktape:
  Even though duktape-dev and duktape are present, installing them didn't get duktape.h

    git clone https://github.com/svaarala/duktape.git
    cd duktape
    make dist
    cd dist
    make -f Makefile.sharedlibrary
    sudo make -f Makefile.sharedlibrary install
    make -f Makefile.cmdline
    sudo ln -s $(pwd)/duk /usr/local/bin/duk

Make links to libraries in somewhere raspbian looks by default:

    sudo ln -s /usr/local/lib/libduktape* /usr/lib/

edbrowse:

    cd build
    cmake ..
    make
    sudo make install
  
Doomsday practice page
2017-02-12
> This must be Thursday.  I never could get the hang of Thursdays.
>
> Arthur Dent

I made a [quick page](/doomsday/) to test your ability to use the [doomsday rule](https://en.wikipedia.org/wiki/Doomsday_rule).
  
Hedcut
2015-07-21
Thanks to [this gimp script](http://www.squaregear.net/gimptips/hedcut.shtml) you can now make a hedcut of yourself to pretend you've appeared in the Wall Street Journal.
Things to read online
2015-07-13
Tutorials
2015-05-05
RAS Syndrome
2015-05-05
Not that I have anything much against redundancy. But I said that already.Larry Wall
Some good things about computers
2015-05-05
Computers are useless. They can only give you answers.Pablo Picasso
2048
2015-05-05

The difference between 2048 and gambling is that now that I've won 2048 once, I never have to play again.

Joni Mitchell
2014-05-10

Joni Mitchell is great, but I try to think of her lyrics as nonsense (a la Tori Amos1) because they're always "introspective"2 . Today's case in point: youtube told me against my will that instead of a bunch of gibberish about astrology, Little Green is about giving up her newborn daughter for adoption.

1: Jeez, five seconds looking for some nonsense lyrics by her brought up stuff about multiple miscarriages and female genital mutilation.

2: i.e. personal stuff about her life I don't want to hear about when I'm doing the dishes.

How to fold a US letter to fit in a small sized business envelope
2014-05-10
I never remember this and it's the kind of thing older people make fun of young ones for not knowing. Folding and inserting Letters in Envelopes
XKCD Plotting with Matplotlib
2014-04-22
The latest Matplotlib now lets you make plots that look hand drawn. (Even better with the xkcd font).
Trivia
2014-03-25
Alex Trebek: He took control of the Ford Motor Company after Henry Ford's death.
Ken Jennings: Who was Ford?
Alex Trebek: More specific.
Ken Jennings: I was afraid you were going to say that.
Games I'll play if I ever get the time, money, and equipment
2014-03-25
When I was a kid we had role models. We didn't have computer games; we were brought up properly: by television.Jimmy Carr
Person - Action - Object
2014-03-23

My person-action-object (PAO) system using major system words exclusively. Some are a stretch, but it's a very easy system to learn with the major system crutch.

Note: I've *****'d names of friends that are too specific and words that are too offensive. Most things have a clearer description if you hover your mouse over them.
numeral(s)Personactionobject/animal
0Zooeysawice
1Eddieeattea
2Noahgnawwine
3Moemowmayo
4Rayrowrhea
5Leahlaywheel
6Joeyshooshoe
7Keykeycow
8Evewavepho
9Poebowpie
00Zeussauceseesaw
01*****sitsoda
02*****signswan
03OsamasumoZima
04Sarahswearsari
05*****swallowseal
06Sachaswitchsushi
07Isaacsucksock
08Sophiesavesofa
09Sappswabsoup
10Dicetossdice
11Dadtattootoad
12Dandoniodine
13Tomdimdime
14Tarateartire
15Dalidialtowel
16Tashatouchdish
17Dicktugdog
18Davedivetaffy
19Debbietypetuba
20Naswincenoose
21Wendyuntienet
22WinonaOnanonion
23Naomienemagnome
24NeroNairnori
25Neilinlaynail
26Nietzchenudgenacho
27NickknockNokia
28Neveknifeknife
29Anubisnipknob
30*****macemice
31*****mutemead
32Manniemoonmoney
33Mommimemuumuu
34Maurymarrymarrow
35Mollymaulmule
36Mitchmashmatch
37Mikemugmug
38Maevemovemuff
39Mobymopamoeba
40Rosieraiserice
41Ritariderat
42Ronreiniron
43*****ramram
44Roryroarrear
45Raulreel*****
46Archiereachroach
47Rickrakerock
48Rafaroughreef
49Rebarubrope
50Lizlacelice
51Lidialightlute
52*****leanlion
53Elmoloomlime
54Larrylurelyre
55Lolalollily
56Alicialeashleech
57Lukelickelk
58Livialeafloofah
59*****elbowwallaby
60Joycechasecheese
61Jodiesh*tcheetah
62Johnshinechain
63Jimmyshamechum
64Jerryshearchair
65Joelchillcello
66Judgeshushshojo
67Shakachokechalk
68JeffshaveJif
69Chipchopsheep
70Gausskissgoose
71Catecutcat
72Gwencanecanoe
73Kimcombcomb
74*****crycar
75Kellycallkoala
76Coachcatchcashew
77Cookiekick*****
78Koficuffcoffee
79Kobecubecape
80Fozziefusefez
81Fettfeedfoot
82Vannafanphone
83Femmefumefoam
84Fryfrywafer
85Philfilefoil
86Fitchfishfish
87**********fig
88Fivefifefife
89Phoebevibefob
90Buseyp*ssbees
91Bettiebitebat
92*****openpiano
93Pambambeam
94Barryburybear
95Paulblowpillow
96Bushpitchpeach
97Beckpukepig
98Buffypavebeef
99Popepop*****
How to write in pig-elvish
2014-03-22
Translator
How to only highlight comments in vim
2011-12-16

I prefer* to parse code and literature with my mind and eyes, not weird highlighting. So I usually have syntax highlighting off. But having commented out code look different is really helpful. If you would like that kind of setup, drop


" Turn off all syntax highlighting except comments and errors which are actually useful.
set t_Co=256
syntax on
highlight Comment    cterm=italic ctermfg=none
highlight Error      ctermfg=yellow
highlight Constant   ctermfg=none
highlight Identifier ctermfg=none
highlight Statement  ctermfg=none
highlight PreProc    ctermfg=none
highlight Type       ctermfg=none
highlight Special    ctermfg=none
highlight Underlined ctermfg=none
into your .vimrc If you use gvim instead of vim at the console, you need to replace those ctermfg's with guifg's.

* Not anymore (2015)

The Metric System
2011-11-11

Or: How I Learned To Stop Worrying And Love The Meter

A centimeter? If any centimeters come crawling into this room, I'll step on 'em!Sally, Peanuts
Before explaining why you should learn to love the metric system, we should give the traditional measurement systems a fair hearing. They do have a few advantages.

The Few Advantages of Traditional Systems Over Metric

Units usually correspond to something understandable in your environment.
A gram is about the weight of a paperclip, a litre is a half-bottle of soda, and a meter is the distance from the floor to some belly-buttons. A yard is about one step, a pint is a big glass of milk, and a pound is about how much that milk would weigh. Fahrenheit degrees are a 0-100 scale of normal temperature: 0° is quite cold, 100° is quite hot.
There are usually specialized units that work on whatever scale you need.
Inches measure paper, feet measure furniture, yards measure houses, and miles measure cities. Because metric units differ by factors of 10 or 100, there is often no convenient unit for measurement at a certain scale. For instance, there is no metric unit scaled to find the height of people. Most adults fall between 150cm and 210cm — 5 to 7 feet.
There are units tailored to every particular purpose.
For instance, miles defined in terms of feet and yards are intuitive for measuring land. But when navigating by sea or air, nautical miles are more convenient. The equator can be divided into 360 degrees. Every degree is divided into 60 minutes. One minute on the equator is one nautical mile. So you know that when you've travelled 60 nautical miles, you've gone about 1/360th of the way around the world. 1 nautical mile is about 1.15 land miles. Even though both types of measurements are very useful for their distinct purposes, in the metric system, you cannot have two units that differ by this little. One must be ten times larger than the other.
The steps between units are often small and intuitive.
These gradual steps can help you picture large things intuitively. If you can imagine a foot, you can imagine a yard. If you can imagine a yard, you can imagine a rod, and so on. Traditional units, with their intuitive definitions and scales are very well suited to imagination. When you can imagine a furlong (1/8 of a mile) and a rod (5.5 yards), an acre being a 4 rod wide field that's 1 furlong long is pictureable. Originally, an acre was how much land one man could plough with one ox in one day. A furlong was the length of one furrow.
Traditional units naturally express an estimation's margin of error.
Because there are units for every scale, my choice of units expresses my confidence in an estimate. Telling you my couch is about 10 ft. 6 in. wide expresses more confidence than saying it is about 10 ft. wide. Because metric units differ by such great amounts, there is often no way to do this. I must say my couch is about 3 meters or 300cm wide. The former implies my margin of error is 1 meter, and the latter that it's 1cm. In reality, I must depend on the roundness of 300 to imply that my margin of error is 10cm.
Large units often divide evenly into useful whole numbers of smaller units.
Because all metric units differ by multiples of ten, you can only evenly divide them into 2 or 5 smaller units. Traditional units often favor numbers like 12 and 60 which can be divided into 2, 3, 4, or 6 equal pieces. For instance, I can split a yard-long plank of wood exactly into 2, 3, 4, 6, 9, 12, 18, or 36 equal pieces with the inch marks on my ruler. For a 1 meter plank, I must divide into 2, 4, 5, 10, 20, 25, 50, or 100 pieces. Any other division requires estimating, like splitting it into three 33.3cm pieces.

The Advantages of the Metric System

It is the standard system for the whole world.
In many respects, Esperanto is a great candidate for an international language. But English actually is the de facto lingua franca. Don't be one of the few people who learn Esperanto and not English.
The units of measurement are all powers of 10.
This means you never have to look anything up since there are 1000mL in 1L instead of 16 tbsp in a cup; 2 cups in a pt; 8 pts in a gal. You may not mind not knowing how many tablespoons are in a gallon, but in science and engineering, you often compare tiny things to giant things and are happy to know there are exactly 1 trillion picolitres in a litre. John Baez on inches.
xbindkeys
2011-10-11
This is what I had to do to compile xbindkeys-1.8.5 on Ubuntu 11.04 (Natty Narwahl). The xbindkeys-1.8.3 available in the current ubuntu repositories crashes after pressing 7 listened for keys. Because I have no idea what I'm doing, this advice should be taken with a grain of salt. I make no claims that following my directions won't erase all your data and destroy your computer.
  1. Put the latest xbindkeys tarball in some directory (I like to use $HOME/src)
  2. tar xvzf xbindkeys-1.8.5.tar.gz
  3. cd xbindkeys-1.8.5
  4. sudo apt-get install libx11-dev guile-1.8 guile-1.8-dev guile-library
  5. sudo ./configure
  6. sudo make
  7. Get some error. But just sudo make a few more times anyway.
  8. sudo make install
Cairo Composite Manager
2011-10-11
This is what I had to do to get Cairo Composite Manager working to get expose-like behavior for normal Gnome. Sergey Davidoff has a working version in his ppa. Follow his directions. Because I have no idea what I'm doing, this advice should be taken with a grain of salt. I make no claims that following my directions won't erase all your data and destroy your computer.
Diginumeracy
2010-06-23
Hey, as long as he's got eight fingers and eight toes, he's fine by me.Homer Simpson

I've seen ways to count to 6, 10, 15, and even 31 on one hand.

I've found the most natural method to be one that counts to 20 taught to me by my friend Romie. Instead of counting fingers or memorizing hand positions you count the joints and tips in your five fingers. Each finger has four, so you can count to 5 × 4 = 20 on one hand.

For 1 through 16, point at the joint or tip with the thumb of the same hand. For 17-20 use the middle or index finger, whichever comes up more naturally. For 17, you're really just pointing at the pad of your hand — it's too hard to feel the joint under there.

Hand Diagram

Try this at home! It's nice to be able to count so high on one hand and it's less cumbersome than more exotic methods. Of course there's nothing to stop you counting 20s on your left hand and units on your right, allowing you to count to 20 × 20 = 400 on two hands.

St. Nicholas Icon
St. Nicholas counts to 8
Responsibility
2011-02-08
Death, then, being the way and condition of life, we cannot love to live if we cannot bear to die.William Penn

I just realized that even if cryonics made sense and was 100% effective. I have 0 faith in 20 generations of people to be even slightly responsible.

Mario Adventure
2010-03-31
Controller is so intuitive, even your mum can play.Shigeru Miyamoto
I could never explain to you how great a game Mario Adventure is. The only way is for you to play it. Here is the nes rom. You'll have to figure out on your own how to get and use an NES emulator.
脏话
2008-09-10

Yes, Cuban 'b'.

All of the extremely dirty words in English are monosyllabic (some examples). It's always been funny to me that there were certain grunts we can utter that make people uncomfortable and make children giggle and blush.

I always figured there must be some words like these in Chinese. They would have the added bonus of having a single chinese character, i.e. a _picture_ that would make people uncomfortable. When I'd ask my Chinese friends, the closest they'd give me was something that translated to "his mother" or "your mother". These were no good because

As it turns out, my Chinese friends were being coy. There is a single character — a picture — a single flat-toned syllable that makes Chinese speakers blush. It is bī.

This word is funny on many levels.

Character(s)PinyinUnicode
5C44
牛屄níubī725B-5C44
傻屄shǎbī50BB-5C44

References:

  • 屄: http://www.unicode.org/cgi-bin/GetUnihanData.pl?codepoint=5c44
  • 牛: http://www.unicode.org/cgi-bin/GetUnihanData.pl?codepoint=725b
  • 傻: http://www.unicode.org/cgi-bin/GetUnihanData.pl?codepoint=50bb
  • The Unspeakable bī
  • Essay about Chinese swearing
  • Essay about swearing at soccer games
  • Wiktionary entry
  • 屄.com
  • L.A.
    2009-08-19

    This post used to have a long rant about how much I hated L.A. because idiots kept slamming their cars into me. This song is in the same vein and much less whiny.

    When it's grey in L.A. I sure like it that way,
    Cause there's way too much sunshine round here...
    I don't know about you, I get so sick of blue skies
    Whenever they always appear.
    
    And I sure love the sound of the rain pouring down,
    On my carport roof made out of tin,
    If there's a flood, then there's gonna be mudslides--
    We all have to pay for our sin!
    
    And I suppose that they'll close canyon roads,
    And the freeways will all start to clog.
    And the waters will rise and you won't be surprised
    When your whole house smells like your wet dog...
    
    When it's grey in L.A. it's much better that way,
    It reminds you that this town's so cruel.
    Yeah it might feel like fun when you're sporting sunglasses--
    But really, you're just one more fool!
    
    I'm just a chump,
    This whole town's a dump,
    We came out here to dump all our dreams
    Of making it big, but we're stuck in a sig alert nightmare--
    That's just how it seems.
    
    And I suppose, Laurie David sure knows
    All those cars we drive heat up our earth;
    And sea temperatures rise, and those constant blue skies
    And brush fires can sure curb your mirth!
    
    Brad Grey's in L.A. yeah okay! I should stay here
    There's no place that's better I know,
    For a wannabe star, stuck in a car
    On a freeway with nowhere to go...
    
    When it's grey in L.A. I sure like it that way,
    Cause there's way too much sunshine round here...
    I don't know about you, I get so sick of blue skies
    Whenever they always appear!
    
    Community College Addresses in the Los Angeles area
    2008-01-08
    It took me a while to find all of these addresses; I hope this does somebody some good.
    Applications I need to remember exist
    2008-01-06
    Software and cathedrals are much the same -- first we build them, then we pray.Sam Redwine
    Beautiful Things
    2008-01-07
    The moment one gives close attention to anything, even a blade of grass, it becomes a mysterious, awesome, indescribably magnificent world in itself.Henry Miller
    Alfred E. Neuman quotes up to 2005
    2008-01-05
    Fa, fa, fa.Alfred E. Neuman
    Computers
    2007-05-22
    The city's central computer told you?! R2D2, you know better than to trust a strange computer!C3P0
    When I teach math to students who want to use calculators or argue with people who like voting by touchscreen, I always find myself trying to explain why you should be careful trusting machines too much. Even though they make very few mistakes of their own, human error/corruption is always present. I just remembered the best, simple demonstration of this principle:
    Decadence
    2006-11-28
    Dove Promises
    This morning I ate a piece of Dove Promises candy that I'd received as a gift. I noticed that there was a message printed in the foil wrapper. Was the message "You will find happiness with a new love" or "Your lucky numbers are 5 9 17 18 24 46"? No, it said
    Get your feet massaged.
    Do I really need to spoil myself some more? I'm already eating a bar of chocolate.
    Miscellaneous stuff
    2005-04-05
    Num me vexo?Alfred Novus Homo
  • Zombo.com is probably the most useful site on the internet after wikipedia.org.
  • Math Rules
  • Private Eye cover collection Many are dirty.
  • An Anglish Wiki.
  • Labels by the Sheet .com
  • A tutorial on how to read the Zippy daily comic. Not too pretensious and, astoundingly, serious!
  • Only have a minute? Try Book-a-minute.
  • Generate your own eye-candy graphs and comparisons.
  • Buy a Stirling Engine.
  • A prediction market for political events. Caveat lector.
  • A list of artificial languages with links.
  • A blog written by a robot with 60 comments by robots.
  • Ian Albert .com -- lots of good stuff.
  • An ambigram generator.
  • Bruno Bozetto animated shorts.
  • A favicons gallery.
  • The calculator I wish I had when I was in school.
  • duckduckgo.com
  • Flashy guide to electronic music.
  • Harde Knox University
    2005-02-03
    People who don't know anything tend to make up fake rules, the real rules being considerably more diffiucult to learn.Aaron Sorkin

    Caveat Lector

    I have gleaned these rules through decades of trial and error. Since it is considered "impolite" to ask about directly, I can only guess at these rules.

    Most rules may only apply to white American males between twenty and forty years old -- since this is the only experience I have.

    These rules should be taken very seriously if you want to be respected in middle-class American society. Outside the United States and/or the middle-class, there are entirely different rules.

    Many of these rules are arbitrary, wasteful, or downright dangerous. If you find a rule truly disagreeable, find a way to hide what you really do and pretend to obey the rule.

    A more professional attempt at the same thing

    "Hygiene"

    "Fashion"

    "Etiquette"

    The S. H. Philosophy
    2004-05-18

    Today I saw The Fog of War (or as its author insists on calling it, the fog of war). Whenever I see or read things like it, I'm reminded of a view of the world revealed to me by S. H., loan officer at L. Toyota. He revealed his philosophy to me in parable:

    Remember last week when that lady tried to shoot herself in her car on the freeway? The freeway was blocked while the police tried to convince her not to do it. That's the way it always works. That lady's got some problems. Those good 15 policemen have to try to help her. But who's really being affected? The thousands of normal people like you and me who are sitting on the freeway. They just want to go to work. They want to earn money to make their children's lives good and help their communities. And look what happens to them!

    Yes, with reservations, of course, I agree.

    E-HYPHEN-MAIL
    2003-02-19
    I was reading the webpage of my hero, Donald Knuth, inventor of TEX, when I read his argument for "email" replacing "e-mail". I hyphenate e-mail. Not because I think of e-mail as weird mail, but because I can't accept the idea of a letter being pronounced by its name instead of its sound, unless there's a hyphen, or it's an actual abbreviation like IRS. I don't want to change etc. My wise friend Alex Boisvert noted that "ufology," the "study of ufos" works this way, but that's why I think "ufology" sounds like a made up word. I'm all for common usage ruling — Johnson complained about using 'fun' as a noun — but this is just a personal choice. Everybody in the world and all my descendents can go around "emailing" each other, but I'll always accidentally read that as "emmail". As for words like asymmetric, amorphous, and amoral, the "a" isn't an abbreviation, so I'm magically okay with this. ...equal, itinerary, oblique, usurp... Oh forget about it. (But I'll still hyphenate e-mail.)

    The OED's non-committal opinion.

    Quick Links
    1999-06-07
  • Math Webpage
  • Brown Noise Generator
  • DuckDuckGo
  • Free Worldcat Access
  • JHU Library Catalog
  • MathSciNet
  • ArXiv
  • Humor
  • Audio
  • Time wasters:
  • Laarni
    Now

    These are things I'm doing now:

    This is a now page

    Wishlist
    And thou shalt take no gift: for the gift blindeth the wise, and perverteth the words of the righteous.Exodus 23:8

    I have been unable to think of any polite way to tell this to people directly, so I'm going to say it on my webpage. I have enough stuff. If you want to purchase a present for me, please donate as much as you would spend on me to one of the following charities. A $5.00 donation means so much more to me than a $50.00 gift certificate. Of course if you want to make me a pizza or just say, "John, you're the bomb." that's okay, too.

    Every charity I list is one whose goals I agree with1 and your donation is tax deductible except for donations to SDF since it's a §501(c)(7) non-profit (public club).


    1. "With whose goals I agree" is pedantry up with which I will not put.

    Contact
    Nowadays, when you get a handwritten letter in the mail you're like, "What? Has someone been kidnapped!? Well, I'm not opening it, it's probably filled with anthrax."Jim Gaffigan

    jbaber4 (at) frundle (dot) com

    Today I Learned

    Sorry.