Skip to content


A new take on Email to Blog

tl;dr I have a new son, Jasper, and now need to share photos with friends and family. The existing tools (social networks, email, and SMS) are too invasive or only work with a handful of people before becoming SPAM so I built my own system using a static site generator and an email server. I think it is a novel configuration that may be interesting to people working on self-hosting projects or small group collaborations. Configuration details to follow in later posts.

Social Sharing

I have spent the past couple of weeks wrestling with a seemingly simple question: how do you share photos without using a social network? The recent birth of my son Jasper means that I have a newfound need to share pictures with family and friends but all the existing solutions are either invasive (social networks) or will only work for a handful of participants before turning your happy news into SPAM (email, SMS). Interestingly, I have found a rather large portion of my friends who are fine with social networks in general but not for pictures of their children. I also have a number of friends who use social networks for everything but feel SPAMed by people’s baby pictures there. I set out to find some better options to address this fairly widespread need.

Defining the need

Like any good technologist I started out by defining what I need from this social sharing tool and then turned those goals into technical requirements. The general goal is to have a tool that lets my wife and I privately share photos and text with family, builds an archive or record of what we post, will work with everyone’s software setups, and is easy enough to use that we actually use it. As I worked through some of the details of these goals I distilled them into these requirements:

  1. Must run on servers I can trust.
  2. Must use software people are already using or very general purpose free software.
  3. Must use authentication for reading and posting but must not require me to manage passwords for each user.
  4. Must not flood people with announcements.
  5. Must have browse-able archive.
  6. Must be able to post from and read on iOS devices.
  7. Cannot be harder to add content to than it is to send an email.
  8. The hosting software must require minimal maintenance and have minimal security risk.

The Candidates

With requirements in hand I started looking at the available technology out there for a solution. Five emerged for consideration: commercial social networks (facebook, instagram, etc), free software social networks (diaspora, frendika, etc), email, mailing lists, and blogs.

Commercial social networks

Facebook, Instagram, etc all run on commercial servers designed to datamine your social interactions and profile all participants so they fail criteria 1: run on servers I can trust.

Free software social networks

Diaspora, frendika, etc could be good fits for this situation, especially because, of all the self-hosted options, these offer the easiest fine-grained permission management. Unfortunately no one in my social circle is using them, including myself, so they fail criteria 2: use software people are already using.


Email actually comes pretty close here, which is probably why it is the main tool my friends use for sharing photos of their children with family. Unfortunately, it does flood people so it fails at criteria 4 and it does not provide an archive for recipients so it fails criteria 5. People can build their own archive by saving all their messages but this only works for original recipients, not someone we add later or might have forgeten to include on some individual messages.

Mailing list

Mailing lists actually solve almost all the issues with email. You get a browse-able archive. People can manage their own subscriptions so they can unsubscribe if they are getting too many messages. People do need new passwords but the listserv software manages storing those and has built-in password reset capabilities. Unfortunately, I know many of my family and friends simply get so much email or have too few tools to effectively filter the email they get that even something as easy to process as a mailing list would be burdensome or get ignored. Ultimately, this still fails criteria 4: don’t flood.


This also hits a number of the big requirements, especially using a static site generator to achieve the low maintenance and security risk of criteria 8, but some challenges remain. The biggest issues are authentication and ease of posting. Since I will be running the web server I can use whatever authentication I wish but I do not want to have to setup and maintain passwords for all of my friends and family. Posting is simply hard, especially from a mobile device, and that is where my custom work comes in.

For authentication I looked into simplifying things with RSS. Many of my family members do use RSS readers for news browsing on their iPads and RSS clients are general enough that I would be comfortable telling family to install one in return for baby photos. I would also feel better about supporting individual passwords for client software than I do for general web pages because I know the websites will be viewed on multiple devices (requiring multiple times the password support). Sadly none of the free software RSS readers for iOS support authenticated feeds so this fails criteria 6: iOS required. I ended up settling on simple authentication with shared credentials for all readers and moving posting authentication to the email submission. If anyone knows of a free software iOS reader that can handle authenticated feeds, I would love to hear about it. The Android spaRSS reader worked wonderfully if anyone is looking.

For ease of posting I had a problem. Logging in and posting to a blog is just not easy enough, especially if you are posting a gallery of photos, which is the main purpose of the project. I knew that if things were more complicated than sending an email we would just end up falling back to sending emails and only our parents would ever hear about Jasper. I started looking at existing email-to-blog tools but all of these either require you to trust your blog software with your email login credentials or trust a third party to process your email and post your updates. I decided that email-to-blog was the right approach but that having my blog check email for me would break criteria 8: server software should have low maintenance and security risk. In the end I decided the only blogging software durable enough for me to configure and then ignore were the static site generators, none of which have an email-to-blog submission tool that I could find. So I needed to build my own.

The Plan

What I ended up designing, and am now almost done building, is a specially configured email server (postfix) that is set to only accept email from a couple of people, to pass those messages to a local script that converts them into blog-formated plain text files with accompanying directories of images, and then feeds that into a static site generator (pelican) sitting on my webserver (Apache). I used whitelists and some anti-SPAM tools on the mail server to control who can post based on their existing email addresses, which means my wife and I can post without needing new passwords or to remember to send the post from special accounts. Using this approach it is possible to turn postfix into a sort of file-based application server that may be useful in a number of situations. I think this approach has particular potential for those looking to build a system somewhere between the simplicity of static site generators and the complexity of dynamic tools like WordPress.

Currently the mail server configuration and the static site are both complete but the script to move the email messages along is still in process. I will write more detail in the next few posts on how I configure both postfix and pelican for this project and what some of the security considerations are for this using the kind of delegated authentication scheme.

Learning in Public

For the last six weeks I have been running an experimental project at Columbia, an online course called “Reclaim a personal space for education online” but which I think of as “Learning in Public”. The course runs on the P2PU platform and is modeled on the Domain of One’s Own initiative, a fantastic effort to teach students how to build and operate their own online spaces using WordPress and other Free Software. I’ve learned a number of lessons from the first half of the course and produced some resources that I hope will be of use to anyone else who is interested in running their own DIY online course.

Moving online

When Domain of One’s Own first launched at the University of Mary Washington (UMW) it was tied to an undergraduate course on digital storytelling that provided scaffolding for learning the mechanics of how to set up WordPress and operate your own internet domain. Since I work primarily with instructors, who are generally unable to fit such a commitment in a full language course load, I designed this course to operate entirely online and replaced the storytelling scaffolding with an exploration of what it means to move your private learning into a public space. As supporting materials I also threw in a strand of topics giving a technological introduction to the web (what are web sites made of, how are they shared, etc). There are never enough opportunities for general technology education and, while we are being reflective about the effects of using technology, it seemed appropriate to support a similar exploration of how that technology actually works, even if only in outline.

Learning in Public

I have felt for a few years now that we need to do a better job teaching people how to navigate and participate effectively in networked communities. Over the years I have talked with many people running Summer of Code, Wikipedia Education, and other similar community internship or engagement projects. Almost all the participants in such programs run into the same troubles identifying and navigating social norms, learning to use the public communication tools that tie such communities together, and publicly sharing their own work in useful ways.

This is perfectly understandable since I know of no concerted effort to teach these skills, which people often seem to assume are natural abilities for “Digital Natives” or are unaware of how real and valuable such skills are. I think this is the most glaring oversight in all the core curricula out there. For that matter, we could probably run a semester-long technology course on “Technology Triage and How To File Useful Bug Reports” to the great benefit of all involved and society at large. This course is not that one, nor does it include most of the material I would include in a a real “Learning in Public” course since the main focus remains on building personal websites. But, at least informally, this is my first attempt to build up and publish some of those materials where I hope they can do some good. If you are interested in weaving some of those materials into your own courses in future, you might take a look at these three of the pieces I’ve put together so far: What is a Website?, Ethnography of an online community, and Copyright Soup: CC, OER, and Bears, oh my!.

Is any of this actually what people want to learn? So far all of the participants have been focused on building their sites but I am not rushing to judgment. This semester’s group is too small a sample size to draw conclusions from (see Advertising). The material I’ve built so far has been nicely reusable in other contexts around the LRC so I consider that a sign that I am on the right track. Whenever initiatives reinforce each other like that it is always a win in my book, which was part of my goal in designing this experimental course out of mutually reinforcing but ultimately independent tracks. If you are putting together your own online course, I would strongly advise a similar reusable module approach.

The Tools

After running Domain of One’s Own for a couple of years at UMW the origianl organizers of the project spun off a hosting company to help other universities manage similar projects and to provide individual hosting geared towards the needs of the educational community. They call that company Reclaim Hosting and I knew they were going to be the perfect fit when I started planning out this course. They have a great combination of strong values, great support, and rock bottom pricing and I am very happy to have gone with Reclaim for this project.

Since a big part of the goal for this course was to expose instructors to the realities of taking a course in public online so the normal university course tools were not going to work. For better or worse all of the big “MOOC” platforms (obligatory reference to moocthulhu) are locked down to particular instructors and institutions so I built the course on P2PU, a post-OpenCourseWare, pre-MOOC open fever open education platform. That had some pros and cons.

P2pu is effectively a public wiki and suffers from all the common signs of wiki graveyard syndrome, lots of half-finished courses or courses that have not ben run in years and where it is unclear how you could get control of the material should you wish to run on yourself. There are also some signs of technological aging on the platform itself that made me wish I were using WordPress instead. From the fact that they have re-designed the main website to focus on how to run an in person learning group while hiding the actual course listings, I think they are aware of the difficulties and are trying to focus on reusing the existing courses that were finished and are useful. Unfortunately, this makes it all but impossible for people to discover new courses on the site, which should be one of the main advantages of using such a platform as opposed to just building things on your own blog.

While I think it is great that p2pu gives people a public platform for building freely licensed course, if I were doing it over again I would just build it in a Reclaim Hosting account. Maybe next time I’ll do that and use it as an opportunity for a BuddyPress component. In the meantime I will be completing the course as initially planned so that I don’t contribute to the wiki graveyard, but as I go I am also migrating all the content over to github at this address: so the materials can be more widely used.


P2PU’s advice is right on point here. Organize a local community, even if offering the course publicly, and start doing that organizing a month before you start the course. This is where I need to put the most work next time around. While the course has generated decent interest, people seem very reluctant to join a course already in process, especially people who work at universities. If I had spent more time lining up all the interested parties before starting the sessions, the course would have been larger and the discussions correspondingly more diverse.

Reuse and the future

As I mentioned earlier, I have found a number of ways to reuse much of the content created through this course, whether in individual consultations with instructors, a forthcoming group workshop trying to condense the course into one hopefully memorable afternoon, or as a series of blog posts coming out later this month. I also think some of it may end up in the Reclaim Hosting documentation. One of the things that continues to surprise me, even 13 years after my first free software/free culture experiences, is just how widely things can spread when they are freely licensed. My introductory lessons about WordPress may be useful for Reclaim not because they are the world’s best but because almost all of the copious WordPress documentation online is under a restrictive copyright license and reclaim freely licenses their own documentation.

After this term I want to keep some of the momentum going by collecting other general technology and education material in the same github account. Feedback or contributions are certainly welcome. If you don’t have a github account, you can just send me an email. I’m ian@ this site’s domain name.

Self-publishing – Some H5P tests

Once you have your own space online you can start using some of the great authoring tools out there to build native online materials and then host them directly on your site. This helps your students by eliminating online third parties from your classroom while opening up a number of different tools and possibilities for you.

FLEATing Summer

FLEAT 6 banner

(Originally posted on the Columbia LRC Blog)

What happens when you gather hundreds of professionals in the language education field from multiple continents and give them the run of Harvard’s campus during a few summer days? The FLEAT6 conference.

A number of us from the Columbia Language Resource Center spent the week in Boston participating in this year’s FLEAT conference, which was co-sponsored by the International Association for Language Learning Technology (IALLT) and the Japan Association for Language Education & Technology (J-LET). While the conference program covered a range of topic too wide to summarize here, including everything from how to use Wikipedia as a tool for Academic English instruction to the impact of particular spaced-repetition flash card tools on the study of Mandarin, a single theme did run through the proceedings: what to do with the language lab in a post-language lab era?

Over the past 15 years digital networks have spread the ability to listen to or record audio into computers and phones in every dorm room. This has undermined the traditional role for the language lab as a dedicated space for students to go and either listen to pre-recorded language practice materials or record their own practice sessions. Adapting to this networked reality has freed up significant resources for new types of collaborative and more flexible language education initiatives, many of which were discussed and had their merits debated during FLEAT6. I saw three major approaches to this change, though my view was necessarily limited since there were more sessions running than any one person could have attended. These three approaches each focused on a different aspect of the work done by modern Language Resource Centers: the use of space, the building of materials, and the building of bridges between institutions.

Re-examining the use of space by LRCs was the most common approach I saw to re-examining the role of the LRC, largely because all discussions included some re-purposing of older spaces. The simplest version of this approach suggests converting old lab space into open collaborative space for students to use as they wish. As Steve points out, this leaves open a number of questions about effectiveness. Also, as Jonathan Perkins discussed later in the conference, LRCs are unlikely to win a competition for best open collaboration space when libraries and student centers are already far along in that effort. Most discussions favored a more nuanced approach that incorporates re-purposing old space as part of larger changes to the activity of the LRC.

The most novel of these new approaches I saw was presented by Jonathan Perkins of the University of Kansas, who presented a compelling argument that building Open Educational Resources (OER) is the competitive advantage for LRCs in today’s university environment. He argues that LRCs are ideally positioned to coordinate cross-institution construction projects that can harness the expertise of multiple instructors as well as the pool of talented graduate student workers available on our campuses. Because of the low costs involved, materials can be distributed freely online, saving students in your programs thousands of dollars while increasing the visibility of those institutions building the materials. His case study is Между нами, a freely available Russian language textbook newly released to the world and written by instructors at Brown, the Portland State, and by our own Alla Smyslova at Columbia. I am a big supporter of community-built and freely sharable resources so I was particularly happy to see this approach working on such important resources and doing so through a continent-wide partnership of world-class universities.

These kinds of partnerships are also the focus of the third major strategy for the evolution of the LRC, though the focus here shifts from material production to direct student engagement. In this model, the LRC fosters collaborations between individual language classes, as in the CIRCLE and multiple other projects, or between whole programs and institutions, as in the Shared Course Initiative between Columbia, Cornell, and Yale. As with the construction of OER materials, this strategy builds on the LRC’s position outside of the departmental structure at most universities. Building cross-institutional collaborations can require the investment of time to build relationships around the country, expertise in collaboration tools and strategies, and even specialized spaces like distance learning classrooms or demonstration and workshop rooms. Making these investments in a single LRC can be much more efficient than building parallel capacity in each interested department. I am most familiar with this strategy since it is the foundation of so much of the work we do at Columbia’s LRC, but we were in great company pursuing this strategy at the conference.

Adapting to the challenges and opportunities of the post-language lab era is a large task but that task is made easier by the kinds of open discussions among leaders in the field that took place at FLEAT. I look forward to returning next year to continue discussing that and other areas of shared concern across the field.

Free Technology: Transcribing audio interviews with Transcriber and Audacity

(Originally posted on the Columbia LRC Blog)

Welcome to the first post in our new “Free Technology” blog series. In this series we will look at some of the best free technologies out there and how you might use these tools to teach or study languages. In today’s post we will look at Transcriber and Audacity, two tools that help with transcribing interviews from audio files.

A word about “free”

Before we look at the tools it is worth mentioning what kind of “Free Technology” you can expect in this series. There are many definitions of the word “free” and in education you run into different ones all the time. There are the services that are “free” until you start using them regularly, those that are free to you as a teacher but charge money of your students and colleagues at other institutions, and there are all those services online that are free as long as you let them follow you while you teach or track your students as they learn.

This series is about a different kind of free, “free” as in “freedom”. We will be looking at technology built by free and open source communities and meant to be shared. These are tools with no up-sell, no hidden fees, and no registrations required, the kind of tools you can give to your students with confidence. Audacity and Transcriber are great examples of such tools.

Read More →