A browser test can click the right button, see the expected confirmation message, and still tell you almost nothing about whether the feature is safe to release.
That sounds dramatic until you look at where frontend bugs actually live now.
They live between domains during an SSO redirect. They appear after a s...
Estos son unos sencillos pasos que usualmente sigo para configurar un Virtual Host para los proyectos en los que suelo trabajar, así que intentaré explicarlo de la manera más clara y fácil posible.
Asumo que estés familiarizado con un entorno Linux/Ubuntu, así que no entraré en muchos detalles, a fin de cuentas no soy un...
I’m the kind of person who always has too many tabs open.
Documentation, GitHub, dashboards, test reports, many tabs, and somehow, the one tab I need is always hiding somewhere in the middle.
Chrome’s normal tab bar works well until it gets crowded. Then every tab becomes a tiny icon, and finding the right one turns into a guessing game.
So I built TabScroll, a small Chr...
记账十年,我终于放弃了所有精美的记账 App
我记账十年了。不是那种"记三天就放弃"的记账,是整整十年。
这十年里,我换过七个不同的记账 App。每一个刚用的时候都惊艳:界面漂亮、自动分类、图表炫酷。但每次换 App 都有一个噩梦——导出数据。
有些 App 不支持导出,或者只给一截截图。有些导出格式是私有 JSON,几乎不可读。还有一次,我用了三年的 App 突然宣布停服,给我 30 天迁移期——而导出功能在那期间"暂时维护"。
那一刻我意识到:我的财务数据,根本不属于我。
2023 年底,我发现了 Beancount。它不是一个 App,而是一种记账方式:用纯文本记账。
一开始我怀疑:用文本文件记账?这该多原始?
但试了一周后,我彻底上瘾了。
The easiest browser tests live entirely inside one tab.
Open a page. Fill in a form. Click a button. Check the result.
Unfortunately, many valuable user journeys do not stay inside that neat boundary.
The browser itself participates in the workflow. It stores sessions, asks for permissions, handles downloads, opens deep links, restores tabs, applies location settings, an...
Running the same command twice does not prove that the same execution happened twice.
The contract may have changed. A lockfile may have moved. CI may have selected another backend. A
live API may have returned different state. Even a green result can describe a different operational
world.
Ota 1.6.24 takes a stri...