top | item 32610536

NumWorks: An open-source graphing calculator (with Python and Rust support)

128 points| semenko | 3 years ago |numworks.com

39 comments

order

nsajko|3 years ago

Mods, please correct the editorialized and wrong title. NumWorks isn't open source and never was.

What it is is source-available, because the source is available. Or at least it still was available the last time I looked at it.

NumWorks used to be fun because it had an unlocked bootloader, allowing users to download their own software onto the calculator. But then they did a face-heel turn.

To NumWorks' credit, I'm sure the UI is still miles ahead of Texas Instruments calculators.

EDIT: it seems NumWorks now allows users to download "apps" onto their devices. This is nice, of course, but still a far cry from the unlocked bootloader situation.

rpdillon|3 years ago

I've engaged in debates on HN about the definition of "open source" in the past, so there might be some disagreement about the meaning of the title.

I've settled on using "OSI open source" to avoid this, since those discussions are uniformly tiring and unproductive.

That said, I agree with parent: the repo specifically has a section regarding copyright and it simply says that all rights are reserved[0]. This is proprietary software, disallowing copying, distribution, and derivative works. It's weird, since even cloning the repo appears to be a violation of their stated terms, though they supply instructions for building the software yourself that of course requires copying the code to your machine first[1].

Copyright is weird.

[0]: https://github.com/numworks/epsilon#copyright

[1]: https://www.numworks.com/resources/engineering/software/buil...

Edit: Figured it out. License was changed 13 months ago: https://github.com/numworks/epsilon/commit/b1ea81f067f5fef3f...

gigatexal|3 years ago

To be allowed for use on tests it’s probably setup in such a way and locked down that proctors will allow it’s use.

satiric|3 years ago

I think the creators do legitimately want to build a truly open source calculator. The problem is getting the calculator registered for exams - the examiners naturally want to make sure that the calculator isn't being used for cheating. And any method to replace the firmware, add custom applications, etc. can and should be viewed as a way to cheat on exams.

Personally, I'm hopefully never going to take another standardized exam in my life - I'd like to see a graphing calculator that doesn't attempt to get certified for exams or school use, since this seems to be such a significant hurdle. But I know I'm in the 0.1% of graphing calculator users who don't care about AP/IB/the SAT/whatever.

nsajko|3 years ago

> I think the creators do legitimately want to build a truly open source calculator.

Somewhat like Google legitimately wants to "do no evil"?

Sometimes it is said that deeds, not words is what matters. But in this case even the words are missing, so I don't really get what you're trying to say.

josephcsible|3 years ago

> I think the creators do legitimately want to build a truly open source calculator.

Then making one that wasn't certified for exams is exactly what they should have done. As it stands, they're just another TI.

jedisct1|3 years ago

It doesn't support Rust at all.

There's just a GitHub repository with a toy example in Rust, that uses nothing but direct unsafe calls to five C functions.

But Python, yeah, definitely. That's the beauty of this calculator.

nsajko|3 years ago

> But Python, yeah, definitely.

Well, it's a forked MicroPython. It doesn't actually support Python, just something similar to Python.

bb88|3 years ago

I have one. It's great. It's quite an amazing bit of tech.

I wish they would split out the market, though, one for the educational market for tests and the like, and one for the professionals with wireless and more open capabilities.

I would like for instance to ship images of graphs to use in a web page. Or to use it as a keyboard to type equations and calculations into documents. Or to have it connect to PyPI say to grab programs that can calculate complex equations.... etc.

charles_kaw|3 years ago

I have long believed that there is a huge market for some sort of rudimentary TI-style CAS system, with a caveat. Something that works on embedded arm devices, but is screen aware enough to be ported to a desktop.

If you include bluetooth in your calculator hardware, you now have an excellent input device for an onscreen CAS - or maybe something more like a screencast.

Extend this concept far enough, and we're talking about something like OP is describing - easy to sync and share small programs and tools. Further integration with excel and other tabulated data sources, and you've got a real killer on your hands.

a-dub|3 years ago

matlab or octave (oss clone) may be of interest to you.

for symbolic math try wolfram alpha, the matlab symbolic math toolbox or one of the symbolic math packages available for python.

semenko|3 years ago

I just stumbled upon NumWorks and was excited to see some competition for TI's calculator monopoly [1].

It looks like NumWorks is open source (including the hardware) [2] and supports Python and Rust! [3]

[1] https://gen.medium.com/big-calculator-how-texas-instruments-...

[2] https://www.numworks.com/resources/engineering/

[3] https://github.com/numworks/epsilon-sample-app-rust

jhallenworld|3 years ago

Numworks is interesting, but not really that great. The two things I don't like are: 1. the Android app is a strictly a physical calculator emulator, and does not try to be the best possible calculator for Android. 2. On the real calculator, the user interface is pretty slow- sure, it's responsive, but it's not very efficient.

So for example, it comes in last on this benchmark:

https://github.com/jhallen/calculator/wiki

nsajko|3 years ago

Software isn't the worst thing for UI efficiency on NumWorks: the buttons are very low quality. So not only are many key presses necessary (according to your benchmark), but each key press must be relatively carefully performed to avoid the wrong key being actuated, for example.

That said, the NumWorks UI is quite intuitive.

geophertz|3 years ago

These calculators are very popular in France.

I know of a lot of teachers who use them for teaching.

gbraad|3 years ago

The NumWorks is now a fauxpensource device. They changed their license months ago after a debacle with their exam mode. Delta/Upsilon firmware are based on the pre-license change firmware.

Where does the statement around rust support come from?

josephcsible|3 years ago

That's all true, but there's one more key point that makes it even worse than that: the hardware is tivoized.

wscott|3 years ago

This thing looks a whole lot like the HP Prime[0] calculator. From the icons to select the "applications" (aka modes) and the pop up menus. That said the HP has a color screen and from the looks of it better buttons.

Too bad HP didn't care enough about calculators to make the prime live up to its potential.

[0]: https://hpcalcs.com/product/hp-prime-graphing-calculator/

solarized|3 years ago

Beautiful design. but, another devices in my bag? no thank you. my phones already solve almost anything.

agumonkey|3 years ago

i wish to make a toy version of that on an esp32, with a RPL system on top (of course)

skavi|3 years ago

How do the buttons feel?