про ідеальний калькулятор

реанімую тему користувацьких інтерфейсів. але спершу невеличка вправа на логіку: поляньте на три скріншоти програмних калькуляторів для windows та linux — і поміркуйте: скільки кнопок повинно бути в екранного калькулятора?
це питання не дає мені спокою давно — мабуть, відтоді, як почав цікавитися дизайном програмних інтерфейсів, і стільки ж в голові крутилася думка дати свій варіант відповіді — руки не доходили. аж ось побачив днями в англомовній айтішній блогосфері хороший допис якраз про це (шкода, зараз не можу знайти посилання). підштовнуло таки =)

філософське питання

калькулятор є однією зі стандартних програм практично будь-якої користувацької операційної системи, і, переважно, всюди виглядає однотипно, повторюючи компоновку простих пластикових «лічилок»: дисплей + клавіші цифр та операцій. як правило, можна включити режим «для розумних» — тоді дисплей стане ще ширшим, а клавіш — ще більше.

і от у мене є глибоке філософське питання таке: навіщо клавіатура?!

забудьмо про тачскріни — там своя специфіка, тим часом більшість з нас користуються екранним калькулятором саме на пк чи ноутбуці за допомогою клавіатури й мишки. тож — навіщо?

хто стрічався раніше з дизайном інтерфейсів, відповість миттєво: для того, щоби початківець одразу впізнав у цій програмі калькулятор, і миттєво зрозумів, як ним користуватися (клацаючи мишкою по кнопках).

супер. але рано чи пізно початківцеві набридає забавлятися мишкою і він починає використовувати комп’ютер за призначенням — щось друкує, готує якісь таблиці тощо. періодично виникає необхідність щось порахувати. і раптом одразу виявляється, що краще б програмісти «навчили» свої геніальні творіння
  • завжди залишатися поверх інших вікон
  • займати при цьому мінімальну площу на екрані
  • показувати історію розрахунків
  • обчислювати вирази на кшалт sin(x)/(1+tan(x)) для заданого x тощо… 
 а екранна клавіатура — лише заважає, її хочеться просто відключити.

майже ідеал

насправді хороші калькулятори, котрі все це вміють — є.більше того — є вільні хороші калькулятори. от приміром speedcrunch всіє майже все з перерахованого, і ще багато такого, що мені, приміром, ніколи й не знадобиться (проте стане в нагоді багатьом іншим користувачам). має версії для windows (в т.ч. портативну) та linux (використовує бібліотеки qt, тому ідеально для стільниці kde).

ще один дуже подібний варіант — galculator, з практично ідентичною функціональністю, але на основі бібліотек gtk+, і написаний на чистому c — чудовий варіант для мінімалістичних стільниць xfce та gnome. є в репозиторіях ubuntu.

граничний мінімалізм

але інколи хочеться позбутися навіть історії розрахунків — аби лише калькулятор займав справді мінімум місця на екрані й не ліз в око. тоді його зручно було б тримати поверх відкритого документу чи таблиці.


нажаль, це не скріншоти — я ще не стрічав таких калькуляторів, тому довелося змоделювати віконце за допомогою pencil. зліва — режим вводу виразу, справа — результат розрахунку. кнопочка — перемикання в нормальний режим (з історією та/чи клавіатурою — в залежності від налаштувань).

панове програмісти — ну що, невже це важко реалізувати?

p.s. колись давно я ще писав про хороші калькулятори для кишенькових пк з windows mobile: calc98, mypocketcalc та calcnow.