Home
Beware of the Train [entries|archive|friends|userinfo]
pozorvlak

[ website | My Website ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Links
[Links:| My moblog Hypothetical, the place to be My (fairly feeble) website ]

Thesis sitrep [May. 7th, 2008|11:44 pm]
[Tags|, , , ]

I've been collecting some more data on the thesis:
Wed May  7 23:45:49 BST 2008
4741 lines 23246 words 163656 characters
thesis.log:Output written on thesis.dvi (84 pages, 643096 bytes).
33 fixmes
80 definitions
141 term-definitions
24 theorems
21 lemmas
6 corollaries
30 examples
143 bullet-points
A "term-definition" is a call to the macro \defterm, which I use to emphasize the term being defined. The count's not the same as the number of definitions because I often group the definitions of related terms into the same \begin{defn}...\end{defn} block. The lemmas, theorems etc are mostly other people's :-(

I like bullet points. They reflect how I think, and bullet-pointed text takes up more space on the page.
link9 comments|post comment

Mountain photos [Apr. 30th, 2008|04:01 am]
[Tags|, , , ]

I've put a selection of photos from my last-but-one hiking trip on moblog: part 1, part 2, part 3. We went to Glen Etive (south and a bit west of Glen Coe), and climbed Ben Starav and Beinn nan Aighenan - the plan had been to do more, but we underestimated the time it would take and overestimated our fitness levels. It was an absolutely stunning day, and the scenery was just great. A sample:





By the way, my thesis page-count has finally drawn level with my Munro-bagging count:

Wed Apr 30 04:06:10 BST 2008
4552 lines 22350 words 156883 characters
thesis.log:Output written on thesis.dvi (82 pages, 628596 bytes).
34 fixmes

Yay!
link2 comments|post comment

Argmungers in universal algebra [Apr. 26th, 2008|12:32 am]
[Tags|, ]

Some of you might be interested to learn that argmungers are now explicitly included in my thesis: the mathematical concept, that is, not the code. One can recast classical universal algebra (which works syntactically, with words in a recursive language and denumerable sets of variables) in terms of planar trees of operators (abstract syntax trees, effectively) acted on by munging functions (and yes, I use the term "munging function"). Restricting the munging functions allowed is equivalent to imposing syntactic restrictions on the equations defining your theories: I'm writing up a proof of this at the moment. Interestingly, isolating the concept of munging functions makes the whole thing significantly cleaner: up until then, the theorem was frustratingly obvious, but trying to prove it (or even state it!) rigorously was like nailing jelly to the wall.

Maybe I should thank Hitesh in my acknowledgements...

Oh, and current state of play:
Sat Apr 26 00:47:12 BST 2008
4511 lines 22164 words 155551 characters
thesis.log:Output written on thesis.dvi (78 pages, 626444 bytes).
34 fixmes
I was up to 79 pages, but then I deleted some redundant stuff, so now I'm back down to 78.

Right, time to pack for the mountains tomorrow.
link5 comments|post comment

Better living through shell scripting [Mar. 28th, 2008|03:31 pm]
[Tags|, , , , , ]

As I may have mentioned once or twice before, I'm writing up my thesis. This is an intensely slow and depressing process, and the temptation to slack off is overwhelming. Being a geek, I decided to write some code to help me. Writing code rather than writing thesis is still slacking off, obviously, but it's slacking off to a useful end. Writing blog posts about writing code that's meant to help me write my thesis is another matter...

Read more... )
link12 comments|post comment

[Mar. 12th, 2008|03:00 pm]
[Tags|, , , ]

My paper was rejected. Not enough new material, and I'd failed to cite related work.

As well as being annoying, this is worrying: the paper contained almost all the new material that's in my thesis, strongly suggesting that my thesis doesn't contain enough new material either.

Bugger.

On the upside, the reviewer suggested some possible applications and further work: if I could do that, maybe that would be enough.
link14 comments|post comment

And another thing... [Mar. 3rd, 2008|05:04 pm]
[Tags|, , , ]

Something I forgot to mention...

My last funding cheque came on Thursday. No more Research Council funding for me. Fortunately, this day is not unanticipated: I have savings, and I have teaching income. I'll probably be applying for part-time jobs, too.

Right, thesis.
link3 comments|post comment

Random life update [Mar. 3rd, 2008|10:48 am]
[Tags|, , , , , , , ]

  • My supervisor, who's been away in Barcelona for the last month, dropped in for a flying visit last weekend. We had two mammoth three-hour meetings in two days, which was excellent in that I now have lots of stuff to work on and some idea of how to fix up things that were broken, but utterly knackering. Momentum has been lost a bit (hence the Fine Structure stuff). Thesis currently stands at 64 pages.

  • My office-mate Martin's stag night was on Saturday, which was good fun. It was the first stag night that almost all of us had been on, and it was fairly quiet - pub meal, trip to off-license to stock up for later, second pub, burger van, back to Gareth's flat for Wii games and more beer, argument with the jobsworth in the McDonald's drive-through who refused to serve us on the grounds that we weren't in a car, more Wii, decide at about 3am that I'm tired and should go home when I finish this drink, sit back in comfy sofa, look at watch again, discover to my horror that it's now 5.30am. One guy seemed determined to serve as our personal Bad Idea Bear, and kept making suggestions like "Let's play a drinking game!", or "let's all order drinks with stupid names!", or "let's get flaming sambucas!". The rest of us mostly kept him in check, though.

    My trouble is that I drink quickly - not just alcohol, any liquid - so even if I alternate alcohol and water I still take in quite a lot over the course of a long evening. And Martin kept palming his unwanted drinks off on me :-( Consequently, my head's was in less than wonderful state for most of Sunday. Hangovers get a lot worse as you get older, I've noticed.

  • I've been doing more hillwalking. As of a few weeks ago (when Philipp and Bart and I did a moderately epic six-hill hike up by Glen Shee, in beautiful conditions), I have climbed a quarter of the 3000ft mountains in Scotland; as of Saturday, I've climbed all the hills in Sections 1 and 2 of Munro's Tables (out of, er, seventeen sections). Munro-count currently stands at 79 out of 284. Annoyingly, I've now done almost all the ones reachable by public transport, and I'm fast running out of hills that can be reached in a day from Glasgow.

  • The rock-climbing's continuing to be fun. I went to the wall yesterday, and even with my hangover I was climbing stuff I couldn't have managed a few months ago, and I think my technique is getting better. I've got fairly good upper-body strength, so the temptation is to pull myself up the wall with my arms: this is apparently bad technique, as it tires you out faster than if you use your legs, so I'm trying to force myself to push up with my legs more. My other problem is that I don't anticipate enough: I'll get into a position and only then think about my next move, rather than planning two or three moves ahead. This is, again, much more tiring. Incidentally, I could never have anticipated how important balance is for climbing.

    The thing I like about climbing, I think, is how mentally absorbing it is: you're testing your mind and your body at the same time.

  • [info]wormwood_pearl came climbing with us on Thursday, and seemed to enjoy herself. Hopefully she'll come along more in the future. An attempt to interest her in hillwalking last year was a bit of a disaster: though the weather was fine on the actual day, it had been raining heavily the day before, and the ground was waterlogged, so walking through it was less than fun.

  • I somehow managed to put my phone through the washing machine. Fortunately, I have an old Nokia 3310 kicking around to serve as a backup for just this eventuality, and most of my numbers were on the SIM card, which was undamaged; unfortunately, not all the numbers were. The upshot is, if you've given me your number in the last year, I probably don't have it any more.

  • I bought a second-hand laptop from my flatmate Alan, who has a laptop problem in the way that other men have drinking or gambling problems. Poor old delirium's getting a bit battered, with her speakers failing to work half the time. And I had various bits of Windows-only software lying around that I wanted to be able to use, so acquiring a Windows machine seemed like a reasonable idea. And being able to reduce Alan's brokeness was a bonus, too. I've been running Linux predominantly since around 2002, and pretty much exclusively since 2004, so it's weird owning a Windows machine again in all sorts of ways. I've updated it, run malware scans, set secure passwords and created a non-admin account for everyday use, but it still feels rather like unprotected sex, only without the fun parts.

  • If I'm being entirely honest with myself, though, the real reason I wanted a Windows machine was so I could play Portal, which (for those of you who don't already know) is a lovely 3D puzzle game in which you can shoot "portals" onto most flat surfaces, creating a teleporter between your two portals. There's an excellent trailer for the game, which gives you a good idea of the game mechanics; someone's also written a 2D Flash version. But the best thing about the game, I think, is the atmosphere, which is surprisingly creepy and effective. The occasional voiceovers from the insane HAL 9000-style computer are beautifully blackly comic.

    Sadly, Dream (I've stuck with the Sandman machine-naming convention) doesn't cope with it all that well: I've been getting audio stutter, and there seems to be a bug in the video driver which makes the machine bluescreen whenever I try to change the resolution. Upgrading the driver helped - it's stopped bluescreening when I Alt-Tab to another application :-) But Portal's coped a lot better than Half-Life 2, which appears to be missing half its textures: the game world's a semi-transparent mess of wireframes and magenta chessboards, which surely isn't intentional. I'll see if Google or the forums have any ideas. Edit: looks like this is a common problem. Possibly driver-related, but it looks like I should also verify my game cache files and possibly re-extract the game data.

I'm reminded of why I don't post much about my actual life. I can see why people might want to read about, say, if-statements in Smalltalk, but surely nobody cares about this stuff?
link16 comments|post comment

[Feb. 21st, 2008|04:53 pm]
[Tags|, , , , , , ]

I went to an all-day sales pitch conference sponsored by Wolfram Research yesterday, all about just how damn cool the new version of Mathematica is. There's a lot to like: as a language, it seems to have a nice blend of Lisp-like and APL-like features, so you can do all your standard functional programming tricks and what looks like a decent subset of array programming tricks, as well as writing normal imperative code. The standard library is, of course, vast, with loads of clever symbolic, numerical, graphics and GUI code built in, and in the new version there's also lots of standard geographical/scientific/financial/etc data available, import and export filters for loads of standard formats, and other niceties. One thing I really liked was the Manipulate[] function: hand it an expression (which can evaluate to a number, a symbolic form, a graph, a 3D plot, a sound file, an animation, or whatever) and a list of parameters, and it will automagically construct a GUI widget with sliders and checkboxes that allow you to manipulate the parameters interactively and observe the result. You can even control the parameters using a gamepad, if you want... They seem to have made a major effort to make everything interoperate smoothly in the new version - one slightly silly demo they showed us was putting slider bars as the limits of an integral, and changing the value of the result as the bar was dragged about. That was always the major problem with open source mathematics software, from my limited experience - nothing does everything, so you have to learn N different incompatible sublanguages, write loads of glue code, and constantly switch applications. The Sage guys seem to be working on this, though - I'll have to check it out.

Have a look at the big collection of Mathematica demos at http://demonstrations.wolfram.com, which includes a lot of examples of Manipulate[]. There are videos, or you can download a free-as-in-beer notebook reader.

In other news, I've been having a bit of a play with the NetBeans IDE for Java, and really liking it. I've got used to doing everything in vi and the command-line, which has its upsides, but IDEs can make life so much easier for the beginner. In particular, NetBeans' wiggly red underlining has been a huge help in learning the language, and the integrated documentation browser is very nice. I haven't needed the automated refactoring support yet, but it's fun to play with - select! Click! Extract Method! :-)

But here's my question - why is it so slow? I know it's written in an interpreted language, but so is Emacs, and that runs without too much complaint on 1980s hardware. And the compiler's written in C, unless I'm much mistaken, and that's slow as hell too. Or, conversely, why were the compilers with Delphi and Turbo Pascal so fast? Simple Java programs take several seconds to compile on my 1GHz machine, where their Pascal equivalents would have compiled in an eyeblink on its predecessor's predecessor1. Is there something about Pascal that makes it especially easy to compile, and if so, what is it? Java seems at least as regular to me, and generating bytecode ought to be easier than generating native code. Or is Anders Hejlsberg just a ninja?

Thesis now at 63 pages and 22563 words, according to wc *.tex, which means that I've written 20 pages and, um, several thousand words in the last sixteen days (nearly 1000 words today, but many of those were "XXX proof here"). Progress is being made, though there's an awful lot still to do.

1 I'm sure I've mentioned our fifteen-minute link times for our medium-sized C++ app when I was working at $company: while our network of file dependencies wasn't as bad as it could have been, it still resulted in the linker having to do a lot of work. And while compiling can be distributed easily around a network, linking can't :-(
linkpost comment

navigation
[ viewing | most recent entries ]