Friday 25 July 2014

Busy Ass Summer

As expected... but not what I expected

The Summer was always going to be busy in my line of work (University administration) but this one caught me by surprise. Probably more to do with the fact that there was a lot of stuff going on outside of work that meant I wasn't ever running at full steam.
Anyhoo it has basically meant that I haven't been able to give enough time to projects, although I have been cooking up a few things which have been nightmarish... more below.

New office tool

The first thing on my list was a few new office tools, basically adding some enhancements to our adequate but slightly awkward office systems. Initially I was asked if I could out a message box into Outlook which warned users if they had mentioned "attachment" in an email but had not included an actual attachment to the message. This took a little VB tinkering but soon I had a fully working RegExp pattern matching which checked messages for the word "attach" and counted the number of attachments.
Of course, when you do one thing.... it is NEVER just one thing. The next request was to do the same for links.
On the surface this was very similar, however there were hurdles along the way. The main ones were:
  • links are not fixed patterns - you can have so many different versions of "mysite.html" "my.site.co.uk/this.php" "http://this.mysite.org/this-is-a-site" that the RegExp pattern could be described as "good" at best. It will pick up most versions of web addresses and will ignore email addresses, but not 100% of the time.
  • links can be sneakily hidden in other places. The pattern match runs on the full message body, so any links or addresses in email signatures have to be excluded as they include a "href="www.blahblah.com" tag.
  • the whole system had to be adapted therefore to check the message body text in TWO places - a count of the number of links, link mentions and attachment mentions when the message is opened, be that a new message, a forwarded message, or a reply (this happens in the ItemLoad event in Outlook). The message body text and attachment count is checked again at ItemSend and then the difference is measured so that any links in other parts of the email thread are ignored.
  • as a result of having listeners in the ItemLoad event, I also had to adapt a quick break system to ensure that any other types of item - such as calendar events, tasks and notes - are not disrupted by the macro.

The link/attach checker is pretty much complete and several colleagues are using it currently. I understand there is an attachment check implemented within Outlook 2013, but we are still on 2010.

The Outlook tool

After this came the Outlook tool, which is a small userform which floats in the Outlook window and allows quick access to the student and staff search menus within the University's webpages and also has quick links to the 6 most used web addresses, including a browser selection option (Chrome/IE/FF/Safari).
This was possibly the most entertaining project I worked on recently, as it got into some Shell access for browser manipulation (tabs/windows and overriding certain default browser actions). It also included some window checking and equations to keep the userform floating where you want it (top corners - 50px).
The Outlook tool just testing to ensure the settings file is written to an accessible folder (temp) on the users desktop to sync favourite links/browsers and positions, then it's gonna be rolled out to everyone in the office.

New work webpages

I was tasked with redesigning the internal webpages at work, which I have not taken lightly and have designed a structure and design which should be the same on mobile and PC, as well as across browsers.

My Webpages

I have started developing my own website. This has been fun, with some html, php, css, mySql and design all in one. If you really fancy having a look then go here and add your name to the database.

Java and Android halt

Sadly, I am having SERIOUS issues with my usual IDE (A.I.D.E. which is an android app which allows on-the-fly development and apk export). Changes are not saved, weird errors are appearing on newly-created projects and so I can't progress with my project. I am developing with Android Studio on the PC now - but that doesn't really suit me as I'm out of the flat a lot. Ho hum. I'll get back to it soon. The Github page is coming along nicely too.
That's it for now - speak soon!

Tuesday 27 May 2014

Solar System App coming along nicely....

Screenshots of the new Solar System app attached - will publish to the Play Store soon. Source code, wiki and details of updates on the GitHub page.



Thursday 22 May 2014

Github and onward

Got a github account for code drops and feedback/help from people more in the know.
First repository is the next app I'm working on - a 3D solar system.
Take a look and any hints and tips would be welcome. Having difficulty taking it on a stage from here. Can't get a collection of planets to test in extended for loops - anyone care to point me in the right direction? Searching stack overflow at the mo.
GitHub Link

Sunday 4 May 2014

Published my first app!

Yes, published an app to the Google Play store.
This is a tidied up version of the physics engine v1 (2D, 2 balls). Version 2 is done (spawn balls and different shapes, sizes and mass/forces handled by classes) but will probably wait until v3 - full 3d - until I publish again. Enjoy!
Please comment below!

Tuesday 22 April 2014

First Quarter Update - January to April 2014

So...

the first part of the year has come and gone in rather a blur. For my learning however, it has been exceptionally productive. After starting on a path to programmer/designer/developer a few months ago, I have now got a fairly good fundamental grasp of the following languages:

  • HTML
  • XML
  • CSS
  • JQuery
  • Java
  • Android Development
  • The LibGdx graphics library for Android and Java
  • Visual Basic
  • Custom UI for Microsoft Office
  • Databases and SQL

Of course I wouldn't say that I could do very much with any of these languages yet, but I have at least developed a few examples of each which suit my needs

For the HTML, I have started a redesign of my work's internal webpages, better managed and with linked, richer, current content for staff and students to utilise

For the XML, I have learned android app development, utilising various views, widgets and interfaces linked into some basic java methods for interaction and animation

For the CSS, I have learned how to adapt styles and content formatting to suit the needs of the various webpages I was cooking up (not used eventually due to employer's guidelines which I completely understand)

For the jQuery, I became interested in how the dynamic content already featured by my employer's web content management system actually worked - which led me to jQuery selectors and functionality for accordions, accessibility formatting and introducing libraries to handle different scripts

For the Java, I decided to bite the bullet and go back to square one - learning methods, classes, activities, events, handlers, libraries and packages - and then taking this forward using the absolutely incredible AIDE to develop Java and Android apps

Following on from this, I made some basic text and widget android apps in XML/Java to handle emails, reminders and menus

The next logical step seemed to be to learn how to draw some graphics and textures, so LibGdx seemed like the perfect choice. There is a great tutorial included in AIDE which goes over some basic concepts, and then I took this on to create a pretty screensaver and some basic games

I also have revisited my old friend Visual Basic, developing some flexible macros to handle office tasks such as batch emailing and committee document generation

The Custom UI came when I realised that my macros could be far more powerful if I could integrate them directly into the ribbon and right-click menus in MS Word and Excel

The SQL came along with a few Access databases which I am developing to handle further office tasks, which I then linked into my macros and custom UIs. I now have a setup where you open up a Word doc, select a few options in the ribbon menu, then the macro searches through a database, presents a list of the tables, then fields to search, then record/query searches

So all in all, I HAS BEEN BUSY. I will go to sleep now. Oh and I'll update this post with links to examples soon

Speak to you all soon!

Monday 6 January 2014

First Learning Update

OK, so thought I'd get the ball rolling by explaining what I'm up to and what I'm trying to learn at the moment.
I've been playing around with Excel formulas for data manipulation at work, and so have come to about the limits of what I can achieve without macros. I have learned a little VBA for this purpose (such as using ActiveWorkbook.SendMail to get email updates on a schedule held in a spreadsheet). I am going to learn some more (mainly how to move information between applications to set up more functional mail merges and email updates).
I've been writing tutorial sheets for Excel, which I'll start putting links to in the near future. These include formatting and formulas from basics to advanced. I'll be doing some on Pivot Tables and macros soon to get the most out of Excel at work.
At the same time, I've been playing around with a little bit of web design. For work, I've been adding the masters level projects in mathematics onto the website. There are around 40 projects in total, some without formulas, some absolutely drwned in them. The thing is that to get that info on to the web it required a hell of a lot of tinkering. As the projects relied heavily on mathematical symbols and formula, I was faced with several options.
The first was to take screenshots of each equation as it is shown on pdf documents, which would not only content-heavy but also inaccessible for students with visual impairments.
The second was to attempt to manually edit the project text by inserting the html codes for symbols into the relevant sections (e.g. #&Real; or &#124). This option seemed complicated to get looking even vaguely correct (weird formatting on integrals seemed almost impossible to overcome).
The third (chosen) option was a bit of a longshot. The correctly formatted project formulae were all included in a document written in LaTex. This is a language used to display formulas correctly in printed documents, however it still needed to be adapted to work in html. With some help from the University webteam, a workaround was found by including a few lines of javascript in the page, and adding some symbols into the LaTeX code to ensure that it is read correctly in html. This rather brain-melting task took around 2 weeks (in among all routine work I had to do) but I think the result is pretty awesome. I also wrote the page from the ground up with nested accordions and auto project number counters in css. You can see the result here but note that you may need to wait for a few seconds for the math typeface to load and the projects are not yet in order.
Now I'd like to learn html from the ground up, combined with the little Javascript I know and see what I can create. This blog will serve as a testing ground as Blogger allows custom templates.
Going to put SQL on hold for a little while. This was a brief flurry when I was to run custom queries on my previous jobs database. May take that further later but can't take on too much at once (especially when I may not use that one any time soon).
Have also been doing a bit of basic app development, learning the features of Android and I really would like to get a few things published with that soon.
Also insistent that I'm going to have a couple of languages under my belt in the next few years. Already decided on German and I'm currently working through the exercises with Duolingo (Android app). Can't decide on the 2nd/3rd. Maybe Spanish, possibly French or Italian, could be Polish or further afield... I just want to learn more and then get out there and use it. My German is passable (when I've practised a bit) so I just need to bring that up to a better level. I'd like to learn another one from scratch now so that I can either learn more or bits of other languages more easily.
Paused my degree in Business Studies with the Open University at the moment. I have had little motivation to pay the huge module fees and also the energy to give to a year of Management and Financial Accounting. I'll have to start that again in the next few months or the fees will go even higher. Urgh.
Well that sounds about it for now. Speak soon.