The weekly reports have been dead for a while. Reason? The blog has been dead for a while.
The old computer running this website had some problem all of a sudden about 3 weeks ago. These problems appeared as a complete lockdown of the system - no response to anything. So my brother - with me on the other side of a telephone, tried to reboot the box; but couldn’t get it back up online again. He was headed out to a LARP anyway within hours - and so couldn’t really do much more about it.
Right.
End result? I joined forces with a good friend of mine; we split hardware costs for a slick new box - an Asus barebone box with a 64bit processor and a gig of RAM. It received the harddrive and network interface from the old box, and was with that good to go - only .. processor architecture changed; and so for optimal performance, it’d be a nice idea to actually use a new system install that took advantage of the extra available bitwidth.
A completely failed OpenBSD installation later, we settled for Gentoo - which now is humming along nicely. It even turned out to be surprisingly easy to restore the old data on the new box.
There. I won’t blather more about my hardware woes - but instead poke about other themes for a while.
My students here for the course rock. The REALLY rock. We had the course evaluations a couple of weeks ago - and apparently my exercise sessions has been gooooood. At least the students thought so. I average in the upper fifth of possible ratings in every single evaluation area. All of them. I kick ass, yo!
Compared - both to the faculty mean, and to the workgroup results - I outperform in all evaluated areas.
And, in addition to this cause for celebration, the end of the school term (last week) comes with all manners of parties, celebrations, meets, and activities. I think I had my first non-planned evening in about 2-3 weeks yesterday.
The Jena climate, though, leaves a bit to wish for. I sincerely long to get back to Sweden during the hottest summer weeks we have up there, in order for me to cool down a bit. We have had 25°+ since beginning of June (i.e. about 2 months of active time with weekly lectures, seminars and exercise classes - in tropical bloody heat); and the last about 2 weeks or so, the temperatures have been in the upper 30°ies.
Horrible. Horrible, I tell you.
And of course, this heatwave has coincided with the World Cup, the Thüringertage and several other huge parties that cover the town in DJ booths on the streets and drunk germans shouting on the streets at 3am.
This wouldn’t have had to be a problem, if it wasn’t for the fact that the main bar street begins at my front door. And the heat forces me to keep as many windows open as ever possible, lest I boil away in the night.
As I begun here, I was told that since the people here don’t know much about A∞-algebras, operads, props and similar topics, so it’d be best if I shelf it and keep it a hobby. My advisor hesitated on suggesting one possible and highly computational theme since he couldn’t see any applications of it later on; no directions for further research. And so I studied group cohomology in order to at least try and understand what’s going on. (I’m getting there - by and by…) Then my advisor went to Oberwolfach for a week. Upon returning, A∞-stuff is hot, operads seem related, the computational theme is worthy of serious consideration and I should consider whether I really want to commit that deeply to the original ring-theoretic ideas.
So … right now I know even less of what I’m going to do for my PhD than a month ago. On the other hand, one of the leads would amount to my programming for about half a year, and then publishing a paper about that and start using that program to gain intuition for results to put into the PhD. This might be a good direction to go.
I’ve started looking at Haskell. I -like- it. It’s a language where I’m capable of hacking together an efficient algorithm for enumerating subsets just by thinking through what a subset is. How did you do it, you may ask, whereupon I answer: Recursion.
Consider a total ordering of your finite set. Pick the first element. For each subset, either this element is there, or it’s not. So if we take all subsets of the rest, and throw in once with and once without this particular element, we get what we want.
Now, just translate this to actual code - and the result is
Useful for parsing this is to know that : is the cons operator, and ++ concatenates lists. map applies the given function to all elements of the following list; and where lets you define local variables postfixedly.
A shoutout to sigfpe for piqueing my interest in these things enough to try and make sense of the language. Without his category theory heavy posts on Haskell, I wouldn’t have looked into it.
2 People had this to say...
Nice to see another update. I remember the weather from southern Germany. It’s far too hot sometimes for us cool blooded Swedes. On the other hand it’s nice in the winter, even if the Germans don’t understand that 5C is “warm”.
Sounds like a nice project with your PhD. I hope to hear what you settle for even if I know I won’t be able to read most of it
Haskell is a beautiful language for mathematics, but sadly I have had it demonstrated for me how exceptionally bad it is in other areas. Writing a playable game of chess (complete with graphics) in Haskell is a painful experience. Personally I consider it a curiosity at best after having had to deal with the IO functions.
Haskell IO isn’t a big deal at all. I recently tried writing some (H)OpenGL code in the IO monad in Haskell. It was no harder than writing OpenGL code in C, say. In some ways it was easier - for example it’s much easier to iterate over sets of triangles and the GLUT callbacks for window resizing, keyboard and mouse input etc. were much easier to code elegantly. You have to make use of IORefs a little bit. These are essentianlly the same as C pointers except they’re safe. And when you’re not manipulating IORefs or doing IO you can write the mathematical portion of your code using pure functional code.
On the other hand, if I felt like it I could easily present Haskell IO in a really obfuscated way that makes it much seem harder than it is.
Want your say?