If you have an idea for a developer, this is your opportunity to pitch it to senior CSC students at Cal Poly looking for a senior project. This is a recurring event because a new round of students graduates every quarter.

Pitch2Programmers matches senior programming students at Cal Poly to projects and mentors. If you have an idea for a student senior project, you can learn more on how to submit it below. Over the past few years, I have worked with 4 students to complete 4 projects.


Student Project Ideas (Updated 9/16/20)

  1. High Quality Text-to-speech
  2. Share Url/notification Widget
  3. Message Board
  4. Gmail to Markdown
  5. Audio Mixer (for podcasts)

High Quality Text-to-Speech

Since 2009, I've been working with Authors. The problem is that it's not until they are fairly deep into the publishing process that they realize they want to change the structure of their book or fix typos. If they had listened to their own book being read aloud (and had others listen as well), they'd be able to produce a better product from the start.

Proofing different mediums: Our brains only see so much on the screen (level 1) (we miss many typos). A level 2 edit occurs when we see words in print - we often find additional typos we couldn't see on the screen. Level 3 is when we can listen to it and we hear things we couldn't see.

Over the years, Amazon Polly (AWS) TTS (Text to Speech) has dramatically improved. But the process I've been using to convert a manuscript to speech is labor intensive. Given there's an API to speed up the process, I want to see if we can build a solution where I could either upload a word doc or provide a URL instead of manually pasting each chapter into the Polly tool (I can show a demo).

Inspired by: Turning Microsoft Word documents into audio playlists using Amazon Polly

It's important that each chapter is a separate audio track (mp3) as explained in the video.

Other TTS Engines

Speech Synthesis Markup Language (SSML)

Most support some form of SSML to improve improve intonation and emphasis and Voice Markup is a part of the HTML5 specification.

More info at https://developer.amazon.com/en-US/docs/alexa/custom-skills/speech-synthesis-markup-language-ssml-reference.html.

(9/17/20) - I am exploring Google TTS and IBM Watson

Share URL/Notification Widget

Goal: Create a html snippet/widget that can enable any static html webpage to give the user the option to send the URL they are on via email or sms without leaving the page. Ideally, in JS that connects to a messaging service like i.e. AWS SNS or Twilio) which allows the user to send a link to the URL of the page your are on. I trust there is an API we can tap into.

See Amazon Simple Notification Service (SNS) | Messaging Service | AWS.


Message Board


I've found it's much more effective to send a link to a message that I can continually update than to send a message I can't edit once it's sent. This is possible using PubWriter which I've already developed.

Since I 'own' the content of the URL (hosted where I have edit access), I can update it and share the link with anyone. This has cut down having to send repetitive emails to multiple people (think of a tutorial you provided). It's also great because if I need to update anything, I can - even AFTER I've hit sent the link.

The problem this solves is that often once we send an email (or leave a voicemail or send a text), we might may need to revise what we sent (often in the case of proposals).

In fact, the page you are reading right now is an example of a message board. It's a one-to-many piece of communication that I'm continually updating.

This 'channel' also allows you to embed video, add audio, or show images. It allows you to keep all your communication with a client or friend in a silo. There's no limit to what you can use to convey your message and it easy to repurpose our message saving you time.

Best of all, the recipient will see the message formatted as you intended (unlike email).

You can also provide your reader with a features like a clickable outline, auto-scroll, dark mode and more. Even text-to-speech. Thanks to HTML/CSS/JS - the options are limitless. Give them the option to easily share the page with someone they feel it could help see project #2. Optional: You can password protect it if you choose.

Note: I'm still flushing out exactly how this will work best with PubWriter since it really is designed to have a single owner.

gMail to Markdown

While there currently is a chrome plugin that allows you go from markdown to gmail, there isn't one that allow you to export a gmail to markdown.

Why? So you can move a valuable email into an offline archive in one click. When the message goes to markdown, it can be used with a wide variety of info/doc managers. It can even be published on a website like this one!

Audio Mixing Board

The goal is to either give listeners a DIY mixing board so they can enjoy a podcast with their own preference of backing music, and narration tempo. OR it can also be used by podcast producers to find out which mix of music & narration the author prefers before the podcast is produced. Because the best podcasts have sound effects and music! Start by pressing play on episode one (Combat Fishing). Then add the intro, outro, and even river background sounds to get a feel for the impact of music and sound effect. You can adjust the volume mix (or mute) any of the modules when you click on the audio icon.

Once the creator (author) has made their choices, the page could be quickly transformed for listeners.


If you'd like to work on any of these (either as part of your senior project or otherwise), let's chat! You can reach me at (805) 225-1251 (voice only) or email me at brian@pubwriter.com.

About me

I've been self-employed since 2009. I graduated from Cal Poly in '94 (Industrial Technology). In 2018, I've became the 'Brewmaster' (program director) for TechBrew - the longest running tech meetup on the central coast. In 2019, I completed a 6-week front end development bootcamp @ CodeSLO and our team won the hackathon with a currency conversion web app. I'm also a Startup School graduate.

One thing I've gained clarity on over the years is that it's easy to burn time and money building cool things. Yes, experimenting is super valuable, but the real fuel (passion) comes from finding a problem worth solving. The problem justifies the means to every action, and when you work toward something bigger than yourself (the problem to solve), people will support you in ways you'd never imagine.


~ Brian