Since I wrote about F# in August, my progress has been rather slow.
There was a lot of work to do for Uni, almost all involving final touches to Pavel, the data-analysis tool me and a few other students have developed as a student research project. We’ll publish Pavel next week on SourceForge, I’ll write a few lines about it then.
Another thing that has held me back is my fascination for Haskell.
The TrueSkill ranking system is a skill based ranking system for Xbox Live developed at Microsoft Research. The purpose of a ranking system is to both identify and track the skills of gamers in a game (mode) in order to be able to match them into competitive matches. The TrueSkill ranking system only uses the final standings of all teams in a game in order to update the skill estimates (ranks) of all gamers playing in this game.
I’m feeling all mad-scientistic tonight, sipping coke, with 30 tabs open in Opera :)
On my journey into the weird world of functional programming on the .NET CLR, I continue to stumble upon interesting stuff. Papers, articles, interviews, each worthy of hours of dedication. Alas, my day still has only 24 hours (I need to work around that somehow), so at the time being I can’t do much more than glance over everything.
OCaml has threads, exceptions, call-with-continuation, calling conventions to and from C, a rich standard library with collections, networking, I/O, graphics, a complete interface to the Unix programming API, and a powerful module system that blows Java’s packages away. It has interfaces and bindings for Oracle, MySQL, postgres, berkeley DBs, CORBA, COM, xml-rpc, SOAP, XML, perl-compatible regular expressions… the list goes on. You name it, it’s there.
OCaml has the potential to make me happy as a programmer, finally.
Synergy is a terrific tool that allows multiple machines on a network to share one set of Mouse/Keyboard.
The typical application is probably a setup like mine: since I bought a Dell 2407WFP (I really recommend this store, the prices are amazing and the owner is a very nice and helpful guy) a few months ago, I couldn’t bring myself to stare a my laptops crappy screen any longer. Placed right under the monitor, it uses the Dell as its display now, connected by VGA while my Mac mini is connected by DVI. Switching inputs on the Monitor isn’t a problem but actually operating the laptop with its lid closed is kinda difficult. Since both computers are in my LAN, I use Synergy to share the Mac’s Mouse and Keyboard with the Laptop.
Manually starting the Synergy server on the mac works but is quite unelegant. Open Terminal, launch synergys, quit Terminal. The instructions for launching Synergy automatically on the Synergy homepage are from the time before Mac OS X 10.4 and don’t use launchd for launching, relying on LoginHooks or StartupItems instead.
Launching via launchd is neither difficult nor very original but since Information on this is a little hard to find, I wanted to share my synergy launchd here:
The first program argument has to be adjusted for your system of course. Place this file in /Library/LaunchAgents. I deliberately did not make this an OnDemand Item since that involves fiddling with /etc/services.
Synergy starts quickly and doesn’t use many resources, so this shouldn’t be a problem.
Getting the keys to work correctly
The ALT and WIN keys don’t work correctly when connecting a Windows client to a Mac server. To fix this, add these lines to your windows client in the screens section in /etc/synergy.conf: