Projects
Since I now have the luxury of a little more expendable time I have decided to reset myself some goals of projects. A mass file re-namer for TV show video files, a plugin for Buddi (a helpful personal finance tracker), and possibly a Tor plugin for pfSense. This is all before I go back and try my best to resurrect the SDL\OpenGL GUI library and the procedurally-generated cityscape.
RenameTV
Many moons ago, I wrote a python app that you could point a load of video files at, tell it what series it is, and it’ll happily go off to search IMDB. If it finds a match for the TV show, it would fetch all the individual episode titles, and rename all the files to the same format you wanted. Very simple. It worked by being a very basic HTML scraper of the IMDB website, pulling out show details and applying them to the files. Admittedly, I created this mainly because of my OCD when it comes to file names.
I stopped development for two reasons; firstly IMDB redesigned their site so my scraper no longer worked, and secondly because I lost the source code. This was in the days before my on-going love affair with git. As an aside, I also found that IMDB actually asks not to scrape the webpage directly, but to build or use an API based around their release data files available for free (for personal non-commercial use) from FTP servers.
My re-imagined version of that old Python script will use the data files IMDB provides (hopefully direct from the FTP server) to accomplish the same tasks, but will be written in C++ on top of Qt to give me the multi-OS and rich development platform that I find makes programming that much more interesting and less of a hard slog.
BuddiMultiCurreny
Buddi is a neat little Java app for personal finance tracking\budgeting that I have been using for a little while now. It has a helpful function to look up the system locale and use the corresponding currency symbol. This can be overridden of course but only for the application as a whole, not on a per-file basis. As I have accounts in different currencies this makes viewing different accounts together very confusing indeed.
I spoke with the developer but he suggested that the way Buddi is currently written makes having multiple currencies in a single file very problematic, as well as it not being a priority with the majority of his users. Thankfully, as Buddi already has a working plug-in system it should be feasible to add a per-file currency option and a lot more viable.
Tor4pfSense
This one is a fairly complex one I fear, as it requires me to delves into things I have not really needed to before. For those who don’t know, pfSense is a FreeBSD-based router\firewall OS forked from m0n0wall and focussed more on full-fat deployments rather than appliance\embedded configurations. Tor is a P2P anonymous network, set up to bounce your network packets around before exiting into the real Internet. NOTE: it is not a secure anonymiser, any node of travel from your machine to the target (website etc…) can store & read any data packet travelling through it.
What I want to create is a plug-in for pfSense to be able to become a node for the Tor network, to allow Internet users behind restrictive firewalls (China & Australia being two examples) access to a more open and unrestricted Internet. It also allows you to select specific countries for your network connection to exit, for instance you make make geolocation-aware websites believe you are situated in that country, for instance even though I live in Spain I can use Tor to make BBC’s iPlayer think I am in the UK and watch BBC TV (I have paid for a full year TV license
This project is going to be made a awful lot easier by the fact that I have a VirtualBox setup on a server in which I can create a virtual network for development & testing purposed and not have to risk pulling down my entire network every so often. The setup is to have one VM running pfSense as a router connected to my real LAN and a virtual LAN, then a pfSense development\test VM box only connected to the virtual LAN, an XP VM just to test the connection to the outside world via the VM router (and that Tor is active on it etc), and lastly a Debian VM to host the plug-ins for the VM router to fetch from, rather than the public feed. It sounds complicated but with the VMs it becomes much easier to manage.
June 23rd, 2011 at 2:56 am
Hey I was definitely pleased to find this site.I wanted to thank u for your time for this wonderful read!! I definitely enjoyed every little bit of it and I have you bookmarked to check out new stuff you blog post.I recommend this site!