Today I received the new Surface Pen that I will be using with my Surface 3. Back when Microsoft announced the Surface Pro 4, they also announced the new pen, which works with all Surface models.

Three things attract me to the new Surface Pen. First, it has replacable tips that add more or less friction to make writing on the Surface's glass screen feel like paper. Next, the top button on the pen acts as an eraser, mimicking a pencil. Finally, the new pen has one flat edge that prevents the pen from rolling off a table.

The new tips are for me what make it worth buying the new Surface Pen because I write a lot. You get four tips ranging from the least friction (2H) to the most friction (B). The HB tip provides a "medium" degree of friction, and is what ships in the pen, while you get another with the tip set.

The tips come in a holder, color coded and labeled. One end of the holder is the tip extraction tool, it is simply a wide plastic tweezer in which you insert the installed pen tip, press to squeeze the two sides and pull out the pen; the tip remains in the tweezer's grip.

I tested all of the tips, and I think the 2H tip, which has the least amount of friction, is most comparable to the original Surface Pen. When you use the 2H tip the pen easily slides along the screen and feels like you are writing on glass, which of course is what you are doing. To me a 2H tip feels like a rollerball or fine ballpoint pen.

The HB and B (medium friction and most friction) tips feel more like a felt tip pen, and I haven't really decided which I like better. While I clearly feel the difference between 2H and HB tips, I don't feel much difference between HB and B. For now I will use the HB tip.

I did not think that the flat side on the new Surface Pen would make much difference, but I have found that it makes writing more comfortable. Place your index finger on the bottom of the flat edge and you will find the pen more comfortable to hold than placing your index finger on the round portion of the pen.

The original Surface Pen is completely round and has two buttons on one side, one to erase and the other to select. To erase something you press and hold the lower button while scribbling over what you are erasing. With the new Surface Pen, you flip the pen over and glide the "eraser," which is the top button, over the area on the screen you want to erase. One can debate whether flipping the pen over or pressing and holding an eraser button is faster.

The new Surface Pen does have a select button but it is not obvious. Along 90% of the flat side is a raised area that appears to simply provide padding, but you can press in the lowest portion of that pad, which is the select button. If you place your index finger on the lowest part of the flat side (nearest the tip), you slide your index finger slightly up to use the select button.

People who do not use the Pen to write a lot on their Surface will not find the $59 price worth appealing, and I expect most people who already own a pen may not want to pay that much for a replacement. I did find that you can pair multiple pens to a Surface, so I can leave one on my desk in case I lose or forget the one I normally use.

The new Surface Pen comes in three colors, silver, black, and blue, and can be bought at the Microsoft Store. If you write a lot using OneNote, I think you will find the new tips provide a better writing experience.

12/23/15; 03:08:14 PM

My Moto 360 smartwatch is paired with the Moto X and I need to move it to the Nexus 6P. I found on the Internet that one has to do a factory reset of the watch in order to pair it with a new phone.

A factory reset feels like a very drastic thing to do just to simply move a watch from one phone to another. All the devices in this scenario are running Android, why isn't there a simple migration tool? For that matter, why can't I simply un-pair and re-pair the watch just like one does with every other Bluetooth device?

The main issue I have with doing the factory reset is losing my fitness data. I've been using Moto Body, which has an Android app, but no web app, so I want to be sure I have access to my data before wiping the watch.

Fortunately, I configured the Moto Body Android app to upload my data to Google Fit. The number of steps showing in the Google Fit web app matches what is displaying on my watch, so we are good to go there.

I already have Moto Body installed on the Nexus 6P, but it isn't showing any historical data, so while I have Moto Body configured to upload data apparently the Android app doesn't read that data. Very odd.

Ok, I am going to first remove the Moto 360 from Android Wear on the Moto X. Now we will do the factory reset of the Moto 360. Oops, don't have enough juice left on the watch, if memory serves it might need 80% juice to do the reset, I've put it on my Qi charging pad to carry on.

Unfortunately, the watch will not execute the pairing process until it has at least an 80% charge, so I will have to wait a while to pair it with the Nexus 6P.

11/07/15; 04:09:16 PM

You really can't appreciate how thin the phone is until you hold it your hand. Ironically, I think the larger size makes the thickness stand out. The Nexus 6P is not much thinner than my Moto X, yet in my hand it feels thinner.

Given how long large screen phones have existed, I am shocked that there are a lot of widgets that don't allow you to adjust their size. I mostly use 4x1 size widgets, which span the width of the screen on the Moto X but are a little short on the Nexus 6P. Perhaps I am being anal, but it drives me nuts that the widgets don't look centered, and the Google home screen layout does not allow me to manually center widgets.

11/07/15; 03:45:36 PM

My new Nexus 6P arrived this afternoon, and I am in the process of setting it up, but not after a brief panic. Before I swapped the SIM card from the Moto X to the 6P, I popped the Folio case on to the 6P. The case has a real tight fit and I had a real hard time getting it off.

Eventually I was able to push the upper left corner of the bottom part of the case off the phone and work the case off the rest of the phone. Anyone reading this who is planning to use the Folio case on the 6P ought to keep in mind that you won't easily be taking it on and off the phone.

I moved the SIM card from the Moto X to the Nexus 6P and started up both phones. One of the first things you do is set up the finger print scanning to access the phone, I've configured Nexus Imprint to read both of my index fingers. Like everyone says, the fingerprint scan is very fast, when you pick up the phone and place your finger on the scanner, it instantly unlocks.

Got to the spot where the 6P asked whether I was migrating from another Android phone, and if so I could use the Nearby Device feature to transfer settings from the old to the new phone. You tap Set Up Nearby Device in Google settings on the source phone.

The transfer sent my Google account info to the new phone via Wifi, and I was then prompted to enter the passwords for the two accounts that I use. Nearby Device Set Up configures all of the home screens, including widgets, app folders, and icons on the new phone to match your old phone. Icons for apps not yet on the phone are in gray until the app installs.

Right now the phone is in the process of installing all of the apps I use, and this is going to take some time because I have a fair number of apps to install. I wonder whether the app settings are going to be restored, or whether I will have to set them up, such as configuring Facebook and Twitter to log on to my account.

Turns out that you do have to re-configure any app that has a logon id and password, which is a good number of the apps that I have on my phone. It took me most of the evening to casually go through my apps like Facebook and Twitter to go through each one, the process from moving from an old Android phone to a new one is still too long.

11/06/15; 07:31:46 PM

I have Office 2016 on my Surface 3 and use it mainly for integration between Outlook and OneNote. I hope an appointment in Outlook, and then select Meeting, Meeting Notes to create notes for the meeting in OneNote.

When I did this in Office 2013 the new note was created nearly instantly, but now with Office 2016 there is a noticeable delay between when I click Meeting Notes to the note appearing in OneNote. Since I don't have Office 2016 installed on my notebook, I don't know if the delay is due to Office 2016 or Office 2016 on the Surface 3.

10/28/15; 11:57:45 AM

I need to start keeping track of all the issues I keep having with Windows 10 on my Surface 3.


  • Occasionally the WiFi radio "disappears" when suspend the device. The Surface 3 loses network connectivity and when I click the WiFi icon it doesn't see any networks. So far the only resolution is to reboot the device. This issue seems to occur most frequently when moving from my home to work networks and vice versa.


  • Occasionally the touchscreen translates all touches as right-mouse button clicks. Again the only resolution is to reboot the device.

  • Other times the touchscreen does not respond to either mouse clicks or touches, therefore I cannot operate the device. This situation does seem to resolve itself by bringing up the lock screen.

10/22/15; 10:00:59 AM

Installed the Archer C8 router. Now testing the Internet connectivity and speeds.

Tests using Surface3, Chrome, and DSL Reports

  • The basement on the 5 GHz network:

    • Before:

    • After:

  • The dinning room table at 5 GHz:

    • Before:

    • After:

  • The basement at 2.4 GHz:

    • Before:

    • After:

  • The dinning room table at 2.4 GHz:

    • Before:

    • After:

Tests using Nexus 9 and Ookla speedtest app

Tests using work computer, Chrome, and DSL Reports

  • The basement on 2.4 GHz network

  • The basement on 5 GHz network

09/07/15; 01:10:56 PM

Tests using Surface 3, Chrome and DSL Reports

  • The dinning room table on a 2.4 Ghz network:

  • The basement at 2.4 GHz

  • The dinning room table at 5 GHz:

  • The basement on the 5 GHz network:

So, I have slightly faster speeds at 5GHz although the WiFi signal is not as strong. According to Wi-Fi analyzer, the 2.4GHz network is slightlight lower dBm than the 5GHz.

Testing with Nexus 9, using Ookla speed test because DLS Reports keeps saying browser is running too slowly.

Note that the tests on the Surface 3 were done in a web browser via DLS Reports, which is also testing for bufferbloat, while the Nexus 9 tests are done in an app with no bufferbloat testing.

Tests using HP Chromebox, Chrome, and DSL Reports

  • Basement on 2.4 GHz network

  • Basement on 5 GHz network

09/04/15; 11:29:41 AM

I have been hosting my own River4 server on Heroku, using Amazon S3 to store the data files. A year ago when I first set River4 up the Heroku free account did not have the shutdown requirements it has today. Heroku announced the changes to their plans last fall but did not start enforcing them in July.

I had forgotten about the changes Heroku was making until a month ago when I started noticing that my River4 server on Heroku was shutting down randomly unless I kept the River4 dashboard open. Apparently the free service is set up to shutdown if there is no inbound web traffic over a thirty minute span. I didn't have time to work on alternatives, so I decided to just sign up for the monthly hobby account, which at $7 per month isn't too bad.

Over the last couple of weeks I have been exploring different cloud hosting options for a couple of reasons, one being that I have been studying Docker and using River4 as the subject for building my own containers. Another reason is that Dave is working on a refresh to the EC2 for Poets he wrote several years ago, using River4 as the topic for the tutorial on setting up your own server on Amazon Web Service based on a custom image he built, and I did some testing of the tutorial.

EC2 for Poets got me wondering about other cloud services, and whether I ought to move my River4 server from Heroku to one of the other services. Yesterday I looked at Azure and Google Cloud Platform and found that Google has the most competitive compute prices. I figure you can probably run a River4 server on GCP for $5 to $6 per month, which is less than Heroku, AWS, and Azure.

Another, cheaper option, is to buy a virtual server at CloudAtCost. CloudAtCost has several plans, for which you can pay per month, or "buy" a virtual server for a one time charge. Last year I bought a Developer 1 server on which I am hosting Fargo Publisher, which is the back-end to my blog publishing environment. Right now CloudAtCost has a 50% off sale, so last night I decided to buy a Developer 2 server, which has much more horse power than any of the instances I tested on AWS, Azure, or Google.

I figure that while I can run River4 on this Developer2 server, I can also use it for any other DevOps software that I may tinker with in the future. Rather than install Node.js on the server, I have installed Docker to use the River4 container I created. I even went so far as to buy a domain to point at the server, I had my new River4 server running in about 15 minutes, and I have switched my Heroku server back to the free service.

After using CloudAtCost for a year, I am comfortable endorsing the service. My server has been pretty reliable, although there has been some maintenance that has caused me to do some unexpected reboots. The servers I host with CloudAtCost are solely for my use, so there is no real pressure to keep these servers running non-stop.

08/29/15; 04:33:31 PM

My spelunking among the public clouds has lead me to the Google Cloud Platform, where I spied with my little eye the Node.js instance and it's $4.49 estimated monthly cost. The cost is not free, but I think it might be the lowest monthly cost for hosting River4 on a cloud server. Probably the only lower costs are either the "free" node on Heroku, with all its constraints, or the one time purchase of a server at CloudAtCost.

I launched the Node.js instance on GCP and found that it is Debian with node.js pre-installed. To install River4, one can skip the Install node.js portion of the Installing River4 on Ubuntu instructions and start with Install forever, then Install git and finally Install river4, before moving on to the River4 howto, starting at step 4.

  • I am aware that there are also images on Azure, and I am sure on AWS too, that already have Node.js installed as well as Docker. Consequently, the value here isn't so much that Google Cloud Platform has a pre-built Node.js image, but rather that the price to use it is lower than with Azure and AWS.

You will need to open port 1337 in order to access the River4 site, it appears that something (perhaps node.js itself) is using port 80. I haven't done much research into disabling whatever is using port 80. In the Google Developers Console, click Networking, Firewall rules. Click New firewall rule, and enter the fields as follows:

  • Name: allow-1337

  • Description: Allow port 1337 traffic to access the River4 home page (this is optional, you could leave it blank)

  • Network: default

  • Source filter: Allow from any source (

  • Allowed protocols and ports: tcp:1337

Then click Create.

To find the public IP address for your site, on the Google Developers Console click Compute, Compute Engine, VM instances. You will see your instance name listed below a graph showing CPU utilization, and to the right is the External IP address. To access the River4 Home page enter http://[External IP address]:1337 in the address bar of your web browser.

The Google Developers Console provides a button for SSH access to your instance, which opens an SSH session in a browser window.

The GCP Node.js instance is based on the Google Compute Engine f-1 micro instance that can cost as little as $0.0056 per hour per month if you run the instance for a full month. Again, for comparison, the AWS t2.micro instance costs $0.013 per hour, so you can see the compute part of the cost is much lower. I expect there will be additional I/O charges add to the $4.49 estimated monthly price.

08/28/15; 01:38:39 PM

Last built: Mon, Aug 8, 2016 at 4:12 PM

By Frank McPherson, Monday, January 5, 2015 at 11:56 AM.