Applicant background
I, Michael Harms, am a full stack web developer. I first built ZECpages.com a year ago. I made zecmailer.com before that, as a way to streamline anonymous publishing. They are and will always be open source.
ZECpages is an example of what Balaji Srinivasan has called “Blockchain MVC”, a full stack app built on a global data store. For ZECpages, this means a set of encrypted memos associated with one view key. This makes the data that powers ZECpages durable, auditable, and open.
ZECpages, so far, has these core features:
- A directory of Zcash users, contact info, and their z-addresses.
- A message board where posts, likes, and replies are made via encrypted Zcash memo
- A substack-esque subscription/publishing platform. Users can “subscribe” to other users for .06 ZEC. Users can publish to subscribers using a simple interface that sends z2z memos to all their subscribers.
Motivation and overview
To be with you, I want to feel out this grant process in a lower-stakes situation where I’m confident in what I’m asking for and delivering. I’m only asking for compensation for the quantifiable devops infra costs/maintenance grunt work of ZECpages.
Technical approach
This is all set up. I’ll describe my humble aws config below, but there’s not much to describe here. I’ll keep running the boxes and the app.
Execution risks
ZECpages/ZEC usage might outscale my server setup. Would be a nice problem to have. In this case, I’d be ok with upgrading and shouldering the costs in the short term, keeping open the possibility of a future grant if added costs are large enough to justify it.
Downsides
Centralization of costs. right now I pay the bills. If the block rewards pay it, that’s one fewer financial actor, and by definition more centralized.
Evaluation plan
I’d be happy with 99.9%+ ZECpages uptime. Open to other suggestions for evaluation.
Tasks and schedule
Day 1: The app is running
Day 366: The app is still running
Monthly: Update canary.
Occasionally: Deprecation/NU upgrades for job/lightwalletd servers.
Budget and justification
ZECpages runs 3 ec2 boxes:
- Large instance + Extra Storage - ZECpages’s Lightwalletd instance: lightwalletd.zecpages.com:443
- Large - Dedicated wallet job server (daemon listens for new posts, pays users who receive likes, manages subscription repayments and publishing)
- Medium - The app server itself
ZECpages also maintains a signed warrant canary, updated monthly. (ZECpages - scroll down) Pulling from Nighthawk’s lightwalletd proposal, I’ll call this $150/month.
Total: $550/month
AWS costs - $300/month
Devops Support/Maintenance - 2 hr/month * $50/hr = $100/month
Warrant Canary - $150/month
550 * 12 months = $6600 for 1 year