07 March 2011

Install Another Operating System Alongside Windows


If like me you've been using Windows but you'd like to try out another alternative without ditching it entirely then you have two options:
  1. Run it inside Windows: e.g. Ubuntu has its own Windows installer.
  2. Install another OS as a dual boot.
The trouble with the first option is that it will cloud your judgement of the new OS: you’ll only ever be using it ‘on top of’ Windows, so it will never have complete use of your system’s resources.
If you’re feeling adventurous you could try your hand at dual boot. With this setup when you start your computer there is a quick menu to decide which one you want to load, it automatically chooses whichever is set as the default option after a short period (e.g. 3 seconds). This way it will run alone and be free to use the computer’s resources fully.

In order to do this you need will probably to resize the disk partition so as to leave space to create a new partition for your new OS. This sounds scary and indeed does have the potential to eradicate your disk and everything on it so do exercise the usual precautions and do a full system backup before proceeding.

To Resize a partition I use a Linux distribution but you can use any OS that will boot from the CD/DVD, USB or another drive: anything so long as your not booting off the drive you want to resize. The process is simple:
  1. Create a bootable disk
  2. Boot into the chosen OS (e.g. Ubuntu or OpenSuse) from CD, DVD or USB
  3. Use the OS’s disk management program (e.g. GParted) to resize the partition. It has good instructions in it's own Help.
I detailed the process in another post.

NB You should install Windows first if you require it.

06 March 2011

How DNS Can Keep You Safe AND Speed Up your Internet Connection

A number of my friends aren’t aware what DNS is let alone how it can help keep you and your family safe, plus speed up your internet connection so I decided to write an introduction.

What is DNS?
DNS stands for Domain Name System, for a detailed description see Wikipedia or other sources but basically when you type www.Google.com into your browser, your computer needs to translate that into an IP address (a numerical label) which will be something like 74.125.230.147 in order to request the Google home page.

How can it help my safety?
Child Safety
By manipulating your DNS you can control what sites can be ‘seen’ by your computer or network. With a service like OpenDNS you can change what your computers will be able to resolve from a name into an IP address and thus what sites they can access. If you need more granular control you should look into controlling the DNS for your individual computers. I cover that below.

Malware and Phishing
DNS can help by not allowing malware (malicious software) to communicate back to botnets and blocking known Phishing sites. For more information on how OpwnDNS helps go to this article on the OpenDNS knowledge base or search it for the term “Malware” or “Phishing” therein.

How can it help speed up my internet connection?
A large number of sites contain advertising like the banner ads down the side or on the top of articles. These ads are often images or flash components and have to be requested by the browser independently of the page itself, from their respective ad servers. These ad servers are often slow to respond and the browser often won’t show any of a page until all the elements are loaded. So basically the page and all its content you want will probably download fairly quickly but the ads will take their time to arrive and you have to wait for them before you can see the page. If you deny access to many well known advert servers then this no longer happens, plus you don’t get bombarded by adverts.

This sounds great. How can I use it?
There are basically two places you can control your DNS:

  • On your router: the settings will apply to all the computers on your network.
  • On an individual device: e.g. computer, phone etc. This gives more granular control e.g. if you want to keep your child’s computer safer but still allow yourself free-reign on the internet. This can be achieved via altering your DNS host settings or editing your hosts file (see below).

I’m sure there are many services (e.g. Google Public DNS) offering the ability to control your DNS but for me the best at the time of writing is OpenDNS.com. They offer a range of services from free to enterprise (paid) subscriptions and their site contains clear and concise information about how to set things up.

Hosts Files
If you’re on a Windows or Mac machine and more technically minded you can also achieve similar results by altering your hosts file:

  • Windows: edit C:\WINDOWS\system32\drivers\etc\hosts NB: You’ll need to run Notepad as administrator: Right click it in the Start menu then select “Run as Administrator”, then open the file.
  • Mac: edit /private/etc/hosts
  • Android: As of writing I couldn’t figure out how to do this as the system is re-written on every re-boot.

NB if you’re on a Linux host e.g. Mac and you use a Windows file you’ll need to convert the text file to Unix format by replacing the line endings (e.g. using Notepad++, Edit, EOL Conversion).

On either machine the principle is the same, you include entries like:
127.0.0.1 ad.doubleclick.com
which says to the machine: when you need ad.doubleclick.com, go to 127.0.0.1 which is the computers own ip address. When the browser does this it will find nothing and just serve a blank or ‘not found’ message for that part of the page.

You can find further information on this method on this site which although it is Windows centric contains valuable resources (e.g. example hosts files) for either platform.

04 March 2011

How to live without Outlook

As part of my series on ‘How to Live without Microsoft’ and bored of Outlook’s crashes and hogging of my computer I look for alternatives.

I've been using the various Outlook incantations for over 15 years. I think its a great concept and at times has been a great product but I'm just fed up with it. It hogs memory and it stores all MY information in its own bespoke Microsoft format like some spoilt child.

I have tried to turn away from this beast in times past but always been forced to return by the fact that I wanted to have a smartphone which synced seamlessly with my desktop calendar and particularly tasks. At the time that meant a Windows smart phone, which of course meant it was tied in with their utter delight in a complete lack of shared or sharing formats (although I have to say MS have been a lot better at this of late).

This morning Outlook took over 10 minutes to load, crashed when I tried to start writing an email (how dare I!), and then spent the next 5 minutes providing Microsoft with information about just how bad it had been. Enough is enough.

I knew about Mozilla Thunderbird from using Linux distributions and past attempts at abandoning Outlook. I found it to be a good email client but lacking in some areas: notably calendar and tasks. Since that time however GMail has come along, Thunderbird has matured and there are more add-ins for it available. I found dmfield’s post (here) on setting up Thunderbird which happens to be quite old and on a Linux forum, but that’s what I’m talking about: to my mind programs should work in much the same whatever platform I as the user chose (or are forced by circumstance) to run them on.

His post got me started (although some things were a little different and I searched for the plugins independently rather than using his links in case they were out of date).

The Process

Email

  1. Get a Google Mail account (or Google for your domain)
  2. Install Thunderbird. If like me you use a separate disk for files, you might like to change where the profile information is stored.
  3. Run it, It will ask for your email address and password and then do the rest for you, although if like me you have a huge backlog of mails on the server you might want to restrict it to downloading only the last x days in Tools, Account Settings, [Account Name] Sync & Storage.

Calendar

  1. Install Thunderbird plugins (which I’ve linked to here but you can find from Thunderbird, Tools, Add-ons, search:
    1. Lightning (Thunderbird Calendar)
    2. Provider for Google Calendar (to sync the calendar)
  2. Setup calendar: Refer to this link. NB the find the URL by going to Google Calendar, Settings, Calendar Settings, Calendars, Click on name of calendar you’re interested in, Right click Private Address XML link at the bottom and select ‘Copy Link Location’.

Contacts

I found two options for syncing contacts with Thunderbird: Zindus and gContactSync. As of writing addresses aren’t sync’d between them and GMail by default. When enabled in Zindus they are done in a odd way,  see this page as to why so I went with gContactSync which for me seemed to handle them a little better.

  1. Get your Contacts out of Outlook:
    • If you have Google Apps for Education/Business then Install Google Apps Sync for MS Outlook and run it. NB: If you get “Google Apps Sync is not enabled for your email account. Please ask your domain administrator to enable it.” then you need to administer your domain.
    • If you don’t have Google Apps for Education/Business then do a one time export from Outlook and Import into GMail. NB: with this method any changes you make to your Contacts in Outlook will NOT be sync'd. This is not appropriate if you are going to continue using Outlook e.g. as an ‘bridge’ to sync to an old Nokia phone or something.
  2. Find and Merge Duplicates in GMail Contacts.
  3. Install Thunderbird plugin (gContactSync or Zindus) (to sync contacts).
  4. Setup Contact sync. Consider syncing with a specific address book (e.g. called gContacts) and not the Personal Address book until you're satisfied its working ok:
    • gContactSync: Select gContactSync from the top menu, enter your required settings. NB as of writing you need to enable Address sync as it is disabled by default: gContactSync, Preferences, Advanced,  Sync postal addresses.
    • Zindus: Under Tools, Zindus add your GMail settings. NB: As of writing Addresses are an optional Advanced option, disabled by default.

Tasks

Currently there is no working sync for Google tasks as its not available via the API but it is likely to be released soon: http://gmailblog.blogspot.com/2011/01/top-tasks-for-google-tasks.html

In Addition

I also installed a plugin to enable calling via Skype from the address book: TBDialOut (I found selecting callto: and adding prefix +44 in options worked).

More Security

If you want more security in Google Apps you can enforce https connections under Domain Settings, [edit] and you can now add ‘two-tier’ authentication where it sends an SMS to your mobile to clarify ownership. For programs that don’t support two-tier authentication then you’ll have to create an “Application Specific Password” which is possible under Settings/Account Settings/ Authorizing Applications/Generate new app-specific password. You then just enter this where you normally enter your password.

Conclusion

I don’t have a working contact sync across the board yet as I have some legacy Exchange data to deal with, and tasks is quite a disappointment but it is working well so far for mail and calendar.

Other posts in the series:

02 March 2011

Install Android 2.2 on a T-Mobile G1 (Dream)

IMG_6914A friend was kind enough to give me an Android phone so I could start building apps. Trouble was it was a T-Mobile G1 which runs Android 1.6. This is a good OS but a lot of things aren’t possible on 1.6 these include but are not limited to some items which I needed for development:
  • Dual touch.
  • Installing apps on the SD card, preserving the phone’s limited internal memory.
There are many pages about upgrading on the web but I found the wiki at wiki.cyanogen.com provided the best information on how to proceed:
  1. Prepare the phone for upgrade: you have to downgrade it first.
  2. Install Danger SPL NB: reboot but stay in recovery.
  3. Upgrade to 2.2 NB: follow directions in “Wipe” section after install.
I’m not going to repeat their work here but some additional notes I needed were:
  1. Backup before you start:
    • Gmail, Calendar, Contacts: ensure set to sync
    • Apps: Using Astro File Manager, press Menu, select Tools, App manager/Backup, select all and press backup.
    • Bookmarks: in Astro press Home, Up, select etc and then copy the bookmarks folder to the sd card.
    • SMS: SMS Backup and restore from the Marketplace
    • A ‘Nandroid’ backup from the Recovery Menu (turn on with Home and Power keys pressed) will allow you (in theory) to return to factory settings.
  2. When formatting the SD card ensure its FAT32: under Windows 7 it defaults to FAT16 and results in ‘no image file’ when you try to flash.
  3. After ‘Rooting the phone’ I needed to re-enter my carrier’s APN settings in order to sign in: once you get to the Android and ‘Touch here to begin’ press Menu, APN settings, Menu and ‘Add’, then enter the details of your carrier. For Orange this is:
    AndroidCyanogen-500x600Name: Orange Internet
    APN: orangeinternet
    MCC: 234
    MNC: 33
    APN Type: default
  4. After the final upgrade it takes AGES to load, so don’t panic, be patient! If it gets stuck on the flash screen as above then you probably need to Wipe it (see above).
With thanks to the people who make the CyanogenMod and the other utilities mentioned here, you are making my tech life run much more smoothly!

How to Reset a T-Mobile G1

A kind friend gave me his old G1 so I can play around with building Android apps, but I needed to reset it and get it working on my network to gain the full end-user experience.

  1. Hard reset the device:
    1. Turn it off
    2. Press and hold the “Home” and “End Call” buttons until it turns on
    3. An exclamation icon will come up. You can reset from this:
      • Soft Reset: Press and hold the Home and Back keys simultaneously.
      • Hard Reset: Slide open the keyboard and type Alt plus W
  2. Then you’ll need to unlock the phone to work with your carrier. You can get the unlock code from the original carrier or use a service like www.fastgsm.com. You’ll need the IMEI number which is printed on a label under the battery.

Once it’s unlocked you’ll need to put the APN settings. These are the internet/data settings. Once you get to the Android and ‘Click here to begin’, then press Menu and APN settings. Either select one from the list or press Menu again to add a new one and enter the settings for your carrier.