# 27 Pearls：生活技能与大学智慧应用

Company: Upwork
Service: 应用开发
Period: 2022-12 - 2023-04
Tech: TypeScript, Expo, React Native, Google Maps, Redux, NestJS, Express.js, GraphQL, MongoDB, Twilio, SendGrid
Google Play: https://play.google.com/store/apps/details?id=com.twosevenpearls.mobileapp
App Store: temporarily unavailable
Canonical: https://webanion.com/zh/portfolio/27-pearls-life-skills-and-college-wisdom-app

一款应用，把《27 Pearls of College Wisdom》一书变成学生每周完成的目标，每完成十个，就能获得一个自己选择的奖励。大学生活的每个阶段，从入学到教授、课程直至离校，都变成一份简短的具体目标清单，完成后学生一滑即可划掉。基于 React Native 和 Expo，后端采用 NestJS、GraphQL 和 MongoDB，在 2022 年至 2025 年间与同一位创始人历经四份合同完成。

## 完整故事

从一本学生只读一遍的书，到每周都能完成的目标，还有一位一再回来合作的创始人。

### 撑不过第一周的建议

<p>上大学意味着第一次独自安排课表、应对教授、上课，并规划未来的职业。27 Pearls 背后的那本书由一位大学教授兼前职业顾问撰写，书中正是为这个阶段准备的、来之不易的建议；但暑假里读过一遍的建议，很少能撑过开学后忙碌的第一周。</p><p>作者希望这本书出现在学生本来就在的地方，也就是他们的手机上，并把书中的道理变成他们会去做的事，而不只是记得读过的内容。</p>

### 大学生活的每个方面都变成目标

<p>应用按照书中涵盖的领域划分大学生活（入学与课表、教授、课程、简历打造以及毕业离校），并在每个领域里填入小而具体的目标：约见你的学业导师、注册下学期的课程、创建求职用的在线账户。学生完成一个目标后把它向右滑动，筛选器会显示每个领域已完成的内容。</p><p>对学生来说，对大学模糊的担忧变成了本周一张简短的清单。对作者来说，这意味着书中的建议恰好在有用的时刻送达，无论是在手机上还是平板上。</p>

### 每完成十个目标，就有一份学生自选的奖励

<p>习惯需要坚持下去的理由，所以每完成十个目标，就会解锁一份学生为自己挑选的奖励：出去吃顿晚饭、看场电影、散个步。学生自己列出清单，把最想要的那项置顶，兑现之后再把它滑走。</p><p>这个循环刻意做得很小。它让学生一周又一周地回到应用中，而这正是作者所需要的，让这本书在最后一页读完之后很久仍在发挥作用。</p>

### 一套代码库，同时发布到 iPhone 和 Android

<p>应用只用 React Native 和 Expo 开发一次，就同时发布到 iPhone 和 Android，后端基于 NestJS、GraphQL 和 MongoDB，并用 Twilio 做验证、SendGrid 发送邮件。单一代码库让作者在之后的每一份合同中都控制住了成本，因为每一项改进都会同时到达两个平台。</p><p>目前应用已在 Google Play 上架，iPhone 版本也即将回归，发布过程详见<a href="/portfolio/27-pearls-mobile-release-and-store-submission">应用商店提交的故事</a>。</p>

### 四份合同，一位创始人

<p>第一份合同凭借超出需求的额外价值赢得了这项工作，此后创始人在 2022 年至 2025 年间又三次回来扩展这款应用。回头客是无法伪造的评价：用创始人的话说，这项工作带给他们的“比我们曾经梦想的还要多得多”，而下一个项目当时已在筹划之中。</p>

### 一本持续育人的书

<p>对学生来说，27 Pearls 是他们在人生早期最艰难的转变中随身携带的教练，有本周的清单，也有清单尽头的奖励。对作者来说，它把一本书变成了每周都能触达学生、并能随着新的领域和目标不断成长的产品。对创始人来说，它证明了自己找到了一位一份合同接一份合同、交付总是超出要求的合作伙伴。</p>
