11 March 2012

Perl, CVS and more!

Ever since I've learned perl I've been finding more and more uses for everyday automated tasks. It's actually a ridiculously useful language and I'm incredibly happy that I've learned it. Yesterday I wrote a program that updates a php script that with the latest external IP address of my home server. It also updates the time that the IP address was updated and then some logic is performed server side to determine whether or not the server is online at the time of a page request.

This means that when ever I would like to access my server at home remotely, due to the fact that my ISP assigns an IP address dynamically, I can always have the latest IP (within 15 minutes) to connect to and I will always know if the server is on or not. This is not only handy for having access to a home computer at all times but it means I always have access to my cvs server remotely as well.

I set up a CVS server partly because I wanted to test out the package manager on fedora 16, partly because I wanted a back up of all of the projects in my eclipse workspace on my laptop and mostly because I wanted to become more familiar with using CVS. I've now some hands on experience not only updating my CVS server with a bunch of my old projects, but I plan to get some experience out of this managing the CVS server from an administrative perspective

Oh, and Fedora is awesome too!

26 February 2012

Perl

I started reading reading a great book on Perl this morning in an effort to teach myself Perl to be more productive at work. Perl seems like a great tool that could be useful for automating a lot things that I do on a regular basis. I write a lot of Java stuff for parsing text but it seems like Perl is definitely a better tool for that job.

I'm about half way through the book "Beginning Perl". Having stacks and lists built in to it's core and focusing on what operators are used to use relevant data types based on it's context is great. A day's reading and I think I've got enough to understand a lot of what I'm going to need perl for. I'll be moving on to sub-routines, object orientated programming with Perl, regular expressions and then I'd like to cover some system programming with perl. Standard I/O and network programming will also be useful.

Going to be doing a lot more this evening after the France and Scotland match.

19 February 2012

Adding more functionality

I've spent this afternoon getting back in to developing my Driver Tool app having not contributed to this project in quite a while. I would like to get back working on this on a regular basis and try get it published on the android market place so that I can start using it.

Today I completed the functionality of the settings menu, for selecting either metric or imperial as a measurement system. A user will be prompted with this menu upon first installing the app. Once the user has selected their preference they are not prompted upon app start up again. They can access the options menu through the menu button. I've also included the functionality of adding and deleting a car with an options menu which operates more or less in the same way as the transaction adding and deleting functionality. I've give the user the option to enter in the manufacturer and car model themselves when adding a car. I may update this in the future to populate a selection of drop down menus from a database of makes and models. Due to the tedious nature of populating such a database I've left that out for now.

There are a number of things that need to be done still which I'm going to start on. The first of these things is the tyre pressure calculator. I'm going to get back in to OpenGL for this. I'll have to come up with a spec for this part of the app, because I've only a couple of concept ideas in my head right now. I suppose I should probably remove the tab and finish up testing the already implemented functionality to push for a release. One of the other things that still needs doing is to build non-place holder assets for the menus and tabs, and work on the styling of the app. I think I would like to change the background from the standard black.

8 February 2012

Update

I haven't had much time to get back coding in a while unfortunately. Life is a bit hectic at the minute, and I always seem to be busy with something else. Hopefully things will calm down soon enough and I'll have more time to spend relaxing and writing a bit of code. I type this now as I fight the urge to fall asleep!

18 January 2012

Google Analytics data

As I mentioned earlier, here's the latest google analytics data over the period that I've been logging.

The above image shows a figure for the total number of hits tracked for each page or screen in the app that a user can look at. Although there are only a number of activities or screens that are re-used in the app implementation, when ever the data for a different game type it is tracked as if it were a separate page on a website.

The above chart shows the game results look up relative to each other game type. Lotto is a clear dominator.

These graphs plot the number of page tracks over time which is interesting, as a clear trend of when people actually use the app can be seen. If you note that the graph spike on Wednesdays and Saturdays for the Irish lotto. EuroMillions turns up on Fridays, however interestingly people checked Euro Millions results more on Saturday. The number of people visiting each page actually reflects pretty I think on how many people play each game from my experience selling lotto in my previous retail job.

The last image is the live tracking section of google analytics. This is the most I've witnessed people using my app at a single point in time, although it's entirely possible that there have been more people using it at once and I just hadn't seen it. It's interesting watching as individual clicks on pages scroll across the screen in real time. Obviously it's better to see in video format than a still image, as the interface is animated.

17 January 2012

Measurement systems

Over the last couple of days I've made a number of changes to the Driver Tools app. A lot of them were purely aesthetic, however the biggest change is the addition of a static settings class for storing information that is saved across sessions about the user's preference for either the metric or imperial system. As a result you can now view the stats information in either Miles and Miles per imperial gallon, or you can view it as kilometres and litres/100k.

The next thing that I need to do is include a menu for changing this setting and finish of the mechanic for only ever allowing a configuration dialogue to appear once upon first starting up the app. Other areas that can be improved would be to graph or visualise more information on the stats page, and to clean up the fuel transaction log page. I also need to clean up the car picker menu and possibly allow a user to add a picture to their car.

Once those changes have been made and I finalise all of the pages or data that I'm going to track with analytics the app should be ready for release on the Android market.

Speaking of google analytics, I've built up a full weeks worth of stats and they're interesting. I'll write a full post on this at a later point with pretty pictures and graphs and stuff.

9 January 2012

Lotto Checker stats, now with analytics results!

It's been an interesting few days with the inclusion of google analytics, however downloads is quickly approaching the 5000 marks, and with the inclusion of google analytics I now have a better idea of how people are using the app. The first day I updated my app to include analytics I saw that on Saturday 746 people started my app, with 452 on Sunday. I updated the app on Friday, so I would imagine that a lot of these hits were due to people checking out the app to see if there was anything new. I will have to observe the numbers over a longer sample period to gauge the weekly trends. It will be interesting to see next weekend and on Wednesday if the trend matches this Weekends usage, as the Irish lotto games are on Wednesdays and Saturdays.

I'm also looking at the pages that people are viewing. There were a total number of 1872 pages tracked on Saturday night, 778 of which were Lotto. An interesting observation is that my app has had more page view tracks than this blog has had in the number of months I've been posting to it. There were quire a large number of Lotto checks on Sunday as well at 498, probably because people might have resorted to checking numbers the day after the draw.

One of the most interesting parts of google analytics is the way in which you can present the data. The live data tracker is also quite impressive, where you can witness page events being tracked in real time on a sliding graph. It also gives you insight in to how many users were on the app at any given time.

I'm going to get back developing my Driver Tools app this week and try and get some debugging done on the graph information. There are a number of other design features I would like to review also, however I can't think of them at the minute. I'll have an update later on in the week.

5 January 2012

Lotto Checker 1.5

I updated the lotto checker app today with the session class that I wrote for the Driver Tools app. It contained all the functionality for tracking the activities a user will start in my app. In the lotto checker app, I track when the app is started up, and when ever a user displays the results for a game, that is also tracked. This will help me in deciding on what an how I use analytics in the Driver tools app, and it will give me a better idea of how used my lotto checker app is, so that I can improve different aspects of it in the future.

The total number of downloads for my Lotto Checker app now stands at 4,373 total installs (users) and 3,028 net installs (devices).

3 January 2012

Google analytics update and saving sessions. Back in the game!

These past two weeks that I've had off for Christmas have been the longest period of time that I've taken off work in the last 3 years. I didn't expect to enjoy doing literally nothing productive over the course of my time off, however it happened. I think I needed the break. I've had enough of doing nothing for now anyway, and I suppose my time away from development gave me a bit of time to think about the approach I was taking for this app.

I opened up a Claude Debussy playlist on iTunes and started coding again tonight and managed to get Google analytics working. I'm currently only tracking three pages, however once I decide on what exactly it is that I'm going to track, then I'll include more. Other changes include the addition of an abstract class for handling all of the session data. This is also used for tracking various pages. It's an abstract class with a number of variables which are encapsulated to make everything nice and tidy. The only other variable it stores for the minute about the session is the ID of the selected car. It also saves this to the app's settings upon creating and destroying the app.

I made a few slight changes to the database adapter, to include a function for getting all of the transactions for the currently selected car in the session. So that now it only shows all of the transactions and stats for the selectd car. I may include a feature to show the spending across all cars at a later point.

Also, happy new year!

29 December 2011

Post Christmas update!

I haven't had much time to dive back in to the driver tools project yet, with all of the social events going on over the Christmas holidays. This is going to change by tomorrow. Either later on tonight or tomorrow morning, I'm going to figure out how to get google analytics working properly, and I'll be looking in to setting up some app data with regards to the car that a user will select. I'll have an update soon

18 December 2011

Deadline status update.

Today is the deadline I set for a releasable version of this project. The app is divided in to four parts. It has a tool for logging fuel transactions, a tool for picking and displaying information about your car, a tool for displaying information graphically about a user's driving habits and a tyre section for optimising wheel size and tyre pressure for maximum performance and economy. So far I have a beta version of the transaction and graphing tools and as as of tonight I can say that the car picker tool is now out of alpha and in to beta. The tyre pressure calculator can be done at a later point, and I'm not all that concerned about that for the minute.

The app in it's current state could be released on the market, however the styling of the app is not currently at the level of that which was originally envisaged and as a result of this fact I will not release the app to the market yet.

Currently all of the core functionality for in the beta version of the app has been implemented, but before I release it I would like to include google ads and goolge analytics and then clean up the interface to make it look as good as it can. So to summarise, the app functionality requirements have mostly been met but I will not be releasing the app just yet.