Over the weekend I was wondering if there were any useful APIs out there for retrieving information about the weather for a given location. I was particularly interested in current weather but this post also applies to forecasting. I had a Google and found the OpenWeatherMap service which impressed me for several reasons: It is open - anyone can add a weather station to it providing they fulfill certain criteria It provides a lot of information related to the weather!
Last week on the 30th October the 7th annual York Doctoral Symposium took place. This is a 1 day Symposium run by post-graduate students from the Computer Science and Electronics departments at the University of York. It provides a fantastic opportunity for students to gain experience in writing papers or posters, giving presentations and network with other researchers in their field. Another key benefit of the symposium is that it gives experience in organizing and running a conference to the students who are on the organizing committee, a valuable skill to have for anyone pursuing an academic career.
After watching Peep Show recently I realised there just isn’t enough of it in my life. The writing is a particular highlight, with brilliant characters (that are somewhat relatable) and each episode is filled with hilarious quotes. If you haven’t seen it before I highly recommended checking it out on Netflix, which has all 8 seasons. Each season is only 6 episodes long so it won’t take long to watch them all.
This may not be very relevant to many people, but if you’re unsure of when to use the NIO classes, or are having problems interfacing with USB in Java then I hope it helps a little.
I was tasked with debugging an annoying error this week, where a position sensor connected to a laptop via USB froze approximately once every 70 attempts. The IO was performed in Java, accessing the USB port as though it were a local file and reading in data byte by byte using a BufferedInputStream.
The majority of my work is involved with machine learning using biologically inspired techniques, focusing on classification problems. I run my algorithms on benchmark datasets to test their validity and the effect of various parameters, and then these are used in real life medical applications. Trials can take a long time to prepare, and the data collection process can be somewhat challenging. The group I’m involved with researchs Neurodegenerative Diseases, particularly Parkinson’s Disease.
I encountered an odd bug recently in my GP code. Large amounts of memory were being used, and was increasing substantially at each generation. I realised the problem was most likely in how the tree was traversed to obtain an output for each input data pattern. This was currently done with an iterative approach (which with post-order traversal is not fun!), as I’d assumed that recursive methods would use more memory.
I’ve found this saying to be particularly true these last couple of weeks. Having passed my confirmation viva I wanted to spend a bit of time cleaning up my code that has got rather bloated with all the recent additions to it. Since I’ve never been formally taught OO programming I decided to brush up on this as well. I bought the “Gang of Four” classic Design Patterns book and decided to implement as much as I could of it in my program.
As part of the PhD programme we have to produce a poster in our second year which are then judged by the head of the research groups. It was the first poster I’ve done so wasn’t too sure about things such as layout, font size etc… but it turned out pretty well in the end, and even won the second prize so was very happy with that! It’s a brief summary of some of the work I’ve been doing over the last 18 months, I decided to focus on the Parkinson’s Disease research as that’s more interesting to the layman rather than my current ensemble work.
As an update to the last post, in pretty much just a day I’ve gotten my website configured with Drupal and it’s much the same as before. As previously mentioned, I had essentially developed my own CMS originally, which provided very similar functionality to what I’m getting from Drupal now. However now it is much easier to make any changes as I don’t need to mess around with the code, and more importantly, the website is far more robust now.
Related to my previous blog post about updating this website, it appears that my current web host don’t offer Python support. This means that until I have the time and energy, this website will still be run by php. This isn’t a big issue but I do want to use Python for everything I can as it is such a brilliant language.
Looking at php CMS options it seems that Drupal will be best for me, it may be a little overkill for just a personal website but it’ll be good to know for the future!