Robert Young
Jun. 18th, 2008
10:48 am
I find myself suddenly using knowledge I had thought would never become useful; I have an image segmentor using variational PDEs. This makes me unwarrantedly happy.
Jan. 17th, 2008
09:24 pm - Strange ways to find bugs
I learned a couple things today. First, optimizing compilers may change the results of a program; for instance, floating-point multiplication isn't actually associative, so if the compiler moves a multiplication around, it'll change the result. Second, if optimization changes your program too much, you may have a bug. In this case, it turned out that I'd copied and pasted some code and missed changing some of the variables.
But it's an interesting way to find bugs. I mean, it means that I should have tested that part of the program better, but still. I was curious, too, how much rounding error would accumulate through a run, and now I have a sort of idea, or at least a way to find out; make miniscule changes in the parameters and see how much noise there is in the result.
While I'm on the subject, why, does gcc give a compiler warning when you pass a *int[2](a pointer to a 2-element array) to a function expecting a *int[3], but passing a 2-element array to a function expecting a 3-element array works just fine(until the function tries to access the missing third element)? I know the answers "Because arrays degenerate to pointers, but not recursively", "Because specifying the length of a parameter in a function declaration is meaningless", and "Because the standard says so", but it'd be easy to check. Of course, it'd be easy for gcc to provide non-cryptic error messages too, but that's just the bitterness talking. You'd think it'd also be a good thing to check in a lint program, but splint didn't catch it beyond telling me that putting array dimensions in formal parameters was meaningless. I'll have to look around for a different lint program or a relevant compiler option.
Oct. 16th, 2007
08:39 pm
I was thinking about LASIK trcrnylu for no particular reason; on the one hand, I='d lose half my gestures and have yo resort to resting my chin on the back of my hand in order to look thoughtrful, but on the other hand, if I'd had LASIK, I'd be able to see what I'm writing right now. A couple of weeks back, I tolled over onto my glasses in my sleep, and this morning, the frame finally vroke. I went to the optician today, and if I understood her French right(woohoo, I can vaguely get by at the optician's!), they'll grind down my lenses and put them in a new pair of frames tomorrow. I knew there was a good reason for always trying to buy the largest frames possible. In any case, I'm not actually blind at the moment, but reading more or less requires being within 8 inches of the text. At least my touch-typing is fairly solid. Gsitly.
Also, I have an X-ray of my chest! As part of getting a residency permit, I had a medical screening, and they gave me my X-ray at the end. I suppose it's tacky to get it framed or stick it to the fridge. Or to try and make it into a Halloween costume.
Sep. 24th, 2007
08:46 pm - So French
So, France.
- Two weeks ago: went to the Louvre, saw ancient Assyrian artifacts.
- One week ago: Louvre again for Mona, Centre Pompidou, concerts in the Tuileries garden.
- Last weekend: Musee d'Orsay, giant department store, huge gourmet supermarket
- Big plans for this weekend: shop at Muji, lunch at Flunch
The supermarket was fun too; in the rows of ethnic food aisles, there's a US/Canada aisle, with ... peanut butter and marshmallow fluff. It hurts a little to see your culture reduced to that.
Anyway, Muji and Flunch, Muji because it's known in the US as an exclusive, designer brand, and known in Japan as being "a source of sensibly priced basics"(and I need a spatula and alarm clock) and Flunch because it's cheap. I still apparently have a strange psychological block against buying food in restaurants, which is even worse in France where there's a poor exchange rate and salads are 11 Euros if you're lucky. I plan to try to work my way up.
Sep. 7th, 2007
07:27 pm
| I hope this isn't as hilarious as it looks. | Oh well, it is. |
Also, I'm in France now, where you can buy chocolate mousse in little four-packs. And cheese. Oh, there's so much cheese to buy. More later, perhaps, though judging by my record so far, perhaps not.
Aug. 25th, 2007
03:58 pm - LaTeX pinky
I thought I was getting Emacs Pinky recently; my left pinky has a tendency to be a little stiff. On further thought, I realized that it's more likely a combination of poor typing form and LaTeX, where you perpetually use the shift key for all sorts of mathematical punctuation. I recently set up Emacs(to be precise, XEmacs with AucTeX) to hopefully fix some of that by rebinding a bunch of the punctuation symbols with the following lines of code in my custom.el file:
( Read more... )
Basically, most of the numbers get switched with the corresponding punctuation symbols, along with curly brackets and square brackets and dash and underscore. I've been wanting to figure out some way to avoid typing dollar signs for some time; at one point, I wrote a perl script that tried to guess whether something was an equation or a word and inserted dollar signs appropriately, but I never stuck with it. This seems more promising; it's nice to be able to write $v_k$ without touching the shift keys.
Jul. 20th, 2007
09:59 am - The second-to-last word is "appendectomy"
The problem with a journal is that once you've stopped posting, it's tough to start again. What's significant enough to break a three-month silence? Apparently, a joke which will stop being topical in about 14 hours.
Summer's been good, if dull. I'm at home with my family, learning French and learning how to drive, and preparing to go to IHES in the fall.
Apr. 15th, 2007
10:04 pm - Defense in two weeks!
So, I was about to email my advisors with the final draft of my thesis, because readers' reports are due a week before the defense when I realized: I'm defending my thesis in two weeks!
(and unemployed in two months, but ignore that.) (also, lecturing at NYU in one week!)
Defense in two weeks! WOOOO!
Nov. 22nd, 2006
07:44 pm
So what am I up to recently? I'm cooking a turkey again this year; Thomas offered the use of his apartment for Thanksgiving, and we've got ~15 people coming. I've basically tabled the Abecedary for now, in favor of things that are more likely to get me employed; right now, applications, and resumes and such, and later, hopefully I'll find time to work on The Netflix Prize.
The big news is that my stove is broken, which is a major pain in the neck; one of the valves leaks, so the gas to it is turned off until it can be replaced. The guy who came to take a look at it showed me the valve in the back to shut off the gas and said that the leak's pretty minor and if I need to use the stove, I should reach back with a pair of pliers and turn the valve. Unfortunately, this doesn't take into account that I have scrawny little arms and don't really feel like moving the stove every time I cook. So instead, I'm moving to mostly electrical cooking until it gets fixed; I picked up an electric skillet at the hardware store, to supplement my toaster oven, rice cooker, microwave, and two crock pots. The big thing I'm going to have trouble with is baking; I don't have a good way to bake bread, but I'll probably give it at least a try.
Really, though, the main reason I decided to post was to show off this text ad:
Nov. 3rd, 2006
10:24 pm - Woohoo!
NASA plans to service the Hubble!
http://bobpark.physics.umd.edu/WN06/wn1
This is great; the Hubble's done some amazing work and, well, taken some very pretty pictures, and I'm glad that George W. Bush's ridiculous Man-Mars obsession and the ISS won't take away from that.
Sep. 30th, 2006
05:50 pm - One Warranty Later!
I'm now the proud owner of a Tri-Wing screwdriver, useful for dismantling Nintendo products and . . . not much else. Not coincidentally, I'm again the proud owner of a working Nintendo DS. What amuses me about the screwdriver is that it seems to be basically a Phillips head screwdriver with the bit chopped off and replaced; in the pictures, you can see the change in the metal and the Philips head label on the handle.
In any case, if you find yourself assembling a DS, one of the most common errors is to not push the ribbon cables in far enough(symptom: you turn it on, the bottom screen flashes, then it turns off). There are white lines on the circuit board as guidelines; the lines on the cables should align with the lines on the board. This took me way too long to figure out.
Sep. 27th, 2006
12:46 am
A stupid Mathematica trick(Inspired by a comparable construction in Higher-Order Perl):
Curry[fn_] := (fn[args___] := fn[args, ##] &); f[a_, b_, c_] := a + b + c Curry[f] f[1,2,3]6
f[1]f[1, ##1] &
f[1][2,3]6
f[1][2][3]6
It's an automatic function currier! Using the same name for the curried version is probably bad behavior, but it looks cool; changing it to return a curried version is trivial, but it means you can't do f[1][2][3]. It works because of the way Mathematica evaluates functions; when confronted with two acceptable function prototypes, it chooses the more specific one. So f[1][2,3] first evaluates f[1](matching f[args___]), so we get (f[1, ##1]&)[2,3] (f[1,##1]& is a lambda function taking any number of arguments and returning f[1,args]) which evaluates to f[1,2,3]. This matches f[args___] and f[a_,b_,c_], but f[a_,b_,c_] is more specific, so it evaluates 1+2+3 which is 6. Okay, back to late-night programming.
Sep. 19th, 2006
07:41 pm
Here's S. Seven to go.
Job search is going moderately well; I'd thought I'd be avoiding the academic job route entirely, but Shmuel's been recommending some applied math departments to me, so it looks like I'll be applying for postdocs after all. The incoming first-year class arrived last week, so there have been assorted social events going on; last night was a bowling trip, which ended up with six upper-years and no first-years. Oh, well; last year, there was a similar lack of first-years at one event, but that was to see avant-garde theater, so they had quite a reasonable excuse.
Sep. 6th, 2006
10:34 pm
R is up. My first attempt at R didn't work out so well, so here's the second. The first may show up sooner or later if I can figure out how to make it work.
Aug. 18th, 2006
12:39 pm
Q is up. I sort of like it; I might make it into a t-shirt. Of course, I've been intending to make various t-shirts for years without getting around to it, but whatever. Right now, I'm visiting my family in Delaware. One of the things I like about Delaware is that the New Castle County library system is excellent, and whenever I visit, I generally reserve half a dozen items on their website to arrive while I'm in Delaware. This time around, I picked up Higher-Order Perl, which is really neat. Also, very new-looking; if I'm not the first person to borrow it, I'm probably in the first three. I've been slowly going through MIT's online SICP lectures, which are very much oriented toward functional programming, so it's nice to see applications. If you're into programming, I highly recommend it; the higher-order programming viewpoint is so different than a lot of traditional approaches and so powerful that it'll really change the way you program.
Aug. 4th, 2006
01:13 am
Javascript is a weird language. I know this because I've been busy hacking together P. Which, unfortunately, is probably only compatible with Opera 9, but if you have Opera 9, it looks pretty nice. I'll put up a no-Javascript version before Q comes out.
Jul. 23rd, 2006
12:04 am
O is up. It's an entirely lazy update, suitable for summer, but once I thought of the idea, I had to do it.
Summer's been good. I've been doing assorted Chicago summery things for the first time; last week I went to a concert at Ravinia and a movie in Grant Park, and next week, I'm invited to the Pierogi Fest!
Today, I went to see Redmoon in Grant Park. They did a performance in Hyde Park in September which was neat-looking, but incomphrehensible. It was set on a bunch of sunken houses in the lagoon behing the Museum of Science and Industry, which is a neat thing to do, but it means that the actors are really far away and difficult to hear. And since they had had to drop all the colorful, splashy costumes after Katrina hit, it makes a tough play to understand.
But today, they were doing "The Balloon Man", at least nominally for kids, and it was pretty good.. The wacky vehicles and staging that I'd liked from their Hyde Park production were there, in the service of a somewhat more comphrehensible play. Still relatively odd, though; a bit morbid, and interrupted in the middle by a presentation on global warming. My favorite part was the alphabetically organized song about death. It's a little slow-paced at times and the science is sketchy, but for free, it's a lot of fun. Avant-garde theater for kids.
Jul. 14th, 2006
02:37 am
Guest week! This week, N comes courtesy of
setzerg.
Not much new here. I've started looking seriously into what I want to do after graduating; I met with one of the Comp Sci. professors here and talked about computer vision. It sounds like a neat field, and I've been going through a few math-oriented papers on the subject; the problem is that getting into academic computer science might be harder than I thought. Next year, I'll probably try to sit in on a few courses in the CS department.
My yeast starter died recently; it started growing red spots. On the other hand, the other living things under my care are thriving; my herbs love this new apartment, and K. and I planted marigolds at the office last week. I think next I want to try for some native plants, which is to say dig up some weeds from around Hyde Park and put them in pots.
Jun. 28th, 2006
09:59 pm
M is up, marking the halfway point. Next week, we'll have a guest strip for N.
What do you think of the Abecedary? All things considered, I'm pretty happy with it. It does what I wanted it to do; it amuses me and it lets me play with Python and PostScript and Scheme and GIMP and so on. Drop me a comment if you've been reading it; I'd like to hear what you think.
Jun. 27th, 2006
11:10 pm
I moved into a new apartment over the weekend, more on that possibly to come, but that isn't really what this journal's about. This journal's about random scientific asides and fragments of thoughts! And using my paid account photo-hosting. And Abecedary updates. (M's late because of the move, but will be up soon.)
So, yeah. When I was a kid, I once did an experiment involving identifying rocks; you rub it against things of different hardnesses to see what scratches, and you scratch it against an unglazed piece of white tile to see what color mark it leaves. My sink is harder than my aluminum rice pot and aluminum leaves a grey mark on my sink.
( Pictures )
This summer looks busy. The REU's in full swing and I ended up with three students who share essentially no interests, so they're working on three different projects, one on topology, one on cryptography, and one on logic. Fortunately, I know at least a little bit about each topic, but it's still a lot. Hopefully it'll die down later in the summer as Benson's class ends and YSP starts up. Still, between the REU and moving, I haven't been able to get much math done recently, and I still need to work on career stuff.
Navigate: (Previous 20 Entries)
