Why Interns should Blog

14 Sep 2012

At the University of Waterloo in Canada, all engineering students enroll in a co-op program (“co-op” is Canadian for internship). We alternate between four months of work and four months of study, graduating after five years with eight study terms and up to six co-op terms (two years of work experience)! Consequently, there’s usually Waterloo interns at many tech companies in Canada and the USA.

Now, for software engineering students in my class, we’re required to write technical work reports that usually ends up being 20 to 30 pages or longer, for four co-op terms. The goal is to assess judgement and writing ability, but the format is very rigid and unsuitable for many development internships.

One day, it occurred to me what a great win it’d be for everyone if even a portion of this effort could be turned into public blog posts. To illustrate the potential, of the 80ish students in my class, just three blogged about their internships to my knowledge. Of those three, all of them made the front page of Hacker News! In fact, one was even invited to present a TEDx talk and got his next co-op through a blog post.

With ideas from some of my classmates and my mentor Ben Kamens of Khan Academy, I composed a proposal arguing why we should let students write public blog posts for their work reports:


Dear Software Engineering administrators,

I’ve received some feedback from students in our class regarding the existing work report format. As an academic rep, I’d like to communicate this to you.

I’ve been told that the format feels contrived. Ideally, when one encounters a problem during a co-op term for which one needs to make a choice, one would conduct an analysis, write a report based on it, and then implement the solution. However, what many of us usually do is to just hold an informal discussion and make a quick choice after that. When it’s time to write the report, students may “exaggerate the problem and pretend the choice was made after a full study.”

There are also students who resort to submitting self-study reports or confidential reports if their work term did not produce an appropriate subject that will satisfy the required format. Further, in many startup environments, there is little time to write a full report analyzing alternatives; it is preferable to just pick one and ship it, replacing/fixing it later if required. Fast iterations and user-facing work is emphasized, and it’s just not practical to write a report of this size and scope for purely internal purposes.

I’m not recommending reducing or eliminating work reports altogether. Rather, I would like to propose an alternative:

For one work report submission, Software Engineering students can choose to write and publicize a technical blog post instead of a synthesis/analysis work report.

Why a blog post?

Blog posts are an important new form of media to complement and broaden a student’s writing repertoire. Many startups have accompanying blogs that increase community engagement and drive traffic to their product. These blog posts could bring publicity for Waterloo’s co-op students and Waterloo’s co-op program. Because these blog posts will be public, students will be motivated – not to satisfy a checklist of requirements – but because their co-op employer, their colleagues, professionals in industry, and potentially a future employer will be reading it (this has actually happened).

Further, not only do blog posts help increase publicity for the student, but they may actually be helpful to the community. For example, I have a friend writing a self-study report comparing various server push technologies and analyzing which are the most appropriate in certain scenarios. He was also considering writing a report on which mobile platform, Android or iOS, to develop for first. The amount of work and research put into a self-study work report would serve as a fantastic community resource if made publicly available as a blog post or a series of blog posts.

My co-op mentor and lead developer at Khan Academy, Ben Kamens, repeatedly encourages all full-timers and interns to blog, even during company hours. On the topic of interns writing blog posts, he has also said:

  • raises the market value of interns
  • great practice for shipping work into the real world – blogs are mini products, and getting familiar with moving past the “it’s not ready to ship” inertia is invaluable”
  • possible that a community will spring up around the post – might be invited to speak at a conference as a result

Here are some examples of students in SE 2014 who have written blog posts based on their work terms and reaped significant benefits:

Jamie Wong wrote a blog post about everything he did at Khan Academy. This found its way to the front page of Hacker News with 102 points and subsequently attracted 12 000 visitors over 2 days. Jamie received a response from Peter Norvig, AI researcher and director of research at Google, congratulating him on his work.

Another student’s blog post on a co-op project received more than 200 points on Hacker News, was top post for a day on the programming community on Reddit, and was viewed by more than 20 000 visitors the day it was posted. As a result of this blog post, this student received multiple employment offers (one of which will be his next co-op term) and was also invited to present at a TEDx event.

Wen-Hao wrote about his project at Square, PonyDebugger, which attracted 260 points on Hacker News.

From the perspective of work report markers, enforcing consistent marking might be an issue. Whereas the existing work report template is very well defined with unambiguous checklists, marking a blog post will leave more to the marker’s discretion and judgement. Instead of specifying a rigid structure, for a public blog post, we may just want to set out some guidelines. As a starting point, here are some possibilities:

  • be on a technical subject
  • have a minimum length requirement in number of words (can split up into a series of blog posts)
  • be publicly accessible
  • make an effort to promote to the relevant audience?

Grading could just be pass/fail; let the public nature of the blog post serve as the incentive to make an effort.

If there are no other issues that we can’t work around, I think this would be a great thing to try at least once.

I truly wish this could be something very useful, not just for students themselves, but for the technical community in general.

Thank you for your time and consideration!


I’ve received a response that the old work report format is being reworked to be less rigid, which is great to hear. However, there’ll have to be more work done to have the blog post proposal fleshed out and accepted, but at least one professor likes the idea. We’ll see where it goes.

Leaving public artifacts is a great way to not only provide natural incentives, but to allow for unbounded creativity and enrich the world at the same time. I sincerely wish that this would encourage more students who might have been thinking about blogging to blog.

If you have any anecdotes about blog posts, or what I could do to convince my school, I’d love to hear them!

Also, I’m overdue myself for another blog post about Khan Academy (I blame working on my 30-page work report :P). Stay tuned!