Maeiee Weekly No.5
文章
- 《Flet:用 Python 开发跨平台 Flutter 应用》
- FletUI 基于 Flutter,并简化为命令式编程模型
- 复用 Flutter 优势:性能、组件库……
- 语言无关,目前实现 Python,未来实现 Go、C# 支持
- 平台:网页、桌面应用、PWA、移动应用
- 架构:DOM Server(Fletd)
- 将 DOM 变化转为 Flutter 组件操作指令
- 实现前端语言无关
- 从声明式范式改回命令式范式
- Web App 构建
- 用户操作通过 websocket 发送到服务器
- 服务器返回更新的 UI 给用户
- 需要保障前后端畅通
- FletUI 基于 Flutter,并简化为命令式编程模型
- 《An Agenda for Life With Org Mode》
- 将活动分为四类:
- Todo
- 有截止日期的 Todo
- 有指定日期的 Todo
- 反复做的 Todo
- 对应于 4 类 Org Mode 特性:
- 普通 TODO
- 带有 DEADLINE 的 TODO
- 带有 SCHEDULED 的 TODO
- 带有 STYLE 属性为 habit 的 TODO
- org-agenda-files 变量告诉 Agenda 分析哪些文件
- 默认是
~/org/
- 默认是
M-x org-agenda RET
a
最常用,周视图
- agenda custom command:
- 向 dispatch 菜单添加自定义条目,创建定制 Agenda 视图
- 将活动分为四类:
- 《0to1: doom-emacs and org-mode》
- org-directory 默认被设置到
~/org/
- org 文件默认会放到这里
- Org capture
SPC X
,大写的 X- Personal todo:存放到
org-directory
下的todo.org
- Personal note:
C-c
保存,存放到org-directory
下的notes.org
- 快速打开
:e notes.org
- 快速打开
- Journal:存放到
org-directory
下的journal.org
- Personal todo:存放到
- org 文件达到 100k(10w) 行也毫无压力,放心
- org-agenda 参考教程:《An Agenda for Life With Org Mode》
- org-directory 默认被设置到
- 《Organize Your Life With Org-Mode》
- 知识库对生活至关重要
- 以高水平构建过去生活的细节
- 总结经验,解决新问题
- 回顾
- 2011 年参加 Org Mode 讲座,被吸引
- 90% 电脑使用时间在 Org Mode
- 不是编辑器的问题,平时的小编辑操作都是用 vim 完成的
- Org Mode 是对 Emacs 的扩展
- 像一盒乐高积木
- 用积木搭建个人管理系统(PIM)
- 这套知识可以使用几十年
- 一种全新的软件系统的例子,打破应用壁垒
- 尽可能简单,但又强大
- Org-mode 的基础是文本文件,开放性,各种工具读写
- 嵌入链接各种数据
- 个人可定制的工作流
- 用 Org-mode 实现的功能:
- Todo List
- 记笔记
- 项目管理
- 电子表格计算
- 日历
- 联系人管理
- 文件管理
- 博客
- 知识库
- 量化自我
- 生活记录
- 参考资料管理
- 书签收集
- 知识库对生活至关重要
- 《Evolutional Steps of Computer Systems》
- 计算机系统的进化步骤
- 计算机交互方式进化:
- 数值系统:专门进行数学运算
- 特定应用系统:解决某个单一问题
- 以应用为中心的系统
- 以信息为中心的系统
- 无应用系统
- 以应用为中心的系统
- 第一个通用操作系统,70 年代的 PC 广泛流行
- Windows、macOS、GNU/Linux 都归为此类
- 严格以应用为中心的系统:文件由程序管理
- 目前的 Android、iOS 属于这一类,Windows3.1
- 松散以应用为中心的系统:引入文件管理器
- Windows95 SP2 引入我的文档
- 以信息为中心的系统
- 将所有信息集放在一个 "应用程序 "中
- 中间没有任何应用程序或文件边界。
- 早期尝试 IBM OS/2、微软 OLE 或 NeXT,都没有重大成功
- Plan 9 的 Acme
- 一个应用程序中结合了各种应用程序,没有广泛分布
- 被移植到 Windows 或 GNU/Linux
- Unix 的管道
- 数据被放入管道。在管道中被组合的工具对数据进行操作
- 《Linux 和 Unix 哲学》,某种程度上实现了以信息为中心的概念
- 现代尝试
- 个人维基:TheBrain
- 微软 OneNote
- GNU/Emacs + Org Mode
- 当我用电脑工作时,我几乎不离开 Org 模式
- 通过 Memacs 将各种外部数据转成 org mode
- 以信息为中心的系统
- 无应用程序边界,无严格分层文件系统
- 使用标签进行多分类
- 通过命令打开各种试图
- Org Mode 没有任何限制,如果你能想到,就能在 Org-mode 中做到。
- 无应用系统
- 计算机为信息和功能提供使用界面
- 没有文件系统和应用程序的概念。
- 当下的文化:基于供应商、应用
- 也许开放源码运动以缓慢但持续的发展将能够形成一个真正的无应用环境
- 这就是我们需要的一切。其他一切都只是限制性的分心。
- 《What App am I Using for What and How?》
- 作者 karl voit,资深 Geek
- 试图在生活各个方面做出慎重决定
- 不断反思和重新思考常见模式
- 文件同步:Syncthing、Unison
- 给文件打标签:filetags,filetags.el
- 日历:Org Agenda,Thunderbird
- 任务管理:Org Mode,Orgzly
- 笔记:Org Mode
- Read it later:Org Mode
- 归档:SingleFileZ
- 浏览器历史:Memacs
- Firefox2Org:copy-as-org-mode
- 页面变化检测:Follow That Page
- RSS:NewsBlur
- 重复文件:rdfind,duff
- 图片管理:文件夹
- 写 PPT:LibreOffice,org-reveal
- PDF 阅读:Okular,pdf-tools
- PDF 标注:pdf-tools
- 写博客:lazyblorg
- 搜索视频:ytfzf
- 下载视频:yt-dlp
- 看视频:mpv、VLC
- 编辑视频:Kdenlive
- 备份:rsnapshot
- 矢量绘图:Org+PlantUML,Inkspace
- 作者 karl voit,资深 Geek
- 《Human Programming Interface》
- karlicoss 开发了一个 Python 包,用来管理人生
- Human Programming Interface 是一个 Python 包,管理个人数据:
- 社交网络:发帖、评论、收藏
- 阅读:电子书、PDF
- 标注:高亮、注解
- 待办事项、笔记
- 健康数据:睡眠、锻炼、体重……
- 数字痕迹:对于个人是非常重要的,但是通常都是孤立的,这不对,让人沮丧。
- Human Programming Interface 是一个 Python 包,管理个人数据:
- 为什么?
- 个人数据孤立在各个云服务和各种设备中
- 大量数据在云服务里,自己没有掌控权
- 只能眼巴巴看着服务商,大发慈悲地做点对你有益的事
- 怎么做
- 收集自己的散落的数据
- 生产力
- 历史记录
- 消费数字内容
- 维持身体健康
- 个人财务
- 避免脱机状态下什么都做不了
- 思考学习工具
- 摆脱平庸的界面
- 交流协作
- 备份
- 区区一个 Python 库是怎么解决问题的?
- 将数据以一种方便方式呈现,便于分析
- 为什么不用数据库?
- 虽然数据库效率高,容易读取
- 但往往不够灵活,无法适应你的数据。
- 吹得这么神,包里都有啥?
- 时间跟踪:arbtt、Rescuetime
- 温湿度记录
- 健康数据:血压、锻炼、体重、睡眠
- 社交:GitHub、FB Messager 消息、Goodreads……
- OrgMode 数据访问
- PDF 文件跟踪
- RSS 数据
- Remember The Milk 任务管理
- karlicoss 开发了一个 Python 包,用来管理人生
- 《Pyscript: A Browser-Based Python Framework for the 99%》
- 背景
- 由 Anaconda 开发,co-founder and CEO Peter Wang
- 并非针对专业 Web 开发者,而是针对 99% 非专业 Web 开发者而设计的
- 受到 HyperCard 的启发,是一种 Web 之前的网络开发套件,包含一种脚本语言
- 应用场景:教学目的,帮助新手避免搭建环境等粗活,直接进入开发
- 工作原理
- WebAssembly 是一个虚拟的CPU指令集,具有32位的地址空间;而且它可以进行64位的运算。
- 编译器 Emscripten 可以用来将大多数C和C++代码编译成 WebAssembly。
- Pyscript:Python 放入浏览器,获得浏览器能力,而不牺牲生态兼容性
- 未来发展
- 还处于 alpha 阶段,提升速度,包大小、包加载优化
- 使构建用户界面变得容易
- 背景