Link Search Menu Expand Document

使用 iPad 满足移动状态日常工作

此文用于整理 iPad 作为移动生产力工具的思路。同时,测试新购置的二手iPad妙控键盘。

文章的编辑,整理,发布都在 iPad 上进行和完成。

背景介绍

2018 年时,一时冲动购入一台 iPad Pro 10 寸版。之后,又一时冲动购入了一根笔,用作日常记录工作使用。无奈相对于纸质笔记本还是太沉,笔又经常没电一直没有形成生产力。最后,iPad 沦为主力刷视频工具。前几日,我又觉得 iPad Pro 这样用太可惜了,还是需要继续挖掘一下作为移动生产力工具的潜质。同时,也能拯救我总是要背着 15 寸 Macbook Pro 出门的窘境。

经过一番调查和总结,发现键盘是主要生产力提升的瓶颈。因为日常工作还是已键盘输入为主。想提生 iPad 的生产力,必须要有一个外接键盘。于是在闲鱼入手了一个二手妙控键盘,键盘到了接好后,尝试了几款常用打字软件,输入效率明显提升,已具备编辑文本文件的能力。加上蓝牙鼠标加持,可以简单当做一台小型笔记本使用。

基本的移动生产力工具已经具备,接下来就是折腾上面的应用,已支持更多实用场景。我个人日常主要用到的几个场景:

  • 写代码
  • 写博客
  • 在服务器上做一些验证工作
  • 偶尔编辑 PPT 和 WORD 文档
  • 做笔记

写代码

在 iPad 上写代码这件事,因为没有运行环境实,其现起来相对困难。有几种思路:

  • 购买一个远程主机,实用客户端全程操控。华为生产的 Pad 多使用此方案提升其移动生产里。同时,华为云也提供Windows云主机服务。
  • 购买一台云上 linux 主机,使用 iPad 上的终端工具登陆,进行相关开发。我推荐 termius 这个应用。它有登陆信息保存,保持会话,设置终端样式等功能,可以非常高效的操作云端 linux 主机。
  • 架设云开发环境。对于一些 web 应用,可以使用类似于 codesandbox.io 的 SaaS 服务,通过浏览器进行开发和调试。不过,因为网络原因,此类服务加载时会出现不稳定的情况,需要自行想办法克服。:)

写博客

写博客,在 iPad 上体验是最好的。iPad 上有很多写作工具,特别是支持 markdown 规范的编辑应用已经非常成熟。应用商店内可以找到很多体验丝滑,功能强大的工具。我推荐使用 Taio 这个应用。它的快捷键和实时预览功能可以使写作更专注内容本身。配合上 iCloud 同步功能,可以做到自动同步 Macbook 和 iPad。这是,我已经初步实现“带着 iPad 出门,随时可以写作”的目标了。

本文后半段会介绍作为一个工程师,如何做到“带着 iPad 出门,随时写,随时发布”的效果(对于博客来说,随时发布并没有什么用。这里只是一个工程师的“技术纯粹性”追求。)。

在服务器上做一些验证工作

操作服务器主要靠终端,和在服务器上的工作工具。终端我一直使用 termius ,只要有网络就可以链接到云端主机进行工作。它本身非常高效。

因为工作特性,我的很多验证工作主要基于 k8s 集群为主。所以云端要一些在命令行模式下可以方便管理集群的工具。我推荐使用 k9s 作为命令行内的集群管理工具。

如果需要进一步了解 k9s ,请参考 《k8s 崩溃修复》文章中的介绍。

偶尔编辑一些 PPT 和 Word

我安装了 WPS 和 Office 套装,对文档进行编辑。但整体碍于屏幕尺寸,效果并不理想。多数情况还是用来看文档。

做笔记

做笔记的工具之前用过一段时间 OneNote。OneNote 自带的笔触效果很好,画图自动变成规则图形这些功能都很棒,但同步不顺畅,经常需要反复折腾几次才能同步电脑和 iPad 。这件事使我很受折磨。

后来,随着“备忘录”应用本身的能力增强,加上 iCloud 无缝同步的顺滑体验。使得“备忘录”成为现在日常做笔记的主力工具。

前段时间,因为学习一门课程,需要在 PDF 教材上做课堂笔记,我购入了 Goodnote 。经过一段时间的使用,我感觉这个工具很好。它拥有 OneNote 的多种笔触,画图自动变成规则图形,圈选移动等工具。这些极大的提升了日常画概念草图和讨论问题的效率。同时,它通过 iCloud 同步笔记。这使得我可以在电脑和 iPad 上顺利同步笔记,带来了极佳的体验。

自建一套可以通过 iPad运维的个人博客

以下内容用来记录如何自建一套可以通过 iPad 进行日常运维的个人博客。以下内容出于“技术纯粹性”追求,并不会提升博客编写效率。

之所以说是一套,因为它本身包括云应用的一些必要要素:

  • 一个运行在云端的容器集群
  • 一个用于发布构建的流水线
  • 一些在 iPad 上运维的工具

一个运行在云端的容器集群

这里云端容器集群使用 k3s 搭建,具体部署方式可以参考官网说明。之所以使用 k3s 的主要原因如下:

  • 刚好有一台闲置的 2c4g 的阿里云主机,不用来做点什么有些可惜。
  • 在单台机器上搭建容器集群,k3s 是当前最成熟的方案。
  • k3s 调度接口完全兼容 k8s,已有的构建流水线无需调整(我之前在 k8s 集群上也部署过博客系统,所以这部分工作可以复用)。

k3s 集群与 k8s 集群相比,有一个比较大的差异。Ingress 默认使用的是 traefik,配置语法上与常用的 nignx 不同,需要单独编写。

一个用于发布构建的流水线

流水线本身与应用有很大关系,因为博客使用 jekyll 从 markdown 生成静态网站。所以,流水线需要具备 jekyll 构建环境。

之前一直免费使用阿里云的“云效”和“容器镜像服务”来构建个人应用。博客的构建流水线之前也是如此。只是之前 jekyll 都构建是在电脑上完成后直接将静态网站推送到仓库,通过流水线构建 nginx 服务镜像并发布。当我们将博客的编辑环境移动到 iPad 上后,本地构建环境就不存在了。所以,就需要增强流水线,使流水线可以构建静态网站。详细的配置步骤我已经记录在 使用“阿里云-云效”构建 jekyll 博客内。

除流水线之外,还需要有一个云端的 git 仓库,用来托管博客的源代码和文章。我使用国内的 gitee 作为仓库。因为国内 git 服务有良好的网络,可以与阿里云流水线更好的协同工作。

一些在 iPad 上运维的工具

工具主要有两个:

  • 一个优秀的 markdown 编辑器。 这里推荐 Taio 这个应用。这个应用本身可以读取 iPad 上任意文件夹,并编辑 markdown 文件。自带的编辑和预览工具非常强大,免费版本已经足够支持日常写作需要。付费版本还可以导出多种格式文档。
  • 一个 git 客户端,用以管理博客的更新。我在使用 Working Copy 这个应用。目前,我还在体验中,暂时不做评判。

附录

以下内容是开始着手准备搭建 iPad 博客编写环境的一些记录。

博客格式

使用 Markdown 格式作为博客基本语法。Markdown 格式有以下好处:

  • 纯文本形式书写
  • 使用简单标记整理格式
  • 在不同平台上有丰富的编辑器支持
  • 可以被多种博客系统编译成美观的静态网页

基本流程

博客服务

方案一

博客服务使用静态博客框架 Jekyll 或 Gatsby 。 需有有编译流水线支持。

  • 优势:结构简单,可快速部署。Github 默认支持 Jekyll 编译和托管。
  • 劣势:需要编译环境,iPad 等便携设备无法运行。

方案二

博客服务使用无头CMS服务,页面使用 Gatsby。 主流无头CMS框架主要使用 NodeJS 运行。

  • 优势:搭建好后需要编译环境,通过后台 web 界面即可编写博客。
  • 劣势:无法分布式管理博客数据。 离线编辑需要手动复制到后台管理界面内。

落地计划

方案一已经实施。需要完善以下内容:

  • [完成]通过云效进行编译发布,摆脱本地环境限制
  • [完成]在iPad上安装 git 客户端,从 git 仓库同步博客
  • [完成]通过 iPad 上 Taio 编辑器编写博客
  • 整理一个开箱即用的环境搭建手册