Total Pageviews

Sunday, 15 March 2026

几款程序员常用的笔记App

 如果你也有记录笔记的习惯,可以看看我推荐的这几款App,从开箱即用到支持复杂定制,从云端同步到本地存储,总有一款适合你。
飞书

程序员一般记录的都是自己的技术心得,实践历程,别的App还得下载,如果你正在飞书办公的话,直接打开飞书文档就可以写起来了。

打开知识库新建文档,还有很多模版可以选择,所以对于单单说“记录”这个需求,飞书是肯定够用的。

并且写完之后,可以设置成公开,直接分享给其他人,也能获得其他人的收藏和评论,查看被多少人查看等等。

如果你想导出的话,飞书只支持导出Word、PDF,对于程序员最需要的Mardown格式反而没有,如果呼声够大的话,应该也会加上。

数据存储在飞书的服务器上。


语雀

下载地址:https://www.yuque.com/download

语雀是阿里巴巴出品的产品,支持IOS、安卓、MacOS、Windows、iPad。详细信息大家可以去官网查看一下。

语雀使用起来感官上要比飞书舒服很多,很干净。

App操作逻辑也比较清晰,如果是日常记录,非常够用了。

同样也支持非常丰富的模板,对于普通人来说,写文章、写心得、记录旅游、记账、分享,这几样都能满足。

不断的换App的最大问题恐怕还是颜值,其次就是数据存储上免费版够不够用。

这种支持多端文档同步的App,不可能不收费,不然就活不下来,这几天程序员圈子里闹的沸沸扬扬的老牌博客站「博客园」就是一个例子。

所以大家看自己的情况,免费版够用就用免费版,付费会员看自己接受程度,我90%的人估计都是轻度用户。

导出支持的格式比较多 : word、paf、markdown、jpg、语雀文档

当然,你的数据也是存在它自己的服务器上。


我来(wolai)、Notion

下载地址:https://www.wolai.com/

对于Notion我只是轻度试用了一下,没有太深入使用。所以这里着重介绍一下wolai

(我知道有很多人把Notion玩出了花,一边用作知识库,一边还能直接建站。)

wolai,我用起来就类似一个国内版的Notion。

这是它的界面,左侧是文件列表,右侧是文件内容。

支持块级双链,方便你串联知识,不过我对这个块级双链用的不太好,没有那么多东西可以串联。

但是这也是它的一大特色,每一段文字、图片、表格等等都会视为一个块,可以充分发挥你的想象。但也是要求你有比较多的积累素材才能把它真正用起来。

同样也可以生成分享链接,设置权限等等。

也支持绑定微信服务号,给服务号发消息即可保存在wolai中。

颜值方面和丝滑度方面,个人感觉比语雀略逊一筹。

同样数据存储在云端,多端同步。

    PS: 上述几款App,差不多都是向Notion看齐。但由于Notion服务器问题,国内使用不是很方面,所以受众有限。

Flomo ,浮墨笔记

下载地址: https://flomoapp.com/

和上边介绍的几个不同,Flomo更加轻量化,记录的内容也更加碎片化,适合你突然来的灵感,或者一时的感悟。(记录长的肯定也可以)

如果你平时不是要写那种长篇大论的文章,或是记录庞大的知识体系,Flomo的使用场景真的非常适合。

类似你随手发了个朋友圈一样,简单快捷,不拘泥于语法,内容至上。回顾自己的笔记时,靠左侧的标签分类来查找,标签支持多级。

笔记之间也支持链接,但需要pro会员才可以。因为我没有尝试,所以不知道是不是双向的链接,不过猜测是的。

绑定Flomo的微信服务号,可以通过给微信的Flomo服务号发消息来进行快速记录,这一点和wolai是一样的。

Obsidian
下载地址:https://obsidian.md/

如果你想找到一个功能齐全,同时又完全把数据保存在本地的App,那一定绕不开Obsidian。

同时也有非常多的主题可以下载,可以自由选择各种markdown配色,所以说它的颜值不是问题,问题在于你能不能接受它的繁琐。

如果你不使用插件,其实也能满足你绝大部分的场景,除了链接分享。因为它的文件都是在你的本地。

在我使用起来,Obsidian还是更偏向于文章类的长篇的记录,如果记录的片段过于琐碎,只会让左侧的文件目录更加庞大。(当然有类似插件如Thino,支持你记录碎片内容)
它就类似于vscode,有非常活跃的插件社区,基本上你能想到的笔记功能,都能在里面实现。但这同样也是它的缺点,因为对于不想折腾的人来说,或者是非程序员,看起来有一些上手难度。

比如你要实现使用github来进行笔记的云端同步,那就得使用Obsidian Git插件,同时还要知道github的使用方法,这无疑都是门槛。

如果你愿意折腾一下的话,Obsidian绝对会越用越顺手。基本的写作还是要求你懂一些Markdown语法来达到最好的效果。当然,完全不懂的话,也不是什么问题,就只管写就好了。

如果说你觉得Obsidian太过于繁琐,上手难度太高,我还有另一个轻量化的App推荐给你:Typora
下载地址:https://typora.io/

typora也是一个markdown编辑器和阅读器,我在它的很早期的bate版本就使用过。

它和Obsidian一样,都支持markdown语法的实时渲染。

同时它更加的轻巧,不像Obsdian一样有很多插件需要研究,看起来是一个让你专注于写作的好帮手。

它的官网下载应用包只有Mac和windows,所以我也不清楚它有没有移动端App。

支持Markdown文件的导入和导出,导出格式也比较丰富。

我不再使用的原因,就是因为它过于简洁,不太符合我的需求。我还是希望多多少少可以有一些辅助功能,让记录的文字更加灵活和有序一些。

不过现在又多了一个理由:它开始收费了。


Memos
官网地址: https://www.usememos.com/

最后一个要介绍的是可以自建服务的笔记App。

这里推荐的是Memos,但不仅限于Memos,还有一些其他非常优秀的开源项目。

这是Memos的界面,有没有感觉有点熟悉,他早一些的版本功能其实和Flomo是基本一致的。

Memos后端使用的是Go,前端使用的是React,完全开源,支持Docker部署,目前(2024-07-15)版本是V0.22.3。

作者的更新内容也比较有争议,砍掉了很多大家觉得好的功能,也有删掉又加回来的功能。

所以非常建议大家自己部署时,锁定版本,只要够用就行。毕竟更新再频繁,到底还是一个笔记App,核心还是记录。

后面如何部署和二开,我会单独再写一篇,这里只介绍部署后的功能点。

数据存储问题。可以部署在云服务器,本地内网环境,家庭Nas环境里,数据存储全看你的盘大小。不过云服务器访问速度看你的服务器配置。

Api功能。这一点放在Flomo里也是收费功能,Memos可以生成Token,你可以在外部调用自己的接口,进行读写操作。也可以配置webhook,用来通知飞书、钉钉、微信等

分享。点击分享可以直接生成一个链接,这个链接就是你部署后的地址。

双向链接。发布一条笔记时,可以链接另一条笔记,两个笔记之前就可以相互点击跳转,其实这个链接就是上边分享用的链接。

主题。它的主题是需要你自己写入css文件,目前我还没发现有写好的别的主题,不过它自带的样式其实还算简洁,这也是我选择它的一个原因。

最最重要的,就是定制/魔改。如果不是为了定制,其实完全都不用选memos,浪费服务器钱,浪费时间,最后只换来了其他App一样的效果。

通过定制可以实现独一无二的UI界面,更多的接口功能。

也可以同时学习React和Go,在实践中提升自己的技术,因为这算是一个有着非常明确需求的项目,你做什么功能完全比着Flomo抄就可以了,同时技术栈还比较新,比什么用xx前端框架复刻一个饿了么这种项目要有用的多。

那你可能就要问了,我废了这么多劲儿,最后得到的不还是一个普普通通的笔记App吗?有什么意义吗?

首先能问出这个问题,肯定是已经在技术上丧失热情了,把研究技术当成费力不讨好,想必咱们之间也没什么好说的。

这个问题就类似有人问:为什么你一个钓鱼佬,十次有九次空军,还有一次钓到地球,还花那么多钱去买装备?半夜还要去钓鱼?这有什么意思吗?

这就是热爱,你他妈的懂不懂啊。
总结

首先我们排除一个连免费版都没有的选项:Typora。

前提是平时有写作习惯。如果没有写文章记录的习惯,直接使用微信朋友圈、小x书这类App就可以了。

如果你懒得折腾,但需要分享给朋友或社群看,喜欢写长文的话,推荐飞书、语雀、wolai这一类的App,写完了直接就可以发链接。喜欢分享感悟,碎片笔记,可以选择Flomo,写完后导出图片进行分享。

如果你热衷于折腾,平时也有大量写作和记录的需求,又想要一个完全离线版的笔记App,Obsidian是值得一试的。

而Memos适合你喜欢研究前端和Go,并且记录和分享的内容也是一些碎片笔记。

甚至不是因为你多么需要笔记App,而是单纯的为了把玩一个有趣的开源作品。

这就是唯一有意义的意义。

还有很多App,像是印象笔记、思源、为知、oneNote、有道云笔记等等等等,太多了。

味道

 

Why Coding is Sooooo Good?

 

Coding, also known as programming, is a highly valued skill in today's digital world. Here are several reasons why coding is considered to be so good:

1. Creativity and Problem Solving:

Coding allows you to unleash your creativity and express your ideas in the form of software or applications. It empowers you to build something from scratch and solve real-world problems. Through coding, you can bring innovative solutions to various challenges and make a positive impact.

2. Career Opportunities:

The demand for skilled programmers continues to grow rapidly. Learning to code opens up a wide range of career opportunities in industries such as technology, finance, healthcare, gaming, and many others. Whether you choose to work for a company or pursue entrepreneurship, coding skills provide a solid foundation for a successful and fulfilling career.

3. Flexibility and Adaptability:

Coding equips you with the ability to adapt to ever-changing technologies and environments. With coding knowledge, you can easily learn new programming languages, frameworks, and tools as needed. This flexibility allows you to stay relevant in the fast-paced world of technology and opens doors to exciting projects and advancements.

4. Empowerment and Independence:

Coding empowers you to turn your ideas into reality without relying on others. You gain the independence to create your own projects, websites, apps, or even start your own business. By acquiring coding skills, you become self-sufficient and capable of bringing your visions to life.



5. Continuous Learning and Growth:

Coding is a field that constantly evolves. It requires continuous learning and staying updated with the latest developments. This aspect of coding ensures that you are always challenged and encourages personal growth. With each new project or problem you tackle, you expand your knowledge and skills, making coding an intellectually stimulating pursuit.


In summary, coding offers numerous benefits, including the opportunity for creativity, a wide range of career prospects, adaptability to changing technologies, empowerment, and continuous personal growth. Embracing coding can open doors to a world of possibilities and enable you to make a meaningful impact in the digital landscape.

Solving cold starts with Cloudflare Workers

 

Did this post load fast? 🚀 This is in no small part because the content was delivered to your browser using Cloudflare's Workers. Workers provides a high performance global network with a 0ms cold-start time.

Serverless today

Cloud providers can allocate machine resources on demand, scaling automatically to the requirements of your business. Two fundamental technologies make this possible today: virtualization, and containerization.

Virtualization is the process of running a virtual instance of a computer system in a layer abstracted from the actual hardware. Most commonly, it refers to running > multiple operating systems on a computer system simultaneously.

opensource.com - https://opensource.com/resources/virtualization

Containerization is the packaging of software code with just the operating system libraries and dependencies required to run the code to create a single lightweight executable.

IBM - https://www.ibm.com/cloud/learn/containerization

Whether it’s Amazon’s ECS or Lambda, Google’s Cloud Run or Cloud Functions, or any of the other modern offerings – services are built on these two fundamental concepts.

Code deployed as containers to these cloud services becomes a small independent workload that can be passed around and run on different hardware. For all intents and purposes this works really well, but providers make a trade-off between keeping your workload ‘hot’ (ready to accept requests) and the cost of occupying infrastructure.

Typically you can take over the trade-off with controls given to you from the provider, but you will need to decide: low cost with longer initial start times, or hot and ready with a higher cost. Businesses generally accept the cost associated with always having a workload running to eliminate the 'cold start', especially when the workload has to load a user experience like a web application.

Lambda cold starts

My team at ASICS Apps struggled with this very problem last year when experimenting with Next.js and AWS Lambda. We were attracted to the atomic nature, and billing per execution time. Using the custom server feature of Next.js, our demo projects looked very promising, and didn’t require a large time investment from our infrastructure team. Unfortunately we couldn't find a reliable solution to bring down cold requests consistently under three seconds, unacceptable for business requirements and set standards. This is especially the case when a lambda is delivering a visual interactive experience. I'm unsure I would recommend Lambda to serve a modern application experience like with Next.js, but can definitely see value for background tasks, or service to service cron workloads.

In the end, we chose AWS Elastic Container Service configured to guarantee a hot workload (never shutting off). Meaning we have accepted the cost of running a container every minute of every day to guarantee an instance response to user requests. Can we do better?

Cloudflare Workers

Faced with recent problems with Lambda at work, and not wanting to pay monthly to run this simple blog, Cloudflare Workers was the perfect solution.

You can think of Workers as a giant web browser running in the cloud. When a request is handled by Workers it’s akin to opening another tab. This comparison works well as a mental model because the Workers runtime uses the V8 engine — the same engine used by Chromium and Node.js. Instead of needing to package code in a container, you only need to adapt the worker syntax for application entry points. Unlike your web browser, the code is executed inside the server environment allowing your application access to privileged secrets, rendering content server-side, or completing costly calculations.

This blog is built with the latest version of Nuxt, an opinionated hybrid Vue framework that delivers high quality web experiences. With Cloudflare Workers I no longer worry about choosing between cold starts or paying a premium in addition to containerizing my application. This blog is now instantly available anywhere in the world, with very low latency and no cold starts.

Comparison: AWS Lambda vs ECS vs Cloudflare Workers

FeatureAWS LambdaCloudflare Workers
Cold StartYes (can be several sec)No (0ms, always ready)
Pricing ModelPer execution timePer request, generous free
DeploymentPackage as zip/containerJavaScript/Worker script
ScalabilityAutomatic, event-drivenAutomatic, edge network
LatencyVariable, cold start riskVery low, global edge
LimitationsCold starts, memory/timeRuntime limits, JS only

This table highlights the main differences between AWS Lambda and Cloudflare Workers. Cloudflare Workers stands out for its instant availability and global reach, making it ideal for web applications and APIs that require low latency and no cold starts.

Conclusion

In summary, Cloudflare Workers offer a compelling solution for developers seeking instant, global availability and minimal latency for their web applications. By eliminating cold starts and simplifying deployment, Workers empower teams to deliver fast, reliable experiences to users worldwide. If you’re building modern web apps or APIs, it’s worth considering Cloudflare Workers for your next project.

from  https://jamesvan.ca/post/cf-workers-coldstarts