Category Archives: Technology

Windows XP “Bliss” Background

Seen billions of times by many millions of people, is it perhaps one of the most famous photos ever? Taken by Charles O’Rear in 1996 in Sonoma County, California, the distinctive rolling green hills and lush blue sky is very much a trademark of the Windows XP operating system as it was the default wallpaper shipped with every system. After a little research, I found my goal – the actual coordinates of the location where the picture was taken:  38.250124,-122.410817. You can see how it looks now on Google street view by clicking here.

bliss-background-now

Not quite as colourful now - Google Maps

I found a very interesting article on ‘twistedsifter’ which you can read by clicking here.

Matt

iPhone Browser – Fixing Old iPhone Camera Roll

Again, my iPhone stopped showing photos that it had just taken in it’s camera roll. I have fixed this once before, but again it has stopped showing the most recently taken photos.

How to fix

I fix this problem by first backing up all of the photos on the device to my PC, and then deleting the folders that contain them – but Windows explorer cannot delete those folders (in DCIM when you plug the iPhone in via USB). I had to delete them via a special program called “iPhone browser” that is available here (click Downloads).

When I installed this application last time, it worked perfectly. This time, it did not. I tried it on my main Windows 7 pc, my netbook and a virtual Windows XP – all installed fine but then crashed immediately when the application was ran. I believe this was due to the application needed the “Bonjour” service amongst others, and was fixed by installing Quicktime and iTunes (on my virtual XP).

With the application installed and running, you can click one of the menus at the top (Goto Location) and select “Camera Roll (DCIM)” or you can navigate to it yourself on the left hand navigation menu: User > Media > DCIM. Under here, delete all of the folders (101APPLE etc, .MISC etc) so the DCIM folder is empty (remember to back up your photos first). After this, disconnect the iPhone and start taking pictures – they should appear in the camera roll (may need a reboot, mine didn’t this time).

iPhone 2g running on very old, outdated firmware is now happy again.

Matt

Stop YouTube Crashing Google Chrome

For a while I have had a problem with YouTube crashing Chrome on my main (Intel i7) computer and Samsung netbook. I did everything from reinstalling chrome to getting different versions of Adobe Flash (as Google Chrome automatically gets its own flash player – and you cant manually upgrade that).

After a chat with a couple of Computer Scientists a few years older than me, one suggested there may be a conflict between the Chrome Adobe Flash and something else – and I suggested Macromedia Firewoks (now Adobe), a rather old image editor that I use. I again started looking into the problem recently, and found suggestions to disable one of the Chrome plugins.

First put “about:plugins” into your chrome address bar, and scroll down to the “Flash” section. Once there, disable the version of Shockwave Flash stored at “C:\Users\<username>\AppData\Local\Google\Chrome\Application\18.0.1025.168\gcswf32.dll” – look for that ending file.

Then enable / leave enabled the version stored at: “C:\Windows\SysWOW64\Macromed\Flash\NPSWF32_11_2_202_235.dll”.

(I also had one located at: “C:\Users\MaTT\AppData\Local\Google\Chrome\User Data\PepperFlash\11.1.31.203\pepflashplayer.dll” which is disabled too).

All seems well now, YouTube doesn’t seem to crash every time I open a few videos!

Matt

iPhone Bluebook

02 has a service called “Bluebook” that will back up all of your contacts free of charge. It really only supports phones that are more than about 8 years old, as it needs a service called SyncML – something even my ancient iPhone doesn’t have. However, managed to find a way round it! Downloaded a SyncML client (lite) app to my iPhone, popped in some 02′s settings (use actual username, not your email address that 02 tells you is your username) and ctrl+alt+bingo, it sent all of my friends numbers to its site! Also some email addresses etc that were in my contacts book.

Want to do it yourself? I found some great instructions here: http://www.3g.me.uk/showthread.php?t=94489

Incase that site ever goes anywhere:

Once registered, login and click on Contacts and then “Set up a phone”. The iPhone model won’t be listed so choose another device such as the Nokia N95.
Next download and install the free Synthesis SyncML Client for iPhone from Apple’s App Store and configure it with the following settings:
Server URL: http://o2contacts.o2.co.uk/syncml
SyncML Version: SyncML DS 1.2
User: yourusername@o2.co.uk
Password: yourpassword
Tap on ‘Start Synchronisation’ and marvel as your contacts go whizzing around the ether and appear like magic in your Bluebook account.

Matt

Data Structures in the Java Class Libraries Analysis Using Reflection

For our module “Data Structures and Algorithms”, I had an assignment to find something interesting in the Java class libraries, and analyse it using Java reflection. This assignment was very challenging, and the results had to be presented in a special report format, but I was very happy with my end result of 88%.

This was my first time using reflection in any language, and I was very interested to see the Java language looking and collecting statistics from its own classes etc. Finding something “interesting” in the Java class libraries came as a bit of a challenge – as I wasn’t sure what to aim for.

Preview of Paper

I started off thinking about Data Structures – something we had learnt a lot about in this module. There is a definite noticeable difference between the speeds of different data structures in Java (especially with large data sets), and this caused me to hypothesise that maybe there would be a relation between the code complexity and the speed of the data structure. In my report I investigated this by building a Java program to collect statistics about the classes, classes referred to by those classes etc and print the results out to the terminal or to a CSV (comma seperated value) file.

You can find my paper here if you are interested, and if anyone was truly interested in the code, I am quite happy to give advice on that too where possible.

Matt

Animated GIF

A GIF [Graphics Interchange Format] is a type of image format, but one that you can animate – and they were very popular in the earlier days of the internet, along with the marquee and blink HTML tags. It is now 2012, and GIFs are certainly still here, but are not as used as they once were – but today I decided I would make an animated one to see how they worked.

I already had my favourite image editor – Macromedia Fireworks [Adobe now own them] – open, and found the “Frames” panel under the “Window” menu. With this panel open, it was easy enough to add/duplicate frames, and edit the image on each one – similar to Macromedia Flash animation.

With my task complete, here is the result:

Matt

Industrial Year Placement – Google

The course that I am studying, G401 Computer Science, included a mandatory year in industry as our third year, our fourth year being the last year of teaching. Although it is possible to not do the year in industry, I can see nothing but positives to be gained from a year being immersed into the real world of work, gaining vital and valuable experience about the field of employment you may wish to pursue for the foreseeable future. As well as earning some money to go towards paying back our University fees, it gives a chance for employers to get to know you, and for you to demonstrate your natural abilities and work ethics in a more genuine environment over the course of the placement, rather than under pressure in a short hour long interview.

Upon hearing about industrial year placements, and discovering the benefits mentioned above, I decided that it would be a very good idea, and when the second year started, I began researching the companies and placements that interested me, earlier than the majority of my colleagues. Why so early? Knowing that sometimes placements get filled before their application deadlines, and being the sort of person that likes back-up options and fall-back plans as standard,  I started preparing my CV for the applications. I started off by applying to the places I really wanted to work for, such as Google, Intel and HP. I also then applied to about another 4 companies or so, to ensure I had enough back-up options I was not successful in obtaining one of my preferred placements.

I started applying for these placements in late November last year,  after our University trip to Gregynog [where employers helped us improve our CV's and interview techniques]. It is now February, and I still have not heard from many companies, however I have heard from a few, and a few important ones…

I was relatively sure I would not hear from Peugeot-Citeroen, as their application website kept loosing my progress, and not submitting my application. Despite creating a new account, and trying again – still no luck as the site threw errors and lost my progress. HP said they were very busy, as they had many applications. ProspectSoft gave me a phone interview and a coding challenge a while back, but I have since heard nothing from them. Gloversure offered me an interview very recently. Those were mainly my back-up choices, running along side my preferred applications.

Intel gave me a phone interview, online test, and I also attended an assessment centre. It provided me with great experience, and I was offered the placement there, which did look brilliant, but I was still pursuing the Google internship, the one I really wanted more than anything. My trip down to Google last summer for the Google BOLD immersion programme had made me see what a clever, logical and innovative company Google was, and I knew that I would love to be a part of their team.

I have now been offered an Internship with Google, and can’t wait to go to work for them. I really look forward to going somewhere where I can be happy, make a difference, and have my innovative, logical ideas listened to, ideas that can save time, money and other resources. I have found it frustrating in the past to see the companies that employ me waste money where there is no need, and are unwilling to listen to other’s advice. I am now very much looking forward to July, where new experiences, people and knowledge will be found.

Matt out.

 

HTML5 – Chrome <3

The main browser I use is Google Chrome. In the past, I have used Internet Explorer, Opera and Firefox a lot. Firefox was pretty fast, with many add-ons to make things easier/more useful. Opera had some cool features like typing “w orange” and it would search Wikipedia for “orange”. This also worked with Google, eBay (YouTube?) etc.. It also had some cool gestures to open a new tab from a link, flicking the link to the top of the screen. A few years ago I moved from Firefox (my main browser) to Chrome. Why? Firefox, although miles faster than IE, still seemed slower than Chrome. It also kept crashing, and I always felt the tabs were fairly unstable.

Chrome runs each tab in a seperate thread, so hopefully if one tab crashes – the browser doesn’t die completely. (I still continue to have problems with YouTube crashing everything for no reason, though). Chrome is quick, snappy, and seems quite light. I also have my custom searches implemented to the main bar, e.g “wiki JFK” will search Wikipedia for JFK. Same with eBay, YouTube, Facebook (whois Matt Robbins..) etc.

Whilst reading up about HTML5, I found the following tables of information on W3 Schools:

Table of compatability

 

Which is the only browser that supports ALL video formats. Which is the browser that also supports ALL audio formats?

Need any more reasons to switch?

Then here is one last one, of the error message when a tab crashes:

Matt out.

Group Project – Software Development Life Cycle

This week is designated as Computer Science’s “Coding Week”. This week is set aside for our allocated 8 person groups to code their group projects.

Our project is to create an Android phone application that uses geocaching with a pirate theme to help children aged 9-16 advance their mathematics. In the past few months, I have been leading my group [group 08] as we prepared design and test specifications for the project, and it has finally come to coding week where the majority of our code will be written.

Today we have been adding more functionality to the app, such as the log in authentication and ability to create a new account. To create a new account, we are using a PHP page to directly add a user into the Users table in the MySQL database running on one of our group’s servers. I am currently building that PHP page, and I am having to take into account that this page is going to be viewed on small ~3 inch phone screens. I normally design pages to use W3′s nromal XHTML DTD. However, after searching the internet I found that there is also a DTD especially for XHTML written for mobile devices:

<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.1//EN"

"http://www.openmobilealliance.org/tech/DTD/xhtml-mobile11.dtd">

Rather than

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"

"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

See the image below for an example of what the page may look like in the end on a 3.5inch iPhone screen:

Pirate Game add a user screenIt looks so much better than even a modified normal XHTML page, and I am glad I found out about the mobile XHTML DTD when I did! Now a bit of work on JavaScript validation, and get it ready to send SQL statements!

Matt out.