A Beautiful Site

RSS: https://abeautifulsite.net/feed/feed.xml
一家精品网站开发工作室。成立于 2007 年。

在 Finder 中复制文件路径

作者分享了一个长期不知道、其实很早就存在的 macOS 小技巧:在 Finder 中右键文件并按住 Option 键,菜单中的"Copy"会变成"Copy filename as Pathname",可以直接复制完整文件路径,而不必打开"获取信息"窗口再手动选中路径复制。 评论区有人补充键盘快捷键 ⌘ + Option + C 也能实现同样效果。这类内容是典型的"原来如此"型 mac 使用经验贴,信息准确但属于小众且低信息增量的技巧分享,适合轻度 macOS 用户阅读。
评论点赞收藏7 天前

没有 Sass 也能用命名断点吗

作者分享弃用 Sass、改用原生 CSS nesting + 自定义属性的体验:大部分功能已被覆盖,省掉构建步骤很舒服,但想念 Sass 里 $md: 48em 这种命名断点。 尝试用:root { --breakpoint-md: 48em; } 复刻时发现自定义属性在 media query 里取不到值——原因是自定义属性是元素作用域,只在浏览器为具体元素计算样式时才有值,而 media query 针对的是视口而非元素,这个限制是设计层面的而非 bug。 文末暗示会给出替代方案。属于"踩坑+原理澄清"的短帖,对个人做原生 CSS 的人有直接参考价值,但整体信息增量有限。
评论点赞收藏8 天前

我宁愿审规格说明,也不想审 AI 写的代码

开源维护者视角吐槽:AI 生成的 PR 像一堆"垃圾堆",维护者无法判断提交者是随手一键生成还是认真设计过,这直接消耗了本就稀缺的 review 时间。 作者提到 Daniel Stenberg 在 curl 项目里也有同样痛点,呼吁社区把重心放在"提交需求规格/设计方案"而非"提交代码"上——规格更容易审,价值也高得多。 文末明确表态:发给我你的思考,别发我的 slop。观点鲜明、有维护者第一手感受,适合作为 AI 编程辅助与开源协作流程的讨论入口。
评论点赞收藏14 天前

大部分软件早就已经是烂代码了

<p>作为软件工程师,我们为亲手编写的代码而自豪,也以对所构建的每一处细节了然于胸为荣。诚然,世上不乏能写出优质软件的开发者;但更多的人却做不到这一点。<br><br>即便如此,我们仍对 这样的方案嗤之以鼻,哪怕它确实能带来不错的成效。</p><p>无需任何科学研究,我们也能意识到:早在 AI 出现之前,人类编写的软件平均质量就已偏向粗疏。有多少次,你曾因某个应用或网站始终无法正常运行而倍感沮丧?<br><br>(这种情况在大型企业出品的软件中尤为常见。)</p><p>人类<em>有能力</em>打造出极其出色的软件;然而,现实中人们<em>实际</em>交付的软件质量往往并不尽如人意。</p><p>所以,不,AI 并不能写出完美的软件。也许未来会有所改善,也可能依然像那些用于训练大语言模型的人类代码一样杂乱无章。但我认为这并不重要——只要 AI 能够产出至少与以往那些平庸代码同等甚至更好的软件,对于大多数行业而言就已经足够了。</p><p>客户在意的从来不是开发工艺,而是最终结果。而如果这个结果既更快、更便宜,又足够好……那无疑比他们过去拥有的一切都要优越。他们又有什么理由不选择呢?</p>
评论点赞收藏26 天前

FOUCE 应该是浏览器的问题

Web Components 的 FOUCE(自定义元素未样式闪烁)问题,作者提出浏览器层面解决方案:让自定义元素注册时浏览器自动等待,而非靠开发者手动 cloak/uncloak。 现有 blocking=render 只解决脚本加载,不解决元素注册延迟,因为组件库的 define 通常在 await 之后。作者呼吁修改规范。
评论点赞收藏41 天前

用 CSS 嵌套做上下文样式适配

CSS 嵌套中 & 选择器不必放在前面,放在父选择器后面可以按容器上下文给元素设样式。比如.dark & 让卡片在深色容器里自动切换配色,.toolbar & 让按钮在工具栏里自动缩小。 浏览器底层用:is 包裹父选择器,遇到 ID 选择器时与 Sass 行为不同,可能引发特异性陷阱。
评论点赞收藏49 天前

我把 ColorCopy 从 Mac App Store 撤下了

<p>我启动了5月18日。这是我第二个macOS应用,但第一个启动时我是在.今天,我决定把它拔掉。</p><p>这款应用并非新颖之作,但它将四个色彩工具整合到一个菜单栏中:吸管器、色彩选择器、调色板管理器和对比度检查器,每个工具都只需快捷键即可。</p><p>我让它免费开放,只需一次性内购即可解锁无限次使用。无需订阅,无需持续付费。它是一款简单、稳定且门槛最低的软件......这正是App Store似乎为此而设计的实用性。</p><p>我不确定会遇到什么,于是做了一个实验来回答一些问题:</p><blockquote>把你的Mac应用放在App Store上有什么真正的好处吗?苹果税值得吗?顾客会蜂拥而至吗?</blockquote><p>对于ColorCopy的发布,我完全没有做任何营销。没有产品狩猎启动。没有黑客新闻帖子。我发表过的唯一东西是以及.如果App Store兑现了其可被发现的承诺,那就足够让人看清了<em>有些</em>那种交通......右?</p><p>你自己判断吧。在App Store近三个月内,ColorCopy获得了略超过1000次展示,149次产品页面浏览,85次首次下载,三次应用内购买,以及21美元的收益。<br><br>不是一天。<em>总共如此。</em></p><p>以81天为单位划分,平均如下:</p><ul> <li>每天13次展示</li> <li>每天1.8次产品页面浏览量</li> <li>每天下载1次</li> <li>每天0.04次应用内购买(大约每月一次)</li> <li>每天收益0.26美元</li> </ul><p>如果推算为12个月,ColorCopy大约能赚到95美元......甚至…</p>
评论点赞收藏53 天前

软件行业已变:从开发者视角看 AI 时代的工程转型

开发者反思 AI 时代软件工程的转变:虽然构建速度加快,但代码质量未必提升,且失去了深度专注的“心流”状态。不过,这也让资深工程师有更多精力进行代码审查、重构和技术债清理,从而在更高维度解决问题。 文章最后提出一个开放性问题:只要最终结果是可靠且经过深思熟虑的代码,其生成过程是否真的重要?
评论点赞收藏78 天前

我基本不再打字了

作者开发了一款名为 TongueType 的本地语音输入应用,强调当前本地模型在 Mac 上运行已相当成熟,解决了过去语音识别不稳定和令人沮丧的问题。 尽管目前下载量不高,但作者认为大众低估了这项技术的进步。对于关注生产力工具、本地 AI 落地以及开发者独立创业经验的读者来说,这是一个很好的参考案例,展示了如何将前沿技术转化为实际可用的产品。
评论点赞收藏97 天前

Introducing ColorCopy

My second macOS app, ColorCopy, was approved by the Mac App Store today! It started as a menu bar color picker: press a key, click any pixel on your screen, and the color lands on your clipboard in wh...
评论点赞收藏135 天前

Introducing TongueType

I just launched my first macOS app called TongueType. It's voice dictation that runs entirely on your Mac. Hold a key, speak, release, and your words appear wherever your cursor happens to be. I build...
评论点赞收藏139 天前

My Stance on AI in Software Development

I believe artificial intelligence is a powerful and valuable tool that can significantly improve how we create, solve problems, and bring ideas to life. I didn't always feel this way.. But these days,...
评论点赞收藏163 天前

How I Use GitHub Issues

I like using GitHub issues for actionable things such as bugs and backlog items I've committed to doing. Non-maintainers are encouraged to open issues only for bugs, whereas everything else is a discu...
评论点赞收藏421 天前

Revisiting FOUCE

It's been awhile since I wrote about FOUCE and I've since come up with an improved solution that I think is worth a post. This approach is similar to hiding the page content and then fading it in, but...
评论点赞收藏646 天前

Component Machines

Components are like little machines. You build them once. Use them whenever you need them. Every now and then you open them up to oil them or replace a part, then you send them back to work. And work,...
评论点赞收藏755 天前

Reflection and Custom States in Web Components

In the Web Component world, attribute reflection is commonly used to style custom elements both internally and as public APIs for consumers. If you're not familiar, attribute reflection occurs when an...
评论点赞收藏847 天前

Anchoring Software to Major Versions

In a SemVer world, major releases are those which contain incompatible API changes. We often see software projects anchor themselves to major versions for long periods of time, usually with the promis...
评论点赞收藏859 天前

Dynamic Slots in Web Components

Web Component authors already know how powerful slots are, but what if you could do even more with them? Here's an interesting technique to use (or abuse) slots in your custom elements. I've been call...
评论点赞收藏884 天前

登录芦苇

登录后关注作者、收藏内容和参与讨论。