Category Archives: Highlights

Star Wars: The Last Jedi Thoughts – It’s Complicated.

I’ve seen The Last Jedi twice now. I’m still not sure how I’d rank it, but the performances are way better than most of the prequel trilogy, and the story is the first theatrical Star Wars to break new ground in ages.

I’ll admit there’s a lot of stuff that happened that I didn’t like, but it made sense within the story context, and it was done in an interesting way. And there was a lot of cool stuff too…including a ton of blink-and-you’ll-miss-it details that I missed the first time through.

What do you mean, “Like?”

I learned years ago that “stuff happened that I didn’t like” and “it was badly made” are two separate comments on a movie, TV show, book, or other work of art.

Do I like the reason Luke left? No, but it makes sense. (A lot more sense than him joining the Dark Side with a resurrected clone of Darth Sidious, TBH.) When you think about it, it’s probably the best explanation they could have come up with for why Luke would decide that he’s part of the problem and remove himself from the galactic stage. It would have to be something majorly traumatic that he would blame himself for.

Do I like that the Resistance command don’t trust each other enough to share plans? No, but again it makes sense under the circumstances, and it feeds into the themes.

Structure and Hope

The Last Jedi feels different from the other Star Wars films. It’s a lot of separate threads that seem mostly unconnected but come together toward the end into a clear picture. Rey’s journey is critical, as is Kylo Ren’s, as is the link between their journeys. Luke’s reasons for being on the island, and his triumphant return, are tied deeply into the plight of the Resistance as it battles the loss of hope, which we see in the slow attrition of the fleet chase, the breakdown of trust within command, and finally the point where they’re reduced to one small band making what could well be a last stand.

And the trip to Canto Bight? For all the whining about it, I think it’s thematically more important than the chase. It shows people taking advantage of both sides of the conflict, and it shows ordinary civilians being oppressed…and that epilogue.

The First Order does everything they can to snuff out that spark of hope, and almost succeeds…but it flares again. We see it with Luke, and with Rey, but their actions only preserve what’s left. It still feels like a hollow victory until we see the epilogue and realize that the spark has taken hold, and is growing again — and that’s inspired as much by one kid’s encounter with Finn and Rose as the legend of Luke Skywalker.

Take out Canto Bight and you take out the epilogue. Take out the epilogue and you’re left with an unremittingly bleak story. Bleaker than Revenge of the Sith…but only* because we already knew where RoTS had to go.

Uncharted Regions

This is the first time since 1983 that there’s been real uncertainty about the future in a Star Wars movie. We didn’t know where The Empire Strikes Back was going, or Return of the Jedi. The prequel trilogy had a lot of surprises along the way, but we knew it would end with Anakin turning to the dark side and helping wipe out the Jedi, Palpatine becoming the Emperor, and the Republic becoming the Empire. I loved Rogue One, but again, we knew what it was building up to. And The Force Awakens was too focused on bringing fans back into the fold with familiarity to break new ground.

The Expanded Universe quickly set up a new status quo and told episodic stories within that setting. Some changes would stick over time, but you knew at the end of the day Leia was rebuilding the Republic, Luke was rebuilding the Jedi, and so on. Eventually they broke out of it and started making big changes with New Jedi Order, and subsequent stories that moved toward the more distant future of Legacy, but it was only a secondary canon, blessed but less official than the movies.

Now? We have no idea what might happen next. We can hope that the First Order will be defeated, because that’s the kind of story Star Wars is, but we have no idea what the cost will be, or who will make it through to the end, who might redeem themselves or turn to darkness.

And I have to wonder if that’s part of the backlash: Star Wars has been a familiar place for decades, and now that certainty is gone.

Cool stuff

So, some of those great details that I didn’t notice the first time through:

  • When Leia floats through the ruined bridge, she passes through the hologram of Snokes’ flagship, disrupting it just like Holdo’s hyperspace maneuver does later in the movie.
  • After Luke’s projection is finished, he sees two suns and the Force theme swells. The first time through I was so caught up in worry about Leia (tied up with Carrie Fisher’s death) that I didn’t quite notice. The second time through, I knew what was happening with her, but I just lost it at this moment.
  • The kid with the Resistance ring at the end doesn’t grab his broom and lift it – the broom moves to his hand.

*Well, that and Lucas didn’t manage to convey as much emotional heart in the prequels as he did in ANH or the other directors did w/ Empire & Jedi. They all felt slightly detached. And I’ve seen the actors in enough other movies to know it wasn’t their fault.

Not Too Soon

“Too soon” is meaningless when something happens on a more-than-weekly basis.

It’s not too soon to talk about it. It’s past time.

Sure, real solutions will be complex and incomplete. But we solve nothing if we block research and refuse to discuss the issue.

How Link Shorteners Leave Holes in Your Social Media

Another problem I’ve noticed in my Twitter archive: Lots of URL shorteners and image hosts have shut down or purged their archives.

Sure, and and tinyurl and are still around. But in the days before, I used a lot of different Twitter apps that used different shorteners or image hosts.

I have photos posted not just at Twitter and Twitpic, but at phodroid,, and twitgoo. In some cases the description and date can point me to the right picture on my hard drive or on this blog (I used to import a daily digest of tweets, and I still sometimes use Twitter as a rough draft for content here). In some cases I can narrow it down to a group of photos — the 2012 partial solar eclipse, for instance.

In some cases, I have NO IDEA what the photo was:

Similarly, I linked to a lot of articles that might still exist, but the short URLs don’t point to them anymore. Services like,, and StumbleUpon’s In some cases a publisher set up their own shortener, and has since dropped it. Again, sometimes I can find it from here. Sometimes the description includes a quote or title that I can search for.

Oddly enough, I found most of my lost links by looking at, which apparently unwrapped the links when they imported from Twitter way back when. It’s still around and searchable. For now. (I should look into what you get from their archive.)

It’s true that these problems are biggest if you were on Twitter before they implemented their own link shortener and image hosting. But a lot of tools (Buffer, for instance) still use their own shorteners for tracking purposes, so you’re not just depending on the tool being around long enough to post your tweet, you’re depending on it to stay around for the rare person who stumbles on an old thread and wants to see what you were talking about.

And even if you didn’t start using Twitter until they hosted photos themselves, Twitter doesn’t include your photos in your archive! If you want to save your own copies in case they go the way of GeoCities or even photobucket, you’ve got to hold onto the originals or download them yourself.

Searching Your Twitter History: Case of the Missing Context

One of the problems with Twitter’s search capability is that the results are isolated.

I’ve said before that one of the keys to making a social account feel like I own it is that I can find things in it if I want to go back later. You can search your old Twitter posts by adding your username to the query in the regular search form, but it only shows you the matching results, not other posts that might be connected.

If you click on it you can get an actual conversation thread…but only those tweets that are connected as replies, so if you didn’t thread a tweetstorm properly, or if you had a big sprawling conversation with lots of different people, sometimes replying and sometimes posting something new…you can’t see the rest of it.

Worse, if you go back far enough, Twitter doesn’t even have threading. You might see “@friend Inconceivable!” but have no idea what they were saying that you replied to. (And that doesn’t even get into old shortlink and image providers that have shut down, removing content from your post as well.)

I have similar issues with Instagram, which basically has no real search, only hashtag-based timelines to go along with the account-based timelines. In both cases, when you get to a specific post, it’s a dead end. You can’t see anything around it without going back to the author’s profile, even if that author is you. Though depending on how you clicked on the Instagram link, you might get back/forward links.

(This is true for Mastodon as well, but to be fair, Mastodon is still building its search capabilities.)

WordPress, on the other hand, not only usually has next/previous links on each post, but you can view archives by category, tag, month and (for some permalink structures) day. When you find a post, you can see what’s around it. You can get more in the admin interface, but even as a visitor, you can still get the context.

What’s in Your Social Media Archive?

I checked out what you get when you export your content from Twitter, Facebook, Google+, LinkedIn, WordPress and LiveJournal, with an eye for both private archives and migrating to your own site.

Tired of Twitter? Fed up with Facebook? Irritated by Instagram?

If you want to leave a major social network, but keep your content — or even just make sure you have your own backup in case the site shuts down, purges accounts, or changes its TOS *cough* LiveJournal *cough*, you can usually get some of your info. But not all of them give it to you in a way that’s useful.


You get a CSV spreadsheet containing all your tweets since the dawn of Twitter, with the text in one column, ID in another, timestamp, reply-to, and so on. It’s pretty easy to import this into another system. (I pulled mine into a test WordPress site using the WP All-Import plugin.)

Links in the text appear as the shortened URL, with the “real” URL in another column. Of course, if the “real” URL was also a shortener, you’ll just see or whatever. And if you’ve been on Twitter long enough, you may find that some of your older links use shorteners that don’t exist anymore (or have purged their archives), like or

You also get an offline web app with an index.html that allows you to view all your tweets month by month without visiting the site.

But you don’t get any of your uploaded media, or direct messages. So if you mostly use Twitter for text-based microblogging, you’re fine, but if you use it for photo sharing or private conversations, you’re out of luck.

Update: Retweets are sometimes incomplete in the spreadsheet. The text field is a constructed manual retweet — “RT @otheruser: Text of the original tweet” — but it’s truncated to fit in 140 characters (even if the original was made after the 280-character update). So if adding the username pushes it over the limit, or if it was longer to begin with, you don’t actually get the entire original tweet in the spreadsheet. I suspect this means retweets don’t actually use that field, and get the content straight from the original tweet by ID.


You get all your photos, videos and messages, organized by folders, but the names are all just numeric IDs. You do get an offline web application that includes names and indexes.

It also has your entire timeline in one giant HTML file. But it only includes the text, the type of update, and the timestamps. If you posted a link, it doesn’t include the link. If you posted a photo, it doesn’t link to the photo.

And you don’t get comments, either your comments on other people’s posts, or their comments on yours.

Worst, though? It doesn’t indicate the privacy of each post. That means you can’t take the timeline and import it to a new system unless you separate the public and private posts one by one.

Google Plus

Google Takeout allows you to export various categories of data, including your Google+ stream, circles, +1s and page posts.

Each post is exported as a separate HTML file, named after the first line. Comment threads are included, along with timestamps, a permalink to the original post, and a visibility indicator. It only marks Public vs. Limited, but that’s better than you get from Facebook.

The HTML files are suitable for publishing as-is, and marked up so that that it shouldn’t be hard to write an import tool for a CMS. (I’m planning on writing a script to convert them to WordPress’ XML format.)

Images aren’t included in the G+ stream download, and are instead hotlinked on photo posts and galleries. I haven’t checked, but I suspect any images you uploaded to Google+ will be included in your Google Photos download.

There is an index of all your posts…but it’s in alphabetical order.

Bonus: Google Buzz

When Google shut down Buzz a few years ago, they generated archives and put them in each person’s Drive account. They did one cool thing, which was to create two sets of archives: One complete, the other containing only public posts.

The format? Long PDFs, dozens of pages each, with all your posts, labeled by source (Buzz, Twitter, a specific site, etc.)…with the letters scrambled. Apparently they left the “reduce file size” option turned on when they generated them. This means you can’t copy/paste or search in the PDF itself, but you can open it in Google Docs and it’ll convert the text back, at which point you can do both. But that doesn’t preserve links or media, which you have to get out of the original PDF…


LinkedIn generates two phases of archives. The first one, available within minutes of requesting it, contains your profile info, your messages, contacts and invitations in CSV files.

The complete archive, available within 24 hours, actually lives up to the name. Everything is in a set of CSV files: Your contacts, your shares, your group posts, your group comments, even your behind the scenes info like ad targeting categories and recent login records. (One word of warning: They’re encoded as UTF-16, so if the tool you use to import afterward isn’t expecting that, you may need to convert it.)

I’m not sure how photos and video are handled, as I’ve never uploaded either to LinkedIn (other than my profile picture, which landed in a folder called Media Files).


LiveJournal’s own export tool will export a month at a time into a CSV or XML file, which includes your posts and their metadata (timestamps, moods, etc.), but not comments, userpics or photos.

There are other tools available using the API, which might be able to get more data. I’ve looked at two:

The WordPress importer will pull in all your posts, and the comments on them, and makes a note of moods, music, etc. (you can use my LJ-Moods plugin to display them). It doesn’t transfer any images you’ve uploaded.

DreamWidth’s importer seems more complete – LJ and Dreamwidth are based on the same code, after all – and is able to natively handle moods, userpics, etc. But it doesn’t transfer your media library either.


WordPress exports a giant XML file containing all your posts, their comments, and their metadata. You can import it into another WordPress instance, and have virtually the same blog. Or you can merge two blogs together by importing both. (I’ve moved posts with comment threads from one blog to another by putting them in a category, exporting the category, and then importing them on the new blog.)

It doesn’t include your media library, but if you import the file to a new site before closing down the old one, the importer should offer to pull in all of the images and other media that are actually used in posts.

Plus on a self-hosted site you have a lot of tools available: backup plugins that will include everything, SFTP access through your web host, etc.

Update: Tumblr

I didn’t initially include Tumblr because it doesn’t have an exporter…but WordPress has an importer that does a good job of transferring your blog directly from Tumblr to a WordPress blog. (Look on your WordPress dashboard under Tools/Import.) It even imports images (though sometimes it imports a single-image post as a gallery for some reason). The original URL is stored in a custom field, and you can leave it connected and import new items when you want to bring them in.

Some gotchas: It can only map to one author, but you get to choose which one. It puts everything in the default category. Videos don’t get imported, even if you’ve just embedded a YouTube video.

Update: Mastodon

With the 2.3.0 update (March 2018), Mastodon has added its first archive tool. It’s essentially complete, but it’s only machine-readable so far. You get a pair of files in ActivityPub format (based on JSON), one containing your profile and one containing your formatted posts. You also get a folder structure containing any images and videos you’ve uploaded, and your icon and header image.

If you’re willing to slog through the JSON files, you can figure out which image goes to which post, but it’s still a pain.

But this is a first pass, aimed more at portability (keep your own backups or move your data to another instance or service) than readability. ActivityPub is a new standard, so there aren’t many converters yet, but that’s likely to improve.


Instagram doesn’t have an export tool, so you have to rely on third-party solutions.

Flickr allows you to bulk-download photos from your Camera Roll, and it helpfully uses the title to name the files, but it doesn’t export the description, tags, or comments.

Mastodon currently only lets you export your contacts and block lists, but archiving and migration (from one Mastodon instance to another) are on the roadmap.