Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> No, this is not replaced by typing "python" (or "bc", or anything else, really) at your command prompt.

Why not? At least I can easily copy the results and the code to a document which avoids transcription errors. Or do you mean that there simply isn't a program that has the functions you use?



>> Incidentally, many young people (yes, I know how that sounds) do not know how useful a good engineering calculator can be and do not want to learn how to use one. They are missing out. Yes, there is a steep learning curve, but the rewards are significant if you do any amount of calculation in your hobby or work. No, this is not replaced by typing "python" (or "bc", or anything else, really) at your command prompt.

> Why not? At least I can easily copy the results and the code to a document which avoids transcription errors. Or do you mean that there simply isn't a program that has the functions you use?

My guess it's the ergonomics between a specialized tool and a non-specialized one. Technically, python may be able to replace "a good engineering calculator," but so can ASM. No one would even ask "Why non ASM?," because its ergonomics are near-universally understood to be so poor, but the same issues can apply to more popular tools like python, just less obviously.


I'm a calculator nut who has had many fancy TI (like the Voyage 200) and HP calculators (yes RPN) including the SwissMicro reproductions.

The ONLY benefit to these tools that I can surmise is basically that they are a physical device for scientists or others in the lab or field and not in front of a computer.

For any kind of data work I've seen, Excel, R, Python, Mathematica, or Matlab are all vastly superior. They allow faster entry, can show large amounts of data on screen, can allow for saving large amounts of data ...etc.


Some of us (mathematics side) still actually work on paper with calculators. Most of the job is thinking which tooling doesn’t necessarily improve.


> Most of the job is thinking which tooling doesn’t necessarily improve

yet you use paper and calculator.


That's like a carpenter saying it only took 10 seconds to make that cut while ignoring the 3 hours it took to create the jig so the cut would take 10 seconds.

You don't need the calculator to do the final sums until you've done all of the work gathering all of the data that needs to be calculated. It doesn't mean the calculator wasn't needed, just that it's only needed for one thing not every step along the way.

This wasn't the gotcha you think it was


near the end of the thinking yes.


I don’t use the physical HP50G i have that often, but i love it emulated on the phone. It’s for semi complicated quick calculations where scientific calculator interface really shines compared to anything else available.


What emulator do you use?

I'd really like to run HP50G on iOS, but the only emulator I know was abandoned years ago (I got the source just in case, but it's a lot of work to fix the issues and build it).


Yeah, turns out i mistyped a bit. The emulated one is not 50G but HP49G+ (i use iHP48 app to do it)


yeah after a decade in my job, I have a ton of utility functions in python that I reach for when given a new request to think through something. I doubt a smaller screen where I have to type in stuff and then copy out results would make it any easier.


This thread is making my point for me rather well.


yes a lot of people love them, but nobody's actually coming up with anything I can't do in python...


You can do everything in Python. But perhaps it is not the best tool for every job.

This is similar to programming language discussions: any programming language can be discredited by saying "but I can do all that in assembly/C/whatever". Yes, you can, but perhaps there are better ways to do it.


usually with programming languages, we mention certain things - like how python is easier to read, it's almost like English. it comes with dozens of well designed built-in libraries to do a lot of useful things, and thousands of external libraries to do the rest - even gluing together c/Fortran code for the speedup. it's well supported on many platforms so you can design on one comfortable os environment and deploy in a scalable one.

for the engineering calculators, it seems the advantage is that some people learnt to use them in school and really love using them? that's great, I'm tempted to look into them myself, because it does sound cool to have a small device that does that sort of thing while I'm reading a book. but the truth is that for me, both at work and at home, my laptop is never more than 5 seconds away from showing me a repl, so maybe I'm not the target audience.


Let's see your Python answers to the following examples:

1. What happens if I rotate binary pattern 1001 right by 3 positions on a 18-bit PDP-9?

  RPL code: 18 STWS 2#1001 3 RRC

  Result: #8001 in base 16, #1000 0000 0000 0001 in base 2.
What about if I do this on 6 36-bit words?

  RPL code: 6 36 * STWS 2#1001 3 RRC

  Result: #20 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001
2. What is the symbolic expression of the determinant of some 2x2 matrix?

  Program: [[1 y]['2+x' b]] DET

  Answer: 'b-(x+2)·y' (shows graphically on calculator screen)
3. What is the output voltage of a voltage divider with input voltage 100V, R1=4kΩ, R2=10Ω

  Program: R1=4_kΩ R2=10_Ω V=100_V 'ROOT(ⒺVolt Divider;[V1];[1_V])' EVAL

  Result: [ V1=99.75 V ]

  Note that ⒺVolt Divider is a built-in equation, but you can of course put your own.
4. Verify if Ramanujan constant exp(sqrt(163)*pi) is an integer.

  Program: « 'exp(√ 163·Ⓒπ)'60 PRECISION →Num FractionalPart »
  Result: -7.50E⁻¹³, so no, not an integer, but really close
5. Verify Maxwell's value for the speed of light, epsilon0 * mu0 * c^2 = 1.

  Program: '(√(Ⓒε0·Ⓒμ0))⁻¹'  →Num 
  Result: 299 792 458.00 m/(F↑(¹/₂)·H↑(¹/₂))
  Convert to SI units: UBASE
  Result: 299 792 458. m/s
  Convert to feet per second: ³⁷⁴ ⁷⁴⁰ ⁵⁷² ⁵⁰⁰/₃₈₁ ft/s or 983 571 056.43 ft/s.

  (if you subtract the Ⓒc constant, you get -0.00031 11057 21 m/s)
6. Check the Collatz conjecture on 989345275647

  Program: « if dup 1 ≠ then if dup 2 mod then 3 × 1 + else 2 ÷ end Collatz end » 'Collatz' STO 989345275647 Collatz

  Result: 1 (conjecture is verified)
7. Given that it's now Nov 7, 00:07:51 and that a program I started on Nov 1st at 23:15:27 just finished, how long did it run?

  Program: 20241107.000751_date 20241101.231527_date - 1_h convert UVAL →HMS
  Result: 120:52:24
(the "1_h convert UVAL →HMS" should really just be →HMS, but at the moment, →HMS is not smart enough to convert from days)


When all you have is a hammer arguments are so much fun


every now and again, I download the user manual for a graphing calculator and every time I've been underwhelmed by what they have to offer.

What impresses me in this discussion is how coy everybody has been about the actual benefits of these devices.


What impresses me is how you dismiss the usefulness to other people because you can't imagine it possibly being useful to someone because it's not useful to you


I don't believe I've done that? I've said it doesn't appear that it would be useful to me - and I keep asking, probably for the 5th time now, in what way is it useful? The most cogent reply I've had so far is "0.85f’c". I don't know what that means. Please, could you explain? At this point I feel that even Apple fanboys put more effort in justifying their choices.


Do you like pen or pencil? Do you like college rule or wide rule paper? Do you like spiral or perf notebooks?

I don't need to justify my reasoning to you in a way that convinces you your way is wrong and mine is right. People like different things. I learned to use a scientific calculator as an extracurricular competition that allowed me to become very proficient at 10-key. Because of that, doing calculations on a computer goes against muscle memory. Laptops don't even have a 10-key. If I have a bunch of notes/papers with numbers that need to be added, I can pull out a calculator and just do the data entry and get a result. I don't have to go to my computer, or lug the laptop around in the shop. I just need numbers quickly crunched so I can then turn around and make a cut, drill a hole, or whatever. I don't need a large clunky compute device for that. Dropping a calculator on the shop floor is much less expensive than doing the same with a laptop. Lots of time, I just don't feel like needing to write a damn script just to get the tangent/cosine of a value to determine the lengths of the whatever.

Again, just because you have a hammer doesn't mean that you should use it drive that screw. Sometimes that tool that specifically made for purpose is better for the task at hand.

Now, pick any of the aforementioned options as to why I might prefer a calculator over a programming env just to crunch some numbers.


Thank you for explaining! So it's down to personal preference and invested training time, I wish you would just have said that to begin with. It's your hammer and you see everything as a nail. Got it.


hopefully you can now apply this in future endeavors of open mindedness that other people might do things differently than you do, and that's okay. even if you can't possibly imagine why.

today's episode has been brought to you by the letter A for acceptance and the number 9


your mind is like a steel trap - nothing gets past you!


I declare thee argument winner! Well done chap!


We need a concrete example.


0.85f’c


What does it mean?


It's the concrete design compressive stress - a simple example of a concrete equation.


You just write the stuff down or translate it to LaTeX.

Incidentally the 50G (and Prime) has a decent CAS built in which seems to get stuck less than some other commercial ones.


> Why not?

Keystroke count and progressive computations.

Let me illustrate using an example from a YouTube video called "The hardest Exam Question : Only 6% of students solved it correctly" (https://www.youtube.com/watch?v=NfgEPsm9Jzw), which is about a simplified formulation for (sqrt(2)-1)^10.

The first remark is that a CAS-capable calculator like DB48x can help with the symbolic part of the computation shown in the video. However, to be fair, DB48x still lacks some of the relevant HP48 interactive equation manipulation features to be able to demonstrate that. So let's focus for now on the numerical part.

The author shows that (sqrt(2)-1)^10 is the same as 3363-2378*sqrt(2). Let's evaluate that using bc.

Attempt 1: bc, then (sqrt(2)-1)^10-(3363-2378*sqrt(2))

Result: -985. Er... What?

OK. What is the option for precision again? man bc. Search for precision. Mentions the @ operator. Does not seem to do it. 5 minutes of search later, find that precision is called scale, that I need the -S option. I could also presumably use the -l option, which experimentally seems to set the scale to 20. Starting to remember why I am not a big fan of bc ;-)

Trying again. bc -l

(sqrt(2)-1)^10-(3363-2378*sqrt(2)) now gives me:

-.00000000000000000402.

Counting "bc -l" and ENTER keys, that's I believe 42 keystrokes.

Trying again with db48x: I need 23 keys using the most naive RPN data entry. The result is -1.57861 99E⁻²⁰ with the default 24-digit precision.

I can also enter the same algebraic expression as in bc directly in the simulator using copy-paste. I get a nice graphical rendering of the expression, which I can check, and then just one key (EVAL/=) to get the numerical value.

As another example, let's try to check if the Ramanujan constant in an integer:

bc -l

e(sqrt(163)*pi(20))

262537412640768743.98947654935272888605

That does not look like an integer to me. And it's way more than the 20 digits I would expect from scale. What is weird is that it gives me a false sense of accuracy, all the digits after "43.9" are bogus, as shown by switching the scaling to 100:

bc -l -S100

e(sqrt(163)*pi(100))

262537412640768743.9999999999992500725971981856888793538563373369908\ 627075374103782106479101186073126534265238592035363

21 keystrokes, and a result that is a bit hard to interpret with the default precision (scaling). In other words, it's pretty easy to get bogus numerical results and not know it.

With DB48x, after selecting a precision of 100, 11 keystrokes including menu selection to get the pi constant, and I get: 262 537 412 640 768 743.99999 99999 99250 07259 71981 85688 87935 38563 37336 99086 27075 37410 37821 06479 10118 60730 76

> At least I can easily copy the results and the code to a document which avoids transcription errors.

This is also true with the DB48x simulator, which supports copy and paste both ways. This is how I copied the values above, or entered the exact same algebraic expression as in bc into the simulator.


> This is also true with the DB48x simulator,

You moved the goalposts. The original discussion was about calculators not emulators.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: