最新文章
-
Prismira:两年半的迭代与成长
作为一名互联网打工人,我一直有记账的习惯,去年写过一篇记账九年的文章,也简单介绍过我做的产品 Prismira。Prismira 是一个开发了两年多的记账、对账产品,从一个小小的脚本文件开始,长大到现在功能齐全的平台。恰好它进入了新阶段,我想趁这个时候梳理复盘一下这个项目的开发历程,以及我走过的弯路。
-
快与慢
你有多久没有认真地写过一篇长文了?随着互联网对个人时间的侵蚀,我已很少精心写作,最近一次心血来潮,却恍惚意识到自己快丧失写作能力了。越是写不出来,内心越急,越想早点结束,导致草稿箱里堆满了几年前烂尾的草稿。我想先探讨一下写作的“快”与“慢”。
-
记账这九年:工具、方法与心态的变化
近些年来,记账对我而言早已不只是记录数字的动作,而是一种值得期待的仪式。每到月初我都会抽出一点时间,好好梳理一下过去一个月的收支与资产变化,这是自己每月一次财务复盘的仪式感。直至今日,我记账已有9年之久,期间经历过自动化记账带来的便利,也遇到过因为工具的缺失而被迫中断记账。直到近三年来找到适合自己的记账方式之后,记账从此对我而言不再是一件困难的事,自己也逐渐享受这个过程。
-
Flutter 的状态管理
Redux 诞生于前端社区,它的目的是用来解决复杂前端应用的状态问题,但它的设计理念并不局限于前端,甚至可以用在 Android 和 iOS 开发上。redux.dart 是基于 dart 语言的 redux 实现,配合 dart 生态,你可以在 Web 或者 flutter 上使用它。Mobx 也是诞生于前端社区的数据管理库,与 redux 不同的是,它是基于响应式的。
-
页面的加载性能优化方案
为什么要进行性能优化?在回答这个问题之前,先问问你自己,你会等待一个页面加载超过10秒吗?或者你会使用一个点击某个按钮需要几秒之后才会有响应的页面吗?我想大部分人应该不会。很明显人的耐心是有限的,如果页面的加载时间,页面的响应时间超出了他的耐心,那么他很大可能会选择离开这个页面。这就是为什么要进行性能优化的原因了。性能优化就是让用户尽可能快地打开页面,尽可能流畅地使用页面。
-
React Router 的跳转中断与自定义 UI
文章解析 React Router 的 Prompt 与 getUserConfirmation 如何自定义跳转确认,并说明其依赖 history 库延迟或还原路由状态,仅适用于 SPA。
-
Flexbox
Flexbox 是指 CSS 中将元素的 display 规则设置为 flex 或者 inline-flex 时所展示出来的布局模式。它主要为了解决高效灵活地布局、对齐,以及移动端上页面布局的难题。在 Flexbox 尚未出现之前,页面的布局通常都是用浮动或者绝对定位和相对定位来实现,但传统的布局方式在越来越酷炫和高大上的设计稿前面,就显得表现力不足以及布局变得麻烦而且不够灵活。
-
巴掌大的迷你主机云轩 H170 使用体验以及 Homelab 搭建
19 年年底逛 SMZDM 时无意间看到云轩 H170 的文章,一下子就中毒了。这是一台 mini-STX 准系统主机,体积迷你、价格便宜,主板+机箱+电源套餐只要 369。纠结一两天后便下单,打算用它跑 GitLab、CI 等对 CPU 有要求的服务,把群晖 DS 918+ 上的杂项服务迁出来。
-
使用 PVE 运行 Clash 旁路由虚拟机实现透明代理
在没折腾旁路由之前,家里的翻墙都是在路由器上安装 SS 服务,在路由层面实现代理,这样联网的设备都可以享受到透明代理的好处。但是路由器性能太差,成了瓶颈。后来在迷你主机上运行旁路由,翻墙性能直接跑满带宽。只是安装过程蛮折腾的,因此在此记录一下方便后人学习,也方便自己以后查阅。
-
神奇的 <link> 标签
按照标准的定义,<link> 标签其实是用来表明当前页面与外部资源的关系: The HTML External Resource Link element (<link>) specifies relationships between the current document and an external resource. —— MDN一个最简单的例子,便是我们最熟悉的样式文件引用了




