top | item 27084879

TI-84 Plus CE Python Graphing Calculator

179 points| rbanffy | 4 years ago |education.ti.com | reply

158 comments

order
[+] don-code|4 years ago|reply
The thing I appreciate the most about a device like this is that it's largely self-contained. I can program my phone in Python, sure, but I largely can't program my phone in Python on the phone. There are tools which do this, but the device isn't optimized for it, and the usage metaphor isn't really compatible - coding UI applications with a soft keyboard doesn't sound fun or useful.

On the other hand, getting a text-based REPL that I can quickly enter some commands on is great - that was why I really loved TI-BASIC on my TI-83. In college it made it easy to write a small program, roughly when I needed that program. In one extreme example, my girlfriend and I took ours to the grocery store every week, and used a BASIC app I wrote for meal planning for the week (this was pre-smartphone era).

I'd hope that this is _something_ of an answer to the concern that computing is getting too complicated and detached. Just thinking about the near-ubiquity of the TI-83 when I was in high school, giving kids the ability to code out of their pockets without having to worry about UI mechanics, publishing to an app store, or _threads_ even (AFAIK Android throws exceptions if you do certain things on the main thread), sounds pretty powerful.

[+] ndiddy|4 years ago|reply
The new TI calculators are still Z80 based, so the Python interpreter runs on a separate ARM CPU that communicates with the Z80 over SPI. This creates such a large bottleneck for performance that in most cases TI-BASIC is much faster than Python (and due to TI banning assembly programs, that means that kids wanting to get anything resembling decent performance still get to program in TI-BASIC just like you remember doing). As far as I can tell the Python support is a toy feature mainly included to meet curriculum requirements in certain European countries. Additionally it's a calculator so text entry is very cumbersome, personally I would much rather write code on a smartphone than one of these.

https://www.cemetech.net/forum/viewtopic.php?p=285843#285843 for more information on the Python performance

[+] andrepd|4 years ago|reply
> In one extreme example, my girlfriend and I took ours to the grocery store every week, and used a BASIC app I wrote for meal planning for the week (this was pre-smartphone era).

Ironically, in the smartphone era, devices aren't even supposed to be programmable anymore (to the end user). They're simply means of consuming content (and a way to be surveilled). The idea that a computer is a programmable machine has all but disappeared from the mainstream.

[+] pgn674|4 years ago|reply
Those are some good points that reflect my own experience. My first language was TI-BASIC, self-taught during high school study halls on the TI-83 Plus. My second language was Z80 assembly on that calculator. I think the self contained nature of the programming and running environment in a portable device, along with limited features and power, is really what got me started.

And it ended up helping me choose Computer Science as my college degree and put me on the career path I'm on now. TI has its faults, but I'll be ever thankful for their roll in my job satisfaction.

[+] ineedasername|4 years ago|reply
Wouldn't it be even harder to code on this using its limited keyboard? On a phone the soft keyboard may take up half the screen, but that's still at the same size or larger that this calculator, with a higher resolution. That's not to say programming on a phone is a pleasant experience, just that it seems at least a little easier, with much higher cpu/ram/storage resources.
[+] twobitshifter|4 years ago|reply
Pythonista is a great option on the iPhone (Don’t understand how Apple allows it), but like you said, coding in python on a soft keyboard is not fun.
[+] caseyavila|4 years ago|reply
I think its cool TI has added Python support to their graphing calculators, but let's not forget the fact that they've removed assembly program support. I think its a great shame.

Just recently some folks managed to make an LLVM backend for the eZ80 processors in the TI-84 Plus CE [0], and I was able to create a snake game in C that I could send to my high school friends [1]. I don't know of any examples, but C++ and Rust should be possible in theory too. It seemed like the possibilities were endless with such powerful compiled languages being available to these calculators, but I guess TI had other ideas in mind. At the very least, those of us who haven't updated our calculators' OS will still have assembly support available.

[0] https://github.com/CE-Programming/toolchain [1] https://github.com/caseyavila/calculator

[+] TchoBeer|4 years ago|reply
I remember making super slow programs in BASIC and then learning assembler language with my friends to make faster programs. A shame that children nowadays won't have that opportunity.
[+] snvzz|4 years ago|reply
For anybody considering one of these, I'd suggest taking a look at the vastly superior (in functionality) m68k-based TI-89 or voyage 200 instead.

Used, they do cost a fraction of what these fancy revisions of the TI-84 do.

Being powered by anything more than a few AAA batteries should be an obvious red flag.

[+] asciident|4 years ago|reply
Honestly the issue is that schools don't want calculators (computers) that are too powerful because there could be an app that can just do the homework for students, or let them communicate during exams, or search on the internet. So schools intentionally prefer crippled devices, hence the relatively high price for an underpowered device.

There's not really any good solution to this either without completely overhauling the system (i.e. making things worse for a few years until things stabalize and the kinks are worked out in primary school math education 2.0), so we're at a local maximum.

I don't get your point about batteries though. Calculators are heavily used by the students, so are the perfect place to have a rechargeable. It looks like it's even replaceable too. Throw in usb-c charging, and you've got something that can be charged pretty much anywhere that a phone can.

[+] tempodox|4 years ago|reply
Also, there is the 68k cross-compiling port of gcc (TIGCC, tigcc.org) that lets you write programs in C for the 68k-based calculators. And I have to say that I find the TI system API easier to deal with than its HP equivalent.
[+] cleansingfire|4 years ago|reply
No Python on these although I love the TI CAS.
[+] arthurcolle|4 years ago|reply
They still make the Voyage 200? That's hilarious, what a blast from the past.
[+] kwdc|4 years ago|reply
I wonder if the battery is replaceable?
[+] kwdc|4 years ago|reply
I sometimes wonder why apple/google haven't made a mode for ios/android that puts them into a school-environment specific calculator mode.

Not the usual calculator app. An actual mode where the device is just a calculator. No distractions. Locked in that mode for a duration or needing a code. Kind of like family locking but not that. Wifi etc is off. Maybe even a setting to ensure the phone is disabled. Another setting to present a blank slate so no notes. No ability to swap to different apps. No notifications. Maybe even have a configuration code that is easy to type in and verify so exam operators can easily confirm.

Perfect for the ipod touch. It could easily beat any of the scientific calculators out there, eg battery life.

Bonus points if it logs all activity for exam purposes.

[+] nl|4 years ago|reply
Why?

Because it's quite a lot of work to support and provides very limited value over what a graphing calculator app provides especially taking into account the idea that now teachers have to check people's phones somehow.

[+] herbst|4 years ago|reply
People around here would not accept installing a controlling third party app their school wants on their private devices. Also hacker kids would have fun using their phones all day
[+] saagarjha|4 years ago|reply
I think I'd just use an actual calculator, since it has actual keys…
[+] snuxoll|4 years ago|reply
I’ll buy another TI calculator when hell freezes over. Both the ACT and SAT allow some HP and Casio models that are actually useful outside of these stupid tests, so when my daughter is old enough to need one I’ll be buying anything else for her as well.

Personally I’m quite happy with my HP Prime.

[+] windowojji|4 years ago|reply
The problem with this is that schools tend to very specifically teach TI calculators while leaving other calculators to the children to self-teach.

This is fine if you're a kid who likes/understands/cares about calculators, but if you're not and you don't like math or find learning a specific UI with no guidance annoying it can be bad. I knew kids of both varieties in HS.

[+] arthurcolle|4 years ago|reply
The HP Prime is great, I use mine all the time. The 3D plotting capabilities are really useful. I use that and occasionally an HP 12c. I wish the Prime used a better language for the programming though - Python would be a wonderful addition
[+] billfruit|4 years ago|reply
It has been a great wonder for me that why US highschools seems to require expensive programmable/graphing calculators especially those made by HP/TI. I assume it was some deal made by these companies with the education departments of the states and administrations.

In most other countries, students complete university undergraduate courses, let alone high schools with only needing a cheap non-programmable calculator, while some courses like an undergraduate course in Computer Science wouldn't require any calculator at all.

[+] killjoywashere|4 years ago|reply
Anybody remember the HP48 series? We had lisp in graphing calculators in 1990.

https://en.wikipedia.org/wiki/RPL_(programming_language)

[+] opencl|4 years ago|reply
RPL is great, they kept making the 50G (which was basically emulating the custom CPU from the 48G on an ARM microcontroller) up until 2015.

You could even make your own simple GUIs, I wrote a few that I used a lot in school. A resistor color calculator and some statistics-related ones.

[+] daniellarusso|4 years ago|reply
My favorite calculators.

I had a 48G that was destroyed and a 48GX that was stolen from an autorepair shop, while the car was in for service.

[+] jsjohnst|4 years ago|reply
I had an HP48GX in the early 90s and loved it. Still probably my favorite[1] calculator I’ve owned and I wrote so much code on it back then.

[1] although my TI-92 was a close second after it came out a few years later as it could do symbolic integration unlike the HP48

[+] dstaley|4 years ago|reply
I'm really glad these don't come with a USB C port, otherwise I'd be really tempted to purchase one. There's something oddly calming about doing complex calculations on a calculator versus on a computer. I find myself reaching for the TI-34 on my desk every now and then when I want to really focus and figure something out. The benefit of the TI-34 is that it's solar powered, so I never have to worry about charging it or changing the batteries.
[+] marwatk|4 years ago|reply
I still have my TI-85 from high school on my desk with batteries that expire in 2023. 2013 sounds about right for when I last put fresh batteries in it. Admittedly I use wabbitemu with a TI-85 ROM on my phone so I don't reach for my physical calculator as much as I used to.

But I will never not use this calculator in one form or another as my primary calculation device, it's just too familiar.

[+] hatsunearu|4 years ago|reply
Because of my high school requiring everyone to use an nspire, I am way faster at doing things on the nspire than on the computer, even with a vastly inferior keyboard.
[+] mhh__|4 years ago|reply
Is calming the right word for objectively better?

Computer latency is terrible, and the calculator is optimized to make the 80% faster rather than the 20% possible.

[+] pjmlp|4 years ago|reply
Catching up to the Casio models.

I guess Python is definitely the new BASIC.

[+] rbanffy|4 years ago|reply
In college, I remember how much faster I was with my PB700 than the other students programming their cool HP-41 calculators.

I aced every test in numerical methods in like 15 minutes.

This was the first time I bumped into the phenomenon @pg describes in his “Beating the Averages” essay.

[+] krallja|4 years ago|reply
Oddly, France got this way before the US, in the TI-83 Premium CE Edition Python in June 2019. Don’t let the name fool you - it’s the French equivalent of the TI-84 Plus CE in this article!
[+] mroche|4 years ago|reply
> Distraction-free (no Bluetooth, Wi-Fi, internet access) to keep students focused on learning

... Is this a thing on calculators nowadays, or just a dig at smartphones, laptops, and desktops? Haven't had to use a graphing calculator since high school, the TI-84 Plus was a great device.

[+] dharmab|4 years ago|reply
It's to market these as an alternative to Chromebooks and tablets for math classes. Though it's a moot point because I'm pretty sure you can run Pokemon on a TI calculator these days.
[+] frob|4 years ago|reply
These things are anything but distraction-free. There was a MASSIVE ecosystem around TI games in my high school. I definitely spent multiple classes playing Tetris on my calculator. Or running a drug empire.
[+] plaidfuji|4 years ago|reply
> screenshot shows matplotlib code

So you’re saying I can debug the 50 lines of matplotlib it takes to get a half-decent graph, but now with a tiny screen and no keyboard? Sign me up!

[+] luke2m|4 years ago|reply
Typing python on that ABC keyboard? No thanks.
[+] jordanscales|4 years ago|reply
My first programs were written using the tree menu of a TI-83. Probably nostalgia talking, but I truly think it may have been the most engaging programming I've ever done.
[+] kevin_thibedeau|4 years ago|reply
One would hope they've streamlined it to work like the calculator BASIC variants where math functions are single tokens that can be added and deleted with one button press. If all you're doing is arithmetic code, it wouldn't be much different from BASIC.
[+] n00bdude|4 years ago|reply
One my fondest high school memory’s of playing Block Dude (TI-83+)
[+] jacobkg|4 years ago|reply
I learned to program in TI BASIC on my TI 85. The higher quality assembly games hadn’t been popularized yet so I had a lot of fun writing simple games for myself: hangman, blackjack, etc

I have this recollection that variable names were capped at 2 letters, so all my variables were named AA, AB, etc. Also a lot of goto usage.

Good times!

[+] ilaksh|4 years ago|reply
That's great but the TI graphing calculator monopoly for schools needs to stop. It's such a scam. This type of thing makes me want the robots to win. They couldn't possibly be worse than humans that let this kind of thing continue.
[+] zzo38computer|4 years ago|reply
I have TI-92 calculator; I like that it has a QWERTY keyboard. Unfortunately, it is slow.

I do like that it doesn't have wireless; I generally prefer to use wired connections when possible. (If it has RS-232, then that would be good, I think.)

[+] lupire|4 years ago|reply
TI is a parasite on education.
[+] ivansavz|4 years ago|reply
I hope it will be able to run SymPy[1] (maybe without the mpmath stuff). It would great to have `solve`, `expand`, `factor`, etc.

I've been telling all my students to use https://live.sympy.org/ but having that available offline will be even better.

[1] For anyone not-familiar, check this printable tutorial https://minireference.com/static/tutorials/sympy_tutorial.pd...

[+] dr_kiszonka|4 years ago|reply
I was just looking for such a tutorial - thanks, Ivan!

Question; besides your books - which I have just discovered - would there be any intro to math and engineering books that use Sympy / Python that you'd recommend? I posted that question earlier a while back but didn't get a lot responses.

[+] uyjulian|4 years ago|reply
The Python implementation used is Micropython, so it is not compatible with most Python modules.