Monday, April 29, 2013

Geocoding

Today I prepared a short presentation on GeoFlow. I was not very impressed by it, but it is still in preview so I hope it will improve. Most significant misses is that you cannot use it to enrich a data set. It uses Bing  Maps to geocode you dataset, but unfortunatly there seems to be no way to save this data and add it to the dataset for use with ex. Maps in SSRS. This still has to be done with SSIS packages or with heavy scripting or other hack-is ways. GeoFlow provides some nice basic plotting, but for doing anything away from a very limited template it's useless.

I learned of Requests, a nice way to work with http-requests in Python. For instance to grab a GPS coordinate from a request to Google maps. Something that you can do 2.500 times a day with no cost.

Thursday, April 25, 2013

Linear algebra

Today I was at ITU and saw a lot of nice matrix magic by Dan Witzner. To take one thing I learned that N(A)⊥C(A^t). I have seen that statement before, but not really understood it. Today it became clear to me when presented like: Ax=0 so every vector x belonging to the null-space is perpendicular to any row in A since their dot product is 0.

Wednesday, April 24, 2013

MySQL and GIT

Today I was working on an ITU Datamining project where I am forced to use MySQL instead of MSSQL. I learned that the ISNULL() function on MySQL has a boolean return and will not work like the T-SQL ISNULL(). I also saw the use of "make" even though I am yet to understand the point of makefiles.

Florian showed me lots of tricks:

ctrl-z plus the command "bg" to put something in the background thread in the shell or just start emacs with the "&" flag.
alt-q in emacs to get some pretty formatting.
ispell in emac to spellcheck.
using ssh jovt@ssh.itu.dk to get to my itu network drive from my own computer.


Tuesday, April 23, 2013

Treating two departments as one for some purposes, but as two for other.

Today I was working on MKC Planner where I needed to treat two departments as one in some cases and as two in other. I the case where they where one I then need to split the work assigned to the "union" between the two actual departments underneath. I ended up solving it by using three methods:

WeakUnion:

Given department a,b,c,d,e we want (a + b),c,d and e to have equal work for some tasks and a,b,c,d and e to have equal work for others:

1. Ignore(dep a)
Distribute(some)
2. Reconsider(dep a)
3. Split(from b, to a)
Distribute(others)

Also: when you want GIT to ignore a folder you can use "git rm -r <foldername>". If the folder is already in older versions of the repository you can use "git rm -r --cached <foldername>".

Monday, April 22, 2013

Generating design file from .resx

Today I was working on the resource files for Effektor, I was trying to make that work easier using Visual Localize when suddenly my solution stopped building. I learned that the generation of the design file is controlled by settings stored in the project file that had been altered by visual Localilze. To change it back I had to change the settings in the properties of the .resx file. In this case I had to use "GlobalResourceProxyGenerator" rather than "ResXFileCodeGenerator".