[KDE Dot News]
 faq
 flatforty
 contribute
 subscribe
 configure
 search
 rdf

 main


  KCalc: A Modest Usability Improvement
KDE Advocacy, Discussions, and Rumors Posted by Roberto Alsina on Monday 27/Sep/2004, @11:29
from the opinionated-guy dept.
Ok, so I don't like KCalc much. I think that usability-wise, it's the worst KDE application ever. So here's a proposal for a replacement. And since code speaks louder than words, here's an implementation too (PyQt).

[Ed: Screenshot of Roberto?]

<  |  >

 

  Related Links
 ·   Articles on KDE Advocacy, Discussions, and Rumors
 ·   Also by Roberto Alsina
 ·   Contact author

Thread Threshold:

The Fine Print: The following comments are owned by whomever posted them.
( Reply )

Over 40 comments listed. Printing out index only.
well first off...
by Ian Reinhart Geiser on Monday 27/Sep/2004, @13:17
if it could start in less than 10 seconds on my 400mhz powerbook, that would be a huge usability improvement.
[ Reply To This | View ]
What about using Kspread?
by ScottZ on Monday 27/Sep/2004, @13:31
I agree what just about everything you are saying.
However, I think that the improved calculator already exists: KSpread.
[ Reply To This | View ]
I just created a better calculator...
by foobie on Monday 27/Sep/2004, @13:36
and its already installed.

Open your favorite terminal and type
python

No, I'm half serious, when I need a calculator I just use the interactive python interpreter. (I guess I should rename it kython ;)
(anyone who has learned to program in any language should find it very easy to use AS A CALCULATOR).

As far as usability goes, I think this (UseCalc) is great. Good job Robert. People have distorted ideas about what usability is, and just because it looks like a calculator, doesn't mean it is usable.
[ Reply To This | View ]
Ruby version
by Zack Rusin on Monday 27/Sep/2004, @13:42
I blame it on Alex. After I saw this I had to write my version in Ruby using Korundum. And thanks to Aaron I can even show it: http://www.bddf.ca/~zrusin/kalc.tar.bz2 . It uses KComboBox with a history instead of a lineedit. I simply preferred it that way. Also uses text browser instead of a listview to display the results. I thought it seperates it nicely. The main gui is done in designer so people who don't know ruby can play with it. You can also define your own variables in it which is kinda neat.
[ Reply To This | View ]
To the editor
by Roberto Alsina on Monday 27/Sep/2004, @13:44
Ahem. While I identify with the comicbook guy as much as the next hacker, and share some physical features, I am noticeably prettier (photo attached).
Click to download attachment AUT_0007.JPG
244KB (250053 bytes)

[ Reply To This | View ]
Like Psion palmtops
by Gawron on Monday 27/Sep/2004, @14:01
Wow - it works (almost) the same way as calculator on old Psion palmtops did. Cool!!! :-)
[ Reply To This | View ]
I like Roberto's calculator..
by uddw on Monday 27/Sep/2004, @14:07
...but I'm quite sure that my mom doesn't.

There are so many ways to improve kcalc. There is no history. You can't easily review and correct what you have typed. There.. mmmm... I really can't complain much more about it, because there are just no features to complain about.

I'm not sure if an improved calculator (but remember, we're talking about the default, basic, standard KDE calculator here) should duplicate the physical keys of the keyboard, but somehow it should *look like* a calculator and not like the prompt of bc. Otherwise the target audience will never touch kcalc and use their plain old solar calculator (or your HP48G, whatever) instead.

Maybe the number buttons could be replaced by a "Casio"-Logo in the top right corner, so it will still look somewhat familiar.
[ Reply To This | View ]
ACKs, NAKs, and Suggestions
by Jens Schmidt on Monday 27/Sep/2004, @14:26
I fully agree with you that Kcalc needs a replacement or overhaul. Especially the "paper log" is something I often miss.
But about the buttons: I actually use the number buttons from time to time. This is during phone calls, when I have one free hand only, so I don't like shifting back from the mouse to the keyboard. Suggestion: Groups of keys should be enabled separately.
Another suggestion: It should be possible to go back on the paper say 10 rows, update a number there and have everything below recalculated accordingly.
Final nagging: My old TI59 has a display mode "engineering", where the exponent is normalized to multiples of 3. This would be cool; even more so by replacing the exponent with the SI-Unit prefixes (3=k, 6=M, 9=G, ...)
[ Reply To This | View ]
Classic difference
by David Walser on Monday 27/Sep/2004, @15:55
This is just another example of a big difference between different types of people when it comes to doing calculations. Some people have to write things out, think slower, and prefer using graphing calculators where they have to type a whole problem in some horrible mess of parentheses, not thinking linearly through the problem as to the order of calcuations as they type, but of the order they have to type to get the calculator to do the right thing.

Then there's people who think faster, can keep track of some things in their head, and prefer scientific calcuators with memories (yes plural, mine has 7 instead of one), and can fly through complicated calculations (in a much more linear and logical fashion I might add) much faster than others.

And it's not to say there's anything wrong with you whether you fall into one group or the other, you can't change who you are. Some people will just prefer the style of interface you have shown, and for some KCalc just is more usable. Not that there isn't room for improvement.
[ Reply To This | View ]
Some good points, but most don't make sense...
by Alex on Monday 27/Sep/2004, @15:57
I think Kcalc's Simple mode is definitely overloaded with too many buttons and that it could benefit from a ncie history window.

However, I do not think you should get rid of the buttons for numerous reasons. With the buttons you can easily type numbers you see on the screen into the calculato. Sometimes I do not feel like changing to the keyboard and would prefer to use the mouse. The interface resembles a real calculator and it seems more intuitive to me. It's also like this in every OS and so aids in familiarity.

FINALLY, THERE IS NO GOD DAMN POINT! Those who prefer to use the keyboard use that and those who like graphical will use that and for the strange ones, use both at the same time. (I often use my mosue to click on functions and keybaord to type in numbers). There is no need to destroy one or the other.

VALID POINTS:

I defnitely think your right on the history and that the "Simple" view is way too overloaded. And yes, Python rules.
[ Reply To This | View ]
KCalc is good as it is
by NSK on Monday 27/Sep/2004, @16:03
I don't particularly like what the usabilistists propose about KDE, and this proposal about KCalc makes me sick. I use KDE because it's full of buttons and options.
[ Reply To This | View ]
I like KCalc.
by Dan Ostrowski on Monday 27/Sep/2004, @16:22
I don't really understand the problem. The screenshot he shows looks nothing like my default kcalc in kde 3.3

My KCalc (defaults) has 33 buttons total. The screenshot he shows has twice that. Plus, if you are not able to use a Keyboard (think accessability people!) then you probably WANT to use your mouse... and if you want to use the keyboard, certainly buttons don't get in your way. They don't get in mine.

If you don't like KCalc, do what other's do, use Python or Alt+F2. There's no reason to tank KCalc... it's a very familiar and useful application.
[ Reply To This | View ]
realy funny...
by llx on Monday 27/Sep/2004, @16:41
that there're people out there that
- complain about kcalc
- start hacking
- have to corroborate they need only 20 min
and don't use 'dc'
[ Reply To This | View ]
Tempest in a Teapot
by David Johnson on Monday 27/Sep/2004, @20:15
I think this is much ado about nothing. Roberto marks down kcalc for two reasons. The first reason is erroneous. The default kcalc configuration does not have nearly as many keys as his screenshot suggests. His second reason is that buttons are superflous because there are keys on the keyboard. Nonsense! While they may not be necessary for him, they might be desirable to many people. My brief survey reveals to me that EVERY GUI calculator ever uses buttons. Even that sample text UI calculator form Borland's TurboVision!

And his solution is to use Python's eval(). Why not use bc (or dc) instead? If you're going to dump the GUI, at least use the command line's standard fare!
[ Reply To This | View ]
I like kcalc
by Gareth Sargeant on Monday 27/Sep/2004, @21:48
I like kcalc more than Roberto's proposal. Actually I like kcalc a lot.

An optional tape mode would be a nice improvement to kcalc.

Just my 2 cents,

Gareth

PS: I am a big fan of KDE but there are too many "k" names. A modest usability improvement would to rename the "kcalc" to "Calculator"
[ Reply To This | View ]
Even faster!
by Sergio on Monday 27/Sep/2004, @23:17
It took me 3 seconds to implement such a calculator with bash!!! :

"konsole -e lisp"

(note: You can use your favorite language with a top-level)

:P ;)
[ Reply To This | View ]
I agree
by Martin on Monday 27/Sep/2004, @23:59
I think he's right.
We only have this calculator because it looks like the M$ one.
And as always whenever there are radical approaches everyone
is whining like
"Hey, I actually use those buttons when I'm on the phone".
This is completely ridiculous.
Why not then integrate a button with every letter in a word-processor?
Perhaps you need an on-screen-keyboard to get along with your "disability" ;-)
It doesn't matter how many buttons there are. They are completely useless.
His complaint about memory is right, too.
And why use M+ ?
Why not type 60+20+30+40?
And why not using the command line or (insert other app)?
This is like saying why improve KDE when you can use Windows.
The discussion right now is about whether KCalc is good usability-wise
or not. Just proposing a different app is no argument whatsoever.
I'm quite sure such an app can look a bit fancier. It would need
an ordinary toolbar with buttons for print and perhaps the options
to open/save whole calculations. Then it would like the other KDE
apps which also a good idea IMO. I'm absolutely sure if Microsoft
introduces such a calclator everyone here will follow suite.
The problem here is that all innovation is stifled right on the
spot with unfounded arguments. The question here remains:
Do we really need those buttons or isn't an on-screen-keyboard
the right solution for one-handed/half-eyed whatever people? Yes/No?
If not - get rid of them. It's as simple as that IMO.
Besides: I absolutely hate it when I want to convert multiple numbers
from hex to dec and I have to switch back to hex everytime for the
next number. A calculator as in the proposal would make it possible
to define your own shortcuts, functions etc, etc. It's a much more
extensible concept and I don't think that even a novice would really
need long to understand that you can enter 3*4 and it shows the result.
[ Reply To This | View ]
Compromise of KCalc and UseCalc
by Robert Knight on Tuesday 28/Sep/2004, @00:16
Whilst I agree that the KCalc user interface is ugly, and that UseCalc is far prettier, KCalc is still easier to use from a beginners persepective.

I really like the idea of a calculator which can show the whole equation in one line, as opposed to the current KCalc / Windows Calculator type system.

However, I think it is important to have the scientific function buttons available, as well as the number buttons because some people (not myself) do use them - but in a way that is easy to hide when people don't want them.

So how about:

- UseCalc-style expression entering with a scrollable history list. If you did the equation in several parts, then clicking and editing a previous equation would optionally recalculate all subsequent equations which depended on that answer.
- Allow a more friendly expression entering system. Eg to enter 2**2, you would press [2] [Alt] [2] and the power would appear as a subscript. This system works well on a graph-plotting package I use at college. The calculator would need to be able to infer the * sign, eg: 9(6) -> 9*6
- Number pad which can be revealed or hidden using a tab button (ala. Konqueror or KDevelop, but with a text label so I don't have to mouse-over to find out what it does).
- Scientific function buttons either placed into a menu, or put on a hideable tab (as with the Number pad above). I would only use the most important functions - most of the ones on the KCalc pad people will never use.
[ Reply To This | View ]
Usability & Kcalc
by wygiwyg on Tuesday 28/Sep/2004, @00:25
From the usability point of view the buttons in Kcalc are better then the buttons in on-screen keyboard.

On-screen keyboard emulates a real laptop keyboard where buttons which represent digits are presented in a row. Kcalc digits buttons are grouped. It is much easier and faster to move mouse cursor from one to another grouped button then to skip from left to right and vice versa. Because of this the separate keyboard is much better then laptop keyboard for doing calculations.

A friend of mine lost an arm in the war. He uses KDE (on a laptop) and I asked him what does he prefer: buttons in Kcalc or buttons on a real laptop keyboard/on-screen keyboard? The answer: buttons in Kcalc.

AS many other posters already mentioned a default Kcalc setup has not too many buttons, but, but...

Kcalc default setup buttons are grouped wrongly. Digits and basic calculation functions should be better separated from the other for most users unknown functions.
I am going to create a little mockup and upload it here.

I agree that Kcalc should have history in its window. Even my mobile phone calculator has one.
[ Reply To This | View ]
RPL Calc would be great
by olahaye74 on Tuesday 28/Sep/2004, @01:38
PG Calc is a great calculator (see link below) but it has the same problem as KCalc: useless buttons.
http://www.kde-apps.org/content/show.php?content=11896

A Great calc would be a PG calc with the GUI proposed in this article.

and having that as KDE bar applet that would fold/unfold with a shortcut or mousclick would be awesome :-)
[ Reply To This | View ]
KMaxima ?
by Shift on Tuesday 28/Sep/2004, @01:40
KCalc is good for what is done for : a simple calculator for "newbies".
"Geeks" will use bc, python, perl,....

What KDE is missing is a "computer algebra system".
This already exists and it is GPL : maxima http://maxima.sourceforge.net/ with an existing front-end xmaxima http://maxima.sourceforge.net/screenshots.shtml

xmaxima is good but in tk (ugly) and doesn't interact well with other KDE applications. A KDE front-end (KMaxima ?)will be a very very good point for KDE. Perhaps with MathML import/export ?

Please keep kcalc as it is but work on KMaxima :)

Thanks,

Franck
[ Reply To This | View ]
Calculators in Windows
by Steve on Tuesday 28/Sep/2004, @01:52
When people talk about the Windows calculator, they mean the original one that has been there since at least Windows 3.0. There are others, and they have interesting features.

The one for Windows CE is like the normal Windows one, but has two extra features. One is a history, and the other is a compact mode, where it only shows the result field (and a button to go back to full mode). Anything typed in in the compact mode still goes into the history.

The other Windows calculator is the powertoy one for XP (free download from MS). I think the thing I like most about that is that the entry is done on a command line, so parentheses and all that work; typing 1+1 <enter> +1 <enter> also works - it automatically inserts a variable called "answer". This calculator also has other functionality (graphs etc), and it has no number buttons! I much prefer this calculator to the normal Windows one.

Back to KDE: having different styles of working is important. I like the command-line style entry (I was a dc/bc user!), but somebody like my mother likes having the normal calculator entry mode, complete with number buttons. Others like RPN (although the Polish guy here doesn't!).

A single app which can be configured to do all of these combinations would be nice, but I wonder if that wouldn't kill startup time. I want to try the ALT+F2 thingy as soon as I get home. Judging by the response, nobody knew or expected it to work, but that'd be an excellent compact mode calculator, and it should be publicised more!

-- Steve
[ Reply To This | View ]
reminds me of printKalc
by Gunter Ohrner on Tuesday 28/Sep/2004, @05:34
Hi!

Roberto's suggestion reminds me somehow of printKalc:

http://www.hoenig.cc/linux/printkalc.shtml

This one is a QT/KDE C++ program which does not "eval" Python code but has other fancy features. If you like this type of calculators it will be worth a try. :-)

Greetings,

Gunter Ohrner
[ Reply To This | View ]
bc
by George Staikos on Tuesday 28/Sep/2004, @05:52
Didn't you just reinvent bc(1)? Anyway, what you wrote is an alternative, not a replacement. Replacement requires a functional equivalent, and to many people, a CLI style interface is not functionally equivalent. (I, on the other hand, use bc(1) all the time.)
[ Reply To This | View ]
derive
by gerd on Tuesday 28/Sep/2004, @09:14
Remember derive.exe?

An algebraic calculator that made you derive functions, plot functions and so on. algebraic transformations
[ Reply To This | View ]
Units
by AC on Tuesday 28/Sep/2004, @10:47
I generally agree that KCalc is inefficient to use for a an experienced user. I would probably prefer bc instead. Does anyone know of a calculater with a command-line interface that can handle units? Something like Mathematica's 'Units' package would be very nice.
[ Reply To This | View ]
usability improvements
by will on Tuesday 28/Sep/2004, @10:53
hmm.. As far as I can see no one has actually proposed the rather simple usability improvements that needs to be done.

* All functions but addition, division, multiplication and substraction must be removed. Most people don't know how to use the other functions, so they will get in the way for 95% of the instances the calculator is used. Add a button for "scientific functions" to unfold those. Memory functions can stay as well.

* rename the program to Calculator. KCalc is not very elegant, and is also somewhat disctracting, since it isn't clear what purpose it has to name it in this fashion.
[ Reply To This | View ]
Frink is the best calculator out there
by Roger on Wednesday 29/Sep/2004, @01:58
You want a real calculator?

This is a REAL calculator:
http://futureboy.homeip.net/frinkdocs/

Add it to your Sidebar/navigation panel and voila a sensational calculator integrated into KDE.
Right click on empty sidebar and click Add New then Web Sidebar Module. Use this URL:
http://futureboy.homeip.net/fsp/sidebar.fsp
[ Reply To This | View ]
Nonsense?
by Andreas on Wednesday 29/Sep/2004, @05:19
Hey, why don't you do the same think with the KDE CD player? People can type in "start 4" to listen to the 4th track, "random" for shuffle mode, "stop" and "eject". Why using buttons at all?
Why do we use a _G_UI at all? The shell is enough.

If you really want to be serious, you have to think a little bit more to provide real improvements.
[ Reply To This | View ]
Qalculate!
by nique on Wednesday 29/Sep/2004, @07:00
why not have a look at Qalculate! (http://qalculate.sourceforge.net/). it uses gtk+ for the gui, but it wouldn't be hard to make a kde version.
[ Reply To This | View ]
You all missed the point
by Hahahahah on Wednesday 29/Sep/2004, @10:05
Roberto was *obviously* just making fun of the KDE usability "experts". He applied literally a few rules found in some book somewhere, to an app that is very special. The result was, ofcourse, that it became not only useless but also redundant (you can get the same thing with Alt+F2 or Google or bc or dc or python or lisp or.......)

This was just a joke on some recent events here on the dot, like when venerable Mattias Etrich proposed that KMail keybindings should strictly follow focus, or when a bunch of loosers cried that amaroK interface sucks because it doesn't have a proper menubar or toolbar.

Well as I always say, when you do something you do it right! So Roberto, for start, your Usecalc doesn't seem to have a toolbar? You absolutely need a toolbar or it's not a proper KDE app! The toolbar can have buttons for Copy, Paste, Print and other such stuff but also a Go button, just like the one seen in Konqueror besides the URL bar - that button would Perform The Calculation.
Also please make sure that the arrow keys scroll the history only when it has focus! When the entry textbox has the focus, you can do something else e.g. you can do like bash, just bring whatever was typed earlier or something.

:)))))))))
[ Reply To This | View ]
Another suggestion for Kcalc
by jammer on Sunday 16/Oct/2005, @09:38
I really like KCalc as it is, except the fact that when you do things like: 2.0 + 2.0 you get 4.000000000000001 to the screen. It may not seem that annoying, but it can become very annoying when just trying to balance the checkbook. I do some programming and I know it wouldn't be that hard to add a persistant mode, so that KCalc can watch the precision coming in and make sure that the number going out is matched to the largest precision when it is displayed to the screen. This means that if you enter 1.2 + 1.24 you should get 1.44 or 2.0 + 2.0 will be 4.0, just my take.
[ Reply To This | View ]
The Fine Print: The previous comments are owned by whomever posted them.
( Reply )

  "No fake - I'm a big fan of konqueror, and I use it for everything." -- Linus Torvalds
KDE®, "K Desktop Environment", "KDE Dot News", "got the dot?" and the KDE Logo® are trademarks or registered trademarks of KDE e.V. in the European Union, the United States and other countries. All other trademarks and copyrights on this page are owned by their respective owners. Comments are owned by the poster. The rest: Copyright © 2000-2008 KDE e.V. for The KDE Project. For further information or comments on this site, please contact the Webmaster.
[ home | post article | flat forty | subscribe | search | rdf ]