1,499 Matching Annotations
  1. Last 7 days
    1. We're hoping that together in the open-source, local-first community, we can build something better than any closed-source alternative. The code is open-source because I believe that fundamental tools shouldn't require trusting a black box. Companies pivot, get acquired, or shut down. But open source is forever.
    1. This is why I am very careful about how I make "useful" software and release it to the world without any solid way for me to get paid for my efforts. I simply do not want to be in a situation where my software that I develop as a passion project on the side is holding people's companies together. That's why I make software how and where I do. Like, no offense, but I really do not want to go unpaid for my efforts. The existing leech culture of "Open Source" being a pool of free labor makes it hard for me to want to have my side projects be actually useful like that unless you pay me.
    2. If you want me to make you useful software, pay me. If you use software made by others in their spare time and find it useful, pay them. This should not be a controversial opinion. This should not be a new thing. This should already be the state of the world and it is amazingly horrible for us to have the people that make the things that make our software work at all starve and beg for donations.
  2. Jun 2026
    1. reply to u/pricklypearssoda at https://reddit.com/r/Screenwriting/comments/1u3hp5q/should_i_drop_99_on_student_discounted_access_to/

      Should I drop $99 on student discounted access to Final Draft for industry standard formatting?

      Why buy into a "system", much less one with recurring costs? Formatting a script is the lowest bar in the space. A third grader could easily do this.

      Even a vintage typewriter with a pica typeface will allow you to set margins, a few tabs, and you're on your way. It's the writing that's the tough part. Spend your time and energy on this part where it really belongs. Software isn't going to suddenly add creativity, emotion, or verve to your work. The "industry standard" of unsold and unproduced screenplays is the one you really want to worry about.

      Preston Sturges, Billy Wilder, Charlie Chaplin, Orson Welles, William Golding, Woody Allen, Francis Ford Coppola, Paddy Chayefsky, Robert Towne, Frank Pierson, and Steve Tesich all have something in common: they won Academy Awards for best original screenplay without using screenplay software. Why couldn't you? Why shouldn't you?!?

    1. Strict No LLM / No AI PolicyNo LLM-generated content, whether it be code or prose.No paraphrasing LLM-generated content.No LLMs for editing, including fixing spelling or grammatical errors.No LLMs for translation. English is encouraged, but not required. You are welcome to post in your native language and rely on others to have their own translation tools of choice to interpret your words.No LLMs for brainstorming and then sharing the results of that brainstorming, even if you create the prose. If you use a chatbot to give you advice on a comment on the issue tracker, that comment is unwelcome.No LLMs for finding bugs.

      Seems kind of extreme. But https://www.youtube.com/watch?v=pkndFYSTr0Y gives some more context (an interview) that kind of explains their stance (limited maintainer time/attention; education).

    1. Why testing is much harder than "computer use" Screenshots, video verification, and the "I know it works" merge moment

      The 'I know it works' merge moment captures something real: human engineers have a holistic intuition about whether a change is safe that current agents lack. Video-based verification is a fascinating workaround — using visual confirmation of a running application as a proxy for correctness. This suggests the testing problem for async agents is fundamentally different from unit tests: it requires environmental validation, not just logical assertion.

    2. Cursor is no longer primarily about writing code . It is about helping developers build the factory that creates their software . This factory is made up of fleets of agents that they interact with as teammates : providing initial direction, equipping them with the tools to work independently, and reviewing their work.

      The 'factory that creates software' metaphor signals a fundamental identity shift for developer tools — from text editors with AI to production management systems. If developers become factory managers rather than craftspeople, the skills that matter most shift dramatically toward task decomposition, agent supervision, and quality gate design.

  3. May 2026
    1. Claude Code with Opus 4.8 can now carry out codebase-scale migrations across hundreds of thousands of lines of code from kickoff to merge

      大多数人认为AI模型在处理大规模代码迁移时需要人工干预和审查,但作者认为Opus 4.8能够独立完成数十万行代码的全流程迁移。这挑战了软件开发领域对AI辅助能力的传统认知,暗示AI可能比人们想象的更能胜任复杂的工程任务。

    1. This dynamic UI management is the future of software value : the harness to control the interface/ensure it's correct & the knowledge management to rationalize all the AI products over time

      大多数人关注AI的功能和结果,但作者认为未来软件价值在于动态UI管理和知识管理,这种将界面控制和管理而非功能实现视为核心价值的观点与主流认知相悖。

    2. Software systems need to decide which of these to keep over time & which are disposable ; those newer semi-permanent artifacts will become the new heads

      大多数人认为软件界面应该是稳定和持久的。但作者提出界面应该是可丢弃的,半永久性的界面元素会随时间演变,这种将界面视为临时而非固定组件的观点与传统的软件设计理念相悖。

    1. The critical insight in the Oz analogy is that roughly half of any real workflow that is non-agentic carries no lab advantage. They are no better than you are at writing the deterministic software underneath the model layer.

      大多数人认为AI将取代所有软件工程工作,人类只需构建AI代理层。但作者认为真实工作流程中约有一半是非代理性的,这部分工作大模型实验室没有任何优势。大模型公司在编写模型层下方的确定性软件方面并不比专业应用公司更好。这为专注于构建复杂工作流程中非AI部分的企业提供了重要机会。

    2. The model is fungible underneath; the system of work is not. The next generation of enterprise software is going to be built off the road.

      大多数人认为底层AI模型是企业的核心竞争力,模型越好产品越强。但作者认为模型是可替代的,而'工作系统'才是真正的护城河。下一代企业软件将建立在'黄砖路'之外,专注于特定行业的工作流程、数据捕获和治理。这些系统拥有端到端的工作流程所有权,这是大模型实验室无法轻易复制的优势。

    1. However, production-grade software requires strict adherence to structural constraints, such as architectural patterns, databases, and object-relational mappings.

      大多数人认为只要代码功能正确,LLM生成的代码就足够好,但作者强调生产级软件需要严格遵守结构约束,这与当前只关注功能正确性的主流评估标准形成鲜明对比。

    1. If you can go from producing 200 lines of code a day to 2,000 lines of code a day, what else breaks? The entire software development lifecycle was, it turns out, designed around the idea that it takes a day to produce a few hundred lines of code.

      Simon指出AI大幅提升代码产出速度后,整个软件开发生命周期都需要重新设计,这反映了行业变革的深远影响。

    2. So I realized what I value more than the quality of the tests and documentation is that I want somebody to have _used_ the thing. If you've got a vibe coded thing which you have used every day for the past two weeks, that's much more valuable to me than something that you've just spat out and hardly even exercised.

      作者认为评估软件时,实际使用经验比测试和文档质量更重要,这改变了传统的软件评估标准。

    1. An engineer at Cloudflare used Claude with OpenCode to release vinext, a reimplementation of Next.js on Vite, for only ~$1,100 in API costs.

      这个案例展示了AI系统在软件开发中的成本效益,仅用1100美元API成本就实现了94%的Next.js API覆盖,这是一个相对较低的成本。这表明在某些特定任务上,AI系统已经能够以相对较低的成本实现有意义的成果。

    2. Most passing SWE-Bench solutions are not accepted by maintainers.

      大多数人认为通过自动化基准测试(如SWE-Bench)通过的AI系统在实际应用中也能表现良好,但作者指出事实恰恰相反——大多数通过测试的解决方案实际上并不被维护者接受。这挑战了AI评估领域的有效性,表明自动化测试可能无法反映真实世界的质量标准。

    1. Still, the psychologist argues, “there’s no longer an excuse for releasing models that reinforce user delusions so readily.” “When one lab’s models can largely maintain safety across extended conversations, while others are willing to validate extremely harmful outcomes — up to and including a user’s suicidal ideation — it suggests this isn’t a flaw in the technology,” said Nicholls, “but a result of specific engineering and alignment choices.”

      The degree to which a model reinforces user delusions is not inherent to LLM-based tools per se, but instead

      "a result of specific engineering and alignment choices.”

    1. The one real underlying asset, Workday's trillion-transaction dataset, is thinner than it sounds; what actually matters at runtime is how data connects to workflows, permissions, and integrations, and every layer of that stack is now a liability.

      大多数人认为Workday的大量交易数据是其核心资产和护城河,但作者认为这些数据价值被高估,而连接层才是关键。这一观点挑战了数据规模作为企业软件护城河的传统认知,暗示数据连接方式比数据量本身更重要。

    2. When customers renew at close to 100% every year, it's usually read as a sign the product is delightful. In Workday's case, it's a sign of something else: leaving is close to impossible.

      大多数人认为高续约率意味着客户满意,但作者认为这实际上反映了客户被锁定在系统中难以离开。这一观点挑战了软件行业常见的假设,即高续约率等于产品成功,而揭示了Workday的防御性商业模式。

    1. Our early versions of agentic work was only asking Codex to implement the task. That approach proved too limiting. Codex is perfectly capable of creating multiple PRs as well as reading review feedback and addressing it.

      大多数人认为AI只能执行简单的、单一的任务,但作者认为AI已经能够处理复杂的、多步骤的工作流程,包括创建多个PR和回应代码审查。这个观点挑战了人们对AI能力的传统认知,表明AI已经进化到能够理解并执行复杂的软件工程任务。

    2. Six months ago, while working on an internal productivity tool, our team made a controversial (at the time) decision: we'd build our repo with no human-written code. Every line in our project repository had to be generated by Codex.

      大多数人认为软件开发必须由人类编写核心代码,但作者认为完全由AI生成代码是可行的,因为他们成功地构建了一个没有任何人工代码的仓库。这个观点挑战了软件开发的传统认知,暗示AI可能已经发展到能够独立完成整个项目的程度。

  4. Apr 2026
    1. The fix is not smarter prompts. It is software built to meet agents halfway.

      大多数人认为提高AI性能的关键在于更好的提示工程或更智能的模型。但作者认为解决方案在于重新设计软件架构,使其与AI代理更好地协作,而不是继续改进AI本身。这是一个颠覆性的观点,挑战了当前AI开发的主流方向。

    2. The fix is not smarter prompts. It is software built to meet agents halfway.

      大多数人认为提高AI提示词质量是改善AI交互的关键。但作者认为真正解决方案是重新设计软件架构,使其与AI代理更好地协作,而不是改进提示词。这一观点颠覆了当前AI优化的主流方法,将焦点从AI本身转向系统设计。

    1. By customizing and co-designing silicon with hardware, networking and software, including model architecture and application requirements, we can deliver dramatically more power efficiency and absolute performance.

      通常认为硬件定制化是提高性能的途径,但作者强调通过软硬件协同设计可以大幅提升效率和性能,这与单纯硬件升级的观点相悖。

    1. Zig distributes its toolchain as a Python package, which is built on the assumption that virtually all computers already have a Python distribution of some kind.

      That's a stupid assumption.

      Many computers that don't have a (pre-installed) Python distribution do have access to a (pre-installed) implementation of the World Wide Wruntime.

      It would be logical to at least attempt to target it.

    1. AI writes the code. Tests verify correctness. More code enables more features.

      这个简洁描述揭示了AI在软件开发中的完整闭环:AI生成代码,测试验证正确性,更多代码创造更多功能。这种自增强循环可能使软件开发成为AI最具颠覆性的应用领域。

    2. There were 1 billion commits in 2025. Now, it's 275 million per week, on pace for 14 billion this year if growth remains linear

      令人惊讶的是:软件开发提交量呈现爆炸式增长,从2025年的10亿个提交激增至每周2.75亿个,预计全年将达到140亿个。这种指数级增长反映了AI时代代码生成速度的惊人变化,远超线性预测。

    1. On the SWE-Pro benchmark, M2.7 scores 56.22%, nearly matching Opus's best level.

      这一结果令人惊讶,因为M2.7作为一个开源模型在软件工程专业基准测试中接近顶级商业模型性能,这可能预示着开源AI与闭源商业模型之间的差距正在迅速缩小,改变AI发展的竞争格局。

    2. M2.7 demonstrates excellent performance in real-world software engineering, including end-to-end project delivery, log analysis for bug hunting, code security, and machine learning tasks.

      这一声明暗示AI模型已经超越了简单的代码生成,能够完成完整的软件开发生命周期,这代表了AI在工程领域应用的重大突破,可能重新定义软件开发的未来模式。

    3. On the SWE-Pro benchmark, M2.7 scores 56.22%, nearly matching Opus's best level.

      令人惊讶的是:MiniMax M2.7在SWE-Pro基准测试中获得了56.22%的分数,几乎达到了Opus模型的最佳水平。这一成绩表明,开源AI模型在软件工程领域已经能够与顶级闭源模型相媲美,打破了人们对开源模型性能落后的传统认知,为开源AI生态系统的发展注入了新的活力。

    1. Four researchers and software engineers estimated that a skilled human engineer would take 2 to 17 weeks to reimplement gotree, as AI successfully did in this work.

      这一对比数据极具启发性,它量化了AI在特定任务上相对于人类的时间优势。这种时间压缩效应可能重塑软件开发流程,但也引发了关于AI能力与人类创造力本质差异的深层思考。

    2. It is not common for real software to be developed the way MirrorCode tasks are structured — against a precise, programmatically checkable specification.

      这一重要提醒指出了MirrorCode评估方法与实际软件开发之间的差异。虽然该基准测试提供了有价值的AI能力证据,但如何将这种能力转化为实际开发环境中的表现仍是一个开放问题,这对AI在真实世界软件工程中的应用提出了挑战。

    3. Claude Opus 4.6 autonomously reimplemented a 16,000-line bioinformatics toolkit — a task we believe would take a human engineer weeks.

      这是一个惊人的发现,表明AI已经能够完成通常需要人类工程师数周时间才能完成的复杂编程任务。这不仅挑战了我们对AI当前能力的认知,也暗示了软件工程领域可能即将发生重大变革。这种级别的自主编程能力远超当前主流AI编程助手的表现。

    1. GLM-5.1 achieves state-of-the-art performance on SWE-Bench Pro and leads GLM-5 by a wide margin on NL2Repo (repo generation) and Terminal-Bench 2.0 (real-world terminal tasks).

      令人惊讶的是:GLM-5.1在软件工程代理任务上取得了最先进的性能,特别是在代码仓库生成和真实终端任务方面大幅领先其前代模型。这表明AI在理解和执行复杂软件工程任务方面取得了质的飞跃。

    1. Xcode should ship with a built-in MCP that handles auth when an LLM connects to a project. Notion should have `mcp.notion.so/mcp` available natively, instead of forcing me to download `notion-cli` and manage auth state manually.

      令人惊讶的是:作者认为主流开发工具如Xcode和Notion应该原生集成MCP协议,而不是依赖第三方CLI。这种观点暗示了未来软件设计可能转向内置AI接口,而不是通过外部工具进行集成,这可能重塑整个AI与软件交互的生态。

    2. When a remote MCP server is updated with new tools or resources, every client instantly gets the latest version. No need to push updates, upgrade packages, or reinstall binaries.

      令人惊讶的是:MCP服务器更新后所有客户端自动获得最新版本,无需手动更新。这种即时更新机制在软件分发中极为罕见,它消除了版本管理的复杂性,确保用户始终使用最新功能,这是传统软件分发模式无法比拟的优势。

    1. Being open source is increasingly like giving attackers the blueprints to the vault. When the structure is fully visible, it becomes much easier to identify weaknesses and exploit them.

      令人惊讶的是:作者将开源软件比作给攻击者提供保险库蓝图,这种比喻揭示了开源与安全之间的根本矛盾。在AI时代,完全可见的代码结构使弱点识别变得前所未有的容易,这挑战了传统上认为开源更安全的观念。

    1. There was a time that whenever you looked at search results on Google, you could click the "Cached" button to view an archived version of the page. Unfortunately, Google has decided to remove the feature. The company's stated reason is that the feature was created to allow users a way to see the content at a time when sites would go offline frequently, and that the basic functionality of the internet has improved to the extent that it's no longer necessary. Whatever the reason, it means yet another useful feature has found itself in Google's graveyard.While Google may profess that feature isn't relevant any longer, that's not the case. Posts are deleted all the time, link rot is very real, and entire sites are regularly purged from existence Any time you want to access a post that has been removed due to corporate or political censorship, you now have one less tool to see what was published. Google's cache was also among the most reliable ways to access pages that would take a long time to load or keep going down frequently, something that still happens with smaller blogs or with sites run by the government in plenty of regions in the world.Any time a web page failed to work as expected, you could easily access Google's cache directly from the search results, but that button has now been removed—if not the functionality itself. Because at the time of this writing, there remain a few easy workarounds that allow you access Google's cached webpages.
    1. Obsidian is the IDE; the LLM is the programmer; the wiki is the codebase.

      【启发】这个比喻极具启发性:把知识库管理类比为软件工程——Obsidian 是 IDE,LLM 是程序员,Wiki 是代码库。这个框架的深远意义是:知识工作可以借鉴软件工程的全套工具链——版本控制(git)、代码审查(lint)、持续集成(自动 ingest)、重构(wiki 清理)。知识管理的「工程化」不是比喻,而是字面意义上可操作的。

    1. Implicit state is the Enemy

      大多数开发者认为当前工作目录(CWD)和环境变量等隐式状态是理所当然的,是提高开发效率的捷径。但作者认为这些隐式状态是敌人,因为它们会给AI代理带来困难。通过使所有状态显式化,不仅解决了代理的问题,也使工具对人类更可预测和可脚本化。

    1. This class of bug is insidious because it evades every layer of defense. It will not be caught in development testing — who runs a test for 50 days? It will not be flagged in code review — the logic looks perfectly reasonable.

      大多数人认为代码审查和测试能捕获大多数系统性缺陷,但作者认为这个bug的特殊性使其能够逃避所有常规检测手段。这挑战了软件质量保证的基本假设,暗示某些缺陷只有在极端条件下才会显现,而常规开发流程无法覆盖这些场景。

    1. Looking at the code and having opinions on architecture is seen as just as 'bad' as calling a compiled C module from an interpreted language was seen back in the day... it's not bad, it's actually quite practical, but it violates some strange 'purity'.

      作者将'氛围编程'的极端主义与历史上编程语言和框架中的'纯粹性'倡导者相提并论,认为两者都坚持不切实际的'纯粹'标准。这一观点挑战了软件开发中追求'纯粹性'的传统,暗示这种追求可能实际上是有害的,阻碍了实用性和效率。

    2. Bad software is a decision you make. You need to own it. You should do better.

      大多数人认为糟糕的软件质量是技术限制、时间压力或复杂性的必然结果,但作者断言这实际上是一个有意识的选择。这一观点挑战了软件开发中常见的借口文化,暗示质量问题本质上是责任和决策问题,而非客观约束。

    3. Looking under the hood is cheating. You're only supposed to have vague conversations with the machine about what it's doing.

      大多数人认为查看和审查代码是软件开发的标准实践,但作者认为这是一种'作弊'行为,因为'氛围编程'文化鼓励开发者完全避免查看底层实现。这与软件工程的基本原则相悖,通常代码审查被认为是提高质量和发现问题的关键步骤。

    1. This means 2.7x more tokens from the same GB300 NVL72-based infrastructure and power footprint, reducing the cost to manufacture each token by more than 60%.

      大多数人认为硬件升级是提高AI性能的主要方式,但作者认为通过软件优化可以在相同硬件上实现2.7x的性能提升和60%以上的成本降低,这挑战了行业对硬件升级的依赖。这种观点暗示软件优化可能比硬件升级更具成本效益。

  5. Mar 2026
    1. TAM posits that the intention to adopt a particular technology is driven by two kinds of perceptions: (1) how easy it is to use a system and (2) how useful it will be to use it [180]. Furthermore, the perceived ease of use affects the perceived usefulness: If technology is hard to use, it is less useful.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    2. it is perfectly possible to have a program which is structured, modular, readable, flexible, self-documenting, maintainable, which performs its specified function, and which is a source of constant frustration and irritation to its users.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    3. The theory of task–technology fit (TTF) can illuminate what users consider useful and how this affects their decision to adopt a particular technology. TTF refers to the ability of technology to support a task [197]. The capabilities of the technology should match the demands of the task and the skills of the individual; in this case, the fit is perfect.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    4. Users actively repurpose tools to make them more personally usable and relevant. Design should support such repurposing. For example, Renom et al. [696] conducted a study on text editing using a novel user interface. They found that exploration and technical reasoning facilitate creative tool use.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    5. One prominent definition of accessibility is given by ISO 9241-171, which defines it as 'the usability of a product, service, environment or facility by people with the widest range of capabilities.'

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    6. Acceptability has two main dimensions [591]. The first dimension, practical acceptability, includes costs, the reliability of the interactive system, and its compatibility with other systems. The perceptions of utility and usability may also influence the judgment of practical acceptability.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    7. ISO 9241-11 definition... defines usability as the 'extent to which a system, product or service can be used by specified users to achieve specified goals with effectiveness, efficiency and satisfaction in a specified context of use.'

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    8. One shorthand way of expressing this is that utility is 'whether the functionality of a system in principle can do what is needed' [591, p. 25]. In practice, whether people can do anything concerns—among other things—usability.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    9. The utility of an interactive system concerns its match with the tasks of users. If the match is good, the tool has high utility; if the tasks that users want to do are not supported by the tool, the tool has low utility.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    10. Usability concerns how easily computer-based tools may be operated by users trying to accomplish a task. Usability differs from utility. Usability concerns whether users can use the product in a way that makes it possible to realize its utility; utility is about whether the goal is important to the user. Ideally, the user can use the tool without unnecessary effort so that the use is direct, transparent, and unnoticeable.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    11. Usability is one of the best predictors of users' willingness to adopt software. For example, the User Burden Scale is a questionnaire for measuring the felt burden in software use [806]. It consists of six subscales: difficulty of use, physical burden, time and social burden, mental and emotional burden, privacy burden, and financial burden.

      Highlight what you think good software concepts owuld be and segment them by color coded categories.

    1. The unofficial API authenticates using your actual Sunsama email and password. So my serverless function needs to store my real credentials.

      Does it? It's not obvious from the problem and proposed approach described here that the homespun service doing the LLM work (or, rather, coordinating it) and the client submitting stuff to the third-party service need to be the same.

      The client really only needs to authenticate with the service and ferry data into the account. The data can be prepped elsewhere. The only real constraint is that it comes from a trusted source.

    1. I've skimmed Crafting Interpreters and the Bytecode VM section seems to spend an inexplicable amount of time on not only parsing, but minutia having nothing to do with compilers (e.g. writing a custom dynamic array implementation in C).

      This is what happened with Bitwise University.

      In 2018, I pleaded with Per when he announced the project to just take Wirth's Oberon, re-implementing it but change the lexer so it's a curly brace language, maybe changing the grammar in some other places so it's more comfortable for a C programmer, and only then consider adding a new backend (or, in hindsight, work on them in parallel—the point being to just fall back on the existing, already available, known-to-work implementation once it becomes apparent that doing a backend from scratch is hard). I.e., avoid the yak-shaving and get to the compiler-writing as soon as possible.

      He decided not to, and the first substantial episode—"Day 2", the third stream—spent an hour faffing with a C implementation of "stretchy buffers" https://bitwise.handmade.network/episode/bitwise/bitwise002/

    1. We envision a component generator with knobs thatlet a user choose among design decisions, akin to sim-ilar work for code generation from design patterns [1].Such a tool is sufficiently parameterized to generateany combination of implementation trade-offs on thespectrum from fully static to fully dynamic compo-nents. The components that result can thus exhibitjust the right combination of flexibility, maintainabil-ity, and performance, with a minimum of specificationand hackery on the developer’s part.
    1. code of view wasn't about catching bugs. It was a primary mechanism for knowledge transfer. When your engineers learn architecture by reading senior engineer PRs, seniors maintain context by reviewing everything, and code of view was the learning loop. It was how shared theory was built and maintained across the entire team. But AI bypasses that entire loop. The code shows up, it works, it gets merged, but nobody learned anything. Nobody built context. Nobody can debug at a 3AM without reprompting the AI. And code of view was never about catching bugs. It was always about building shared understanding. AI skipped the most important step.

      Code Review to maintain shared context

  6. Feb 2026
    1. Lua is more dynamic than Wren which makes its job harder. Lua also tries very hard to be compatible across a wide range of hardware and compilers. If you have a C89 compiler for it, odds are very good that you can run Lua on it. Wren cares about compatibility, but it requires C99 or C++98 and IEEE double precision floats. That may exclude some edge case hardware, but makes things like NaN tagging, computed gotos, and some other tricks possible.

      With these words, you might expect that programs that target the Wren reference implementation are faster than those written in Lua. But (again), languages are not language implementations, and the language implementation matters; while Wren programs written for the reference implementation available here are generally faster than programs that run on lua.org's Lua implementation, they're not faster than programs that run on LuaJIT.

  7. Jan 2026
    1. This makes questions like “how fast is WebAssembly” a bit hard to answer. You don’t ask how fast algebraic notation is—it’s not a very sensible question. Taken in the context of something like JavaScript, the language is only as fast as the engine running it. JavaScript the language has no speed, but you can benchmark JS engines like V8, SpiderMonkey, and JavaScriptCore. You can benchmark the IO libraries of JS runtimes like Bun, Deno, and Node. What people actually mean is “how useful are the constructs of this language to efficient mappings of modern hardware” and “what is the current landscape of systems taking advantage of these constructs”.
  8. Dec 2025
    1. We’re bringing a social experience to Anytype by making spaces more interactive. We start with the concept of one space = one group = one chat. Then we’ll expand to include discussions on objects, enabling forum-like use cases. It will significantly improve collaborative use cases. You’ll chat and discuss your pages and files in the same end-to-end encrypted and local-first way.

      Acá hay transiciones en los siguientes cuadrantes:

      Cardumem toma una ruta alterna y más sencilla para explorar transiciones similares.

      1. Inicia por el wiki, como software documental asíncrono.
      2. Se conectará con HedgeDoc como software documetal síncrono.
      3. Se conectará con Hypothesis como software dialógico asíncrono.
      4. Implementará progresivamente funcionalidades síncronas vía sistemas hipermedia en tiempo real.

      La idea de local primero ocurrirá debido a que el servidor puede correr de manera local o remota.

  9. Nov 2025
  10. Oct 2025
    1. Most complex software ships with a few bugs. Obviously, we want to avoid them, but the more complex a feature is, the harder it is to cover all the use-cases. As we get closer to our RC date, do we feel confident that what we're shipping has as few blocking bugs as possible? I would like to say we're close, but the truth is I have no idea. It feels like we'll have to keep trying the features for a bit until we don't run into anything - but we have less than 3 weeks before the RC ships. Here's a few surprising bugs that need to get fixed before I would feel comfortable shipping node12 in stable.
  11. Sep 2025
  12. Aug 2025
  13. Jul 2025
    1. One pattern that I love to use in my SvelteKit projects is returning writable stores from the layout’s load function. This makes it possible to fetch data from the server (for example the user object for the logged in user), and then you make this object available as a writable reactive store throughout the whole application. So when the user updates their username or avatar, you do the PUT request to the server and you get the updated user object back from the server as the response, you can simply update the $user writable store value and every place in your app where you show the user object gets updated immediately.
    1. Abstract

      In May & June 2025, Duke University Libraries (DUL) staff successfully implemented Anubis, a configurable open source web application firewall (WAF), in order to stave off persistent onslaughts of AI-related bot scraping activity. During this pilot period (May 1 - June 10, 2025), aggressive bot scraping led to extended outages for three critical library platforms (Duke Digital Repository, Archives & Manuscripts, and the Books & Media Catalog), and in each case, implementing Anubis mitigated the problem.

      Permalink

      https://hdl.handle.net/10161/32990

      Citation

      Aery, Sean (2025). Anubis Pilot Project Report - June 2025. Retrieved from https://hdl.handle.net/10161/32990.

  14. May 2025
  15. Apr 2025
    1. los documentos como aspectos separados y encerrados de nuestra experiencia de cómputo

      Es interesante ver como, en un inicio, no se tenía la idea de poder unir todas estas herramientas en una, sino que se fueron creando por cada necesidad que se tiene. Actualmente se sigue así, solo hay que ver el largo listado de aplicaciones que ofrece Microsoft y como cada una va siendo más especifica en funciones y necesidades que la anterior. Es un arma de doble filo; al ser tan especifica excluye posibilidades y actividades que se puede realizar en otras aplicaciones, pero también satisface a los usuarios que necesitan suplir una sola necesidad. La diferencia es que con las libretas computaciones el límite no lo da el programa, sino el mismo usuario.

    1. los documentos como aspectos separados y encerrados de nuestra experiencia de cómputo

      Es interesante ver como, en un inicio, no se tenía la idea de poder unir todas estas herramientas en una, sino que se fueron creando por cada necesidad que se tiene. Actualmente se sigue así, solo hay que ver el largo listado de aplicaciones que ofrece Microsoft y como cada una va siendo más especifica en funciones y necesidades que la anterior. Es un arma de doble filo; al ser tan especifica excluye posibilidades y actividades que se puede realizar en otras aplicaciones, pero también satisface a los usuarios que necesitan suplir una sola necesidad. La diferencia es que con las libretas computaciones el límite no lo da el programa, sino el mismo usuario.

    1. los documentos como aspectos separados y encerrados de nuestra experiencia de cómputo

      Es interesante ver como, en un inicio, no se tenía la idea de poder unir todas estas herramientas en una, sino que se fueron creando por cada necesidad que se tiene. Actualmente se sigue así, solo hay que ver el largo listado de aplicaciones que ofrece Microsoft y como cada una va siendo más especifica en funciones y necesidades que la anterior. Es un arma de doble filo; al ser tan especifica excluye posibilidades y actividades que se puede realizar en otras aplicaciones, pero también satisface a los usuarios que necesitan suplir una sola necesidad. La diferencia es que con las libretas computaciones el límite no lo da el programa, sino el mismo usuario.

  16. Mar 2025
    1. Neat. It's basically a browser with deep integration for Fastmail.

      (Not that Fastmail is neat—it's evidently got a bunch of jerks in charge—but I wholeheartedly approve of user agents operating in their users' best interests, and this qualifies. The fact that this is a site-specific browser made with no involvement of the site operator? A++++)

    1. However, I also feel that Ruby sometimes seems too focused on being backwards compatible, to a point where it risk hurting the ecosystem. I think this thread is a good example, because it seems like such a small and benign change, yet it's taken several years and lots of back and forth, and in the end the proposed change wasn't even applied(!?).
  17. Feb 2025
    1. Another problem is that now your business logic is obfuscated inside the ORM layer. If you look at the structure of the source code of a typical Rails application, all you see are these nice MVC buckets. They may reveal the domain models of the application, but you can’t see the Use Cases of the system, what it’s actually meant to do.
    1. We are destroying software mistaking it for a purely engineering discipline.

      This is the breakthrough in this post. I'm going to pretend they also mentioned documentation since the top commenter did it for them.

      Check in with me again in twenty years about lamenting over "they joy of hacking..." because right now, that's a really fucking silly thing to dwell on.

  18. Jan 2025
  19. Dec 2024
    1. There is a tremendous power in thinking about everything as a single kind of thing, because then you don’t have to juggle lots of different ideas about different kinds of things; you can just think about your problem.

      In my experience this is also the main benefit of using node.js as your backend. Being able to write your front and backend code in the same language (javascript) removes a switching cost I didn't fully realize existed until I tried node the first time.

  20. Nov 2024
  21. Oct 2024
    1. Arbib and Seba explain this by categorising human civilisation into two fundamentally intertwined complexes: the production system, encompassing all the foundational systems by which we meet fundamental material needs across energy, transport, food and materials (corresponding to ‘hardware’); and the organising system, encompassing how the former systems are governed, regulated and managed by society through economic, political, military, cultural and ideological structures and values (corresponding to ‘software’)

      for - definition - production system ('hardware') - and organizing system ('software') - Arbib and Seba

      definition Arbib and Seba - human civilization can be broken down into the interaction between two complimentary systems - the production system - by which we meet fundamamental material needs for food, energy, transportation, water, materials - also called 'hardware' - the organizing system - by which how the production system is governed and managed and includes the economy, polity, security, culture, ideology and values - also called 'software'

      comment - A transformation is required in both the hardware and the software to mitigate the worst impacts of our current polycrisis

    2. The ‘hardware’ is a configuration of matter which harnesses energy from its environment with surprising efficiency and dissipates it as waste back into the environment.

      for - definition- hardware - software - Paul Davies

      definition - hardware - software - Paul Davies - In the context of life, - hardware - configuration of matter which harnesses energy from its environment - software - complex information sturctures by which configurations of matter and energy are organized and instructed to self-reproduce

  22. Sep 2024
    1. The point of GPL licenses is to protect the user of the software, not the developer. If you want "protection" as a developer, use MIT (disclaimer of warranty). GPL "infects" other parts of a system to combat a work-around which was used to violate the software freedom of the user, by firewalling sections of GPL'ed code from the rest of the system. If you don't care about your users' software freedom in the first place, then (L)GPL is the wrong choice.
      • goal: protect user rights/freedoms
      • non-goal: protect developer rights/freedoms
    1. A free program allows you to tinker with it to make it do what you want (or cease to do something you dislike). Tinkering with software may sound ridiculous if you are accustomed to proprietary software as a sealed box, but in the Free World it's a common thing to do, and a good way to learn programming. Even the traditional American pastime of tinkering with cars is obstructed because cars now contain nonfree software.
    1. This can be incredibly frustrating for developers. In my own experience, the person in the worst position is the developer brought in to clean up another developer’s mess. It’s now your responsibility not only to convince management that they need to slow down to give you time to fix things (which will stall sales), but also to architect everything, orchestrate the rollout, and coordinate with sales goals and marketing. Oh, and let’s not forget actually producing the code to resolve the underlying issues. It can, at times, be an insurmountable problem. A developer in that situation has to wear a lot of hats. They need to be:● An advocate to management and by extension the C-suite.● A project manager.● A marketer to understand the features and desired functionality both now and down the road, to make selling the product more simple with defined pipelines and marketable features.● A decision maker, willing to make tough calls with regards to future compatibility of the services, how they interact, and what third-party tools they might need to integrate with to ensure the rectified code will be usable for the foreseeable future.Last but not least, they need to be a good developer to fix the mess. If you employ a developer who can manage all those responsibilities as well as their day job, I guarantee you aren’t paying them enough, or they’re already looking somewhere else.

      developer solving a bug

  23. Aug 2024
    1. If a problem is shared by only a handful of people, it's probably not worth programming a solution. Great Programmers Solve Important Problems The best programmers aren't simply the ones that write the best solutions: they're the ones that solve the best problems. The best programmers write kernels that allow billions of people to run other software, write highly reliable code that puts astronauts into space, write crawlers and indexers that organize the world's information. They make the right choices not only about how to solve a problem, but what problem to solve.

      Precisamente esa idea grandilocuente de qué son un programador y un problema valiosos es lo que deja desatendidas las soluciones que no suenan ambiciosas.

      Preferimos terraformar marte, que el depredado Amazonas.

      En contraste el software situado nos ha permitido resolver problemas para comunidades pequeñas en HackBo, nuestro hackerspace local o ayudando en la preservación lingüística en el Amazonas.

      En los ejemplos, todos los problemas a resolver parecen grandilocuentos: miles de millones de personas, la información del mundo, los astronáutas. Pareciera ser que el vecino, la familia, la comunidad local, están por fuera de esos imaginarios. Al menos pensar que los problemas importantes tan bien son cotidianos y pequeños es algo que vale la pena comunicar más asertiva y reiteradamente.

      Una de las cosas interesantes es que Breck cuenta en otra entrada como el software debería ahorrar tiempo a las personas, y allí revela una sensibilidad por los problemas pequeños, que le importaban a su familia y a él como niño/adolescente: tener 20 minutos más para poder jugar o ahorrarle esos 20 minutos a su familia a conectarse a internet.

      Lo que creo que necesitamos es una manera de expresar software para el cuidado: de la gente, del planeta, del tiempo. Algo como un software convivial, en las líneas de las tecnologías conviviales de Ivan Illich.

  24. Jul 2024