Archive for November, 2007

Functional Programming from Microsoft?

Ars Technica reports that Microsoft will be bringing a functional programming lanaguage to Visual Studio, called F#. The language is a functional langugage that is based on OCaml and will of course link in with .Net.

I find this very interesting. Learning different programming paradigms (like procedural, object-oriented, functional, structured, logic and so on) is a good thing for programmers to do. I see this as a good thing that Microsoft is encouraging functional programming. My favorite lesser-known programming language is Scheme, another functional programming language.

One of the problems with less popular programming lanaguages (the popular ones are usually only procedural, structural or object-oriented languages) is that there are few libraries to support them so its hard to actually do something useful. Microsoft linking F# to .Net will be benefitial to the Windows world by bringing the power of .Net (and Mono, in a way) to functional programming. I have a feeling that Microsoft Live Labs has something to do with this and did it so they can do cool projects that take advantage of functional programming paradigms.

This news just shows yet again how unpredictable Microsoft is because of its size. Some parts of it are making blunder after blunder while others keep doing tons of amazing things like this.

Blogged with Flock

Ubuntu 7.10 Post-Install Guide

As many of you know, Ubuntu 7.10 was released last week. I wrote up a little guide for Jonathan on some things I recommend setting up post-install and he thought I should post it here. If you’re unfamiliar with Ubuntu, read this review of the operating system. So here’s the guide, modified slightly:

Ubuntu 7.10 Post-Install Guide v1.1

Do This First — Enable All Software Repositories:
1. Open up Synaptic Package Manager (System->Administration->Synaptic Package Manager).
2. Go to Settings->Repositories.
3. Check all boxes under “Downloadable from the Internet” in the “Ubuntu Software” tab and under “Ubuntu Updates” in the “Updates” tabs, then press Close.

4. Press Reload button to reload the repository cache.

Recommended Software Packages to Install, In No Particular Order:
ubuntu-restricted-extras — A collection of common “non-free” software, like flash, mp3, dvd playback, java, rar, microsoft fonts and lots of codecs.
gnome-themes-extra — More themes for gnome
nvidia-glx-new — The latest, greatest nvidia driver for the 8000 series of cards. Ubuntu may prompt you to add this during the install, which takes care of this for you.
amarok — An excellent music-library-based music player similar to iTunes (except that it doesn’t suck like iTunes).
audacious — A simple winamp-style music player.
jokosher — An excellent audio editor.
ardour-i686 — An excellent audio editor, optimized for i686.
armagetronad — Tron light cycles in 3D!
vlc — A simple and effective video player just like the windows version.
mplayer-nogui — A GUI-less video player. uses the keyboard for controls. very 1337. :-P
warsow — You already know what this is! :-)
kate — The text editor of choice (though GNOME’s text editor “gedit” is of comparable quality these days)
k3b — A CD/DVD burner similar to Nero that’s better than the one installed by default.
emacs — Just kidding! I’d never recommend that!
katapult — A keystroke application launcher, similar to Launchy on Windows or Quicksilver on OS X. Add it to the startup items by going to “System->Preferences->Startup Items” and adding the command “katapult” after installing it.
deluge — Excellent bittorrent client, comparable to uTorrent on windows

Notes:
1. I’ve never used jokosher or ardour, but they’re supposed to be the best out there for creating/mixing audio on Linux. Ardour is the more powerful and complex of the two. Give them a try for making your music. Check out http://ardour.org and http://jokosher.org for help using them.
2. If these packages prompt you that dependencies need to be installed, just ok it.

Compiz Fusion in 5 Easy Steps:
1. First you need the nvidia driver installed, as recommended above. So install nvidia-glx-new and reboot. As mentioned above, Ubuntu may prompt you to add this during the install, which takes care of this step for you.
2. Some of compiz will already be installed, so just install compizconfig-settings-manager and emerald from Synaptic Package Manager (System->Administration->Synaptic Package Manager)
3. Go to the Appearance Settings (System->Preferences->Appearance) and go to the Desktop Effects tab to enable compiz.
4. Run the Compizconfig Settings Manager to configure compiz.
5. Enjoy!

Common Things to Explore and Tweak:

Desktop Theme Options — found in System->Preferences->Appearance
Display Options — found in “System->Administration->Screens and Graphics” (only needed if it didn’t autodetect the right resolution/refresh rate)
Firefox extension browser and install wizard — in Firefox, go to Tools->Add-Ons, go to the Extensions tab and click on the “Install Ubuntu Add-ons” link on the bottom right.

Install some programs — either via the “Applications->Add/Remove Programs” fancy user-friendly interface or the “System->Administration->Synaptic Package Manager” powerful list interface.
Changing default program for a file type — right click on file, go to Properties, go to the “Open With” tab in the window that pops up and select the program.

Installing a printer — Just plug it in! That’s all!

More Information:
http://www.ubuntuforums.org — Excellent user forums
http://www.ubuntuguide.org — A huge how-to for everything.
http://screencasts.ubuntu.com — Screencasts that give how-to’s for various linux tasks.