TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Show HN: All desktop software calculators are wrong, so I had to build my own

286 点作者 chacha21大约 3 年前
A new calculator software cannot really bring attention (<a href="https:&#x2F;&#x2F;chachatelier.fr&#x2F;chalk&#x2F;" rel="nofollow">https:&#x2F;&#x2F;chachatelier.fr&#x2F;chalk&#x2F;</a>)<p>However, I wrote a full article explaining why I had to build something &quot;new&quot; that does not behave like usual desktop calculator softwares :<p>&lt;<a href="https:&#x2F;&#x2F;chachatelier.fr&#x2F;chalk&#x2F;article&#x2F;chalk.html" rel="nofollow">https:&#x2F;&#x2F;chachatelier.fr&#x2F;chalk&#x2F;article&#x2F;chalk.html</a>&gt;<p>TL;DR All &quot;small&quot; calculator softwares I know share the same design flaws. And the GUI is not the only stumbling block in their poor efficiency. Handling correctly numerical approximations - expected or not - is crucial to trust the results. It is usually not done in lightweight tools. It should. So I prove that if I could do it, OS manufacturers could as well.

55 条评论

CrendKing大约 3 年前
The one thing I don&#x27;t get about all those calculator applications is the existence of the keypad. Like, the users already have the keypad right in front them called keyboard (the names literally share the &quot;key&quot; part). Why would anyone instead choose to use mouse to click those tiny buttons? I feel most calc designers still stuck at the skeuomorphism and never jump out of the box to think about what user really needs.<p>The only calculators I know that makes keypad optional&#x2F;hideable are SpeedCrunch and Qalculate!, and now this.
评论 #30594590 未加载
评论 #30598252 未加载
评论 #30596443 未加载
评论 #30594555 未加载
评论 #30595041 未加载
评论 #30599437 未加载
评论 #30595787 未加载
评论 #30595311 未加载
评论 #30595466 未加载
评论 #30595495 未加载
reportingsjr大约 3 年前
I definitely agree with a lot of the complaints. I truly don&#x27;t understand why so many computer calculator interfaces are so awful.<p>I&#x27;ve been using speedcrunch for a couple of years now and it scratches most of the itches for what I want out of a calculator. It looks fairly similar to Chalk&#x27;s design as well. Very nice interface!
评论 #30594445 未加载
评论 #30594318 未加载
评论 #30593492 未加载
评论 #30593002 未加载
eliah大约 3 年前
I&#x27;m surprised no one has mentioned Soulver yet (<a href="https:&#x2F;&#x2F;soulver.app&#x2F;" rel="nofollow">https:&#x2F;&#x2F;soulver.app&#x2F;</a>). I have used it for years -- it looks like it has pretty similar functionality to this but (IMO) with a more native-feeling UI. I love it.<p>I don&#x27;t think it supports as wide a range of math, but it does seem to pass the accuracy test given in the article (sin(exp(37))). It also lets you assign variables which I find handy.<p>On the other hand, the propagation of uncertainty in Chalk is very cool.
评论 #30594825 未加载
jdeaton大约 3 年前
I still use the python repl in a terminal for my desktop calculator. Its a good choice since usually im already in the terminal anyways.
评论 #30593594 未加载
评论 #30595944 未加载
评论 #30594795 未加载
评论 #30596707 未加载
saeranv大约 3 年前
Halfway through your article and I 100% agree with all your complaints. I compulsively carry my T1-84 calculator everywhere since it feels like such an annoyance to have to resort to using any generic desktop calculator.<p>ETA: I am very impressed by your calculator so far. I thought my tmux + ipython setup was good, but this shows that I just didn&#x27;t think about the possibilities of what a proper calculator app could bring to the table.
评论 #30597212 未加载
brimble大约 3 年前
&gt; On a pocket calculator, you have one keyboard layout, and you simply ignore the keys you don&#x27;t use. Has this ever been a problem?<p>Yes. There&#x27;s a reason they sell basic stand-alone calculators, too, and it&#x27;s not just price. There&#x27;s a reason the ones for various tasks don&#x27;t all look the same or have the same keys (a typical office desktop calculator is usually very basic, for instance). I&#x27;d bet money most calculators <i>that exist</i> are the fairly basic variety, not a fancy scientific calculator or whatever. Exclude the ones that were only ever used in school and never anywhere else and I bet it&#x27;s an absolute landslide in favor of simple calculators. People <i>are</i> confused by the extra buttons, and don&#x27;t want them.<p>[EDIT] Not to shit on this calculator, mind you, but this is another specialized one that won&#x27;t be for everyone, not a universal solution.
评论 #30591809 未加载
throwaway81523大约 3 年前
Interesting but I notice that the Emacs calculator (calc.el) isn&#x27;t in the comparison. It is what I use for quick calculations most of the time. There was also a Mac program called Milo a long time ago that was very cool. I never had a chance to study it though.
评论 #30593361 未加载
评论 #30593107 未加载
Phrodo_00大约 3 年前
This is very similar to qalculate[1]. It shares a lot of the same features and design decisions<p>[1] <a href="http:&#x2F;&#x2F;qalculate.github.io&#x2F;" rel="nofollow">http:&#x2F;&#x2F;qalculate.github.io&#x2F;</a>
jph大约 3 年前
Superb! I downloaded Chalk then did your donation button. Your calculator is excellent, and your write-up is so thorough that it works as a case study for UI&#x2F;UX. Thank you.
ncmncm大约 3 年前
I don&#x27;t understand this. What do &#x2F;bin&#x2F;bc or &#x2F;bin&#x2F;dc lack? (It was hard to tell from the article, because most of the graphics did not load.)<p>A good thing about these bin tools is that you can cut and paste from a text editor, for scripting, and you get a transcript. And, GNU readline works, for history.
vermarish大约 3 年前
Being able to compute sin(0.1)&#x2F;0.1 and reading the uncertainty at a magnitude of E-309 feels magical after doing everything in MATLAB, where the default float type only counts down to E-16. This is really cool!
w0mbat大约 3 年前
I got fed up with all these complicated calculators and re-implemented the original Mac calculator desk accessory at <a href="https:&#x2F;&#x2F;CalculatorDA.com" rel="nofollow">https:&#x2F;&#x2F;CalculatorDA.com</a>. It does the simple things I need while giving me a nice nostalgia buzz.
评论 #30594418 未加载
评论 #30593942 未加载
Sophira大约 3 年前
My favourite desktop calculator so far is Qalculate![0] for similar reasons, and I basically never have the keypad shown. It uses libqalculate, which also provides an executable version that&#x27;s usable on the console, which I also use often.<p>It&#x27;s incredible and I love it.<p>[0] <a href="https:&#x2F;&#x2F;qalculate.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;qalculate.github.io&#x2F;</a>
评论 #30592919 未加载
评论 #30593763 未加载
评论 #30593131 未加载
评论 #30593335 未加载
smasher164大约 3 年前
Great work! I like how well considered the design is. This calculator takes a point in the design space with text input, equation rendering, a grapher, and Big Int&#x2F;Floats for number representation.<p>I wonder if the author considered an input method where keypresses translate directly into a rendered equation? Symbolab kind of does this, so instead of writing an expression in some functional style and seeing its rendered output, I can directly manipulate the rendered equation with the keyboard.<p>The other point the author makes about discoverability of operators like sqrt and cbrt, I feel that you could circumvent it by introducing a semantic search feature for operators. For example, typing &quot;square root&quot; would display a list of suggestions for operators that match that, like an IDE.<p>The last question I have is if the author has looked at libraries like Calcium (<a href="https:&#x2F;&#x2F;fredrikj.net&#x2F;calcium&#x2F;" rel="nofollow">https:&#x2F;&#x2F;fredrikj.net&#x2F;calcium&#x2F;</a>) or the work that went into the Android calculator recently (<a href="https:&#x2F;&#x2F;dl.acm.org&#x2F;doi&#x2F;pdf&#x2F;10.1145&#x2F;3385412.3386037" rel="nofollow">https:&#x2F;&#x2F;dl.acm.org&#x2F;doi&#x2F;pdf&#x2F;10.1145&#x2F;3385412.3386037</a>). They use exact arithmetic with computable real&#x2F;complex numbers. It might serve as a cleaner abstraction that switching between different BigNum representations yourself.
评论 #30591350 未加载
chacha21大约 3 年前
<a href="https:&#x2F;&#x2F;chachatelier.fr&#x2F;chalk&#x2F;article&#x2F;chalk.html" rel="nofollow">https:&#x2F;&#x2F;chachatelier.fr&#x2F;chalk&#x2F;article&#x2F;chalk.html</a>
评论 #30590257 未加载
评论 #30594005 未加载
评论 #30591356 未加载
zelon88大约 3 年前
To be honest I read all the materials, 85% of the blog post, and your website and you still have not told me WHY software calculators are wrong.<p>You drone on and on and on. I&#x27;m 15 minutes into this rant of yours and I know all your personal preferences about pocket calculators and software calculators and yet no evidence to suggest why your design is actually better. No evidence to suggest that existing calculators are incorrect.<p>Can you please provide a real TL;DR where you provide hard proof that popular software calculators are incorrect?
评论 #30595092 未加载
评论 #30597525 未加载
laacz大约 3 年前
If you enjoy skeumorphic calculators with their data interfaces, and haven&#x27;t already, look into the RPN[1] notation used in (most, I believe) scientific&#x2F;programmable calculators. Once you go there, you stay there. Just Google[2] or DDG[3] for it to play around.<p>1: Wikipedia entry: <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Reverse_Polish_notation" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Reverse_Polish_notation</a><p>2: Google search: <a href="https:&#x2F;&#x2F;www.google.com&#x2F;search?q=rpn%20calculator%20online" rel="nofollow">https:&#x2F;&#x2F;www.google.com&#x2F;search?q=rpn%20calculator%20online</a><p>3: DDG: <a href="https:&#x2F;&#x2F;duckduckgo.com&#x2F;?q=rpn+calculator+online" rel="nofollow">https:&#x2F;&#x2F;duckduckgo.com&#x2F;?q=rpn+calculator+online</a>
评论 #30597200 未加载
mncharity大约 3 年前
&gt; <i>Some much needed features are difficult to implement and require a large amount of work. If these features are not available, this is because nobody really cares, and there are few pre-existing parts to build upon.</i><p>Some things resemble &quot;nobody really cares&quot;, but are distinct. Being unaware (eg &quot;I didn&#x27;t realize how bad it was until it stopped&quot;). Being impoverished (eg &quot;Any cost, including attention, is an insurmountable cost barrier&quot;, or as in education, a chain-of-care disaster triage). And so on.<p>The &quot;few [...] parts to build upon&quot; is indeed a mechanism for &quot;large amount of work&quot;. Yay patents.&#x2F;s But there are others, and subtleties. For example, one can lack a part to build upon, because there are lots and lots of similar parts available, but all are variously not fit for purpose, or are collectively hiding the existence of a part that is - a prohibitive discovery cost (also effort dissipation). Or recursively, a part might not have been built, because its multiple potential uses have not been gathered to incentivize it, or a part it in turn needs - an economic communication failure. All our usual dysfunction.<p>I emphasize this because the &quot;nobody really cares&quot; model can be very attractive, but also very misleading. It can be a wonderful fit for observations, and predictive of further observations of the undisturbed system, while also being a very poor model for planning and predicting interventions.<p>For example, from kindergarten to undergraduate, introductory astronomy content tells students the simply wrong color for the Sun. In some sense, &quot;nobody really cares&quot; is an excellent description. Not teachers, professors, authors, publishers, reviewers, parents or students. But... they could care. Individually, it&#x27;s not too hard to flip their state. And it&#x27;s possible to imagine interventions with broader impacts. But we collectively don&#x27;t get to it, for all the diverse reasons things aren&#x27;t gotten to. Much of science education dysfunction is like that. Because &quot;nobody really cares&quot; that it succeeds... sort of, kind of, but also no - that&#x27;s very not a root cause analysis.
shhsshs大约 3 年前
I love this, great idea! I don&#x27;t need the majority of the fancy features but I can see the use case for them.<p>I built my own calculator app a while ago [0]. I&#x27;ve used an HP-41C as my main calculator for many years and I have not yet found a good RPN calculator app available on ALL platforms. I wanted a simple calculator that felt like an HP-41C that I can use on my phone + all desktop operating systems and get the same experience.<p>[0] <a href="https:&#x2F;&#x2F;github.com&#x2F;shamus03&#x2F;ralc" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;shamus03&#x2F;ralc</a> (if you&#x27;re on desktop, it looks much better if you install it as a PWA and resize to your preferred size)
评论 #30595154 未加载
评论 #30594711 未加载
mbar84大约 3 年前
I have a script bound to a hotkey.<p>User experience: &lt;hotkey&gt; 1+1&lt;enter&gt; exit&lt;enter&gt;<p>$ cat ~&#x2F;bin&#x2F;ipy ipython -i -c &quot;import itertools as it; from statistics import <i>;import functools as ft;import operator as op;import io;import pathlib as pl;import pandas as pd;import numpy as np;from math import </i>;import enum;import re;import sys;import os;import json;from collections import defaultdict, deque, Counter;import random;import decimal;import fractions;from time import time;import datetime as dt;import shutil;import subprocess as sp;import uuid;from hashlib import sha256, sha1, blake2b, blake2s&quot;
评论 #30611799 未加载
slaymaker1907大约 3 年前
What I usually end up doing is just using python3 (specifically not python2 because I think python3&#x27;s handling of division is better for general use). I haven&#x27;t finished reading your article, but it&#x27;s really good. I really like that I can open up my &quot;calculator&quot; and use it with just the keyboard, plus it has an immutable history and variables.<p>Does anyone know of a good RPN calculator for Android? I currently use RealCalc, but it isn&#x27;t nearly as good as PCalc on iOS. I particularly liked that PCalc was programmable with custom functions.
icodestuff大约 3 年前
So I love the concept, but the execution is kinda buggy, at least on macOS 11.6.3. I opened it and typed 1+&lt;mash on top row of keyboard around 190 digits&gt;&lt;return&gt;. It calculated it correctly, but the Stop button never turned back into the &quot;=&quot; button (even though the computation and display had clearly finished; clicking it just ran &quot;output(1)&quot; repeatedly). When I quit and relaunched it, and typed output(1), it crashed. Is there a place to submit bug&#x2F;crash reports?
评论 #30597225 未加载
orbital-decay大约 3 年前
I love the ground-up design. However, i feel that in-place operations are missing from your rationale. Good algebraic calculators are typically able to 1&#x2F;x or invert anything on the screen with one button without breaking the input flow, and repeat operations for the same left- or right-side operand by pressing =. This massively reduces the time spent on certain guesstimations when doing napkin math.
评论 #30597268 未加载
tedmiston大约 3 年前
I see that you mention it&#x27;s open source, but for the life of me I cannot find the link to a repo anywhere on the site.<p>Is it on GitHub? Am I missing something?
评论 #30597182 未加载
评论 #30597261 未加载
algon33大约 3 年前
Any chance for a windows version? Or a mobile app? The usecase for a mobile app is more plausible, even given that this is already a great idea.
olliej大约 3 年前
This seems like it’s not a “for everyone” calculator, and built in OS calculators are always going to go “simple desktop calculator” design as that’s what the vast majority of people want or need.<p>That said I just type equations into spotlight - it doesn’t handle user defined functions, graph results, or anything, but it has a reasonably full suite of the standard arithmetic functions and operators
评论 #30591936 未加载
operator-name大约 3 年前
There&#x27;s been a lot of suggestions for alternative desktop calculator programs that try to remedy some of the issues outlined. I&#x27;ve had similar experiences&#x2F;annoyances with calculator apps, most of which to copy handheld calculators but without the satisfaction of buttons yet the power of a programming repl&#x2F;solver.<p>I&#x27;ve currently settled on MathLab&#x27;s Graphing Calculator[0] which has very similar design elements for any larger scale calculations. My second choice if the calculation requires estimates or units is obviously Wolfram Alpha, but the need for connectivity, lack of calculation history and speed leaves it lacking as a quick calculation tool.<p>[0]: <a href="https:&#x2F;&#x2F;play.google.com&#x2F;store&#x2F;apps&#x2F;details?id=us.mathlab.android.calc.edu" rel="nofollow">https:&#x2F;&#x2F;play.google.com&#x2F;store&#x2F;apps&#x2F;details?id=us.mathlab.and...</a>
madrox大约 3 年前
The history of the OS calculator is rooted in skeumorphism to look like the pocket calculators of the 90s: <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Calculator" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Calculator</a><p>I doubt any OS calculator got built through a modern software development process.
评论 #30593486 未加载
im_down_w_otp大约 3 年前
This is exceptionally cool. It feels like what would happen if one were to fastidiously reimagine the HP 48 user experience for the desktop (in terms of usage patterns, mental model, etc.).<p>I will 100% use this. However, you can take my HP 48GX when you pry it from my cold, dead hands. :-)
g8oz大约 3 年前
For Linux and Bsd a good calculator repl I&#x27;ve used is Genius.<p><a href="https:&#x2F;&#x2F;flathub.org&#x2F;apps&#x2F;details&#x2F;org.gnome.Genius" rel="nofollow">https:&#x2F;&#x2F;flathub.org&#x2F;apps&#x2F;details&#x2F;org.gnome.Genius</a>
EnderShadow8大约 3 年前
I just use a Python or Node shell as a calculator. It usually works well enough.
karmakaze大约 3 年前
I never use the macOS calculator app. I enter my expressions into Google search. I can&#x27;t be the only one who does this.<p>I would appreciate a better online calculator than Google web search. What do others use, WolframAlpha?
评论 #30594264 未加载
评论 #30594236 未加载
评论 #30595743 未加载
chazeon大约 3 年前
Because of some reason discussed in the article I like unix&#x27;s bc and also hoc when avaliable (through plan9). It would be nice if these two could also be included in the comparison.
uranusjr大约 3 年前
Off topic, but FYI I thought your page was broken when it’s loading on my phone. All I could see was the table of contents, the main text is barely visible (like 10px) on the very right edge of the screen. The TOC didn’t close until everything is loaded, which took a few seconds for me for some reason (probably bad network on my part). Perhaps making the TOC hidden by default with CSS and open it later would be better UX, not sure.
veysiertekin大约 3 年前
Alternative: why not use casio emulators? <a href="https:&#x2F;&#x2F;education.casio.co.uk&#x2F;download-emulator-cw" rel="nofollow">https:&#x2F;&#x2F;education.casio.co.uk&#x2F;download-emulator-cw</a><p><a href="https:&#x2F;&#x2F;education.casio.co.uk&#x2F;emulator-free-licences" rel="nofollow">https:&#x2F;&#x2F;education.casio.co.uk&#x2F;emulator-free-licences</a><p>(Looks like they are Windows binaries, didn&#x27;t try on WineHQ tough)
评论 #30624967 未加载
评论 #30624880 未加载
criddell大约 3 年前
I still enjoy using a good handheld calculator. Today it&#x27;s an HP 35s which is fine but I only bought it because my HP-28s battery door broke.<p>I&#x27;d love to get one of the Swiss Micros[1] but I can&#x27;t really justify it when my 35s is good enough. Maybe if I get a nice bonus this year I&#x27;ll treat myself.<p>[1]: <a href="https:&#x2F;&#x2F;www.swissmicros.com&#x2F;products" rel="nofollow">https:&#x2F;&#x2F;www.swissmicros.com&#x2F;products</a>
codedokode大约 3 年前
I also noticed that digit keys on keyboard in desktop calculators are useless - why would you type in numbers by clicking? It&#x27;s very slow.
评论 #30593400 未加载
p0nce大约 3 年前
If you are after _weird_ Calc alternative for Windows, I use this one all the time: <a href="http:&#x2F;&#x2F;graindolium.paradisia.net&#x2F;applicat&#x2F;GrainCalcul.rar" rel="nofollow">http:&#x2F;&#x2F;graindolium.paradisia.net&#x2F;applicat&#x2F;GrainCalcul.rar</a> just because it lets you use the keyboard instead.
myhf大约 3 年前
Lots of cool functionality in Chalk. I love it.<p>The main thing I use Google search calculator for is natural-language unit conversions like &quot;2 gigabytes &#x2F; 128 kibibits per second in days&quot; which is not in scope for Chalk, but there&#x27;s a nice desktop calculator called Soulver that is good at that kind of thing.
dracodoc大约 3 年前
I used to use a firefox addon which have nice expression input and history. Firefox updates killed so many good addon, even yesterday the 97.0 is disabling my addon again.<p>Now I just keep a RStudio window open.
omaranto大约 3 年前
Looks very cool, congratulations! Have you tried Emacs Calc? Chalk reminds me of Emacs Calc, but without the symbolic computation (and without date calculations or anonymous functions).
评论 #30593154 未加载
Dylan16807大约 3 年前
Looks cool, though I can&#x27;t really use it.<p>Typo in the boolean section, one of the &#x27;certainly OR false&#x27; results on the chart says &#x27;unlikely&#x27;.
albertzeyer大约 3 年前
I use IPython frequently for such simple calculations.
exabrial大约 3 年前
Obviously needs social network integration....<p>&#x2F;s &quot;OS providers seem to have forgotten that a &quot;computer&quot; should be used to COMPUTE&quot;
Zykinii大约 3 年前
My current desktop calculator is actually the PopOS launcher. Support constants, every function I need and even unit conversion.
评论 #30596930 未加载
Hnrobert42大约 3 年前
Alfred has a pretty good calculator for Mac that acts like the Google calculator without the need for internet connection.
tpoacher大约 3 年前
LaTeXit looks great, I&#x27;ll have to try it next time I&#x27;m on a computer.<p>Currently I use Anki for the same effect.
评论 #30599986 未加载
perryizgr8大约 3 年前
The best calculator I used on desktop was the Powertoys Calculator. They had the data entry nailed.
DiabloD3大约 3 年前
I totally get this. The number of times I quakemode a terminal just to run bc is insane.
fastflo大约 3 年前
<p><pre><code> $ python &gt;&gt;&gt;</code></pre>
darnir大约 3 年前
The website layout is absolutely broken on Firefox on Android.
wjdp大约 3 年前
Looks to be Mac only, any good cross platform alternatives?
评论 #30595011 未加载
kkfx大约 3 年前
You should try Emacs calc inside EXWM :D
oversocialized大约 3 年前
Anyone remember the omg wtf calculator contest? <a href="https:&#x2F;&#x2F;thedailywtf.com&#x2F;articles&#x2F;OMGWTF-Finalist-09-Terrys-Calculator" rel="nofollow">https:&#x2F;&#x2F;thedailywtf.com&#x2F;articles&#x2F;OMGWTF-Finalist-09-Terrys-C...</a>
29athrowaway大约 3 年前
This looks more like a CAS.