27 January 2012

How Free App Developers Make Money: Ad Clicks

I’m sure that like mine, your smartphone is packed with app that you’ve installed. How many of them are paid for rather than free though? I find most people reply “none”, or “a few”. So how are these handy little applications being developed? Most people don’t seem to think about it, and I often get the impression users baulk at spending money on an app, even when it’s really useful or fun.

This free app culture extends onto the web too. How many times have you found a useful blog post or forum entry that has helped you figure out how to fix something or decide which product to buy? Sometimes people will post a thank you reply or register their thanks in another way which is great, but what these free apps and sites really need is revenue to keep them going: it takes man-hours and equipment to make the apps and publish content, all of which costs money.

Fundamentally it comes down to this: Developers and publishers of free content rely on advertising to fund their work.

Most people seem to find advertising placements annoying and I agree they can be when they take over: I hate full screen adverts in smartphone aps for example or those foul ‘popups’ that appear in front of the page you’re trying to view, but if they are to the side, above or underneath are they really that intrusive? Don’t forget the service they are doing: making it feasible for developers and publishers to bring content to you without you having to pay for it. Bear in mind it takes a huge number of ad clicks or placements before they make any real money so its not like they are raking it in. Also most ad providers (e..g Google’s AdSense) don’t allow promoting of clicks. So don’t knock the ads, embrace them!

Android: Unable to resolve target android-x

If you get this message then you need to install the relevant Platform version/API level. The number (x) refers to the API level
e.g. unable to resolve target android-5 means you need to install Android 2.0 (API level 5)

To do this in eclipse:

  1. Window, Android SDK Manager:
    AndroidSDKManager
  2. Select the relevant Platform version
    NB: You may need to select Obsolete to see some versions.
  3. Click Install, accept the terms and you should be done.

References

API-Levels

20 January 2012

How To: Use the hosts File to Avoid Ads and Speed Up Browsing

I went to the Samsung.co.uk website today and was greeted with a blank page and “waiting for platform.twitter.com” in the status bar for some time. This happens on many pages where the page is waiting for content from another site, which is slow to respond. Twitter in particular has a history of many load issues (see the Wikipedia Entry, Outages section).

In order to avoid these on your computer you can effectively tell it to ignore requests for certain URLs in Windows by adding them to your hosts file. On a Mac or Linux it is also possible using a different method (e.g. using Iptables) although that is outside the scope of this post.

Suitable hosts files can be found here.

Mac/Linux

  1. edit /etc/hosts as admin e.g.
    sudo vi /etc/hosts
  2. Paste in the bad hosts

Windows

  1. Open Notepad as an administrator (Start, type Notepad, once selected press Ctrl Shift and Enter simultaneously)
  2. Select File, Open (Alt F, O) and browse to:
  3. C:\Windows\System32\drivers\etc\
  4. on a Windows 7 machine, other versions might use a slightly different path.
  5. Change file type to “All Files”:
    NotepadAllFiles
  6. Open hosts
  7. Add the bad hosts at the bottom e.g.:127.0.0.1 platform.twitter.com
  8. Save and exit.


How it works
Operating systems consult the hosts file when resolving domain names, and entries there override those obtained from the DNS server. This entry basically says for the URL “platform.twitter.com” go to 127.0.0.1 which is the local machine i.e. nothing.

Create a Shortcut To Edit Hosts
If you want to alter the file regularly the operation above can become a bit tiresome so I like to create a short-cut:
  1. Show the Desktop by pressing Windows key and D
  2. Click Start, start typing Notepad and when it appears in the list right click on it and drag it to the desktop. This will bring up a menu. Select Create Shortcut.
  3. Right click on the new shortcut and choose Properties
  4. In the Shortcut tab append a space and the path to the hosts file in the target field, so mine ends up looking like:
  5. %windir%\system32\notepad.exe C:\Windows\System32\drivers\etc\hosts
    NB: It might throw a “name specified not…" error here: see earlier post.
  6. Click Advanced and select "Run as Administrator".
  7. Click OK twice and try out your new short-cut. It should bring up the hosts file ready for editing (and possibly an administration confirmation).

19 January 2012

Windows Update Error: Code 80072EE2

This oh-so descriptive error basically means the computer can’t find (DNS) or get to (LAN/internet connection) the Windows Update Server, be it Microsoft or in an office environment possibly a local WSUS server.

WindowsUpdateError

Error reads:
Windows could not search for new updates.
An error occured while checking for new updates for your computer.
Errors found:
Code 80072EE2 Windows Update encountered an unknown error.

I had this error after updating my router and initially couldn’t figure out why it was related… until I remembered I’d set up a local Windows Update (WSUS) server and set the related Group Policy to update from a wsus.[my domain] alias. This is set in:
Computer Configuration; Policies; Administrative Templates; Windows Components; Windows Updates; Specify intranet Microsoft update service location.
I hadn’t reconfigured this alias so all my computers were failing to resolve the address (DNS) and therefore couldn’t update.

The fix for me was to re-instate the alias but hopefully this might help others to find out what their particular problem is.

Free Microsoft Boot Virus/Malware Scanner

I found this offering from MS today when I was looking for a boot-time scanner:
Microsoft Standalone System Sweeper Beta

It’s basically like MS’s Security Essentials which I’ve posted about before but it will run stand alone, i.e. without starting Windows first. This is important because by the time Windows is running any malware on there might be already running and/or undetectable.

Basically you download the file then burn it to a blank USB drive, CD or DVD and then start the PC from it. Ultimately you’ll get to a Windows Defender Offline window where you can scan your computer:

WindowsDefenderOffline

Admittedly as of writing it’s only in Beta but I’m pleased to see that with this and Security Essentials MS seems to finally be taking malware seriously.

18 January 2012

DD-WRT: Don’t Use the Router Database!

I love DD-WRT and have posted about it before but today I’ve (re) learned the lesson that you do need to do background reading when fiddling with firmware. When choosing my build I found it very complicated, not least because there are several different kinds of DD-WRT they are referred to in different ways (e.g. version v24, ‘name’ EKO, type ‘mini’) and so resorted to simply going to the router database to chose my version. However now I know not to!

Last night the internet started to go flop for me: some devices worked ok, others were slow, whilst others had no connection. I resolved it to a DHCP issue: those with a static IP were fine but the router wasn’t handing out any more IPs. I found that the build of DD-WRT I was using (v24-sp2 build revision 13064) has issues including some with DHCP so I've now re-flashed it with a later version and all is well.

”Beta 13064 dated Oct 2009 - poor wireless performance”
“You should not put SP1 or 13064 (Build date 10/10/09) on your router”
DON'T USE THE ROUTER DATABASE! The router database has recommended some less stable builds, including SP1 and 13064

DD-WRT.com

17 January 2012

How to: Setup a VPN Server with DD-WRT

A VPN allows you to log into your home/office network and route all traffic via there so it’s as if your laptop/remote device was browsing the network (shared folders, internet etc.) from within the home/office.
Firstly A Word on Protocols
VPNs can be used with a number of different protocols you should consider:
  • What kind of remote users are you supporting: e.g. remote client access or site-to-site (SSTP does not support site-to-site VPN tunnels).
  • Users’ device capabilities e.g. does their smartphone support the chosen protocol.
  • Access requirements: e.g. SSTP connections are tunnelled over SSL using TCP port 443 which is open on most firewalls. Other protocols require UDP ports 1701, 500 and 4500 none of which are open in a standard firewall setup, meaning no connection.
Use DD-WRT On Your Router
I use the excellent DD-WRT software on my router which I have posted about before. It has the ability to allow a basic VPN setup inbuilt. See the wiki entry for more information but basically:
  1. Open the web interface http://192.168.1.1 and go to Services; VPN.
  2. Set PPTP Server to Enabled
  3. Enter the router’s IP as Server IP
  4. Enter an IP range for connecting clients e.g. 192.168.200-10
  5. Enter your username and password into CHAP-Secrets in the format exactly as below including the *’s and spaces:
    username * password *
  6. Click Apply Settings
In order to use this service externally you will need to use a service like http://dyndns.com to maintain an up to date DNS IP record for your network see my previous post.
On Your Computer/Portable Device
Windows 7
  1. Control Panel; Network and Sharing Center; Setup a new connection; Connect to a Workplace
  2. If you have a VPN already choose No, create new connection.
  3. Enter the hostname of your router e.g. myrouter.dyndns.org and give it a name.
  4. Enter the Username and Password
  5. Click connect.
  1. System, Preferences, Network
  2. Click the plus sign at the bottom of the list
  3. Set:
    Interface: VPN
    VPN type: PPTP
    Service name: [your service name here e.g. vpn.mydomainname.com
    Click Create
  4. In Status page set server address: [your domain] account name and set authentication password.
  5. Click Apply then Connect

Android 2.3
  1. Settings; Wireless and Network; VPN Settings; Add VPN
  2. Select Add PPTP VPN
  3. Enter the hostname as VPN name and server.
  4. Select Menu, Save
  5. Click on the VPN and enter the username/password and click connect.

How to: Setup a Windows DNS Server

  1. Install the DNS Server Role
    1. On a Windows Server machine in Server Manager select Roles; Add Role
    2. Select DNS Server and Next and go through the install process.
  2. Configure The DNS Server
    1. In Server Manager; DNS Server, right click on your server’s name and select Properties
    2. On the Interfaces tab select ‘Only the following IP addresses and select the LAN IP e.g. 192.168.0.2
    3. On the Forwarders tab click Edit and type the IP address of your router: this will forward all unknown DNS requests to the router (and thus on to your ISP DNS).
    4. Ensure you have Dynamic updates enabled. These allow the clients to register/update their records:
      1. Expand the Roles;DNS Server;DNS; [Server name]; Forward Lookup Zones
      2. Right click on your domain e.g. ad.mylocaldomain.com and select Properties
      3. Ensure Dynamic Updates is set to Secure only.

Small Businesses and Active Directory

I visit a lot of small business offices with Windows machines where they have a Windows Server but are not using Active Directory. Instead they tend to use local profiles to log into their local machines (I am using ‘local’ here to mean a desktop or laptop the user is sitting in front of). In my opinion this is a bad idea because of many reasons including, but not limited to:
  • Hardware failure: If their machine breaks down they are likely to Loose data and productivity whilst a new one is supplied.
  • User permissions:
    • It is important to restrict users' ability to carry out system alterations e.g. installing programs (which might contain viruses or spyware).
    • Access permissions must be individually set on each machine, rather than centrally organised.
  • File shares: most offices use some kind of centralised server based file share, but unless they are setup centrally they can be mapped incorrectly e.g. when updating who has access to which drive or adding a new server.
  • Windows Updates can be centralised (using Windows Update Services), reducing the risk of spyware or virus intrusion.
  • Software installation: Group policies can be configured to ensure particular software is installed e.g. virus protection with Microsoft Security Essentials.
With Active Directory the provisions of users is done centrally via “Group Policies”. When a user logs onto ‘their’ machine they are actually authenticating with the server (rather than the local machine) and the server provides them with their personalised profile. This includes their permissions and if configured, their files and file shares.
If you have Windows Server then you can activate Active Directory without any additional license cost, although I would recommend you employ a professional to actually carry out the installation as it isn’t entirely straight forward.
See my related posts on: User Setup; Folder Redirection; Moving Offline Files; Windows Update Services; Microsoft Security Essentials

How to: Disable Roaming Profiles

I have previously used Roaming Profiles, mostly for re-creating a user’s profile when their computer dies. They do have their advantages but they also don’t fail gracefully. There are also some fundamental problems such as:
  • Software may not be installed on the machine: the profile may have links to software installed on the original machine but when they log in to another computer it may not be installed there (or appropriate to install it) so they will not be able to use that software on that machine. This can lead to confusion both with the user and OS.
  • Not always appropriate to drag profile from one machine to another e.g. a desktop profile with background picture of your kids etc. is not suitable to log in to a server with.
Even MS’s own “Recommendations for Roaming User Profiles” include suggestions such as “Make sure that the applications are installed using the same path and drive on all client computers.” which isn’t always possible.

How To Disable Roaming Profiles
This can be done on a per-user (Users; [User]; User properties; Profile tab; Profile path) or per-machine basis or in the Active Directory GPO. Here are the instructions for the computer policy which I prefer to use as to me in my scenario it is more appropriate to implement via a GPO/per-machine basis:
  1. Open Group Policy Management
  2. Navigate to: Computer Configuration\Administrative Templates\System\User Profiles.
  3. Enable “Only allow local user profiles” and “Prevent Roaming Profile Changes from propagating to the server” to disable roaming profiles on this machine or GPO.

16 January 2012

How To: Configure EasyN IP Web Camera

Call me paranoid but I love to have a way to check my house is ok when I’m away. The obvious choice is a webcam and the requirements I had were:
  • Wireless: I wanted to be able to put it anywhere in the house.
  • Night vision: Most burglars aren’t polite enough to wait for daylight.
  • Motion sensor: If someone breaks in I want to know immediately.
  • Cost-effective: i.e. cheap!
Not as important but also a consideration was:
  • Remote pan and tilt: so I could control the viewing angle.
  • Audio: both listening and shouting at the burglar!
I eventually settled on the EasyN Wireless IP camera with 2-way Audio. Despite some poor reviews on Amazon.co.uk I felt I would be OK at configuring it. As it turned out it was a bit of a fiddle so I can understand why some people had trouble.
Hopefully these notes will help someone else setting up the same camera… or me when I come to adjust my own!
A couple of important points about this camera which I would imagine catch a number of people out (they did me):
  • By default it is set to an IP of 192.168.1.126 this may not match your network (often set as 192.168.0…
  • Wired and Wireless MAC addresses: Some sources say the wired and wireless MAC addresses are the same. I think if you set it to use a fixed IP it uses the same MAC on both. However I set the camera to DHCP so as to only be setting the IP in one place (the router) and to avoid potential conflicts with other devices.
Configuration

Part 1: Check the Subnet
The subnet is the first three parts of your computer’s IP address. This camera comes configured with an IP of 192.168.1.126 which may be ok for some people, but if your LAN/router is configured say for a 192.168.0… subnet then you may not be so lucky! If you are on a 192.168.1 subnet then skip to part 2.
Tell if you are on a 192.168.0 or 1 Subnet
  1. In Windows: click Start and type cmd
  2. At the prompt type
    ipconfig
  3. Press return and you’ll see results like below:
    Wireless LAN adapter Wireless Network Connection:
    Connection-specific DNS Suffix  . :
       Link-local IPv6 Address . . . . . : ?????????????????
       IPv4 Address. . . . . . . . . . . : 192.168.0.???
       Subnet Mask . . . . . . . . . . . : 255.255.255.0
       Default Gateway . . . . . . . . . : 192.168.0.1
    But with numbers/characters instead of the ?’s
  4. If your IPv4 Address is like that above Then you are on a 192.168.0 subnet
Change the Camera’s IP address/Subnet
There’s more than one way to do this but here is the method I used:
  1. Insert the CD that came with the camera and load the software.
    Or download from: http://www.easyn.com/IP-search-tools.html
  2. Click “Search IP Camera”, Wizard Mode
  3. Connect the camera to the router or computer directly and select the relevant tab:EasyNIPCameraSearch
  4. Your camera should be show in the list, select it and click Next
  5. You can then use Manually Set to change the settings:
    EasyNIPCameraIPSet
  6. You should then be able to to log into your camera at http://192.168.0.126:81
    The default username for mine was admin with no password
You can set the camera to use DHCP via the Settings interface under Basic Network Settings. If you don’t know what DHCP is don’t worry.

Part 2: Configure the Camera
  1. If you are on a 192.168.1 subnet already then plug your device in to your router and log onto http://192.168.1.126:81
  2. You should see the EasyN web interface:
    EasyNPWebInterface
  3. Click the Options on bottom right to open the Configuration interface:
    EasyNOptions
Set a Password
If you are going to expose the camera on the web you should set a user and password other than the default in: Settings; User Settings.

Setup the Wireless
In the Configuration Interface:
  1. Click “Wireless Lan Settings”
  2. Click “Scan'” and select the relevant Wireless SSID (name).
  3. Enter the Shared key in the box marked “Share Key”.
  4. Click “Set”.
The camera will then restart.
[UPDATE] You may find as a friend did that your key doesn't work with the form e.g. if it has a # sign in it. The resolution they came up with was to grab the form post data and manually URLencode the problem characters then manually submit the resulting URL which worked for them. To quote:
"[I] finally grabbed post URL data with chrome developer tools and edited with a few esc characters. The final URL for a WPA2 PSK with AES encryption (had to escape #, % and +)
<denotes replacement strings e.g. password>
http://<your camera URL and port>/set_wifi.cgi?user=<username>&pwd=<password>&next_url=rebootme.htm&channel=5&enable=1&ssid=<yourSSID>&mode=0&encrypt=4&authtype=0&keyformat=0&defkey=0&key1=&key2=&key3=&key4=&key1_bits=0&key2_bits=0&key3_bits=0&key4_bits=0&wpa_psk=<wpapsk key with escaped characters>"


Default View Angle
When the camera reboots the default viewing angle is dead centre and up about 45’ which is ok if it’s ceiling mounted but not so great if it’s on a surface. To set the default angle:
  1. Go into the web interface (http://192.168.1.126:81 by default)
  2. Adjust the camera viewing angle to the desired position.
  3. Click ‘Set’ and choose a number from 1-15 (I use 1-3 for defaults, 4-15 for ‘points’ e.g. 9 is left of centre, 15 is bottom right.
  4. Click Options; PTZ Settings and in “Started running to the specified preset” chose the number assigned above. Optionally you can set the rotational speed.
Light display Mode
I found the flashing LED quite annoying. This can be turned off at: Options; PTZ Settings; Indicator Display Mode; Been extinguished. I would have liked it to blink when it "lost network"... but sadly mine continued to flash even when it is connected on that setting.

Email Alerts
If you want it to email you when it detects motion (see below) then you need to configure the email settings: In Settings; Mail Service Settings set the various settings according to your provider. Click Test to ensure they work before setting. For GMail I used:
SMTP: imap.gmail.com
Transport Layer Security Protocol: STARTTLS
Need Authentication: Yes
User and Password
I also clicked “Report IP by Mail”

Motion Detection
I found the default settings for motion detection were too sensitive and it was emailing me all the time with blank pictures. Change this in Settings; Alarm Service Settings. I used:
Motion Detect Armed: Yes
Motion Detection Sensibility: 3
Start the motion detection compensation: Yes
Send Mail on Alarm: Yes
I also use the scheduler which to be honest is a pain to setup: rather like minesweeper, but less exciting. The logic being I can turn off the scheduler when I’m away (remotely if I forget before I go).

Access the Camera remotely: DNS Update
Unless you have a static IP which is unlikely, to access your camera from the internet remotely you will need a dynamic IP updater service as your public (WAN) IP will change periodically. This will run on your system locally and update a DNS record on the chosen service provider with your public IP. You can check your public IP by doing a search on-line for "What is my IP".

The camera comes configured with a IPCAM DDNS provider so you can either browse to their service on-line or use a free service (e.g. http://www.dnsexit.com) or a paid one (e.g. http://www.dyndns.org) to redirect a domain name to the public IP address of your router.  You can then open a browser browse to:
http://[myusername.dnsexit.org]:[Camera Port number]
  1. Setup your dynamic account with the chosen provider and get your username, password and public domain name (referred to as DDNS Host in the camera) e.g.  myname.dnsexit.org
  2. To setup the DNS update service locally you can do it on the camera itself or you could do it on your router. NB: You should NOT configure it on both the router and the camera.I would recommend you do it on your router: If I configure it on the camera I get:
    ”Errors in Network Communication”
    I suspect this is either because the camera is unable to contact the DNS service or is reporting it’s LAN IP address (rather than it’s WAN IP).
    However, to do it on the camera:
    1. Go to the camera's setup and select DDNS Service Settings
    2. Select the service provider from the list.
    3. Enter the username password and host details.
  3. You will need to enable the port on your router (usually under Port Forwarding). The default is 81. Depending on your router you may need to forward it to the camera's local IP (default 192.168.1.126).

14 January 2012

Play ISO Images via XBox 360 Media Center

I have a number of DVDs but I never watch them as they just sit on the shelf, so I thought if I could burn them to disk and add them to Media Center I might actually watch them.
NB: I am doing this with DVDs I own, and burning them to disk as a means of backup/playing only.
Part 1: Get Windows playing the movie aka Make the ISO mountable
  1. Install Virtual Clone Drive
  2. Install Mikinho Mount Image to mount the ISO.
  3. Ensure that when you double click an ISO it plays automatically in Media Center: You need the ISO to automount and play successfully in Windows before it will play via XBox.
Part 2: Install MyMovies
  1. Install MyMovies service
  2. Ensure your ISOs are all in their own folders: see here for more information.
  3. Add MyMovies Folder monitoring: Tools, Options; Folder Monitoring: Choose Operating Type ‘Loose’ and add your ISO parent folder to Monitored Folders.
MyMovies will add a new section to Media Center called Movies (in addition to the existing ‘Movies’ one...
Problems
On the Media Center Server
  • “Video playback is not currently allowed. This is often due to incorrect drivers for your graphics card, because the card has less than 64mb of memory, or because the card is not DirectX 9 compatible.”
    I’ve yet to solve this issue for myself! But I don’t believe it’s a problem as they play OK in Windows Media.
On the XBox
  • Please insert the disc for [film name]; Click OK; nothing happens.
Kill me, kill me now!

I think my problem could be my server: either graphics card or missing codecs. Anyone had more success with this than me?

13 January 2012

How To Tether with Android and Orange

I wanted to get my phone’s WiFi hotspot capability working because the other day I was out and needed it and sure enough it didn’t work.

NB: PLEASE NOTE MOST SUPPLIERS ARE NOW CHARGING A HIGHER TARIFF FOR TETHERING DATA. Seems illogical to me as I’ve paid for data it should be up to me how I use it but the logic seems to be that if you’re tethering you’re more likely to use more data… so stop offering (undeliverable as bandwidth is) ‘unlimited’ tariffs I say!

An Alternative Solution

With the increased cost and problems outlined below depending on your needs you might be better off getting a MiFi WifFi access point or similar. I have a friend who has one and it works well. The added advantage being you could get one on a different network so even if you’ve no connection on your phone you might have on the MiFi: MiFi on Amazon

The Theory

I’m using Samsung Galaxy SII Android 2.3.5 on Orange and a Windows 7 64bit computer.
You should be able to just activate WiFi hotspot via: Settings; Wireless and Connectivity; Tethering and Portable Hotspot; Portable Wi-Fi hotspot [tick]
Your computer should then see a WiFi named AndroidAP
On the phone go into Configure portable WiFi hotspot. to get the key

My computer (Windows 7 64 bit with all updates) connected to the Wi-Fi ok but there was no internet connection. Being technical I investigated why:

  • The computer connected to the AndroidAP ok
  • ipconfig /all showed a DNS server and Gateway
  • ping [DNS/Gateway IP address] returned ok from DNS/Gateway
  • dnslookup google.com failed

Broadband Bundle? No. Not Needed.

I checked on the Orange website: What do I need to tether using an Android phone
But I read “An animal tariff from September 2011” meaning “since September 2011 you have needed an animal tariff” but after a conversation on Twitter with @orangehelpers ‘Andy’ explained:
“The bundles are built into the Animal tariffs after September 2011, your tariff was taken out [before that]”

So he said I needed to add a tethering bundle. I called Orange and after a few problems I got through to a ‘level 2’ technical guy who was very helpful and did his best to solve my problem, including phoning back a few times and trying out things on his own phone. He eventually concluded that I needed a broadband bundle but it was not possible to add one to my account because “they haven’t been developed yet”. Great! But in fact he got me to add an Access Point which is what solved it in the end.

The Solution: Access Points

In the end I didn’t need a broadband bundle at all. It comes down to a new Access Point which the Orange customer support guy had told me to add. When you connect via tethering by default it uses the APN “comsumerbroadband”. As I understand it this tallies with a broadband bundle, which I don’t have and can’t add aka it fails. Whilst other people have had success with editing the “Orange Broadband” Access Point I can’t on my phone: it’s all greyed out and with no menu on the details page. The solution was to add a new Access Point:

On Android 2.3.5:

  1. Go to Settings; Wireless and Network; Mobile Networks; Access Point Names
  2. Menu; New APN
  3. You will be presented with a screen showing several fields like Name, APN, Proxy, Port etc.
  4. Select Name and enter “Orange Tether” for the name (or anything really, it doesn’t matter
  5. Select APN and enter “orangeinternet” without the quotes, note the lack of a space.
  6. Select APN type at the bottom of the list and select DUN
  7. Leave everything else as it is. the following are not set: Proxy, Port, Username, Password, Server, MMSC, MMS proxy, MMS port. Then the others are: MCC: 234; MNC: 33; Auth. type: PAP
  8. Select Menu, Save

Once you’ve done this you should be able to connect, but what I would say is that the connection is incredibly slow for me: I had to stop anything and everything on the phone (using Advanced Task Killer) and stop all things that might use internet on the laptop even to get the Google homepage to load. I also noticed that if I changed the AP name and key it didn’t reflect that on Windows, and since they are reasonable by default I just left them.

Screenshots of the New APN screen:

SC20120404-051730SC20120404-051737SC20120404-051743SC20120404-051750SC20120404-051828SC20120404-051820

Orange’s Customer Services: Why do you hate us so?

NB: This post is not about the operatives who actually work on the end of the line: when I do manage to get through I find the actual telephone operatives themselves very helpful. This is about Orange/T-Mobile management failure.

So I needed to change something on my Orange bill. No problem I thought… being a techy and loathing those automated menu systems I’ll log into orange.co.uk. Instead of being able to administer my account  I get a whole page of Java errors. WTF? last time I looked Orange was part of T-Mobile, a huge multi-national. As a web developer myself I know there is literally no excuse for this kind of blunder today, we have roll-out plans, solution control and automated processes that will avoid a bug going live.

Anyway then I give up and call Orange customer services where I get through to “Orange Premier Support”. The first time I navigate through the menu system I get “We cannot connect you to a technician right now, Goodbye”. I phone back, and carefully select a different path through ther automated minefield. Eventually I get “Due to a technical issue yesterday it may take longer than usual to answer your call… you may find it more convenient to call back later”

I say “No Orange, I will not find it more convenient to call back later. If it had been more convenient for me to call back later I wouldn’t have just called you would I? I don’t start running a bath at 6am because it will be more convenient for me to have one that evening. By then the bath would be cold and unpleasant… which is coincidentally how I feel about your customer services.”

If that’s Premier Support I’d hate to experience ‘normal’ support. Does an automated voice perhaps insult you over the line, or mock your lowly support status?

Fix: Windows Error 0x80070718: Not enough quota is available to process this command

This unhelpful message appeared on my computer today when moving some files. I run Active Directory and Roaming Profiles so my first thought was if I’d set a user disk quota, however this wasn’t the case. A quick search pointed me in the direction of:
Control Panel, Sync Center, Offline Files, Manage Offline Files (left hand side), Disk Usage tab, Change Limits
(Windows 7 64bit)

Once I’d increase the disk usage all was well again. Now Why didn’t they put the words ‘Offline Files’ in the error message or perhaps even a link?

11 January 2012

How to Clear Your Inbox in 20 minutes!

Everyone likes to start afresh in the new year, so here are some tips on how to clear your inbox of all those mails that are just sitting there mocking you.

Why Should you Clear Your Inbox?
Its a matter of personal preference but I prefer to have a blank or at least organised inbox so I can quickly and easily see what’s new, what needs attention (Follow up), what I’m waiting on other people for (Hold) and old stuff I’m just keeping for reference (Archive). This is the ‘Trusted Trio that is much talked about online (e.g. http://lifehacker.com/182318/empty-your-inbox-with-the-trusted-trio). I find if a message makes it onto page two then it might as well be forgotten!

Part 1: Get  Gmail Account!
If you have a GMail or Google Apps account already, skip to Part 2
Seriously I’ve had all sorts of email accounts and this is by far the best:
    • Keep your old email address(es) and GMail will import messages periodically.
    • Send as if from other email accounts (once verified).
    • Excellent spam filters.
    • Search is second to none.
    • Ability to ‘Label’ (i.e. file) messages into multiple folders (called Labels).
    • Integrated contacts and calendars.
    • Exchange capability: all inbox, calendar and contacts sync across all devices.
    • Use your own domain: Apps for your domain
Once you’ve signed up then add your old account to it: mail.google.com, Settings (gear icon on the right above Inbox), Accounts, Add a POP3 mail account you own.
NB: If you are using an iPhone or iPad you’ll need to enable ‘Send Mail As’ at http://m.google.com/sync see here for more info.

Part 2: Sort out those messages
Once you have your shiny new Inbox it will quickly fill up with messages from your old box. I prefer to use Google’s Chrome Browser but in whichever you use log into http://mail.google.com and get busy:
  1. ‘Priority Inbox’: Settings, Inbox, Inbox Type. This sets messages flagged as important or unread first, then starred messages and then everything else.
  2. Use Labels: Gmail uses labels not folders to file messages. One message can be in more than one folder so its more sensible to call them something other than folders. Personally I use these as a filing system which makes searching more specific: I can search in one folder only.
  3. Filters: Open a message that you might like to flag or auto label e.g. from your accountant and click the arrow, then ‘Filter messages like these’, then ‘Create filter with this search’. You could star it, mark it as important or apply labels. Note if you apply labels it will still appear in your inbox (unless you ‘skip inbox’). When doing this you can choose to “Also apply filter to X matching conversations”.
  4. Unsubscribe: Unsubscribe from all those newsletters that you never wanted anyway. I have a rule that I don’t just leave them, I do a search (Ctrl F) for the word unsubscribe in the message and click the link. If I’m offline at the time I mark them with a Label “Unsubscribe”.
  5. Report Spam: If they are spam or there isn’t a link to unsubscribe then I report them as spam: I believe the Direct Marketing Code of Practice states that members:
    ”…must provide an unsubscribe mechanism, such as a return email address, to which unsubscribe requests can be sent.”The Google filters are good but some messages still get through. You need to teach it to improve it, for you and for others.
  6. Bulk sort: Use advanced search to find messages to deal with in bulk e.g.
    in:inbox before:2011/09/01 from:Peter
    NB: If more than one page of results if you Select All (top left check box) then there will be a message like: “Select all 600 conversations in Search results”
Part 3: How to KEEP your Inbox clear
Once you’ve been through and sorted out all the messages and you have at least just one page of current messages if you’ve completed some of the steps above like filters and unsubscribe you should at least have cut down the amount of mail you receive. Everyone’s system will be different but personally I use:
  • Stars to indicate messages that need me to follow up (Action).
  • Important for those that are (e.g. accountant).
  • Inbox (Everything else in Priority Inbox) for those I’m waiting on others (Hold).
  • File everything in folders/labels that I might need to refer to e.g. order confirmation invoice
  • Archive everything else.
Ad lastly I don’t check my mail all the time or have an email notification. I find if I do I just spend the whole time dealing with it and not doing anything else. I check it at least every hour and if it’s going to take more than a few minutes I star it and come back to it.
I hope these suggestions help you sort out your message backlog and if you have any of your own please feel free to post below.

Excellent Logitech Customer Support

I’ve had a Logitech M505 wireless laser mouse since October 2009 so over 2 years as of writing. I love it. Except for a Logitech trackball I once had it’s the best pointing tool I have had to date.

Specifications:

  • Responsiveness
  • Connection: wireless (not Bluetooth) via USB "Logitech unifying receiver" which is barely bigger than the port.
  • Software: Plug and play on Windows 7, Ubuntu 10+ Logitech software available for those with more specific requirements.
  • Controls: Two buttons and a scroll wheel which also clicks down and goes left and right.
  • Power: Two AA batteries: NB: they go in both pointing the same way which is unusual.
  • Battery consumption: minimal and there is a switch to turn it off.
  • Comes with: A case to protect it when travelling.

Excellent Customer Support

Last week my beloved mouse stopped responding with "one of the USB devices attached to this computer has failed" message in Windows. I had to use a WIRED mouse. It was horrible. I don’t know how I ever managed it. I got myself and my phone tangled up in the wire many times!

To resolve the issue I followed some suggestions on their support pages such as:

  • Replacing batteries with brand new old school ones (I usually use rechargeables).
  • Removing all USB devices and restarting Windows.
  • Trying it in another computer.

When it failed in the other computer I felt I was at an end and called Logitech support. Although I found the phone number wasn’t that obvious (I found it here) I was surprised and delighted to find open on a Saturday morning.

A very helpful Frenchman then listened to my debugging attempts and agreed that the unifying receiver was probably at fault. After requesting the date of my purchase he offered to send a new one free of charge, and because I’d already registered on their website they didn’t even need my details. Now that’s how customer support SHOULD be.

09 January 2012

Seriously Samsung, is Kies Your Best Effort?

Why I love my Samsung phone, but hate the companion software.

I find it baffling that Samsung would spend so much effort on developing their phones and tablets and then deliver them to market with companion software that simply does not work.

I have had my Orange Samsung Galaxy SII for a few months now and on the whole I love it. I’m not an Android obsessive: I do recommend iPhones for some people as I believe they are possibly more suited to the some users, basically because they are less configurable. However, one thing I do not like about the Samsung is the companion software: Samsung Kies. It reminds me of the Nokia Ovi software which I used to use back in the day. Like Ovi, Kies is slow, resource hungry, until recently was PC only and for me it fails to connect most of the time:
KiesCouldNotStart
“Cannot start service on the device. Please disconnect then reconnect the device”

Notice the lack of any useful suggestions like closing applications on the phone or turning USB debugging off, both of which I’ve found are necessary. If I disconnect and reconnect I get the same message again and the “Network Trouble-shooter” is a joke: it just uninstall and re-installs the Windows phone driver!

What is it with these massive companies and their really bad companion software? Don’t they realise that the quality of their product is related to the ENTIRE experience, not just that on the device but also how to sync files (e.g. music) from their computer; upgrade the software; or how easy it is to restore after an upgrade or phone loss?
 
They didn't need to tie up the USB drivers, software updates, media sync etc. into this rubbish, but rather could have enabled the same capabilities via more 'standard' means e.g. freely distributing the USB drivers, making software updates work over the air (direct from the device: mine simply don't) and supporting standard media sharing/syncing protocols.

It’s no wonder Apple have done so well as they took the time to approach the whole user experience. Mind you, their system has it’s flaws too (e.g. a friend updated to iOS5 and lost all his photos).
 
Alternatives to Kies

It depends: what do you want companion software for?

Updates
I have Kies installed so as to install the USB drivers. Then I removed it from startup and only run it to check for updates to the phone's software periodically or when I read about an available update.

Email, contacts, calendar etc
I use Google accounts for all that so it’s pointless in Kies anyway.

Music/Media
You can use the MTP service if your device supports if (Android >=3) or connect USB drive when connected to your pc and:

  • Drag/drop
  • Attempt to use Windows Media (supposedly it can manage it but I’ve never managed it)
  • Use a program like Media Monkey or iTunes Sync to manage files.

Good luck, and don’t forget to voice your dislike of Kies to Samsung and anyone/everyone else!

How to Reconnect in Samsung Kies PC Studio Mode

Fix for Samsung Kies “Reconnect the device in Samsung Kies (PC Studio) mode. Current connection Mode not supported by Kies.

The Problem
You connect your shiny new phone to your PC to add some tunes and photos and it comes up with: “Reconnect the device in Samsung Kies (PC Studio) mode. Current connection Mode not supported by Kies.”… but obviously without any instructions how to actually do that… that would be too much to ask wouldn’t it?

 KiesError


The Solution
I couldn’t find anywhere to actually set what sort of mode the phone used to connect so after some searching the solution that worked for me was to:
  1. Re install Kies from Samsung: http://www.samsung.com/uk/support/usefulsoftware/KIES/JSP
  2. Run an update from within it: Mac: Preferences, Update tab.
  3. Exit Kies, disconnect and reboot the phone.
  4. Disable USB Debugging in (Home Screen) Menu, Settings, Applications, Development, USB debugging. (In 4.0.3 Development is in settings, under the sub heading System, near the bottom.)
  5. Start Kies on the computer and wait for it to load.
  6. Kill all applications on the phone using Advanced Task Killer or similar.
  7. Clear memory in the native Task Manager: hold down the Home key, go to Task Manager, then  the RAM tab, then click Clear Memory.
  8. Reconnect the phone via a different USB port
  9. Wait: my tablet takes literally 10 minutes of "Connecting..." before actually connecting.
I hope this helps someone.

[UPDATE] Samsung Galaxy Tab 10.1
Checkout my separate page for 10.1 here My how I hate Kies...

Auto post Google+ to Twitter, Facebook, LinkedIn etc.

[UPDATE #3] See later post for more up to date: Autopost Blogger to Twitter

[UPDATE #2] There are now many better alternatives to that which I suggested here. A web search should provide you with a number of options. e.g. http://www.friendsplus.me

[UPDATE#1] This post is now out of date. I suggest you follow Mike Elgan's detailed directionsget an RSS URL, 'clean' it via Feedburner and then (rather than use his suggested various services) use twitterfeed.com to auto publish it]

I don’t have time to re-post to multiple platforms so I use one as the ‘master’ and auto-repost from there to other feeds. The logic being that some people are only on Twitter and not Facebook or LinkedIn and not Google+.
For me Google+ is the ‘master’ so I re-post from there using http://www.twitterfeed.com which despite the name does post to networks other than Twitter.
As of writing G+ doesn’t provide RSS feeds yet so first you need to make one, then add it to Twitterfeed and then configure it to be re-posted.
  1. Log into http://plus.google.com and go to your posts to get your G+ user ID: plus.google.com/u/0/[user ID here]/posts
  2. Add your Google+ user ID to the end of this URL: http://googleplusrss.nodester.com/ which will result in an RSS feed.
    [Update: That service is now offline. Use this one instead: http://www.google-plus-rss.com  Thanks to Justin]
  3. Add the RSS URL created above to http://www.twitterfeed.com and configure it to post to Twitter or Facebook etc.
Thanks to Jeff Turner for the G+ RSS.

08 January 2012

Fix for Google services Framework (process com.google.process.gapps) has stopped unexpectedly

How to fix this annoying error which pops up randomly on some Android phones.

I have a friend who came over today with an Android phone which kept throwing up this error. I’d never seen it before so I was interested to know what caused it and how to fix it. A quick search threw up this page:
http://www.google.com/support/forum/p/gmail/thread?tid=23c329285968cd2e&hl=en

So the problem is more than likely some odd data (e.g. strange characters) in one of more contact or calendar entries.

The Fix

Please don’t be alarmed by the length of this process: it isn’t that difficult, I’ve just tried to be explicit about the detail, although I can’t accept responsibility for any loss of data when following it.

NB: This process is written for a phone that hasn’t sync’d for some time (or at all) so the phone is the primary source of data and not the associated GMail account.

  1. On the phone: Export the data from the phone as it stands to a Micro SD card
  2. Move the files to a computer.
  3. On a computer:
    1. Import the contact and calendar entries into Gmail.com
    2. Look for the odd data and amend it.
  4. On the phone:
    1. Turn off contact and calendar sync
    2. Wipe the Phone contacts and calendar cache
    3. Re-sync it

1. Export the Data from the Phone
I found applications on the Android Market to export the contacts and calendar to .vcf and .ics files:
Contacts: You can use the native app (menu/Export) or one from the market:
https://market.android.com/search?q=export+contacts&c=apps
I used Go Contacts
Calendar
https://market.android.com/search?q=export+calendar&c=apps
I used iCal Import/Export: give the export file a name (e.g. Calendar 20120108) select your Google calendar and export.
NB: if you have any data in ‘My Contacts’ or ‘My Calendar’ then it also needs exporting/importing as it will only be on the phone.
Once exported I found the files were in /mnt/sdcard/ so I used Astro File manager to move them to external_sd. Depending on your system you might not need to do this.

2. Move the files to a computer
I did this by emailing them to myself and saving attachments but you could also do it by plugging the phone in then in the status bar at the top, selecting “Usb Storage” and “Connect USB Storage”. This should work on PC and Mac.

3.1 Import the data into Gmail.com
Follow these directions to import the files
Contacts: http://support.google.com/mail/bin/answer.py?hl=en&answer=14024
Calendar: http://support.google.com/calendar/bin/answer.py?hl=en&answer=37118
Be sure to import the calendar events into your main calendar (i.e. not UK holidays or anything).
Check the data is there: look for a recently added contact and event.
Once you’ve imported the contacts I recommend you search for and eradicate duplicates:
http://support.google.com/mail/bin/answer.py?hl=en&answer=165334

3.2 Search for and Amend the Odd Data
This step is going to be different for everyone but If you know of any contacts where you have used a lot of text in the notes field, someone with a huge profile picture or maybe calendar entries where you’ve copy/pasted directions from a website then I’d start there. Look for characters that aren’t a-z or 0-9 particularly accented letters or ‘strange looking’ characters.
If you can’t think of any entries like this then don’t worry: we’ll cover some alternative solutions below.

4.1 Turn off Contact and Calendar Sync
In Settings/Accounts and Sync/[your GMail account] turn off sync for contacts and calendar.

4.2 Wipe the Phone Contacts and Calendar Cache
  1. Go to Settings/Applications/Manage Applications
  2. Select the ‘All’ tab and select Contacts Storage
  3. Click on Clear Data
Repeat for Calendar Storage

4.3 Re-sync the Phone
In Settings/Accounts and Sync/[your GMail account] turn on sync for calendar ONLY.
Wait until the sync has occurred and check that all appointments have been re-sync'd. Leave it for a bit to see if the original error re-occurs. This will establish if the error is with a calendar entry or a contact one.
When you are sure the calendar has sync’d and the error hasn’t been thrown then try syncing Contacts. If it throws the error now then you know it’s a contact that’s the problem.

Alternative Solutions for Re-Sync
Try only syncing some data e.g. only some contacts: in GMail you could move the majority to All Contacts (as only ‘My Contacts’ are sync’d) or export all from GMail to a local file as a backup then delete some (eg B onwards).

If you have any problems or questions please get in touch.

02 January 2012

Small Businesses and Roaming Profiles

[Update] Since writing this I have fallen out with Roaming Profiles and would suggest you DO NOT USE THEM, as per the comments below they are not robust and do not fail gracefully. See my post on Active Directory Users for more information on how I would recommend setting up users on your Active Directory.


Many small businesses might be running Active Directory (see related post) but are not using roaming profiles. It isn't hard to setup, just a bit fiddly and it makes a lot of sense.


The Advantages
I have seen a lot of bad press for roaming profiles on the web but sometimes they are relevant: when users 'hot-desk' i.e. change machines a lot. Users are not bound to one machine but instead exist as entities on the network. Logging in from any machine provides the user with a personalised experience not just in terms of permissions and network drives but also their own folders, files and settings e.g. desktop background.
With file synchronisation all their files are keep in sync between the local computer and the server, so even if the user takes their laptop out of the office they can continue to work with their files. When they return or are able to log in remotely their files are automatically synced back to the server.
One of the criticisms made of Roaming Profiles is the login speed. This is usually because the user’s files are copied on login and logout. The best solution I have found to this is to map the user’s file folders to server locations. I have blogged about this here. In addition the offline files can be moved to a separate (local) drive which can help reduce the load on the local machine’s system drive.


The Disadvantages (The Dark Side of Roaming Profiles)
On the down (dark) side I have witnessed some ‘strange’ behaviour with Roaming Profiles. e.g. a new user setup in the same way as others who didn’t have access to network shares or even have explorer or IE in their start menu. Another where the profile became corrupt (probably in this case due to power outage on logout) and would no longer log in. In my limited experience this sort of situation with a profile is very difficult to debug and I’ve found the best way is to just create a new profile. This is ok if you have an administrator handy and all the files backed up but not so much if the admins are not available or the files are specific to and only located in the profile. For me though on balance the advantages still outweigh the potential flaws.
If you are using XP and Windows Server 2003 be warned that there are inconsistencies between that combination and the latest versions (Win Server 2008 and Win 7 as of writing).


An Alternative
A alternative to roaming profiles would be to use Active Directory for the authentication, without roaming profiles but with with personal folder redirection to a network share and offline files… which is part of the way to roaming profiles but easier to manage and more robust particularly if your workers don’t hot desk. I haven’t tried this method however.
See my related posts on: Active Directory; Active Directory Folder Redirection; Personal Folder Redirection; Moving Offline Files