{"pageContext":{"index":293,"total":364,"name":"2024-12-14","items":[{"node":{"frontmatter":{"title":"2024 年 Node.js 性能现状","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"nodejs","url":"https://nodesource.com/blog/State-of-Nodejs-Performance-2024","author":"Rafael Gonzaga, Lizz Parody","translator":"","tags":["performance"],"priority":1},"html":"<hr>\n<p>nodejs 22总体上是性能提升，但部分有性能回退，如stream.destroy, zlib, TextDecoder</p>"}},{"node":{"frontmatter":{"title":"2009到2012年间iphone一键上传的视频随机播放","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"other","url":"https://walzr.com/IMG_0001/","author":"Riley Walz","translator":"","tags":["video"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"70% 问题：关于 AI 辅助编码的残酷真相","publish":true,"cover":"https://substackcdn.com/image/fetch/w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F824c5f99-e192-43a9-9ee8-2b9637e18fa0_2400x1350.jpeg","showCover":null,"date":"2024-12-14","category":"AI","url":"https://addyo.substack.com/p/the-70-problem-hard-truths-about","author":"Addy Osmani","translator":"","tags":["code"],"priority":1},"html":"<hr>\n<p>AI 工具比初学者更能帮助有经验的开发人员</p>\n<p>接下来通常发生的情况遵循可预测的模式：\n您尝试修复一个小错误\nAI 提出了一个似乎合理的更改\n此修复破坏了其他一些东西\n您要求 AI 修复新问题\n这又产生了两个问题\n如此重复\n这个循环对于非工程师来说尤其痛苦，因为他们缺乏心智模型来理解真正出了什么问题。当有经验的开发人员遇到 bug 时，他们可以根据多年的模式识别来推理潜在原因和解决方案。如果没有这个背景，你基本上就是在用你不完全理解的代码打地鼠。</p>\n<p>AI 并没有让我们的软件变得更好，因为软件质量（可能）从来都不是主要受编码速度的限制。</p>\n<p>AI 的作用是让我们更快地迭代和实验，通过更快速的探索有可能带来更好的解决方案。但前提是我们保持我们的工程学原则并将 AI 用作工具，而不是替代良好的软件实践。</p>"}},{"node":{"frontmatter":{"title":"Roquefort - WebGPU 流体模拟器","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"javascript","url":"https://github.com/Bercon/roquefort?tab=readme-ov-file","author":"Jerry Ylilammi","translator":"","tags":["3d"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"jsesc - 安全无错转换jvascript数据为文本","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"javascript","url":"https://github.com/mathiasbynens/jsesc","author":"Mathias Bynens","translator":"","tags":["stringfy"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"mark-when - 时间线markdown","publish":true,"cover":"https://github.com/mark-when/obsidian-plugin/raw/main/screenshot.png","showCover":null,"date":"2024-12-07","category":"nodejs","url":"https://github.com/mark-when/obsidian-plugin","author":"mark-when","translator":"","tags":["markdown"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"postgres_for_everything - postgres快速入门知识库","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"database","url":"https://github.com/Olshansk/postgres_for_everything","author":"Daniel Olshansky","translator":"","tags":["postgres"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"react 技术栈2025","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"frontend","url":"https://www.robinwieruch.de/react-tech-stack/","author":"Robin Wieruch","translator":"","tags":["react"],"priority":1},"html":"<hr>\n<p>Shadcn UI很火</p>"}},{"node":{"frontmatter":{"title":"使用 Pgvector 和 JavaScript 实现过滤语义搜索","publish":true,"cover":"https://www.timescale.com/blog/content/images/size/w2000/2024/08/Implementing-Filtered-Semantic-Search-Using-Pgvector-and-JavaScript_vector-embeddings-2.png","showCover":null,"date":"2024-12-14","category":"database","url":"https://www.timescale.com/blog/implementing-filtered-semantic-search-using-pgvector-and-javascript-2/","author":"Team Timescale","translator":"","tags":["AI","postgres"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"图片转svg转换器","publish":true,"cover":"https://github.com/visioncortex/vtracer/raw/master/docs/images/screenshot-02.png","showCover":null,"date":"2024-12-14","category":"frontend","url":"https://github.com/visioncortex/vtracer","author":"Vision Cortex","translator":"","tags":["svg"],"priority":2},"html":"<hr>"}},{"node":{"frontmatter":{"title":"cerbos - 支持各种语言的授权解决方案","publish":true,"cover":"https://github.com/cerbos/cerbos/raw/main/docs/modules/ROOT/assets/images/how_cerbos_works.png?raw=true","showCover":null,"date":"2024-12-14","category":"nodejs","url":"https://github.com/cerbos/cerbos","author":"Cerbos","translator":"","tags":["authorization"],"priority":2},"html":"<hr>\n<p>支持RBAC也支持自定义A(ttribute)BAC</p>"}},{"node":{"frontmatter":{"title":"react-spinners - 各种加载动画react组件","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"frontend","url":"https://www.robinwieruch.de/react-tech-stack/","author":"David Hu","translator":"","tags":["react"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"css解决Feature image的自适应问题","publish":true,"cover":"https://ishadeed.com/_astro/modern-css-feature-image-1.uGThWk3Z_1d0qvj.webp","showCover":null,"date":"2024-12-14","category":"frontend","url":"https://www.robinwieruch.de/react-tech-stack/","author":"Ahmad Shadeed","translator":"","tags":["css"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"Uniffi for React Native 简介：Rust 驱动的 Turbo 模块","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"mobile","url":"https://www.robinwieruch.de/react-tech-stack/","author":"Mark Mayo， Tony Haile","translator":"","tags":["react native"],"priority":1},"html":"<hr>\n<p><a href=\"https://github.com/jhugman/uniffi-bindgen-react-native\">Unifii</a> for React Native 是一个 uniFFI 绑定生成器，用于通过 Turbo Modules 从 React Native 使用 Rust。</p>"}},{"node":{"frontmatter":{"title":"各种语言各种日期格式合集","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"javascript","url":"https://codate.io/","author":"@Badreddine Ibril","translator":"","tags":["date"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"如何使用 React + DOM 制作 3D 地形渲染器","publish":true,"cover":"https://trashmoon.com/blog/2024-12-06-photo.jpeg","showCover":null,"date":"2024-12-14","category":"frontend","url":"https://trashmoon.com/blog/2024/terrain-renderer-with-react-and-dom/","author":"Saman Bemel Benrud","translator":"","tags":["react"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"用于浏览器和 Node.js 图片处理的 libvips，使用 Emscripten 编译为 WebAssembly","publish":true,"cover":"","showCover":null,"date":"2024-12-14","category":"nodejs","url":"https://github.com/kleisauke/wasm-vips?tab=readme-ov-file","author":"Kleis Auke Wolthuizen","translator":"","tags":["WASM"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"真正真实的 AI 个人资料图片","publish":true,"cover":"https://www.piclooks.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fstart.73df26ee.jpg&w=1920&q=75","showCover":null,"date":"2024-12-14","category":"AI","url":"https://www.piclooks.com/","author":"piclooks","translator":"","tags":["profile"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"termo - 网页上的终端模拟器","publish":true,"cover":"https://github.com/rajnandan1/termo/raw/main/finaltermo.gif","showCover":null,"date":"2024-12-14","category":"frontend","url":"https://github.com/rajnandan1/termo","author":"Raj Nandan Sharma","translator":"","tags":["xterm"],"priority":1},"html":"<hr>"}},{"node":{"frontmatter":{"title":"在蒙特利尔没有工作的第二年","publish":true,"cover":"https://bear-images.sfo2.cdn.digitaloceanspaces.com/shilin/img_1957.webp","showCover":null,"date":"2024-12-14","category":"other","url":"https://shilin.ca/my-second-year-without-job/","author":"shilin","translator":"","tags":["code"],"priority":2},"html":"<hr>\n<p>我的房间租金是 1250 美元，这是我每月预算的三分之一到二分之一</p>"}},{"node":{"frontmatter":{"title":"纯 CSS 半色调效果","publish":true,"cover":"https://i0.wp.com/frontendmasters.com/blog/wp-content/uploads/2024/11/blend_pixels.png?w=999&ssl=1","showCover":null,"date":"2024-12-14","category":"frontend","url":"https://frontendmasters.com/blog/pure-css-halftone-effect-in-3-declarations/","author":"Ana Tudor","translator":"","tags":["css"],"priority":1},"html":"<hr>"}}]}}