<!-- Content Here -->

Where content meets technology

Sep 14, 2023

Twitter Archive Unboxing

Back in December, I decided to leave Twitter X and direct my social energies elsewhere. Part of my emigration plan was to export my tweets in case I ever wanted to access them. After a few ignored requests, X finally generated an export that I was able to download. This is a summary of my experience.

I was never a prolific tweeter (less than 5,000 posts since 2008) so I was suprized by the size of the archive: 45MB compressed. The zip expands into a directory that contains a local website of all of your twitter activity.

archive home

The tweets view allows you to browse, filter, and search your tweets, retweets, and replies. All of the images referenced in your posts are stored locally. That explains why the archive is so big. Clicking on the tweet takes you to the tweet on twitter.com.

archive tweets

The likes view is my favorite mainly because I tended to ❤️ jokes. The personalization view shows how Twitter interpreted my interests from my activity to build my own personal echo chamber.

archive tweets

Under the hood, the archive stores all of the tweets in a single JSON file (data/tweets.js) that has high potential for harvesting programmatically because it is so nicely structured. For example, I could easily write a script that ranked my tweets by how many times they were retweeted.

But I probably won't.

While I am impressed by the design and capabilities of the archive, I am disappointed by the utility of having it. Maybe if I was a great comedian, this could be my highlight reel. Most of my tweets, however, were parts of conversations, which are meaningless without the context of the thread. Quoted tweets and retweets also lack context because the original tweet is truncated. The worst problem is that nothing is particularly relevant right now. The moment has passed. The external links have rotted away. For me, the best part was the community and the interaction. And that can't be exported.

For what it's worth, I have the exact opposite experience with this blog, which I started back in 2004. I regularly go back and read old posts to remind myself of something that I learned or how I thought about a topic. You need more than 140 (or even 280) characters to present an idea that can stand on its own. Because I was writing for a public audience, I made an effort to provide context, think and write clearly, and support my reasoning. Being a decade+ older than I was when I wrote many of these posts, I see that I could be the stranger that I was writing for.

Dec 17, 2022

Digital Refactor

In light of the recent drama over at Twitter, I have been re-evaluating my use of social media. I have been off Facebook for years and for months I have made an effort to immerse myself in longer form content (newspaper articles, books, etc.). But I hadn't been able to resist the temptation of the Twitter timeline - specifically the little dopamine hits I got from snarky jokes and also surges of outrage at the world's injustices.

When I joined Mastodon (my handle is @sgottlieb@better.boston), I didn't want to recreate the same experience that I had on Twitter; specifically, the habit of trolling for dopamine. But it is taking me some time to figure out what I want from a timeline. I don't want to rely on a timeline to "stay informed" or "keep up to date." With their journalism skills and editorial standards, newspapers are much better resources to satisfy those needs. And I don't need to sift through a disorganized timeline to find links to articles that I should read. Content is already nicely organized in news websites and various newsletters that I subscribe to.

I rarely used Twitter as a social space to have conversations with people I know. And I am not looking for Facebook-style highlight reels from my real world friends. To maintain connections, I am much better off having real conversations.

So what problem am I looking to Mastodon to solve? I am inspired by passionate people doing noble things like advocating for more livable cities, scientific research, or any kind of creative expression. I like the idea of an open space to talk about esoteric topics. I am trying to learn how to use Mastodon to provide that experience. I think the solution lies in hashtags and being very deliberate in who I follow. It's a work in progress and I am patient.

Reach out if you have cracked the Mastodon code to create a perfect timeline.

Aug 24, 2012

Socialnomics Video

If you have not already done so, you should definitely watch the promotional video for the book Socialnomics: How Social Media Transforms the Way We Live and Do Business

.

I haven't read the book yet but the video has some pretty intense statistics. This may not revolutionize your content marketing strategy but it will certainly shake your confidence in the status quo. I hope this doesn't make executives snap to the reactionary decision of "we need to get on Facebook." It would be much better for someone to think "we need to deliver a product/service that people want to rave about." If you can do that, those customers will be gushing about you on whatever social network is currently popular with the customers you want to reach.

Jun 22, 2012

The Employee and the Professional

Within all of us there are two minds: the professional and the employee. Actually, there are probably many more but I am just going to talk about those two. On the one side, the professional is focused on his/her craft and building skills. Professionals are passionate about their discipline and look for ways to be creative and innovative. The professional seeks challenge and isn't afraid of failure. The employee side, however, is focused on his/her job as it has been defined: meeting expectations, following the rules, and other forms of job preservation/advancement. The employee side seeks comfort and safety. The employee avoids risk through routine. Innovation is limited to small optimizations of the status quo.

Both sides are important. You get dependability from the employee. You get excellence from the professional. Depending on the field, one aspect may dominate another. For example, in an unskilled field, the employee dominates the professional. The job is easy to learn, there is no career to build, and you are easily replaced. You show up on time, you do as you are told, and you go home. The best you can do is show yourself to be dependable and hope for a promotion to lead others in the tasks that you have learned. In a high skill job, like a doctor, the employee part is minimal. You see a lot of passion about the craft and much less interest in the details of employment. Doctors can easily shift from one practice to another but the focus is the same - solving challenging problems, contributing to the field of medicine, and delivering excellent patient care.

Why am I even talking about this esoteric decomposition of the human psyche? Because it has profound implications on knowledge management and Intranets. The thing is that advanced skill and knowledge are wrapped up in the professional side of the person and that side wants to interact with his/her field (inside and outside the company). It is far more rewarding to share brilliant insight on a large professional network than to a small group of co-workers. The few co-workers that are as passionate as the professional are probably already on that external professional network too.

This is why the knowledge management aspect of intranets (like blogging and micro-blogging and most wikis) tend to fail so often. The dream of using an Intranet as a catalyst to synthesize all of the great ideas trapped in the brains of an organization never is achieved. The professional's brilliance is drawn to a larger stage. The most successful bits of Intranet are the ones that serve the employee: the company directory, forms, and templates. Templates are the things that are most often passed off as knowledge but I would contend that they are more focused on routine and consistency than thinking and knowledge.

This is why I have such low expectations for the "Social Enterprise" solving knowledge management through tools like Yammer that emulate what is happening on the public web. The single reason for Twitter's success is its openness. With an open network like Twitter (or Google+), I can connect with a stranger on the other side of the world through the simple bond of being interested in the same thing. We can learn from each other and build off each others' ideas. Our motivation is our interest — the professionals within each of us. If you narrow down that pool to just the people you work with (a great percentage of whom are involved in totally different professions), the shared interests get fewer and much more mundane: holiday schedules, cafeteria menus, etc. This makes the value of content shared hardly worth the cost and effort of implementing these tools.

If the Social Enterprise is to work, I predict it will be on open networks that can also support private group channels. Personally, the network that I think comes the closest is Google+. Perhaps LinkedIn. I guess Facebook has the functionality but Facebook has become a place for the hyper-personal and that clashes too much with our professional contexts. I would love to hear about companies that are using public networks to connect employees. Perhaps this would be putting your social network links in your corporate directory profile or creating circles and lists for co-workers. Anyone doing anything cool? I ask this question to the professional in you.

Jun 18, 2012

Influencer Perks

There is a new SmartMoney article about how companies are giving special treatment to customers with high online influence. Is this really new? When haven't businesses gone out of their way to cater to and hire people with influence? Astute local business people have always engaged with their community to know which customers are most likely to be potent references or critics. The only difference is that social influence is more visible now because it is online and easier to quantify.

The last paragraph about how this might not be fair sounds particularly silly when you translate it into the analog world. Yes, of course the owner/chef is going to go out of his way to create a great experience for a local foodie or restaurant critic. It doesn't mean the experience for us introverts needs to be bad. It just means that there is a bigger upside on extra effort spent on the taste-makers.

Sep 28, 2011

Anti-Social Business Blowback

A couple of days ago I posted how "going social" will be difficult for most companies. Then, what do you know, I get a real-life example. Just now, I saw this tweet from Bonnie Smalley, A.K.A. Bonniezilla, formerly the voice of "Comcast Cares".

Anti-Social Business

Last week she was saying:

"Dear Comcast: Thanks for dropping my prescription coverage. That was real nice of you."

Dear Comcast.  Thanks

If you don't remember Bonnie, she was the one who responded to you on Twitter when you were complaining about Comcast service. Now a guy named Bill Gerth has the job. Before Bonnie, there was Frank Eliason. Comcast Cares (whether it is Frank or Bonnie or Bill) cannot do much about any issues but it puts a human face on the company and probably defuses some frustration. The Comcast Cares crew seems genuinely concerned about the trouble you are experiencing. I think that Comcast was a pioneer in this area.

I don't pretend to know the details of what is happening between Bonnie and her former employer. But I do know this: something happened to turn the former spokesperson into just another customer who sees Comcast as a lifeless corporate entity. The very opposite of what the Comcast Cares program is trying to achieve.

Ironic isn't it

Sep 26, 2011

Social Business: Revolution or Differentiator?

Thank you Deb Lavoy for writing that Social Business blog that I have been meaning to write (Social Business Doesn't Mean What You Think It Does, Neither Does Enterprise 2.0). Procrastination pays! Deb did a better job than I could have done explaining that social business goes deeper than what we call "culture" as defined by the "corporate values" poster that you would see in a lunch area. You need to go below this surface culture right down to core attitudes about people and business.

Anything social is about people and their connections. To be authentic in social business, your business has revolve around people. You can't fake it. You can't talk about people as "resources" and then turn around expect them to feel like they are members of a community. Treat someone like a resource and he will behave like a resource. He will not invest his personal identity to advocate for an organization. He will save his personality and creativity for whatever community treats him like a person. That may include friendships he has formed at work but not to the organization itself.

The difference between my imaginary article and Deb's real one is a slight change in emphasis. I don't think Social Business will transform all companies. I don't think it is possible to run every business like a social business (although I would like to see every business try). The companies that don't go social will not necessarily just shrivel up and die. However, if one of their direct competitors makes the leap they will be operating at a distinct disadvantage.

Any business that has wide disparity in pay and privilege will have a hard time becoming a social business. People at the top who prosper from the exploitation of the bottom become a faces of the company that are easy to resent. Aggressive management that drives performance through reward/fear (the "coffee is for closers" culture) is an obstacle to social business; so are rigid roles and repetitive tasks that stifle individual expression. Anything that makes employees grumble to their peers after work will inhibit social business success. What people say over beers is what they will want say if you try to make them social. If you are frustrated by their silence. Consider that they are just being polite: "if you don't have anything nice to say, don't say it."

Does every business need these anti-social practices? I don't know; but the ones that do have them think they need them. Remember the testimonies defending executive pay during the financial crisis hearings? As managers, haven't we all experienced passing down pressure received from above? Anti-social business behavior is always justified by a need to be competitive and survive. If the customers only care about price (and not service, innovation, and connection) and the owners only care about growth and profits (like investors and shareholders do), the necessity of anti-social business behavior might be difficult to argue with. But if the company operates in an industry that values the human element of business (as in what humans can offer: ideas, problem solving, listening, trust, relationships, etc.), long-range competitiveness may depend on the ability to transform into a social business.

Jul 02, 2010

Would anyone "Like" this blog?

One of my newspaper clients recently added the Facebook "Like" button to their site and saw large increases in traffic. I was thinking of doing the same thing for Content Here but then I started to wonder "would I Like Content Here?" Don't get me wrong. I LOVE writing this blog and I also find the posts tremendously useful as a resource. Re-reading old posts is a great way for me to recreate an idea that I once had in my head or re-use an explanation for one of my clients. Sometimes I catch myself sending link after link to a client.

So while I LOVE this blog, I am not sure that I LIKE it — at least not in a Facebook kinda way. I guess it all boils down to how I use Facebook: I use it for purely social purposes. I keep strict separation between my Facebook world (where I connect with friends and family, many of whom are not technical) and my professional (Twitter and LinkedIn) world. Some contacts span both worlds — mainly people who I know professionally but also hang out with outside of work. On Facebook, I don't post about anything work-related; just as I don't bore dinner guests with esoteric content management theory or programming stuff. There I talk about things that many of my friends and I are passionate about or would find amusing. On Twitter and this blog, I write about things that I find interesting professionally. I avoid personal subjects like my family, political views, and silly humor. I have a feeling that others either consciously or unconsciously maintain this kind of barrier. How many people would want to confuse their non-technical mother-in-law and the rest of their social network by "liking" the post Code moves forward. Content moves backward? Probably about as many people who want their boss to see their beach pictures which were taken on a sick day.

This probably infuriates Facebook because they want to manage the full social graph — not just half of it. But I don't think they have a great answer for people like me. Some of my friends are working around this issue by creating two Facebook accounts: one for business and one for social. My good friend Brice Dunwoodie has a Facebook profile called Brice Dunwoodie SMG for his "semi-public self." But this isn't really a good solution for Facebook because it fractures their social graph. In order to pull these social and professional aspects together, Facebook would need to get really clever about its privacy and filtering settings which are already overly complicated and controversial.

If Facebook can't have all the social graph, which half would they want? Are they be satisfied with the social side of the social graph which they already dominate? Or would they prefer the professional side (currently owned by LinkedIn)? Historically, Facebook ad revenue has been low considering their huge traffic volumes. This makes sense because general interest content (like news, entertainment, personal statuses, and other content that people might "like" in a Facebook kind of way) has notoriously low CPM rates; not like niche publications that have their audience in a buying state of mind and know what types of products they are interested in. Facebook's bet seems to be that, through their social graph, they can improve the targeting problem for general interest content. If they are successful, they will achieve that lucrative formula of high traffic volume AND high CPM. If they are not successful, they will probably need to think of some other way to monetize that large but distracted audience.

Jun 28, 2010

HTML production for CMS implementations

Most new site CMS implementations (as opposed to site migrations from one CMS to another) start off with a set of HTML mockups. This can be a convenient starting place because, in addition to showing how the pages should look and informing the content model, having the HTML gives a good head start to presentation template development. Ideally the template developer just has to replace the sample "Lorem Ipsum" text with a tagging syntax that retrieves real content from the repository. There are even some graphical tools that help a developer map regions on the mockup with content from the repository. However, often moving from HTML mockups to presentation templates isn't so smooth. Sometimes the HTML has to be re-written from the ground up.

The most common source of problems is when the HTML is too specific. This usually occurs when the designer/developer who produces the mockups is accustomed building static HTML websites where she has full control over everything. HTML and CSS for an CMS implementation has to account for the fact that control is shared between the template and the content contributor. While the template controls the overall layout, the control contributor controls the navigation, text, images, and (with the help of a rich text editor) can even style body content. HTML code that is rigid and brittle breaks when stretched by unanticipated content. Here are some things to look out for.

  • Hard coded height and width dimensions on image tags. Most content contributors don't know the first thing about aspect ratios. They upload a picture and don't understand why it is squished on the page. While most CMS these can automatically scale images (and even if they can't the browser will), they can't all reshape them. While some CMS support cropping functionality for thumbnails, few content contributors know how to use it to precisely shape an image. I usually recommend setting only one dimension (usually width) and then letting the other dimension (usually the height) do what it needs to do. If you really need to control both, you can use this little background image trick:


    <div class="picture" style="background: url(<<horizontally scaled image path>>) no-repeat; height:150px;"></div>

    This uses the image CMS's image scaling to set the width and vertically crops the image after 150 pixels by making it a background image.

  • Overusing element ids. When you are only building a few pages and you want very direct control over elements, there is a temptation to code CSS to reference specific element ids rather than classes. In some cases, this makes sense. For example, when there is only one global left navigation component. However, it makes less sense for anything that a content contributor might have control over — like items in that navigational menu or anything else that repeats. I haven't used DreamWeaver (DreadWeaver, as I like to say) in years but I suspect that the HTML/CSS auto-generation generation prefers using IDs over classes because that is where I see it the most. The worst case I have seen was a sample search result page with every search result individually styled with element ids.

  • Over-complicated HTML. HTML is only going to get more complicated when it is infused with template syntax. It is best to start with HTML code that is as simple and terse as it can be. If a designer is still using nested tables to position things, have him work in photoshop. The more styling you can do in CSS the better. This will make templates cleaner, more efficient, and easier to manage. Plus, your CSS will survive a migration to another CMS better than your template code will.

  • Using images rather than text headings. While the font control afforded by images is nice, avoid using images for anything dealing with the navigation or page names. Otherwise content contributors will not be able to create new pages or re-organize the navigation without a designer to produce images. If you have a top level navigation that is unlikely to change, you can compromise by building images just for the top level page names. A decent strategy is to code the HTML like


    <h1 class="section-heading <<dynamic section name in lowercase >>"><<sectionname>></h1>

    for example:


    <h1 class="section-heading about">About</h1>

    This way, if a content contributor introduces a new section that doesn't have an image or style yet, there is a decent fallback of styled text.

  • Too many layouts. Most web content management systems prefer you to have an overall page layout template (also known as a master page) that is used for nearly all of the pages of the site and then content-type-specific templates that render in the "content area" in the center of the page. Things like the header, footer and global navigation components go in the page layout template. In many systems these two templates are not very much aware of each other because they are rendered at different times within the page generation process. The trick is to determine what portions of the page to put in the global template and what to put in the content-type specific templates. The more you put in the content-specific templates, the more flexibility you have but you also wind up having redundant code that adds management overhead. You also want to make sure that the design does not specify too many options for content presentation templates. In addition to adding to maintenance overhead, this also confuses the user. When lots of variability is required, it is a good technique to design the implementation to allow contributors to build pages with blocks of content. This way, the presentation template just has to define "slots" that contributors can fill (or not fill) with content.

Most of these tips will come more naturally to an advanced HTML that really knows his stuff than a pure designer with design tools that can create HTML. However, even the best HTML developers can have mental lapses when they get into a production groove. It is a good idea to understand the HTML producer's skill-set before assigning the task of HTML production and set expectations. Otherwise, you will probably get a rude awakening when template development is scheduled to start. If this type of HTML production is new to your team and you would like them to learn it, account for this learning by holding frequent reviews of the HTML code as it being produced. Start with the most simple content type (like a generic page) so you can focus on the global page layout and get alignment on static vs. variable components. Over time, your team will instinctively notice HTML code that works for the mockup but will be problematic in a presentation template.

Apr 26, 2010

World Plone Day 2010

Mark your calendars, World Plone Day is on April 28th. World Plone Day is a free, annual, international event designed to introduce the Plone content management system to people outside of the Plone community. This year it is being held in 36 locations in 29 countries. The agenda usually contains a balance of business and technical topics. I just had a look at the Boston World Plone Day agenda and it looks particularly good.

If you have not looked at Plone recently, you should. With the official release of version 4.0 right around the corner, a lot of changes have happened. The architecture leverages more of the new Zope 3 technologies, performance has improved, and development techniques have evolved. A considerable amount of work is being done to make theming easier using tools like Deliverance. Also, the NoSQL movement hype may make the underlying object database (ZODB) less intimidating to architects. From a user perspective, the team has focused on some subtle improvements such as switching the default rich text editor to TinyMCE and creating a new default theme.

Next → Page 1 of 2