What is the goal of facebook?

This guy seems to have captured what I thought I’d been seeing over the past couple of months on facebook. It is not surprising as many pundits predicted issues for facebook users when it went public due to profit pressures.

According to the Facebook website, you also have a goal, and it is “to give people the power to share and make the world more open and connected”

As an advertising tool, Facebook will still connect millions around the world, but only as a consequence of a different goal and guiding principle. A goal to monetize its user-base by managing, controlling and limiting the way people share and connect. The exact opposite of its stated mission.

Full post here: http://www.bewareofimages.com/blog/2012/11/open-letter-to-mark-zuckerberg/#more-200

While I love the micropublishing, aggregation and discovery capabilities of what facebook can offer, the way they choose to filter and limit is becoming unpleasant to me as a “consumer” and “producer”. I recently paid $7 for promoting a post for my wife’s recently opened etsy shop and it certainly seems like the rest of my posts suddenly got a lot less views. Or at least less feedback. It is also possible that I’m just not posting interesting things too. I don’t mind paying to get people who aren’t my “friends” to see my posts. That’s advertising and is reasonable. But paying to show my posts to people who are my “friends” feels like extortion of the data we gave to facebook.

Anyway, enough complaining. If facebook isn’t a good place to form and build networks of friends, we can always go back to email, or RSS readers and private blogs. That certainly wouldn’t be the end of the world. I guess we could all try google+, but that might be a bit extreme ;-)

Comments on document scanner

A question came up from somebody interested in document scanners, so I thought it might be good to write it up real quick and post it as well…

I’ve got a Fujitsu ScanSnap 510m http://www.fujitsu.com/us/services/computing/peripherals/scanners/scansnap/s510m.html that I bought over 3 years ago and it’s been really great. I do a scan to PDF+OCR so that they are searchable. Each document (may be multiple sheets) is a single file in a big folder and then I use Spotlight (file search on OSX) to find what I need. I very rarely need to find things, but when I do, it has worked fine. I do keep my tax documents unscanned and in a “tax” folder until I do my taxes and then scan all of them as a group, but that’s just my tax workflow.

Specific questions:

– You can just throw 50 sheets in (I’ve done 100+) but if it’s a group, it will store them as a group, not individual documents. If the sheets are irregular in size that can be an issue and need a little intervention to stabilize them going in.

– I’ve got 3+ years on mine and it’s still working fine. I’ve certainly pushed thousands of pages through each year with a minimal failure rate.

– In my case, it’s just a folder of PDFs, so it backs up like anything else. I happen to use Time Machine cause I’m on a Mac with both an onsite and an offsite disk, but any other backup would be fine.

While a document scanner is fairly expensive (I paid $400). It’s been worth it in terms of the time and effort savings. The real key feature is scanning both sides at once. Other solutions are just too slow to provide good ROI. I just scan stuff and shred it. I got rid of my 4-drawer filing cabinet over 2 years ago, so I’ve got more space and I don’t stress about where to file things, they all go in a big folder and search enables me to find anything I’ve needed.

ifttt and wordpress

http://ifttt.com is a very clever site that basically allows high level event-based scripting between web sites. I’ve known about it for a long time, but didn’t really have a lot of use for it until now that I’ve got a WordPress site up and running. It’s nifty in that I can now cross-post automatically between WordPress and Facebook. I’ve got two recipes, one to post to FB when I do a post on WordPress and one to copy my photo posts from FB to WordPress.

Importing txt to WordPress

After getting basic wordpress set up, I figured that I should populate it with whatever stuff I had around from previous plan/blog/etc stuff. I had a pretty big set of note-like material in text with either a light wiki or restructured text markup, so I figured that importing them would be good to give the site some real content. There’s some good stuff, and some lame stuff too.

After some quick poking around, the simplest solution appeared to be to export the site using it’s export to xml feature and use that as a template to reformat my text files into for reimport. Turns out it was pretty easy to get working. The code is pretty ugly and relies on the docutils package: http://docutils.sourceforge.net/

I just need the basic restructured text to html conversion, which this person was nice enough to document: http://stackoverflow.com/questions/6654519/python-parsing-restructuredtext-into-html There are a few additional issues, mostly removal of css elements to make it play nice, but some quick regexps clean those up.

It appears to have basically worked and spot checks of various entries show that the conversion appears to have resulted in mostly-readable text, so I’m happy.

The code is below, I did not code it using Test Driven Development style since I intend to only use it once, so it’s a little ugly…

from docutils.core import publish_parts
import re, glob

def format_file(post_id, filename):


    title = "notes-"+str(post_id)
    date = ""
    year = 0
    month = 0
    month_string = ""
    day_of_week = "Sat"
    text = ""
    html = ""
    site_url = "http://www.3cats.us/blog"

    match=re.search('(?P<year>\d+)\s+(?P<month_string>\w+)\s+(?P<day>\d+)', filename)
        year = int(match.groupdict()['year'])
        month_string = match.groupdict()['month_string']
        month = {'January':1,'February':2,'March':3,'April':4,'May':5,'June':6,'July':7,'August':8,'September':9,'October':10,'November':11,'December':12}[month_string]
        day = int(match.groupdict()['day'])

    match=re.search('\s\-\s+(.*)\.[tT][xX][tT]', filename)
        title = match.groups(0)[0]

    title_no_whitespace = re.sub('\s+', '-', title)

    text = ''.join(fh.readlines())
    html = publish_parts(text,writer_name='html')['html_body']
    striped_html = re.sub('class=".*?"','',str(html))
    striped_html = re.sub('<\/?div.*?>', '', striped_html)

    return """<item>
    <pubDate>%(day_of_week)s, %(day)2.2d %(month_string)s %(year)d 00:00:00 +0000</pubDate>
    <guid isPermaLink="false">%(site_url)s/?p=%(post_id)d</guid> <description/>
    <wp:post_date>%(year)d-%(month)2.2d-%(day)2.2d 00:00:00</wp:post_date>
    <wp:post_date_gmt>%(year)d-%(month)2.2d-%(day)2.2d 00:00:00</wp:post_date_gmt>
    <category nicename="uncategorized" domain="category">
"""% vars()

if __name__ == '__main__':

<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="WordPress/3.4.2" created="2012-10-04 17:36" -->
<rss xmlns:wp="http://wordpress.org/export/1.2/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:excerpt="http://wordpress.org/export/1.2/excerpt/" version="2.0"> -<channel> <title>3Cats.us</title> <link>http://www.3cats.us/blog</link> <description>4 Kids, 3 Cats, 2 Parents, 1 God</description> <pubDate>Thu, 04 Oct 2012 17:36:15 +0000</pubDate> <language>en-US</language> <wp:wxr_version>1.2</wp:wxr_version> <wp:base_site_url>http://www.3cats.us/blog</wp:base_site_url> <wp:base_blog_url>http://www.3cats.us/blog</wp:base_blog_url> -<wp:author><wp:author_id>1</wp:author_id><wp:author_login>admin</wp:author_login><wp:author_email>mikem@3cats.us</wp:author_email>-<wp:author_display_name>
</wp:author_last_name></wp:author> <wp:author><wp:author_id>2</wp:author_id><wp:author_login>Mike</wp:author_login><wp:author_email>mike@3cats.us</wp:author_email><wp:author_display_name>
</wp:author_last_name></wp:author> <generator>http://wordpress.org/?v=3.4.2</generator>

    files = glob.glob('./Log/*')
    for file in files:
</channel> </rss>

Cultivating Focus

A couple of things have been going on that are causing me to think about discipline and focus. There’s this really great article on cultivating focus: http://www.aholyexperience.com/2012/09/how-to-cultivate-the-habit-of-focus-in-an-age-of-distraction/ Also, I’ve been working on some unusual and “outside of the box” issues at work that have been particularly challenging and I recently pulled down a little app called “Tiny Tower” in addition to switching to google reader for a lot of web browsing stuff.

Basically, I realized that I’ve been allowing little distractions to creep in and steal my time and attention instead of dealing with the hard issues head on. I’ve listened to way too much of Merlin Mann’s stuff http://www.merlinmann.com/ to not be aware that I’m doing this stuff. Unfortunately, getting out of this mode is really hard.


Things to go do right now:

  • Delete Tiny Tower. This has got to be one of the worst examples of a game that is designed to consume your attention and your time. The game is set up so that you can give them money for the in-game resources that you can otherwise only get by giving it time and attention. It is in the category of “virtual pet” games which all have the same basic tradeoff.
  • Get inboxes to zero. The real difficulity I’m having with this is that I don’t trust my todo lists right now. So I have to go back to classic David Allen http://www.davidco.com/ and get trust back in my system so that I can get my inboxes to zero. This is tricky.
  • Close google reader. This is not a fix-all. The real underlying issue is that I’m polling “inboxes” to find the latest interesting nugget, which isn’t a good use of my time and attention. I need to stay focused on larger, difficult tasks.

Longer term:

  • Need to construct some ceremony in the day/week to reenforce important, but not urgent tasks like a weekly review, spending time in the Bible, other relational activites, reading and writing longer form materials and thinking about them.
  • Particularly at home, I need to not be as driven by urgent issues. Part of this is getting over the push of the urgent things to get at the source of urgent things and getting things clear enought to be able to easily respond to new needs. Check out Proverbs 15:19 “The way of a sluggard is like an hedge of thorns, but the path of the upright is a level highway.” By doing the work to keep things, clean, organized and uncluttered, it is much easier to respond to needs. Around the house, we’ve got a lot of this “technical debt” http://en.wikipedia.org/wiki/Technical_debt that needs to be paid down.

Retail Real Estate

I’m certainly not an expert on retail real estate, but I suspect that there are some fairly obvious trends. The nearly complete collapse of Video/DVD rental stores is probably the largest example. Borders folding nearly all their stores recently is another. Clearly there needs to be a rethinking of how space is used and what value the retailers are bringing to the customer. I’m not sure I see the same point that Stephen Gordon sees for educational instituations, but certainly the longer term visions seems plausible given current trends. But things change, people and instituations adapt to those changes and maybe something even better will emerge.


Overkill solution to a clock

So a while back, we were having a problem with our 3-year old waking up progressivly earlier. Probalby due to it getting light out progressively earlier. One of the issues with living above the 45th parallel. He can’t read anything yet, so it seemed unreasonable to give him a clock and say, you can’t leave your room before 7:30. So, after pondering it for a couple days on how to give him an clear indication to him when it was OK to get up, but also not wake him up in the process I recalled the chumby: http://www.chumby.com/ was a nice little linux platform with touchscreen, and a quick trip through the user manual showed that you could get it to switch "channels" at specified times. So, $45 dollars on ebay later, I had an Insignia Infocast (a BestBuy branded version of the chumby). There was a bit of a hassle getting it deregistered/registered, but a quick email to the chumby support cleared that up. Then I created a "night" and a "day" channel, set one to show a flickering candle and the other to show a koi pond with little fish. Then a couple of alarm settings to switch back and forth and done…

Now he’s got an easy way to tell if it’s OK to be up in the morning. He doesn’t always pay attention to it, but sometimes when he comes out at the right time he tell us "Wake. Fish. Wake.".

Ah, technology to the rescue…

mProductive review

Tried out the mProductive Blackberry application from http://www.mproductive.com/ Ended up uninstalling it fairly quickly for a few reasons:
* I’ve got a problem where task todo dates get messed up when my BB syncs up to outlook. And worse, once a date on a task exists, it basically becomes unremoveable because the sync keeps coming back. I’ve looked for solutions, but to no avail so far.
* Munging calendar and todo items just doesn’t feel very good. Maybe it is that I haven’t been using dates on tasks as much as I really would like to (see above problem with task dates)
* I have a homebrew system for recurring actions that results in the due date on recovered tasks to be in the past, which throws off the date-based views of tasks.
* I was hoping that the "create next actions" feature would make it faster to go from email to a calendar item or a task item. But at least in my quick trial, it seemed harder and there didn’t seem to be a easy way to set the category on the task, which is how I do my contexts.
* The link related items seemed a bit complex, enough so that I didn’t want to mess with it based on my experience with Karta Mobile where I figured out that simple task association really wasn’t buying me that much. [[2010 August 9 Karta Mobile]]
So I think mProductive solves a problem that I don’t really have, which is focusing a lot of items that need to be done on specific dates. My work model just doesn’t have that requirement. I would like to have that view, but it is available in Outlook 2007. Also, I would need to get my task dates scrubbed out and make some other alterations to my homebrew recurring actions to make that effective. Things that I’m not really willing to do currently as that is a lot of manual work right now.

There are some good things about mProductive. The graphics are really nice. On the subscreens, it does feel a bit cramped, like it was designed for a slightly larger screen and then scrunched down (and I’m running it on a Bold 9000, which has a pretty big screen for RIM). Maybe they will tighten up the UI to get better ROI on all their pixels as they close out the beta.

Karta Mobile review

Karta Mobile’s Outlook/Blackberry GTD solution


So for a long time I’ve thought I wanted to have projects and next-action tasks be 2 separate objects that would be linked. I thought about coding some clever things in VBA or something to keep them attached to each other in the tasks database. So when I got email that Karta Mobile had gotten a syncing option with both outlook and blackberry support using the tasks database, that seemed like a great thing! The best that I’d come up with was to put the name of the project prepended to all related tasks like:
* DH complete: look at coding iPhoto to iWeb dump/sync
* DH complete: push videos into iWeb
* DH complete: tiddlywiki stuff to sync to iWeb
I also use the "categories" field as my "Context" (in GDT terms). I’ve got over 250 items in my tasks folder. The majority are someday-maybe items, but I’m hesitant to move those to a different database because I like the ability to just change the category on an item to either promote or demote an item.

So I installed the Outlook plugin and the app on my blackberry. I started trying it out and to be honest, my brain just balked at it. I had convienced part of my brain that I needed to attach tasks to projects, but when given the opportunity to do so, I realized that it wasn’t that big of an advantage. Not enought to justify adding additional software to the system and altering the existing database. That was a surprise to me because the Viira solution is reasonably nice an lightweight. I guess David Allen was right that adding that level of detail to the system usually isn’t worthwhile.

Other issues:
* There does not seem to be a way to take the existing tasks and use them in the Viira View. That significantly increases the bar to entry, because I don’t want to have to reenter all my stuff.
* In Outlook, switching to/from the Tasks tab seems to take a lot longer (increases from <1 second to >5 seconds), which is concerning and disruptive to mental flow. Also
* When I navigate away and then back to tasks, I have to reselect the Viira view. Maybe if I changed my workflow to keep a tasks window open, that would be a non-issue.
* There isn’t a way to mark tasks as dependent. That might provide sufficient motivation for me to put up with the extra overhead, but there would need to be something that provided some insight to the dependency tree to aid task importance/selection.
* I’m not sure how recurring tasks, either in outlook, or using my personal recovery mechanism will work. The metadata could easily become inconsistent either way.
So in summary, they’ve made a intersting piece of software that integrates cleverly with Outlook. But I’m going to uninstall the plugin for now. Maybe in the future, possibly with a task import option and/or some other value add it will make sense for me to add this tool to my toolbox, but not yet.

As a followup, I gave the above feedback to the Karta Mobile folks and they agreed that those were exactly the next steps that needed to be taken. Their initial beta was focused more on the syncing mechanism.


Pencil case sewing project

I got the idea from a really cool pencil case that I found on a Japanese pen store website. Laurie bought one and I tried to copy it as a sewing project with Sophia. We got some scrap fabric and thread from Leann and put it together in about an hour. It was a bit unplanned and rushed, but we got it done and the results were good enough…

Areas for improvement on the project:
* Project was a bit too advanced for Sophia and I ended up doing a good chunk of the sewing.
* need to set up the sewing machine so that Sophia can use the pedal with her foot
* need to adjust the traction (vertical knob on front) so the stuff gets fed properly
* Laurie’s case really got some key factors right like the evenly spaced pockets, the left side flap notch, the right side flap and attaching the strap to the outside so it pulls the outer flap directly down.
* needed to plan and measure a bit more ahead of time.
* Sophia got bored with the project about two thirds of the way through and it took some work to get her to finish it with me.

What did go well:
* the binding stuff did work OK for most stitches and was highly tolerant from a functional point of view.
* the felt-like fuzziness of the fabric didn’t slip against itself, making it easier to maintain the folds.
* Sophia was quite happy with the end product, which in the end is what matters.