Matlab from the Ubuntu Menu

Getting stuff to work from the Ubuntu Menu is pretty straightforward, but I ran into some little problems that confused me with Matlab. This post goes through the steps and difficulties I had, which might be useful in general, not just in relation to Matlab.

First up, I installed the Student Edition of Matlab (currently R2009a and a steal at the student price), taking into account the fact that I’m running a 64-bit OS and the student edition doesn’t come with the 64-bit architecture libraries. Pretty confusing on first install as the installer detects the architecture but then can’t find the libs, but corrected using this guidance on the Mathworks website.

Once you’ve done that, you need to pass the argument ‘-glnx86’ to Matlab every time you start it up.

That’s a pain, plus the other boilerplate to run it in the background – so I tried to set up a menu option using ‘Main Menu’, which is the relevant administrative tool that comes with Ubuntu. It’s in System – Preferences – Main Menu if you’ve not used it before. Here’s a screenshot of it, set up with a Matlab launcher.

Main Menu with Matlab

The obvious thing is to give Main Menu the command that works from the command prompt, but no. Doing this results is strange behaviour where the splash screen fires up, disappears, and nothing. Checking the .xsession-errors log file in my home directory shows what’s happening. The application is launching in command line mode, writing its prompt to stdout, and then being shut down.

Kinda weird, maybe, as launching the app from the command line launches the Matlab GUI. Anyway, you also need to also add a ‘-desktop’ argument to the launcher command. My Matlab is installed in /opt/matlab, remember to change the path as appropriate for you.

The Matlab Launcher

You can also add the icon if you want by clicking where the Matlab icon is shown above, browsing to wherever you installed Matlab then into the ‘X11/icons’ directory, where you’ll find a number of icons.

Now you can launch the program from Main Menu, or drag-dropping it onto a panel, onto your desktop – wherever you like.


Induction Week 2009

Before each academic year, there’s ‘Induction Week’, where alongside the orientation stuff going on for the new students, the academics running the courses sell their wares to the students who’ve signed up to do an MSc. There’s a choice of 25-odd courses which seem to cluster around formal methods, artificial intelligence, high performance computing and the semantic web.

This year, I’ve saved up a few days’ holiday to let me attend the Wednesday and Thursday, when the course talks are going on. It also lets me sort out library books, admin stuff and the like. The 05:45 starts to get to Manchester on time are painful, mind.

I’ve transferred most of the introductory talks I was interested in seeing to my Google Calendar, so that I had my agenda for the day on my phone. That saved me potentially missing anything I wanted to see without me having to sit in the same room all day. In theory anyone who’s interested in what’s going on should be able to view my MSc calendar here. I haven’t tried to give out links to a personal public Google calendar before though, so let me know if you want to look and it doesn’t work.

It certainly felt very different this year from last. Knowing where everything is and seeing a few friendly faces makes everything much easier and more comfortable.

As for the courses, I confirmed what I want to study this year, so it’s time to get stuck into maths and Matlab ready for Machine Learning, which starts on Tuesday.

One Down

Yep, I passed my first MSc module, fairly comfortably as it turns out. The results were posted up to an adminstrative system based on Peoplesoft when they were ratified. I’m pretty chuffed to have passed, to be honest.

The information and adminstrative facilities Manchester makes available online are great for me, being a little too far away to actually head along to thing when I feel like it. I’m also very lazy, so having to phone up tends to put me off too. I’ll go into some more about what’s available to help you avoid actual human contact in a later post as I think as it’s pretty relevant if you’re considering doing this kind of study.

So what now? Well, I’ve completed the certification I mentioned in my last post, which is one of the reasons I’ve not posted in a few weeks. That had pros and cons as as I expect you get with any professional certification, but overall I thought it was a very positive experience.

I note that in the weeks running up to my MSc exam and then to my certification, the sun was blazing and everyone else seemed to having a right old time. Within 60 minutes of my return home after my last exam, the rain was pelting down and it’s just been kinda nasty since. If only I could de-rationalise a little so that I could hold a divine entity of some description responsible, I’d feel much better about it.

In what’s left of the summer, I’m reading “Artificial Intelligence – A Modern Approach”, by Russell and Norvig, because I’m still considering trying to get some AI modules under my belt, and because it’s an interesting subject anyway. I’m also reading “Head First Design Patterns” by Freeman, Freeman, Bates and Sierra, because I want to know more about this approach to software design than I do.

If I have time, then continuing my dabbling with enterprise and semantic technologies will likely be the order of the day – and I might get round to updating this WP installation and blogging on a slightly more frequent basis.


Waiting for results…

My grades for the Semi Structured Data… module will hopefully be out next week. I’m fairly confident, as my coursework marks were safely in the pass territory, so it’s not bothering me too much. If I wasn’t confident, I’d probably be a nervous wreck by now.

I have an exam voucher for the Sun Certified Web Component Developer (with free retake!) which expires at the end of July, so I’ve picked up studying for that again. I was studying for it before the MSc year started in 2008, so I hope I’ve just got time to pick it up and pass before the voucher expires.

Once (I’ve passed | the voucher has expired)* I’ll be making my choices for next year’s MSc modules, and then working hard to prepare. If you’re interested in seeing the kind of things that are on offer, the module options get posted on the Manchester CS Website.

Right. Now I have Chapter 13 of Head First Servlets and JSP – Filters and Wrappers to review.

(By the way – if you happen to be a servlets and JSP programmer but you haven’t done any formal training, I can thoroughly recommend that book whether you want to do the cert or not – the servlet specification provides loads of useful facilities that you can completely miss out on if you haven’t had the guided tour. It’s co-authored by Kathy Sierra, so you know it’s going to be a great tutorial resource. I’m getting through quite a few books of late, I might blog up my thoughts on them now and again.)

* delete as appropriate

Semi-Structured Data and the Web – Day 4

Homework this work was rather tricky – transforming XMLSchema into a tree grammar representation using XQuery. Sounds simple enough, but I now feel a certain revulsion, maybe even extending as far as hatred, towards XQuery. To be honest, I think it’s got a lot to do with the fact that XQuery is a functional language, and I’m new to the whole functional thing. It feels a little like programming by explosion… Towards the deadline, I think I was starting to get the hang of it. You just have to think a little… differently. Unfortunately, it took too long for me to figure this out and get the homework assignment done, so we had to hand in a partially complete assignment. Not liking that much.

On the menu today: More tree grammar stuff, including algorithms to validate an instance document against a grammar, Schematron (a rule-based document validation language)  and XSugar – all of which have more homework assignments set. No time for more blogging, too much work to do!