Showing posts with label technology. Show all posts
Showing posts with label technology. Show all posts

Sunday, September 27, 2020

Things I miss: drag and drop link creation

I've mentioned here a few times that progress is not linear. Howard Oakley has a piece on a related topic today. For example, no application has done text style management as well as Symantec's MORE 3.1 -- which died decades ago. I don't think we'll ever see the like of Apple's Aperture again -- an insanely ambitious app for professional image editing and especially image management. The iPhone is a bit of an improvement over the Palm III, but it took years to equal Palm's task, calendar and note management (yes, really).

Today I mourn one small example of lost progress. It used to be easy to create a link to a web page. You'd click on the something in your browser URL display and drag it onto your web page editor (MarsEdit, FrontPage, Word, some web client editors) and *bingo*, instant link. The page title was the link text, page URL was, well, the URL. I can't do that any more, at least for Blogger (which seems to be in some kind of resurrection lately).

One day ...

PS. Been a while since I thought of FrontPage/Vermeer - Microsoft's 1990s web site manager. It was the Aperture of its day. Very ambitious, buggy, often flawed, but nothing like it now. Parts of it survived into SharePoint Designer, but now that I've mentioned SharePoint I'm spiraling into PTSD ...

Sunday, June 28, 2020

Carbon Copy Cloner was quietly excluding 1Password stores from backup (Corrected: app, not data stores)

This morning's heart attack:

"CCC no longer excludes 1Password by default."

What the fork were they thinking?!

-----------
Update: OK, looks like they did this briefly in 5.1.18 and, even though their language is sadly unclear, it was the the 1Password app rather than the 1Password credentials that were not being backed up. That link lists all the files not backed up, though as of today it's not been corrected for 5.1.19.

So I still have chest pain, but not a heart attack.

Wednesday, June 24, 2020

Python macOS environments for learners in 2020

My daughter is auditing Coursera's Intro to Python class. It's pretty standard stuff, but I was surprised by the development environment. For macOS there's a non-trivial Python install that requires some unix knowledge, use of the Homebrew package manager, dealing with admin vs non-admin user issues, consideration of pyenv, editing the path, and finally installing Python.

That's a long way from the ease of, say, TurboPascal circa 1983.

I figured there had to be a better way, but Google only found me some pro-level IDEs. It fell to Twitter to clue me in to the modern scene. The 4 good modern options turn out to be:
  • Google Colab: absolute easiest and least painful. I believe the Python code executes in the browser, so it's substantially slower than execution directly in macOS.
  • Microsoft Visual Studio Code for macOS: this does require the traditional Python install with Homebrew, but it's a very beginner friendly environment. The Python plugin provides Jupyter support.
  • Homebrew Jupyter: similar to Colab but like Visual Studio is part of the Homebrew/Python path.
  • Azure does Jupyter Notebooks (via @jhovland) at notebooks.azure.com.
Years ago I ran into iPython as a novice environment; turns out it morphed into Juypter.

It's a sign of the times that Google search didn't turn up a blog post with these options. (It won't find this one either, I'm way off Google's radar now.) Once I'd identified the above options however I could do a Google search to find an educational resource that did mention then:

There are many ways to write and execute Python code:

Python tutor (online, visual debugger)
Python interpreter (command line)
Visual Studio Code (editor, good debugger)
Jupyter (notebook)
Google Colab (online, collaborative)
 
During this lab we see all of them and familiarize with the exercises format. For now ignore the exercises zip and proceed reading.

That site is the University of Trento's data science lab course, updated 2019/2020.  The U of Trento was founded in 1962. Reading the wikipedia page it seems to have started out focusing on sociology (and, given the era, was likely a wee bit Left) but now seems to be very tech.

The course material is presumably translated from Italian. It's quite readable though it would benefit from a native speaker updating the GitHub content. Judging by my little test it may be one of the best resources of its kind.

See also:

I came back to Python for course on working with the OpenAI ChatGPT LLM. This time around I used Visual Studio Code with the Jupyter support. I use the default Python PIP package manager but I think Microsoft favors Conda. As of 2024 CoPilot is an option but it is not free.

Saturday, October 27, 2018

An Elgato T2 Hub and USB 3 SSD work pretty well

For 3yrs I’ve used a Samsung SSD (1TB) in a cheap Inatek IDE enclosure with UASP/USB 3 connection to an Elgato T2 dock connected to a 2015 MacBook Air by Apple T2 cable. The Elgato also connects to two Firewire 800 drives.

I realized today that it’s worked quite well for quite a while. Now that I’ve written this it will all go to pieces, but until now — good stuff. My 360GB Aperture library lives on that external SSD and I don’t have any real performance issues with it. I use Jettison to undock when I take the Air with me; I disconnect the power cable and the T2 cable.

Which reminds me of some rant I read today about how the Air is the worst machine in existence and everyone should buy a $400 Windows machine instead. I beg to disagree. The current Air is still a great machine. You may not like the non-retina screen (my eyes suck so what would I know?), but you can buy a nice external display.

The absolute best thing machine Apple could do would be to continue to sell the 2018 13” Air but swap the T2 for T3* and make the display Retina. Leave every other thing about it pretty much the same and sell it for the current price.

*Update: Actually, I’m not sure T3 is so great. Maybe just do the Retina and call it a win.

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, November 26, 2016

Enhanced Google Security: Security Key and Password Alert

Google is tracking a curious uptick in government-backed (Russia, China, ?) attacks on journalist gmail accounts.

They are suggesting two security measures that are new to me - a security key and password alert.

Security Key is a USB dongle (FIDO Universal 2nd Factor) Instead of running Authenticator.app on your phone. It’s less vulnerable to man-in-the-middle attacks, but “Security Key does not work on browsers other than Chrome.” You can buy one from your favorite Chinese manufacturer on Amazon.

Password Alert is a Chrome app that tries to monitor for man-in-the-middle and phishing attacks. I’ve installed it in Chrome on my Mac. You have to trust Google to use it but if you’re using Chrome you’ve already made that commitment.

The Password Alert extension was part of a series of 2015 security enhancements. I’m surprised I didn’t hear anything about it.

Security Key may be newer, I couldn’t find much about it. I think Google is going to have to start selling these. Why would I trust a Chinese vendor?

Monday, April 18, 2016

Scrivener - the book compiler. Review.

I'm using Scrivener to write Smartphones for All - Using iPhone and Android to build independence for atypical minds.

It’s brilliant software. On my Mac it uses the same text editing engine as TextEdit, including the same RTF format. So, like the Nisus Writer I once used, my writing is indexable by Spotlight and almost as future-proof as plaintext. (I thought RTF was dead. Guess not.)

Apple’s text engine has its share of bugs and limitations, but for basic text work it’s good enough. The primary weakness is table layout, but so far I’ve worked around that.  Scrivener manages the tasks TextEdit can’t do, like page references, footnotes, internal links, document structure and the like.

The real brilliance though is how Scrivener merges concepts of software code management with the traditional word processor. It treats text blocks as though they were blocks of code, including simple version management and “compiling” to multiple output formats (PDF, EPUB, etc). Rather than use some horrid database store, Scrivener leverages native Mac file structures to manage its data. Extra brilliance points for that.

On this compile framework Scrivener layers a rich set of power user features. The latter, I admit, can be overwhelming. I recommend learning the basics from the initial tutorial, then start writing and learn additional features over time.

All software dies. One day Scrivener will die too. But with the ability to complete to multiple formats, and the use of native file system semantics and RTF data, Scrivener is as future proof as any power tool can be [1].

[1] Scrivener’s design is a guide to how photo management software should be built. Please, someone do this.

Thursday, December 25, 2014

Using TruFon to create a local Canada number that forwards to US Google Voice

My 93yo father is a resident of a long term care facility in Montreal. It’s been working well for him, but it’s not easy to reach him. He hasn’t wanted a phone in his room, their landline phones are ridiculously expensive anyway, and he can’t manage a cell phone.

This wasn’t a terrible problem until yesterday. For most of the past few months he’s used a local-only phone to call my my mother. When she died last week we were all local, so it was easy to reach Dad. Now, however, the 3 kids are all back home.

That’s when I realized there was no way to reach him, and no way, short of an emergency, for him to reach us. Too bad I was back in Minnesota when this occurred to me. Not to mention it’s, you know, Christmas.

Obviously he needs to get a phone in his room (like it or not, alas) - but that would still be expensive to use long distance and it will take weeks to install. So I went looking for a local number he could use. 

Not surprisingly, given the Comcast-like state of all Canadian telecoms, you can’t get a Skype number in Canada. You can, however, use any one of about a dozen VOIP / DID Service Providers (DIDSP) to create a local Montreal number that forwards to a US Skype account or to any phone.

After a quick scan I divided the Canadian DIDSP market into short lifespan bottom feeders ($2-3/month), business market vendors ($20-$40/mo) and a few in the middle. Based largely on the plausible pricing, cancellation policy [1], and web site quality I chose VirtuFon and signed up for a $11/month Montreal number with 1,000 metered minutes and a 10 day “trial period” (can cancel without fee). [2]

I had to provide a credit card number, so I used my AMEX card — largely because of their fraud tracking and customer support. With most online vendors one has to assume credentials will be stolen — I doubt VirtuFon can withstand a modern hack.

It took only a few minutes to create a local Montreal number that forwards to my Minnesota Google Voice number. The number was immediately active with quite decent sound quality and latency. I was able to pass it on the nursing station at my father’s facility; about two hours later my cell rang. His call went from my Montreal VirtuFon DIDSP number to my Minneapolis Google Voice number to my Saint Paul iPhone.

It was a good conversation.

- fn -

[1] "Service is provided on a month-to-month basis. You are not obligated to a multi-month contract. To cancel service, simply click on the [Add / Cancel Services] link in the account management area of this website.” 

[2] VirtuFon’s marketing emphasizes using them as a gateway to Skype, which costs only $6/m. For various reasons I wanted to use my GV number instead.

Saturday, May 17, 2014

ViewTV At-163 OTA Digital TV recorder - my review

Remember the great American Digital TV Transition of 2008? Our elected representatives explained that while some would see more channels and far better image quality, those who did not have “a properly oriented, high-gain antenna mounted 30 feet in the air outside” would lose free access to broadcast television. They told us that, sadly, a combination of patents, the DMCA and the burgeoning power of cable TV would vastly increase the cost of time-shifting broadcast (OTA) television. They hung their heads and admitted they were completely corrupt …

Ok, so they didn’t say any of those things. We had to learn most of them the hard way, though we knew about the corruption bit. I’d mostly ignored television from 1997 to 2013, so my light bulb only lit up when I bought a Samsung Smart TV and learned that the USB digital output was disabled [1]. Suddenly, everything made sense.

Ever since then I’ve been looking for a sane way to record OTA TV without devoting my life to hacking MythTV. Sure, we could afford to pay the monthly Tivo tax (which presumably goes to the cartel patent holders), but this kind of thing bugs me.

Alas, this is harder than you’d think. A legitimate manufacturer is going to be hit with the patent/cartel tax — turning a $50 product into a $600 (over 5 years) monster. There’s no Chinese market to draw from, I assume they just stick a USB device in their TVs. There are several startups that do sort-of-interesting time shifting things with OTA DTV, but none of them connect easily to, you know, a television. Presumably to dodge the cartel they have to connect to everything BUT a television (so you use AirPlay to get signals from an iPad to a TV).

The only source is going to be shady, something from China sold under a range of disposable brand names for a few months at a time. That’s what I found on Amazon, the home of things that fell off the back of container ships. Alas, the quality was incredibly low — it’s easily the crummiest product I’ve bought in decades. Even so, I was tempted to keep it. It kind of worked…

Amazon.com: John G … s review of Viewtv At-163 ATSC Digital TV Converter…

This is a FASCINATING device in so many ways. It is pure Chinese manufacturing of absolutely the lowest possible quality (one of the four base pads was missing), but it’s only of interest to the US market. The rest of the world doesn't need this -- they simply stick USB devices into their TVs and record directly. It's only in the US that a combination of cartel patents and corrupt politicians makes recording of OTA TV extremely expensive and difficult. When we buy a Samsung TV, for example, the recording features are disabled.

In China this is probably used to convert digital signals for the few analog TVs left in China. It probably costs $10 to make, including what I assume is a very low quality (risky!) internal switched power supply (no power brick). In the US it's sold, somewhat covertly, as a low cost no-subscription simple digital TV recorder.

The good news is that if you ignore the manual, and work through the incredibly crude displays hacked to to show English labels, and convert from the strings on the weird remote to the screen, it's not hard to configure this. You can even set up the antenna as pass-through so the signal goes to the ViewTV and is also available for TV input. It does record (!) and you can play back the recording. It even shows a list of available TV shows.

The bad news is that the tuner in my device sucked. OTA Digital TV barely works in many US settings -- we need top notch tuners. The one in our Samsung Smart TV gets barely enough channels to meet my son's sporting thirst. The tuner in this device missed most of them.

I also worry about the internal switched power supply. This ships with all the usual inspection/certification labels, but I'd be amazed if any of them were legitimate.

If only they'd shaved their profit margin a bit. It costs nothing to build what's in this box. We actually own a decent (Chinese made of course) Digital TV converter box that cost $45 — it’s much higher quality than the “ViewTv" with a far better tuner.

I hope someone else will do that -- but we have to remember the reason these features are disabled from US TVs. Anyone doing this properly is going to be hit by the US OTA patent cartel -- and forced to charge high subscription fees.

There may not be anything better in the near future. So if you have a strong antenna and good signals, and you're feeling lucky, it's worth a shot. Just be ready to return, and if you're feeling nervous leave it unplugged when you're not using it.

I tried to make this thing work, but the tuner was just too crummy. I had to return it.

Sniff.

- fn -

[1] The only explanations I’ve read are something like "Disclaimer: Only European TVs have USB recording. US models have the feature disabled due to legal issues.” I presume the “legal issues” are DMCA and patents. Explaining the full story would take a real journalist — would be a fun article for, say, The Atlantic. Might run into some dangerous characters though…

See also:

Update: I updated my 12/2013 Samsung Smart TV post with notes on hacking it to restore recording functionality.

Friday, November 15, 2013

Trello - an orientation review

[This post was first written in 2013 and then revised in April 2016.]

When Emily said she was interested in Trello, on a day when I was at home tending to a recovering child, I leapt at it. She's done a fantastic job with Google Calendar, but she'd never found a task/project app she liked. Indeed, she has a bit of an allergy to them. Trello, it turns out, has a certain arts and crafts following.

That's a bit surprising, as I know Trello as a corporate-focused project and work management tool from Joel Spolsky's geek-loved Fog Creek software. It never occurred to me that Emily might like it.

I've used a number of Task and Project tools myself; particularly a combination of Appigo's ToDo.app and the weirdly named ToodleDo web service [1], but Trello is a bit of an odd duck. So I put together these quick notes for myself - it's a geeky introduction to Trello.

Service properties and revenue model

Trello uses a freemium web model with Android and iOS apps. It is easy to cancel the service and it passed Gordon's Laws for Software and Service Acquisition. You can use Google authorization or a local account. Google access requests are Contacts only - which is plausible.

Revenue comes from corporate sales, corporate buyers pay $200/year for  admin tools, access restrictions, bulk JSON export, Google Apps org directory integration. Non-paying customers presumably encourage corporate adoption. They've added a $5/month option for "stickers" -- if they made this $20/year I'd pay just to support them. I worry about their revenue and longevity.

How Trello is put together

Cards are the equivalent of Tasks in Toodledo or ToDo.app and they are the essence of Trello. Not all of Trellow web features are available on the iOS app, but most are. Here's how Trello works:

  • Organization: A collection of Members and of Boards. Organizations are optional, you can ignore this.
  • Board: A named collection of Lists. Boards do not have dates but they are a good match for Projects especially if there's a collaborator. You need at least one Board.
    • type: individual or organization
    • membership (for org)
    • visibility: public/private for individual, for org is member only/org wide
  • List: A ranked collection of Cards. Lists do NOT have dates. You can move cards between lists. A typical use of a List is state tracking - To Do, Doing, Done. Can also use a List to hold notes, ideas, etc (but I'd use Simplenote for that).
  • Card: A task or, if you prefer, a lightweight project. Has a Name, a single Due Date/Time, Assigned person and... 
    • Description
    • Label - color icon (example, priority)
    • Checklists  - these items don’t have a due date or a responsible person.
    • Attachments - photo/video on iOS, on web can be Google Drive, Dropbox, Computer
    • Subscribe option
    • Comments (@ for autocomplete members)
    • Activity record (read only)
    • Links (can reference a card)
    • Card’s don’t have a done or completed attribute. That’s a problem (see below).

Lists, Cards and Boards can be copied, so you can set them up as a template. Lists enable bulk operations on cards such as archive all and move all. Cards and Lists can be moved within the hierarchy.

Trello has "Power-Ups" that do things like Display Cards in Calendar format. The Calendar works well and it allows drag and drop between dates. The Calendar is supposed to have a feed that can be subscribed to from Google Calendar, but it didn’t work when I tried it. [Update 2016.04: The Calendar feed works well now, I use it to integrate project work into Google Calendar.]

Comparison of Trello to a traditional Task app:

ToDo.app/ToodledoTrello
List/Project Board
Completed (Yes/No) List (state)
Task Card (but no done status [2])

Keyboard Shortcuts

  • D: card date picker
  • L#: Card Label (ex: urgent, etc)

Teams and Boards

If you’re using free Trello then you want to have a single Trello account for each Person — Trello.app for iOS doesn’t support identity switching. A Person (Trello account/profile) can be a member of multiple Teams. Each team can have multiple Boards, but a Board has only one Team. A single Trello account (Person) can be associated with multiple Google IDs.

So the relationship between a Person and a Board is controlled by their Team membership. In Trello web or iOS one changes Teams to see Boards that are Team specific. (This is more clear in the app than in the web version.)

Example of Trello Lists to organize Cards

These Lists resemble states in ToodleDo. I'd personally use Labels to indicate importance rather than create a List and the use of lists to reflect a schedule seems odd...

It's interesting that these two are using Lists to organize by Time instead of moving Cards around the Calendar or assigning Dates. Their organization can be summarized as:
  • Inbox: Cards that are new, not yet sorted
  • Scheduled/Active: Today, This Week, Later
  • Blocked/Waiting
  • Done (which is archived)
I’ve done Trello with a list for an Agile backlog and a list for each iteration of a release. I’ve also implemented it with a backlog, an active list and a ‘done’ list.
 
The one big problem with Trello - no Done status
I like products that strongly represent a coherent philosophy of a willful developer. The downside of these products is said dev can dig their heels in and stick with a dumb decision. That’s how I account for absence of a “Done” status for Cards.
 
Instead of “Done” you are supposed to Archive the card. That would be ok if the Archive were a special list in which Due Dates didn’t make Cards turn radioactive, but the Archive UI is buried away. You can’t see the course of a project if you use Archive. (See workarounds.)
 
If you don’t use Archive you can use “Done” list to hold completed Cards. Or you can keep them in place and use a Label or other attribute to indicate Done; but if you don’t remove the Due Date the Card will become radioactive when it’s post-due.
 
A lesser problem with Trello - no local backup, no export
At least in the free version you can’t create a local XML backup of a Board, and you can’t create any local archive store representing project history.
 
Impression
 
Emily has used Trello as a basic task manager. In April 2016 I started using it for my work and personal projects and I rewrote this review. I’m not satisfied with any project management tool I’ve seen, but Trello is my choice at this time. 
 
Trello is far less complex/powerful that RallyDev’s Rally project management tool. That’s not all bad though — Rally got very complex and hard to use over the years. Trello is a better tool for personal and small team projects. It doesn’t support assigning Card Checklist Items to individual persons, but that’s not a big issue. The user name can always be added to the checklist item.
 
I’d like to see an improved version of Trello that would be less costly than the business version. That version should fix the weird lack of a “Done” behavior and it should allow one to backup Boards locally and export a PDF archival record of Board content.
 
- fn -
[1] Nobody would combine those two — that was a historic accident. I later moved entirely to Appigo ToDo Cloud.app. ToDo Cloud has project management features that are almost good enough, but I ultimately decided to keep those for smaller mini-projects and use Trello instead. Appigo has a similar problem with archived/old tasks and longitudinal project records.

Sunday, June 23, 2013

Post Google Reader: Feedbin, Newsblur, Feedly - all disappointing at the moment

I'm scrambling as usual, so no time for a full post. I've been running through Feedbin, Newsblur and Feedly today. I paid for both Feedbin and Newsblur, and Feedly is free.

My biggest disappointment is Feedbin and Reeder.app -- the sync isn't working! Feedbin says I have 270 unread, Reeder.app says 1086. Reset didn't help. Next disappointment -- both Feedbin and Newsblur didn't get my Google Reader custom names for feeds. Only Feedly picked those up.

Newsblur (open source!) is far too social. It insists on showing me comments as I try to read my feeds. It shares to Pinboard in the web app, but not in the iOS app. No Reeder.app support. Newsblur is strict folder hierarchy - no tags, no acyclic graph organization. No URL sharing. Newsblur has best performance and most features, but so far it's not right for me. I'll try again in a month or so.

Feedly has the very irritating plugin model and no Reeder.app support. It's my emergency fall back.

Feedbin has URL type share to pinboard; that's enough for me since I use Pinboard tags to control IFTTT routing to app.net, twitter, and kateva.org/sh. Feedbin's tag model is a much better fit to my GR org than Newsblur's hierarchy. That's really big for me. I'm very glad I can now 'hide' all tagged feeds. Renaming feeds are unsubscribing is very awkward; I'd argue there's a bug with that UI. (Tip: rename feeds you don't want to 'z', then when all done with name repair save, then select all 'z' then remove.)

Ugh, this will be a hard transition. There's still no true heir to GR's basic functions, not even counting all the abandoned features it had.

If not for the Reeder sync problems I'd go with Feedbin, but that's a bad fail. For the next few days I'm happily back to Google Reader (7 days left!), I'll see if Feedbin's sync bug clears itself.

Tuesday, May 21, 2013

Is Brother running a scam with its HL-2270DW printer and TN-450 toner cartridge?

I think with the HL-2270DW  and its TN-450 toner cartridge Brother has figured out how to apply the ink-jet business model to the previously cost effective laser printer. The printer may be cheap, but the toner isn't. At our current use this $150 printer will cost us about $450 a year to operate. Using its default settings it's a good printer for very occasional use, but a poor printer for regular use. Wirecutter's recommendation is undeserved.

I'll describe our experience, two workarounds you need to know about, and why you should consider a different printer.

Our experience is that in printing 1,459 pages we have completely consumed the 150-200 page "starter cartridge" that comes with the printer and almost two "2,600 page" ($45) TN-450 cartridges. We're getting about 600 pages out of the "ISO/IEC 19752" 2,600 page cartridge.

Screen Shot 2013 05 21 at 7 01 16 PM

This is quite different from our previous MFC-7820N and 2140 printers. At first I thought Amazon had shipped a defective or counterfeit cartridge, but I had almost exactly the same results from a different supplier. Both packages had Brother's standard hologram; I don't think they were counterfeit. This printer simply uses a lot of toner when printing text pages with images, and Brother charges a lot for its matched cartridges.

Ah, but who uses a b&w laser printer to print images? It's a kid thing in our house. It means we're running into this problem a lot sooner than most, but if you found this page via Google you may be seeing a lesser version of it.

Did Brother design this printer and cartridge to consumer large amounts of toner, or was it a happy accident? I don't know, but it doesn't matter. If you're using this printer for anything more than the occasional letter you need to read the manual [1] and turn Toner Save on.

toner save on

With Toner Save on, and Replace Toner Continue, toner consumption starts to resemble other low end printers. The print quality is lighter but tolerable.

 Replace toner continuous

Really though, if you do anything but the most occasional printing, you shouldn't buy this printer. The 1,500 pages we've printed (I just printed another) mean we're already at 12% of the 10,541 page drum life. We'll be finished with this printer in about 16 months. What a waste!

So, if I were to do it all over again, what would I buy? I'd love to say I'd get something from HP or Samsung or anything else, but the truth is the home printer business is dying. Brother was always the best of the lot, and even though this printer is a bit of a scam the competition looks even worse. Sadly, I'd probably buy another Brother, but one made for heavier use.

The Brother I recommend is HL-6180DW ($230); its TN-780 is "12,000" pages ($105, so half the page cost of the TN-450 even if this Brother also burns toner) and the drum life is 30,000 pages. It also ships with a standard "3,000 page" cartridge instead of a 200 page "starter" cartridge. Over the cost of a year, for even moderate users, the HL-6180DW is better and cheaper than the HL-2270DW. Buy that one instead. [2]

- fn - 

[1] If you don't want to read the manual or install Brother apps, the quickest way to the web interface is print preferences, open queue, choose settings, click on Show Printer Webpage:

Screen Shot 2013 05 21 at 7 01 32 PM 

[2] Brother has an HL-5450DN that ships with a 3,000 page cartridge, has a 30,000 page drum, and costs $150. I was insane to listen to Wirecutter and buy the HL-2270DW. I hope I've learned my lesson.

Saturday, February 02, 2013

Sharing a credential store for a family (or small business) - and the end of the personal database

I have managed family credentials and web site data in a FileMaker database since 1996 [1]. That database now holds over 1600 records, of which at least 1200 are historical (dead accounts, obsolete urls). The historical items don't get in the way as much as one might think, and I kind of like this mini-history of the net.

This repository has survived many technology transitions. Over the past 10 years it has more-or-less synchronized with credential stores running on PalmOS and iOS. At some times I've used FileMaker sharing (web publishing and the IP based fmnet: protocol) to allow my wife to access and edit both of our credentials too. (I am too boring to have any secrets, and it's critically important that she have credential access if I'm unavailable -- as in dead.)

Alas, all things must come to an end. FileMaker and its half-baked replacement "Bento" are both dying. Filemaker Go, which I'd like to use on my iPhone, doesn't support true synchronization. Bento is supposed to have some synchronization capabilities with iOS clients, and there's some form of encryption on the desktop version, but I don't know of anyone using this product. Bento feels stillborn.

So while I could probably cobble together a solution using some combination of FileMaker licenses ($180+ each) and or FM 12 web sharing (Mountain Lion broke FM 11 web sharing [2]) -- but then I'm investing in a dead technology niche.

There are other issues with the way I use this credential store. I've been maintaining it in FileMaker and exporting to 1Password for iPhone access, but that means my iPhone repository is read-only. The update loop is slow; sometimes I don't have credentials on hand.

It's time to move.

After consultation with appnetizens there appear to be 3 solutions:

  1. Use 1Password with Dropbox. (I'm still on iPassword 2, but it works similarly. I don't mind upgrading anyway.)
  2. Use some other Cloud solution, such as shared Google Doc or Spreadsheet, Simplenote, etc.
  3. Use 1Password on her iPhone only (see below). [1Password 2 only - see update.]

The first two require the Cloud. I don't like that - for several reasons [3].

That leaves option 3, and that only works because 1Password runs constantly on my always-active account and 1Password on the desktop can support multiple iOS clients. It's not perfect as it gives her credential access only via her iPhone; but since we do use Google Sync that's less of a problem than it might be [4].

I think we'll try option 3, which implies I'm going to treat 1Passwords as the "source of truth" and slowly archive my last FileMaker database -- and then FileMaker itself.

RIP old friend.

Update:

Well, that's interesting. Technology transitions are rarely smooth. It's not clear that there is a non-Dropbox solution any more. I think I'll keep Filemaker on life-support a bit longer.
 
Incidentally, There's something disturbing about how 1Password syncs. Watching the behavior it's almost as though it replays every transaction that's every occurred on 1Password desktop; implying it still keeps fully deleted credentials. When I updated the cache 10,000 records were processed for 1,500 credentials. Looking at my backup history the agilebits keychain file is growing at a rate consistent with retention of deleted credentials. I think the only way really clean it out is to delete the keychain and start anew.

--

[1] FileMaker is a survivor from the pre-net era of software, when geeks used personal databases for address books, recipes, PDF based document management, record and CD collections,  archives of thousands of stapled paper medical journal article archive indexing with pre-web "Grateful Med" MEDLINE metadata (Grateful Med), club memberships, and much more. With a relatively large user base FileMaker was then quite affordable.

I will now interrupt this post to admit that review of those web 1.0 pages, and particularly the data store transformations of the past 8 years, has given me a dose of old-guy future shock. When I started researching this topic I didn't realize I was also writing an obituary for the personal database!

It has been one hell of a ride from my 1990s FileMaker article file to Google and the Strata conference I'll be attending in Santa Clara this month.

[2] I tried reenabling Apache on ML using a freeware pref pane. Apache ran, but FM web sharing still didn't work. Looking at the FM 12 writeup I think it barely works even there.

[3] Example: An encrypted database store is forgotten in the cloud. Six years from now, when Dropbox's assets have been acquired by the Russian mafia, 2012 encryption is trivially broken. I don't want this store public even in 2019. Not to mention the LastPass breach.

[4] So why do I allow that form of Cloud use? Good question.

Tuesday, May 22, 2012

Apple ID Hell: Apple's identity mismanagement and an insanely obscure ID bug with MobileMe send as email

Apple has long had trouble with truly basic concepts of authentication, but lately they've gone off the rails.

It's not just the new and quite demanding Apple ID password requirements that will lead most customers to put them into iPhone Notes -- since it must be entered each time you buy something.

It's not just the bug in their password instructions; when they say "no more than 3" repeating characters they mean "no more than 2" repeating characters (test it yourself).

It's not just that Apple prevents one from seeing the ugly and unmemorable Apple ID that we have to type in -- while also disallowing copy/paste into the password field (take that password manager!).

It's not just that Apple's Apple ID maintenance UI wants me to change my primary email address to match my .mac ID -- which doesn't have email.

No, it's even worse than all that.  The big problems are the proliferation of Apple IDs, and a bug that hit my very old Apple ID.

By trial and error I've discovered I have no less than four distinct Apple IDs.

I have an Apple ID that matches an old MobileMe account I abandoned years ago.

I have an Apple ID that matches my current MobileMe account. When I changed its password I also changed my MobileMe account password.

I even found an old developer account that is now an Apple ID too. (Apple merged these databases). So that's #4. It has yet another email address of mine and so I verified that. 

Lastly I have the Apple ID that is associated with hundreds of dollars of purchases. That's the one I care about -- and that one has two email addresses associated with it. That's critical for password security. One of the email addresses is my personal Gmail address.

Except ... neither of them are "validated". That's bad.

Apple won't let me validate them either. It claims both are associated with other Apple IDs.

One of them is my current MobileMe email. Since I've discovered that account morphed into yet another Apple ID, that makes sense. I removed that one and added a new email that I was able to verify (I own my own domains, so it's easy to make email redirects).

Then I tried removing the Gmail address and adding it back in. Uh-Oh, that's no longer allowed. It's been orphaned.

I check each Apple ID in turn, including my mother's and the kids. The Gmail address is not associated with any of them. So is there a fifth AppleID somewhere? Is there a bug? Is there a security breech?

There's more. After I changed the email address and password for my mac.com Apple ID, Apple enrolled me in iCloud for that account! So now it has an email address too?

I'm beginning to understand why Apple's share price is relatively low. If they can't manage something this basic, they're in trouble.

Apple, if you need a clue, here's a few:

  1. We need a way to delete Apple IDs. Unwanted IDs are a security risk.
  2. Or we need a way to merge Apple IDs!
  3. You need to fix my gmail bug Apple.  If #2 is not a bug, you need a way to reclaim that address (does someone else have it as "unverified"? Is that part of how iTunes accounts are hacked?

See also:

Update: I've figured out the bug. It arose as a side-effect of changes to the way Apple IDs work, and it only impacts people who are still on MobileMe accounts and who have the same email address associated with two Apple accounts prior to the time Apple made that illegal. In brief:

  1. The Gmail address was a validated 'send as' forwarding address in Mobile Me Mail.
  2. The Gmail address was the primary email on my mac.com Apple ID.
  3. Then Apple created an Apple ID for Mobile Me email. Somewhere in Apple's databases the Gmail 'send as' address became an alternate email for the new Apple ID. HOWEVER, it was already a primary email for another Apple ID. So it didn't display in the AppleID maintenance screens for my Mobile Me account.
  4. Since it existed in the database, however, it couldn't be validated in my .Mac account.
  5. When I removed it from my .Mac account I wasn't allowed to add it back, since it was associated with my MobileMe account -- but in a partial state there.
  6. It couldn't be located using my First and Last name in the Apple ID locator page because it wasn't properly associated with the MobileMe account. However, Apple's 2nd tier phone support was able to see it there.
  7. I went to the MobileMe account and added the email manually. It suddenly appeared -- as verified! I removed it, but Apple Support confirmed it didn't remove completely. So I left it "verified" with the MobileMe account. Now I know where it is.

Apple is closing MobileMe, so there's no way they'll ever fix this bug. I'm glad I seem to have fixed it however, it might have screwed up my iCloud migration. I think before I go to iCloud I'll remove that forwarding email address.

Postscript: Apple's Support Profile is supposed to show the products associated with my Apple ID. I think it used to. I don't see them any more. It says my home number is associated with a different Apple ID...

Saturday, February 18, 2012

Video: The state of compression is not good. Blame it on Congress.

The more I study analog to digital video conversion and export compression the more I see I've left civilization.

This is a domain of arcane knowledge and of unknown unknowns -- "experts" who really don't know what they're talking about. I'm sure there are real experts, but they're bored silly by the level of net discussion -- including Apple's own technical notes. It reminds me of my 1981 medical school lectures in renal physiology [1], or my @2002 research into color profiles.

In the absence of publicly accessible expertise I hope I'll have time to do my own experiments, such as creating a range of QuickTime 10.x exports with a span of export parameters. I'm afraid, however, that I don't have that much time.

Which means I probably need to give up on my idea of using .mp4 files the way I use .JPEG -- as an archival storage format [2].

So that means I need to buy more storage -- 2TB should do it. From that point on, given the amount of video we capture, I will just need to upgrade every 2-3 years (4, 8, 16, 32....). And I need to invest in either firewire 800 or thunderbolt.

So now I'm looking at the 1995 era ".dv" format [3]. Should be straightforward. Right?

Yeah, that's what I thought until I read this wikipedia article, which, as is usual for wikipedia, reads like a mixture of a true expert and some confusing amateurs [5] (but is still better than the alternative...):

DV - Wikipedia, the free encyclopedia

... The DV codec was launched in 1995 with joint efforts of leading producers of video camcorders...

... DV video employs interlaced video scanning with the luminance sampling frequency of 13.5 MH...

... One video frame is formed from either 10 or 12 such sequences, depending on scanning rate, which results in a data rate of about 25 Mbit/s for video [4] and an additional 1.5 Mbit/s for audio. This results in a compression rate of 5 to 1...

... All DV variants except for DVCPRO Progressive are recorded to tape within interlaced video stream...

... When video is captured onto a computer it is stored in a container file, which can be either raw DV stream, AVI, WMV or Quicktime. Whichever container is used, the video itself is not re-encoded and represents a complete digital copy of what has been recorded onto tape. If needed, the video can be recorded back to tape to obtain full and lossless copy of the original footage....

So even .DV covers a multitude of sins -- and is a significant compression from the original stream.

Even so, a mixture of .DV and Apple's proprietary professional formats seems the only way to go for now. I hope within a decade we'll have the standards and software to do better.

Or perhaps not. It's worth asking why progress has been so slow over the past decade -- and why the "standards" for still and video images date from the early 1990s. The answer seems to be something Congress and the USPTO did in 1996 ...

USPTO issued Final Computer Related Examination Guidelines stating that "A practical application of a computer-related invention is statutory subject matter. This requirement can be discerned from the variously phrased prohibitions against the patenting of abstract ideas, laws of nature or natural phenomena".

We may need legal reform before we have an archival video format. This is not a technology problem.

[1] After weeks of confident and contradictory statements from researchers and textbooks, I wondered whether they knew they were faking it, or if they'd fooled themselves. I never did find out.
[2] JPEG itself is a non-specific marketing term that hides a very wide range of codec tweaks and metadata "standards". Still, it's a recognized library of congress standard (TIFF is even less standard.). There isn't an image format today that has a comparable archival lifespan, so I use 99% (minimally compressed) JPEG and delete the RAW images -- holding my nose the whole time. Yes, I wish JPEG-2000 had succeeded. Our IP (patent) framework is intensely dysfunctional. 
[4] Now I know what the data rate setting in iMovie 11's QuickTime export parameter means.
[5] In particular there's confusion about DV handling during capture vs. how it's represented during editing/playback and confusion about what containers are. Of course, as a non-expert, I corrected that section.

Sunday, January 22, 2012

Organizing kid school accounts with OS X: Chrome to the rescue

In the twilight of the general purpose computer, I struggle to balance OS X and Apple tech, Google services, parental obligations, and getting work done.

Our iOS  and OS X devices are parental controlled -- at least as far as they can be. Among other things, that means Google services are unavailable on child accounts. [1].

Schools, however, make increasing use of Google Apps [2]. This is how I reconcile that use case with our general approach to home computing:

  1. You need the username and password for the school Google Apps account. Example: kid_name@school.mn.us.
  2. Create a single non-controlled "homework" account on the primary homework machine.
  3. Use Google Chrome, not Safari, for this account.
  4. In Chrome create a user account for each child. For each account, from Chrome Preferences, choose to sync Google. You will be asked for the school user name and password.
  5. Add gmail, docs and so on to the toolbar.

Each child uses this single OS X account with their own Chrome identity. Use of this account requires direct parental supervision. It is used only for homework. On personal OS X accounts our kids don't directly access our Family Google Apps domain, they use OS X Mail.app, for example, to get email. They don't know their Family Google Apps passwords.

[1] Partly by design and partly due to market disinterest, Google services are not compatible with OS Parental Controls.
[2] Alas, this transition occurred even as Google's Hyde crushed its Jeckyl.

Saturday, December 31, 2011

Manipulating JSON data in a traditional relational database (Microsoft Access, FileMaker Pro, Converters)

While I wait to see if Pinboard can fix their Google Reader JSON (JavaScript Object Notation) import, and while I consider Google Reader Share JSON import into WordPress, I'm also exploring JSON import/export tools. If, for example, I could import JSON into FileMaker Pro or other data management tool I might be able to manipulate the archive and produce a more useful WordPress import.

StackOverflow and its kin have a good set of references on this topic. Note that CSV can manage only very simple JSON; we really want native importers similar to what Microsoft Access tried with XML [1]. I suspect one approach might be to convert JSON to XML then use Microsoft Access 2010 import.

Incidentally, this topic veered off unexpectedly into something that's actually relevant to my work life and a Strata conference I'm attending in a few weeks.

As of today here are some of my pointers ...

For me this DivConq series was particularly useful because it placed JSON nosql processing in a familiar context - Microsoft Access.

Maybe I should start using Apache Cassandra to manipulate my Google Reader JSON archive and prepare it for WordPress processing. For example ... Cassandra Development Environment in Mac OS Snow Leopard « BigDiver.

[1] I doubt JSON has truly significant advantages over XML as a data interchange format (see JSON Example and wikipedia xml/json). Alas, nobody asked me. Fashion is more powerful than geeks imagine.

Sunday, November 06, 2011

Posterous - a Google Reader social replacement?

It's tough to replace Google Reader Social (damn you Google). I've been generating tweets from Google Reader, but the workflow is awkward on the native web app. Tweeting from the feedstream is a bit better with Reeder.app, but still not good enough. In any case, Twitter isn't what I want...

Gordon's Tech: After the fall of Google Reader: Posterous, Tumblr and Zootool with Twitter on the side

I'm looking for ...

  1. Bookmarklet that generates posts with title, url, excerpt and annotation.
  2. Must have an RSS feed.
  3. Must have a business model that involves me paying for services received.
  4. Either I have control over the data store or there's a way to create a read-only repository I can keep.
  5. Reeder.app support, so I can use Reeder.app for IOS and Reeder.app for Mac, avoid Google's miserable UI, and prepare for migration to another OPML store.
  6. Twitter integration so it tweets shares for those who are good with Twitter's limitations.

There are GR.oldstyle replacements under development, but for now most of us are looking at Tumblr and Posterous as microblogging solutions. For unclear reasons I've been experimenting first with Posterous.

Posterous does pretty well against my list...

  1. Big time bookmarklet with title, url, excerpt and annotation.
  2. RSS feeds, though these are being minimized in favor of (yes, you guessed) proprietary and closed pub/sub (like G+).
  3. Business model that .... ummm .... ok, so they don't have a way to make money ....
  4. Each Posterous post can generate a secondary post to my Dreamhost Wordpress blog.
  5. No built in Reader.app support, but good support for processing emailed content. Google Reader will 'send to' Posterous but I don't like how it works.
  6. Tweets on post.

In addition Posterous will import from Blogger and Wordpress but not, alas, from an RSS feed (or I'd pull in my Google Reader Shares).

Documentation is a bit hard to find, in fact, once you sign in to Posterous it's pretty much hidden. The Posterous 'faq' is a good start, but eventually I blundered my way to Posterous Help. It includes ...

Overall, it's promising.

Except ....

Except for my #3 item. They're "free". I don't like "free". Autopost alleviates some of the risk, but free is bad. It's not good that just two months ago they went from a focus on microblogging to trying to imitate G+.

See also:

Update 11/9/2011: Thinking this over more. I see from comments on the Mashable 9/11 article that Posterous dropped tagging from posts. That's a real change in direction for a microblogging solution. I'm getting the sinking feeling that I would have loved Posterous in early 2010, but now their future is bleak. I'm not looking for a revenue-free small world version of G+. I'll review Tumblr next.
Update 11/24/2011: I searched. And searched. And I can't find any way to delete a Posterous Space. I do see how to delete accounts, but not Spaces. If there really is no way to delete a Space, short of deleting an Account, then Posterous is a crazy-most-avoid kind of place.

Sunday, June 12, 2011

OS X Parental Controls Review - State of the art in OS X 10.5 and 10.6

Apple has recently updated their OS X Parental Controls documentation for 10.5 and 10.6. It will be interesting to see if they improve Parental Controls with 10.7(Lion).

The only good thing I can say about the current generation of OS X Parental Controls is that they're an improvement on the non-existent Parental Controls in iOS.

Below is a summary of the current controls documentation, followed by notes of my own. I appreciate the irony that, as the father of a vulnerable child, I share the same agenda as China's totalitarian Party (emphases mine) ...

Mac OS X v10.5, 10.6: About the Parental Controls Internet content filter

The Internet content filter can operate in three modes: unrestricted, automatic, and whitelist.

When "Allow unrestricted access to websites" is selected, the Internet content filter logs websites that the account visits but does not restrict Web browsing. Visited websites are still logged and can be examined in the Logs tab of Parental Controls preferences.

When "Try to limit access to adult websites automatically" is selected, the Internet content filter does its best to block websites with inappropriate content. To do this, the Internet content filter uses the same technology that the Mail application uses to identify "junk" mail. The Internet content filter can identify, with a high degree of accuracy [!], whether a Web page is safe or not by examining various properties of the website including text and structure.

Additionally, the Internet content filter will block a website if the website identifies itself as adult-oriented using RTA (http://www.rtalabel.org/) or SafeSurf (http://www.safesurf.com/ssplan.htm) rating systems, as well as forcing "safe" searches with some search engines.

In this mode, the Internet content filter logs all visited and blocked websites, and flags them as such in the Logs tab of Parental Controls preferences.

In certain situations, the automatic Internet content filter may mistakenly block a safe website or allow an adult-oriented website. For example, if the website uses an uncommon language or if there is very little text on the page. These websites can be identified in the Log tab of the Parental Controls preference pane and added to the "Always Allow" or the "Never Allow" lists. These lists can also be accessed by clicking the Customize… button in the Content tab of Parental Controls preferences. Websites that are mistakenly blocked can also be allowed by clicking the "Allow…" button on the blocked web page and authenticating as an administrator user.

https note: For websites that use SSL encryption (the URL will usually begin with https), the Internet content filter is unable to examine the encrypted content of the page. For this reason, encrypted websites must be explicitly allowed using the Always Allow list. Encrypted websites that are not on the Always Allow list will be blocked by the automatic Internet content filter.

If "Allow access to only these websites" is selected in Parental Controls, the Internet content filter blocks any website which is not on the list. When the blocking web page is presented, a list of allowed websites is also shown. If using Safari, allowed websites are displayed as bookmarks in the bookmarks bar.

Note: For most websites, the Internet content filter considers the domain name and not the path. For example, if http://www.example.com is added to the list, then http://pictures.example.com will be allowed, as will http://www.example.com/movies.

In whitelist mode, visited and blocked websites are flagged in the Logs tab of Parental Controls preferences and can be added or removed from the whitelist there.

The documentation is incomplete (I gave it a rating of "2"). Some additional notes and references:

  • Safari history cannot be deleted in the most restrictive mode and in that mode preference changes are limited as well. It can be deleted and preferences can be edited in other modes.
  • The documentation false claims about the accuracy of content blocking, and of course images cannot be managed (emphases mine).
  • A user account must be closed (user logged out) for content rule updates to be applied.
  • Because of the various measures Google takes to evade censorship by authoritarian governments their services are a poor match to Parental Controls. Bing is much more dictator friendly, so I block all Google services and allow Bing.
  • OS X Parental Controls settings and logs can be managed from a remote admin account (see references below).
  • It is most convenient to allow and block sites while reviewing the log file records.

It's easy to find problems with OS X Parental Controls, but I don't expect much improvement -- even with all the world's dictators on my side. For example ...

  1. There's no customer demand for improvements. I think most parents are quite unaware of what most adolescent males do on the web, and I think they prefer to remain unaware. This is not necessarily a bad solution for most adolescents and parents; not all children are equally vulnerable.
  2. Technologies for evading monitoring, ensuring security, and protecting privacy also block Parental Controls.
  3. Engineers without young children don't like Parental Controls, not least because of how the technologies can be misused. Working on Parental Controls is unlikely to be a career move at Apple.
  4. These are hard problems because of the way the Internet is structured, and because content providers are actively trying to evade Parental Controls either because they want to facilitate adult access or because they are seeking vulnerable people to exploit.

See also (mostly Gordon's Tech):

Update 6/15: Nothing illustrates Apple's disdain for Parental Controls better than this screenshot:

Screen shot 2011 06 15 at 8 25 16 PM

The log display can extend vertically, but not horizontally. It's fixed width. So you can't actually view the URLs. The poor engineer must have taken pity on his users however, if you let your mouse rest on a URL for a while a popup will show you the full text.

This is third rate work.

Thursday, March 03, 2011

Tools for small business (NYT)

How to Make a Small Business Seem Much Bigger - Eileen Zimmerman -  NYTimes references these tools ....

  • Batchbook: CRM
  • MailChimp: email marketing
  • Tungle.me: calendaring and scheduling [1]
  • TimeTrade: appointment scheduling, marketing. Compatible with Google Calendar
  • Intermedia: hosted Exchange server
  • Shoeboxed: scanning service
  • virtual employees: deductible expense rather than employee
  • Regus: temporary office space, worldwide

[1] It tried Tungle. It looked interesting until I realized it only syncs with one my Google Calendars. My GC view is a synthesis of about 18 calendar sources (no joke). So sync with one doesn't help. Then I realized there's no way kill a tungle.me account. You have to email support -- and that's not well documented. Fail.