Sunday, March 12, 2017

Escape from Outlook Notes - export as text files, import into NvAlt or other

Back in 2010 I wrote Gordon’s Tech: Escape from Outlook Notes - ResophNotes, Simplenote for iPhone and Notational Velocity.

Seven years later ResophNotes, Notation Velocity (I now use nvAlt), and Simplenote are still around — despite lack of a revenue stream for any of ‘em. Not only are they still around, but it’s still possible to keep notes in plain text or RTF — which is as future proof as computing gets.

They are still around — but not in great health. ResophNotes was last updated in 2012 or so and it is donation ware (always was). Simplenote was purchased by Automattic (WordPress) and is now open source and apparently run as some kind of charity operation [1]. nvAlt is ancient but Brett Terpstra recently updated it to run on Sierra (a notoriously buggy version of macOS).

These apps are old and kind of worn — but so am I. So we’re a good fit. 

Recently I had another set of Microsoft Outlook Notes files to move to Simplenote. Talk about old and kind of worn! Outlook Notes is old, odd, and useful. It’s a winner in a category of one. Functionally it’s a lot like Simplenote — though you can’t print from Outlook [2].

The problem with Notes isn’t that it’s old and odd, it’s that everyone has given up on it. Microsoft tries to make it invisible. Apple dropped support for Notes sync via iTunes/iCloud — though I think Exchange sync may still work. Google ignores them too.

Which is why I needed to again move a data set of out Outlook Notes. I think export to Outlook CSV them import to ResophNotes is still the best bet. From there to Simplenote and from Simplenote to nvAlt, etc.

There’s another way to go though. You can use VB to script export from Outlook to c:\notes:

Sub NotesToText()
    
Set myNote = Application.GetNamespace("MAPI").PickFolder
  
For cnt = 1 To myNote.Items.Count
        
noteName = Replace(Replace(Replace(myNote.Items(cnt).Subject, "/", "-"), "\", "-"), ":", "-")
        
myNote.Items(cnt).SaveAs "c:\notes\" & noteName & ".txt", OlSaveAsType.olTXT
   Next
End Sub

The key thing is this script creates file names with the note title. It’s not a perfect result because the top of each file looks like this:

Modified: Thu 1/12/2017 2:36 PM

accidents and injuries

In this case ‘accidents and injuries’ becomes both the file name and the third line of the note. The “Modified: …” bit is just annoying. I suppose it could be removed using regex and a text editor that can iterate over a set of files … or script the removal.

I imported the plain text notes into nvAlt where they got the title from the file name so it looks something like this:

accidents and injuries

Modified: Thu 1/12/2017 2:36 PM

accidents and injuries

A bit of redundancy in there, and, of course, the Modified string is still around.

Overall this doesn’t work quite as well as the ResophNotes method, but it’s helpful to have options.

- fn -

[1] Automattic recently released a redo of the macOS Simplenote client. I haven’t tried it, but I hope it fixes the perennially broken search of the current client. In any case, Simplenote is not dead yet.

[2] Outlook 2013 broke Notes by essentially removing the list view — I think this might have been fixed in Office 365.

Update 3/13/2017

Speaking of ResophNotes, the current version has an impressive set of import options. Outlook CSV, Toodledo Notes CSV, text files, single file with note separator …

ResophNotesImport

I donated years ago, time to send another donation.

Saturday, February 25, 2017

Things I learned connecting my upgraded Comcast modem (Arris TG1682G)

Comcast sent me an email offering a modem upgrade that would enable higher speeds. I figured I’d have to do it sooner or later so I accepted the offer. Higher speeds would fit with Comcast’s “pay to play” network non-neutrality strategy [1].

I got things working, but it was a bit of a cluster. Comcast tried to make this self-serve, but they didn’t quite hit the mark.

I’ll skip the boring details of things that didn’t work and chat advice that was misguided and just list the useful bits I wish I’d known:

  1. I replaced a simple, compact wall mounted ARRIS CM820A/CT (no wifi, coax in, ethernet out) with a much larger standing ARRIS TG1682G (download manual from link. Has 4 ethernet, VOIP phone, wifi, xfinity hotspot).
  2. You can disable the WiFi and the xfinity hot spot and you can run it as bridge or router. See below.
  3. XFINITY support can remotely configure changes, but they can take hours to be implemented. I’m guessing there’s some sort of slow queue.
  4. The TG1682G ships with two high quality coax connector cables. My original Comcast installer had trouble with excessive signal strength on the original device and installed an inline damper (resistor?). I reused that cable.
  5. You have to activate it before you use it. Even after all lights are green and it seems to be on the Net it’s really not. It’s locked out by Comcast until you connect to the device (wifi or ethernet) and navigate to xfinity.com (if that fails, try http://register.xfinitiy.com). You should see an activation prompt. The ’text code’ method didn’t work (message arrived much later) and the login method failed too. I entered my account number and address. You have to accept a new web services agreement. I don’t want to know what I agreed to. 
  6. Once it’s activated go to http://10.0.0.1/ to configure the device using credentials of un=admin and pw=password (yes, “password”). You will be prompted to change your password. I suspect 99% of users don’t because the standard setup skips this step.
  7. From the web interface you can disable wifi (I do wifi via Airport Extreme), adjust firewall, and go to bridge mode. For now I let it in router mode (so I have two firewalls - Airport Extreme and Arris). I don’t use P2P so I upped the firewall to standard security
  8. To disable the XFINITY “hotspot” service (used to provide roaming wifi services to their customers) you can use the xfinity app on your iPhone or go to https://customer.xfinity.com/#/settings/internet.
I pay $80/month for Performance 25 Internet with Blast Pro; allegedly 200 down and 10 up. To test I connected by Gb ethernet directly to the router and  http://speedtestbeta.xfinity.com gave me 238 down and 12 up. Which is what I pay for, but not faster. Maybe the higher speeds are coming?
 
- fn -
 
[1] Shortly after the start of Crisis-T Comcast capped our network capacity at 1TB/month. The timing might have been coincidence, but maybe they were waiting for the end of net neutrality.  Carriers do bandwidth caps so they can extort funds from media partners (ex: Netflix) who pay to be excluded from the cap. Higher speeds make economics sense then, because they enable more media consumption.
 
Update 3/12/2017
 
A few weeks after I’d installed the Arris a comcast technician came by my home with a new inline filter. According to this gentleman the new Arris modems chat with each other and this was somehow unwanted.
 
Knowing Comcast this all sounds ominous. On the other hand, I don’t see how a dumb filter would block a typical digital signal even over analog cable wiring.
 
After installing this additional filter I had no net service. I had to power cycle the modem and wait about twenty minutes to restore service.

Saturday, February 04, 2017

Samsung sells a security cam DVR, but not a TV DVR.

I’m old enough to remember when it was inexpensive and convenient to time shift football games. In the US and Canada that died with the analog to digital conversion. In some other countries there’s push-button record to USB from every TV, but not in the US. (I blame a VW-diesel class conspiracy, we now know those can happen.)

Periodically I look to see what’s sold without a monthly fee. Today Amazon pointed me to a $140 Samsung security cam DVR. There’s no tuner of course, so it can’t be used to record OTA TV.

The time-shifting story seems a small thing, but it convinced me markets don’t work the way people imagine they work. And the world doesn’t work the way I once thought it worked.

Saturday, January 28, 2017

My cheap Roku TV records up to 90 minutes of OTA TV

My new $160 32” 2015 720p Roku TCL TV records up to 90 minutes of OTA TV. This “Live TV Pause” was added to Roku OS in Nov 2016 — just 3 months ago.

With a 16GB+ USB storage device you can pause OTA TV for up to 90 minutes. I used a USB thumb drive I wasn’t making much use of — easy setup and it works well.

Of course what I really want is the lost ability to time-shift OTA TV without paying a monthly fee. Like we used to do routinely in the 1980s [1]. If Roku added that in a future OS update they’d make me a crazed fan boy.

For now they recommend Tablo (requires $5/m guide?) along with the Roku Tablo Channel.

A few other notes on this ultra-cheap TV:

  • Given its size and viewing distance the 720p resolution seems to satisfy my undiscriminating family. (I rarely watch TV myself.)
  • When Roku dies it will probably die too. It needs Roku and a Roku account for initial configuration. It claims a credit card number is required (#$$%!) but it lies, you can skip entry. Which I did.
  • Until it’s configured, which requires Wifi and a computing device of some kind, it’s useless.
  • The channels include Spotify. I have an analog jack from the headphone out to my 32y+ stereo and my playlist sounds great. Really unexpected benefit.
  • It has RCA inputs so I can use my old DVD player (otherwise I suppose I’d use the XBOX and HDMI input).
  • It’s surprisingly easy to configure and the menus are well designed
  • It has the simplest remote in the industry
  • There’s an iPhone app that you can use instead of the remote.
  • Wirecutter liked it (why I bought it really) even before they added the Live TV Pause.
Like the WSJ review said, it’s an interesting combination of software elegance and ultra-cheap Chinese consumer goods.

[1] The lack of consumer resistance to the end of convenient low cost OTA TV time-shifting now seems an early warning of Trump susceptibility.

Thursday, January 26, 2017

Upgrading Office 365 from Personal to Home - it could be easier

I like Office 365 Personal. The Mac version has bugs of course, but it seems to improve with each incremental release. For $70 a year I have a version running on my Mac and a version running in a Windows 10 VM (in theory it only installs one either 1 Mac or 1 Windows machine, but in practice it seems to allow both at once). The cost seems entirely reasonable to me. There’s little data lock because so many apps read and write (more or less) Office files. It’s the kind of subscription software I love.

So I didn’t mind when I had to get another license to cover my son. I figured I’d just upgrade to Home. 

Except it’s quite unclear how you do that. This 2015 article suggests there’s a bit of an underhanded trick to it: How I upgraded Office 365 Personal to Office 365 Home for $10. That’s sort of how it works except it’s as designed, it’s not a bug or trick.

I had a month left on my Personal (1 machine) subscription. I bought Home (5 machine) for $10/month (renewable). MSFT switched my remaining month from Personal to Home. Then a month from now, it was to start charging me $10 a month. In MSFT parlance the subscriptions “stack”.

I suppose the trick deal is to buy a year of Personal, then immediately get a $10/month subscription to Home. Then you’d get a year of Home at the Personal price.

In my case it took a call to support for me to understand what had happened. Microsoft could improve this process. Once I figured it out I switched from $10/month to $99 a year. That switch was easy — and MSFT threw in a free month (standard behavior). 

Saturday, December 10, 2016

Delete all images from iPhone: there is no efficient method if you have iCloud Photos enabled.

There is a lot of incorrect web advice on iPhone image deletion. Some of it is dated, some of is recent regurgitation of old methods that no longer work. None of the articles I found differentiate between the behavior with iCloud Photos enabled or disabled.

If you have iCloud Photos enabled there is no efficient delete method from the iPhone. That’s because Apple doesn’t want us to think about photos being on a device. Devices are only temporary stores; the true home of a Photos is in iCloud. 

You can't use Aperture to delete after import. You also can’t use Image Capture (at least not from El Capitan). Aperture will offer the delete dialog but they will remain. In El Cap Image Capture does not show the delete option. I don’t believe Photos.app on Mac or iCloud will allow one to delete images that are ‘temporarily’ stored on a specific device — that really doesn’t fit Apple’s photo model. Again, the true home of a Photo is iCloud - device residence is a form of transient cache.

From the iPhone you can view the all photos album, scroll to bottom, select an image then slide up until all are selected, then delete. Apple doesn’t offer a delete all option because it knows iCloud Photos is confusing and, given half a chance, people will delete their entire photo library. Note this is only a first stage delete, you do this you have to go to recently deleted and empty that as well (“trash” equivalent).

With iCloud Photos disabled delete works from both Aperture and Image Capture.

I have experimented with using photo stream sharing from Aperture and iCloud Photos from Photos.app. It’s awkward and I periodically need to reenable photo streams in Aperture, but it has worked. I’ve decided it’s not worth the delete complexity though. For now I’ve turned off iCloud Photos and I’m back to old school wired transfer form phone to Aperture. I continue do iCloud photo stream sharing from Aperture and I subscribe to those on my iPhone and Aperture.

PS. With iOS 10.1.1 I saw some quite odd behavior after I disabled iCloud Photos on the iPhone. Even though Photos.app showed no images Image Capture showed many. I had to do a forced restart of the iPhone (deletes some caches) to clear out those ghost images.

Saturday, December 03, 2016

iOS 10 bluetooth problems: repairing with Pioneer DEH-X6800BT

After the iOS 10 update I lost bluetooth connectivity to my Pioneer DEC-X6800BT car stereo. I tried the usual remedies.

I think the real fix was initiating connectivity from the iPhone side rather than the Pioneer side. The DEH-X6800BT was never able to find my i6, but the fine print in the manual said the phone might see if it if “Visible” was enabled. I confirmed “Visible” was “On” for the Pioneer, the iPhone saw it, the confirmation number appeared on the Pioneer, I accepted that … pairing resumed. Now I’ll see how well iOS 10 car park detection works (requires bluetooth connection between phone and stereo).

Other things I tried (maybe they helped?):

  • Usual wipe/delete connections on both sides.
  • Reset Pioneer back to factory mode (not in manual, had to Google, trick is to power off, then push the menu button and look for reset).
  • Reset network settings on iPhone
There are firmware updates for some Pioneer phones but not for the X6800BT. The stereo has an odd feature — if you cable connect an iPhone (any cable, don’t need their cable!) it will also Bluetooth pair transiently. Handy for phone of another family member.

Incidentally, I really dislike my DEH-X6800BT. Overloaded controls, too many poorly managed and weirdly distributed menus, processing pauses that make Siri unusable when car manages interaction, awful ideas like color shifting panel and “MixTrax” etc. The manual is seriously incomplete. Get something else.