Skip to content

Instantly share code, notes, and snippets.

@mvanveen
Created April 30, 2016 08:23
Show Gist options
  • Save mvanveen/eb3603eaa880b9a9c28cb449e1291df2 to your computer and use it in GitHub Desktop.
Save mvanveen/eb3603eaa880b9a9c28cb449e1291df2 to your computer and use it in GitHub Desktop.
<html lang="en"><head>
<link rel="stylesheet" href="https://gist.githubusercontent.com/mvanveen/2bbecb302bc3bf3f7fcf7b55206cb5a6/raw/a82fec98494cae16062a4d2b6ede6e517b53e399/wiki.css" type="text/css" media="all">
<style type="text/css"></style><style type="text/css"></style><link rel="stylesheet" type="text/css" href="chrome-extension://pkehgijcmpdhfbdbbnkijodmdjhbjlgp/skin/socialwidgets.css"></head>
<body>
<div class="container">
<div class="col-md-offset-2 col-md-8">
<div style="color: rgb(117, 140, 247); padding: 10px;"><h1><img src="http://emojipedia-us.s3.amazonaws.com/cache/ff/37/ff37b42e0a6b61ee2259b61dbe35a7eb.png" style="height: 30px;"><!-- react-text: 10 --> <!-- /react-text --><img src="http://emojipedia-us.s3.amazonaws.com/cache/fa/ab/faab9733a5d6a5a113400dad2fa36192.png" style="height: 30px;"><!-- react-text: 12 --> readingbot<!-- /react-text --></h1><span style="color: rgb(117, 140, 247);">putting pinboard in ur twitter since 2016</span></div><h1><span style="color:rgb(60, 116, 241)">About readingbot</span></h1>
<p>readingbot is a tool to publish bookmarks from your Pinboard account
to Twitter.</p>
<p>Our goal is to offer an intuitive and reliable paid service to
our users.</p>
<p>Unlike some other services which previously offered similar functionality,
we believe in:</p>
<ul>
<li>doing this one thing</li>
<li>doing it well</li>
<li>charging for it</li>
</ul>
<p>By sticking to these 3 things we believe we'll be able to keep the lights on
and users happy- hopefully avoiding unfortunate outcomes where we'd have to
sunset our operations and leave our early adopters out in the cold.</p>
<h2><span style="color:rgb(60, 116, 241)">History</span></h2>
<p>readingbot was founded in 2016 when my friend <a href="http://jonmitchell.net/about">Jon</a> lost the ability to post
his pinboard bookmarks to Twitter.</p>
<p>Several small scripts and sprints later, we've built a tool to help people
easily publish curated feeds of the content they consume on Pinboard via
Twitter.</p>
<h2><span style="color:rgb(60, 116, 241)">Business Model</span></h2>
<p>It costs us money to run the site. Our current operating costs are $75/month* just
to prototype the site, and we believe these costs will scale as our userbase grows.</p>
<p>We are uninterested in taking outside money to run this service and we don't want to foot the bill for running
this service ourselves.</p>
<p>So we're bootstrapping and charging our users a monthly or yearly fee.</p>
<!--
### We might cost less in the future, no promises
<span style='color:red'>should we really write thie?</span>
Currently we can't afford the capital expenditure for dedicated hosting
like [some of the more established bookmark players](https://blog.pinboard.in/2012/06/going_colo/),
so we need to rely on cloud hosting and recouperate our costs on a monthly basis instead of offering
a one-time fee.
In the future, we might explore new pricing options as we iteratively
engineer lower cost hosting infrastructure solutions.
### Giving back
<span style='color:red'>should we really write thie?</span>
We also care a lot about content and the people who make it, so we intend
to give our users the option of including extra funds which will be
dedicated to compensating authors of great content on the web.
-->
<h2><span style="color:rgb(60, 116, 241)">Technology</span></h2>
<p>readingbot is written in Python on the backend. The front-end is pretty
straightforward Bootstrap and React.js. We use PostgreSQL for data
storage, celery for the distributed task queue, and are currently hosted
on Heroku for the time being.</p>
<h3><span style="color:rgb(60, 116, 241)">We won't track you</span></h3>
<p>While we might have a little page bloat as a single page app, we don't
include any tracking plugins of any sort in our JavaScript.</p>
<p>We believe that our users are living, breathing human beings
who can provide us with valuable feedback directly rather than
data points feeding into our KPIs and OKRs.</p>
<h3><span style="color:rgb(60, 116, 241)">Single page app design, really?</span></h3>
<p><code>¯\_(ツ)_/¯</code> It's 2016 and we're hip and young.</p>
<p>Our UI is meant to be interactive and work well across a lot
of form-factors. It isn't something people will want to archive
or interact without javascript.</p>
<p>If you feel very burdened by this design choice there is
an underlying REST API which I am happy to document.</p>
<p>We are very concerned about promoting open web standards as
technologists but we also believe in using the right tool for
the job, sometimes to the detriment of overall page size.</p>
<h2><span style="color:rgb(60, 116, 241)">Financials</span></h2>
<p>We aim for transparency around our costs and business operations.
You can find our financials <a href="">here</a>.</p>
<h2><span style="color:rgb(60, 116, 241)">Who are you guys?</span></h2>
<p>We're 3 white dudes in California.</p>
<p><a href="">Morgan</a> is pretty good at quake 3 and a socialist. He's also a pretty stellar technologist.</p>
<p><a href="">Jon</a> is an ex-rabbi and burns men in his day job. He also likes reading and writing things a lot, sometimes on the web.</p>
<p><a href="http://mvv.io">Michael</a> is a semi-employed engineer and software "entrepreneur," but you probably guessed that already.</p>
<p>Drop us a line, we'd love to hear from you.</p>
<h1><span style="color:rgb(60, 116, 241)">Contact</span></h1>
<p>You can always reach us at <code>[email protected]</code>.</p>
<hr>
<ol>
<li>Heroku Postgres - $60/month</li>
<li>S3 Hosting - $2/month</li>
<li>API dynos - $20-100/mo</li>
<li>Task queue dynos - $20-100/mo</li>
</ol>
</div>
</div>
<script src="/build/wiki.min.js"></script>
<script type="text/javascript">
// #################################################
// # Optional
// default is PNG but you may also use SVG
emojione.imageType = 'png';
// default is ignore ASCII smileys like :) but you can easily turn them on
emojione.ascii = true;
// if you want to host the images somewhere else
// you can easily change the default paths
emojione.imagePathPNG = './assets/png/';
emojione.imagePathSVG = './assets/svg/';
$(document).ready(function() {
original = $('body').html();
var converted = emojione.toImage(original);
$('body').html(converted);
});
// #################################################
</script>
</body><div></div><div></div></html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment