Category Archives: Web, Applications & Cloud Computing

Bitcoin Helper 0.1 – Converting currencies to Bitcoin

Over the past few months, I’ve gained quite an interest in the crypto-currency Bitcoin.

Bitcoin is a new currency which has no physical form, but can be considered Internet cash. If you want more information on Bitcoin in general, take a look at the We Use Coins website, which has a great introductory video and articles/links to other useful Bitcoin resources.

Bitcoin Helper 0.1 Released

As part of my interest in Bitcoin, I’ve decided to start a mini-project in the form of Bitcoin Helper, a PHP class which will contain multiple methods to aid web site/application developers in integrating Bitcoin related functionality into their systems. The first function, which comes in Bitcoin Helper 0.1, is a really easy to use converter that can convert non Bitcoin currencies into the equivalent Bitcoin value and return the result.

To see how simple it is to use, see the following code snippet.

include "bitcoin_helper.php";
$bh = new bitcoin_helper;
echo $bh->convert_to_btc("GBP", 10);

This will convert £10 (Great British Pounds) into Bitcoin and echo out the result. The following works for USD and Euros as well.

echo $bh->convert_to_btc("USD", 10);
echo $bh->convert_to_btc("EUR", 10);

The trade data for several other currencies is provided from the external source (see the Bitcoin Charts website). If your currency is listed there, entering its ISO 4217 currency code as the first parameter of the convert_to_btc function should allow you to convert any value of that currency into Bitcoin.

Please note that this is the first release of Bitcoin Helper, so I can not guarantee it is bug free. More checks, validation, improvements and new features will be added in the future versions. Feel free to leave a comment with any suggestions.

I hope this very basic Bitcoin Helper release can assist web developers with some simple Bitcoin conversion in their sites.

Download Bitcoin Helper 0.1

To download this first version of Bitcoin Helper (0.1), please visit the Bitcoin Helper project page.

Imagine turning on your computer to read a newspaper…

This is a report about what it will be like in ‘the future’, when we will be reading news from our computer. This is ‘newspapers by computer’.

It is truly awesome to see how far we have come in terms of the Internet and networking computer communication. It is also slightly amusing to see how out of the loop the media was only 30 years ago, and more specifically how they did not, immediately, see the huge potential of networked computers, and how these system could possibly affect home computer users in very near the future.

How to View Saved Threads on reddit

reddit alien logoI’m a huge fan of reddit, the social bookmarking/community website found here. One of the features you have as a registered user is to save threads.

I feel like a completely moron but I’d never been able to find out where these saved threads were listed until today, when I looked it up. Apparently I am not the only one who has trouble finding it. Many people, including myself, went to my account/profile page on reddit and looked for a ‘saved’ tab of some sorts. It turns out this is not where the saved threads are listed at all.

The link to view saved threads is not stored in your user section, but is shown on the homepage (how did I miss it?) or on the individual subreddit pages. See my screenshot below.

Screenshot of 'saved' link on reddit

I hope this helps a few people like me, who were looking in completely the wrong place for this link. :)

“The Simple Purpose of Sharing”

Wikimedia Foundation logoAbout this time last year, Wikipedia requested donations and given how much I use the site, I donated and gave the cause a little bit of promotion. It makes sense.

Coming back to this year, an appeal from the Wikipedia founder Jimmy Wales has recently gone out. I’ve quoted a part of it below.

I got a lot of funny looks ten years ago when I started talking to people about Wikipedia.

Let’s just say some of the business types were skeptical of the notion that volunteers from all across the world could come together to create a remarkable pool of human knowledge – all for the simple purpose of sharing.

No ads. No profits. No agenda.

A decade after its founding, more than 380 million people use Wikipedia and its sister sites every month – almost a third of the Internet-connected world.

It is the 5th most popular website in the world. The other four have been built and maintained with billions of dollars in investment, huge corporate staffs and relentless marketing.

But, Wikipedia isn’t anything like a commercial website. It is a community creation, written by volunteers making one entry at a time. You are part of our community. And I’m writing today to ask you to protect and sustain Wikipedia.

Together, we can keep it free of charge and free of advertising. We can keep it open – you can use the information in Wikipedia any way you want. We can keep it growing – spreading knowledge everywhere, and inviting participation from everyone.

Each year at this time, we reach out to ask you and others all across the Wikimedia community to help sustain our joint enterprise with a modest donation of £20, £35, £50 or more.

If you value Wikipedia as a source of information – and a source of inspiration – I hope you’ll choose to act right now.

Jimmy Wales, Wikipedia Founder

Naturally, I’m donating again. A £50.00 GBP donation to Wikipedia and Wikimedia UK this time.

I encourage anybody who uses Wikipedia significantly, to put forward a donation, of any amount, if at all possible.

Reducing the pain of reinstalling Windows with Ninite

Ninite Installer screenshot

I’m not a Windows user primarily. The vast majority of time my computers and laptop boot into Linux, specifically Ubuntu, as of recent. However, I do have several of my machines set-up with both Ubuntu and Windows 7.

One of my major gripes with Windows, which has always been there, is that after a clean reinstall, you have no programs of any real use installed at all. In comparison, a clean install of Ubuntu gives you a graphics editor, photo manager, fully featured e-mail client, personal information management suite and a full office suite. Of course, you now get the Ubuntu Software Centre, which lets you install find and install full size applications with the same ease as using the iPhone App store or Android Marketplace.

Windows has none of this. A brand spanking new Windows install does very little for productivity without a few essential apps installed.

Usually this involves the labourious task of:

  1. Manually searching for and/or heading to the website of the program you want to download
  2. Finding the current version/build to download, starting the download and waiting for the download to complete
  3. Running the installer and waiting for its completion
  4. Repeat steps 1 – 3 for every program you wish to install

Recently, I’ve discovered Ninite, which is a fantastic website/program which lets you cut down the above procedure (which could possible take hours) to a quick procedure that takes a few minutes at most. This is how you’d do the above, with Ninite.

  1. Go to https://ninite.com/ and select the programs you want to install.
  2. Download the installer it generates
  3. Run the installer and wait for its completion.

And then you’re done! No repetition, as Ninite cleverly puts the installation of many, many possible programs behind a single simplistic installer.

It supports installation for the most popular web browsers, messaging applications, media players, imaging programs, document editors/viewers, security software (such as anti-virus and anti-malware software), plug-ins (such as Flash and Java), file sharing applications, general utilities and even certain developer/administration tools.

Basically, after every (annoying) reinstall of Windows that I have to do, the first place I’m heading is to Ninite’s website.

As a final note, I’m really hoping they add official graphics drivers to their list of automatically installed items. That would be very useful for a lot of people I know. Suggesting new apps is a feature they offer right at the bottom of the Ninite website.

How HTML 5 Geolocation could be exploited

HTML 5 Geolocation Icon

Update: Although geolocation is commonly referenced when discussing HTML 5, it is a API which is maintained in a separate specification and is not actually a new feature of HTML 5.

Identifying the physical location of a computer via HTML 5′s geolocation is now incredibly easy and only requires a few lines of JavaScript.

Due to the simplicity of geolocation and its ever growing support in modern browsers, it seems very probable that this could be exploited for malicious purposes. An example scenario of how malware could theoretically track the physical location of infected machine could be as follows.

  1. Malware infects system and becomes memory resident.
  2. Malware adds malicious website URL to a local web browser’s HTML 5 geolocation white list.
  3. Malware launches hidden/backgrounded instance of web browser, navigating to malicious website URL.
  4. Malicious website JavaScript utilises HTML 5 geolocation services to track physical location.
  5. Physical location is relayed to server via AJAX or other means.
  6. Steps 4 and 5 can be repeated as part of a loop containing time delay within the malicious website’s JavaScript.
  7. Malware can monitor the memory resident state of the browser within the system’s process list and restart the hidden/backgrounded web browser instance if required.

In this example, the geolocation is all done via a local hidden user agent (web browser) using web technologies. The web part of the system, by its very nature, multi-platform. However, the initial piece of malware which launches the hidden web browser instance will likely be written in a platform specific manner.

Changing this, or writing multiple versions of the ‘browser launcher’ malware would effectively generate a form of malware which could track the physical location of users regardless of their operating system.

Do you think this kind of malware is a reasonable threat now or in the near future? What other potential problems exist for devices that can be identified by geolocation technologies?

C:\fakepath\ in Internet Explorer 8

If you are trying to retrieve the ‘value’ of a file input box via Javascript, and you are receiving C:fakepath within the returned value, it is time to blame Internet Explorer 8.

Fake Path - C:fakepath in Internet Explorer 8

The inclusion of C:\fakepath\ is a security feature of Internet Explorer 8, designed to prevent information regarding the file system structure being exposed when files are selected via a file input box. Current versions of most other web browsers, such as Mozilla Firefox and Google Chrome, will return the file name without any path (relative or absolute).

The HTML5 specification states that the browser’s implementation of a file upload control should not reveal the true path to the file via its ‘value’ attribute. Internet Explorer, as always, does this differently than other browsers by including ‘fakepath’ rather than just removed the local path in its entirety.

This behaviour of Internet Explorer 8 can be overridden by added the size to the list of trusted sites within Internet Explorer 8 Internet options window. I’d personally only recommend this if the system is an secure internal and/or Intranet web-based system which requires the use of the full path.

Ideally, existing systems should be recoded to either not use the full path or to retrieve the full path via another method, such as manual input into a text input field.

I hope this post helps web developers who have unexpectedly come across this strange ‘fakepath’ and been unaware of where it was coming from.

Google’s Web Traffic Dominates the Internet

Google is huge. Really huge. Let’s see what that does to the graph.

Total Google Web Traffic Graph

Graph sourced from Arbor Networks blog entry.

The main reason for Google’s huge increase in general Internet traffic was its acquisition of YouTube in 2007. YouTube delivers huge quantities of streaming video traffic, and the impressive growth of YouTube alone is enough to make a noticeable difference. Other contributing factors are massively increased adoption of other Google applications, such as Google Mail, Docs and Calendar, not only by consumers but also by mass deployment of Google Apps within businesses, as a replacement for local Microsoft exchange server set-ups.

Discretely, whilst doing no ‘evil’ (open to debate), Google has managed to push itself to the forefront of the Internet and is now a household name. Everyone knows Google.

You no longer search the Internet, you Google it.

Google and BBC release New Beta Homepage Web Designs

Both Google and the BBC have recently released new beta web designs for their homepages. The BBC beta homepage is available for all to look at via http://beta.bbc.co.uk/ while the Google homepage has been released to a select number of Google users, as Google tend to stagger the release of their new designs and features.

Screenshot - BBC - Beta Homepage - Google Chrome

You can click the above image for an enlarged screenshot. If you’re interested, there is more information about the BBC homepage and the new, re-branded Google homepage.