Calc Zero (formerly OneCalc) Blog


My TechFlash Guest post

posted Sep 3, 2009, 3:17 PM by Chad Kirby

Apple forbids a generic keyword in the App Store

posted Sep 3, 2009, 11:23 AM by Chad Kirby   [ updated Sep 3, 2009, 11:57 AM ]

First, of all, a little background. I'm a lawyer. In my practice, I work with Intellectual Property--trademarks, copyrights, patents, that sort of thing. For the past few months, I've also been iPhone app developer. My primary iPhone app, Calc Zero, is a well-reviewed re-imagining of your old multi-function scientific calculator (and much more!).


A couple weeks ago, I submitted a new application for Apple to approve for sale in the App Store. This morning, Apple rejected my new application because Apple objects to my use of a generic term to describe a major feature of my app.


Slight aside: As of a few weeks ago, each app in the App Store has a corresponding set of keywords that helps users locate apps when they do a search. For example, Calc Zero's keywords include the term "RPN" because Calc Zero optionally supports Reverse-Polish Notation entry, and I want users who are searching for an RPN calculator to be able to find Calc Zero.


The new app I submitted two weeks ago is a "programmer's" calculator named Calc 0x0 (see, that's a clever name because 0x0 is how you'd notate zero in hexadecimal… so the app is named Calc Zero, but in hex…). I refer to Calc 0x0 as a "programmer's" calculator because the user can enter and display numbers in Hexadecimal, Decimal, Octal, and Binary representations, and the user can perform various operations on unsigned integers of 8-, 16-, 32-, or 64-bits in size. 




Calc 0x0 supports lots of operations, including integer and floating point math, as well as several operations that let the user manipulate individual bits within a number's binary bit pattern (e.g., shift, rotate, bitwise AND/NOT/OR/XOR, etc.). As wikipedia explains, in computer programming, an operation that "operates on one or two bit patterns or binary numerals at the level of their individual bits" is referred to as a "bitwise" operation. See also the PHP manual, which states, "Bitwise operators allow evaluation and manipulation of specific bits within an integer."


When I submitted Calc 0x0, I included "bitwise" as a keyword because "bitwise" is the term commonly used in computer programming to refer to operations that manipulate bit patterns. You might even go so far as to say that "bitwise" is a generic term for such operations.


Another slight aside on the significance of "genericness": according to modern trademark doctrine, no company can prevent others from using a generic term. Imagine if Kellogg's could prevent its competitors from describing their breakfast products as "cereal." Or imagine if Coke could prevent Pepsi from calling its product "Cola." That sounds ridiculous, doesn't it? That's because it would be ridiculous. According to modern trademark law, generic terms like "cereal" and "cola" can always be used by any producer of that kind of product.


Back to the issue at hand: Bitwise operators are a major feature of Calc 0x0 that distinguishes it from most all of the other calculators in the App Store. As a result, I want programmers to discover Calc 0x0 when they search for an app that performs bitwise operations, so I want to include the keyword "bitwise" to describe Calc 0x0. Makes sense, right?


Well, apparently, it doesn't make sense to Apple. This morning, I got an "Application Submission Feedback" message from Apple, stating as follows:

"[W]e cannot post this version of [Calc 0x0] to the App Store at this time because of inappropriate 'Keywords' used to identify your application.  We will not post applications that reference other applications in their search criteria. It would be appropriate to remove: Bitwise."


So, Apple is telling me that I cannot use the keyword "bitwise" to describe Calc 0x0, despite the fact that bitwise is a generic term that describes a major feature of the app. 


And here's the best part: Apple's stated rationale is that I can't "reference other applications" in my search criteria. However, I searched the App Store for "bitwise," and THERE IS NO APP NAMED BITWISE IN THE APP STORE




Google does turn up an IM client for OSX named Bitwise, so perhaps Apple is saying that I can't "reference" any OSX application in my search criteria? 


If so, Apple appears to have taken the position that the mere existence of an OSX application named "Bitwise" forbids me from using that term in my search criteria. As a result, iPhone users who need a calculator that performs bitwise operations may not be able to find my app. That doesn't serve me very well, but it also prevents iPhone users from discovering useful apps. Apple's position is lose-lose.


In addition, Apple is not applying its keyword policy consistently (surprise surprise). For example, Apple approved an app named "Documents To Go® (Microsoft Word editing & Desktop sync)," and Apple also approved an app named "Mariner Calc (Excel Spreadsheet for iPhone)." If those apps don't "reference" another application, then my grasp of the English language has really slipped.


Perhaps this is merely Yet Another Capricious App Rejection that doesn't really represent Apple's keyword policy. On the other hand, perhaps Apple has essentially created a new proprietary class of Intellectual Property that is more powerful than even the most famous trademark (in that Apple's new IP forbids use of a generic descriptive term). Either way, it doesn't speak well of the App Store approval process.


(Having said all that, if there are any programmers out there who need a great calculator, the current version of my flagship app Calc Zero also includes all of the bitwise and other programmer features from Calc 0x0. Check it out--I put it on sale for a few days.)

Calc Zero: Cooking approved for sale

posted Aug 25, 2009, 1:28 PM by Chad Kirby

This afternoon, Apple approved Calc Zero: Cooking, which is a free, ad-supported, single-mode calculator. We will see how users react and whether it generates any ad revenues.

Calc Zero v1.4 approved for sale

posted Aug 25, 2009, 1:27 PM by Chad Kirby

Apple just approved version 1.4 for sale to the app store. Lots of good updates here, including customizable unit buttons.

Great Review of Calc Zero

posted Aug 15, 2009, 10:02 AM by Chad Kirby

John Martellaro has written up a great review of Calc Zero over at iPodObserver.

http://www.ipodobserver.com/ipo/review/calc_zero_is_an_ultra-modern_scientific_calculator_for_iphone/

Calc Zero v1.3 is approved

posted Aug 5, 2009, 1:51 PM by Chad Kirby

Apple has approved the update in record time--only 1.5 weeks.

Lots of good stuff in 1.3:
  • New Memory functions (touch and hold to access additional functionality);
  • New preferences: text display color; key shake on/off; adjustable threshold for display of scientific notation;
  • New H.MMSS and M.SS keys for easier entry of Hours:Mins:Secs and Mins:Secs;
  • New pop-up submenu for x squared/square root key (touch and hold to access additional functionality);
  • revised Scientific mode keys;
  • New RLC mode (with common EE units and series/parallel operator keys);
  • Improvements to upside-down spelling mode;
  • Misc. Bug fixes and UI improvements.

What to do if the new version displays the splash screen then quits

posted Jul 27, 2009, 11:30 AM by Chad Kirby

I got a report from a user that the new version would crash when he launched it. I suspect that there is some configuration of saved state data that the new version doesn't like. If you have this problem, the solution is to delete the app from your phone and re-download a new copy. It is my understanding that Apple does not charge to re-download the app. As always, if you run into a problem with Calc Zero, let me know!

Update submitted to app store 7/26

posted Jul 27, 2009, 9:25 AM by Chad Kirby

Submitted an update last night including the following revisions:
  • New Memory functions;
  • New preferences: text display color; key shake on/off; adjustable threshold for display of scientific notation;
  • New H.MMSS and M.SS keys for easier entry of Hours:Mins:Secs and Mins:Secs;
  • New pop-up submenu for x squared/square root key;
  • revised Scientific mode keys;
  • New RLC mode (with common EE units and series/parallel operator keys);
  • Improvements to upside-down spelling mode;
  • Misc. Bug fixes and UI improvements.
Adding the Memory function required moving some buttons around. The square/square root functions are now handled by a single button in the main numbers and operators pane. Touch and hold for a fraction of a second to expose additional buttons, then slide your finger to the right to select. On the upside, cubed and cube root functions will be available in all modes. On the downside, if you are switching back and forth between squared and square root operators, you'd have to touch-and-slide a lot, which is less convenient than simply pressing a dedicated button. To address this issue, I added dedicated squared and square root buttons to scientific mode. Of course, that meant that something else had to give, so I "overloaded" the log/antilog buttons. A single button will handle natural and base-10 log operations (via touch-and-slide), and a single button will handle natural and base-10 antilog operations. This will make more sense when you see the update.

Also, look for an ellipses in the upper-right corner of buttons that are overloaded via touch-and-swipe. Touch and hold over these buttons for a split second to expose the additional swipe-able buttons.

Version 1.1.1 is now available

posted Jul 24, 2009, 1:41 PM by Chad Kirby   [ updated Jul 24, 2009, 1:47 PM ]

Apple FINALLY approved the new version. Download the update and you can enter negative exponents again.

Other new features include: 
  • touch and hold over Clear/Backspace, Paren, or XY Swap keys to expose a "pop-up" menu showing additional related commands (similar to how the standard alphabetic keyboard allows you to enter accented letters); and 
  • just for fun, turn the iPhone upside down to translate the current number into letters, like you probably did when you were a kid.

Entering Fractions 101

posted Jul 9, 2009, 11:03 AM by Chad Kirby   [ updated Jul 9, 2009, 11:06 AM ]

You can enter fractions in OneCalc pretty easily. 

  • Enter the integer portion
  • press [.] key
  • enter the numerator (at this point, the [.] key changes to [/] key)
  • press [/] key, and 
  • enter the denominator.

So, one-and-a-half is entered as: 1 dot 1 slash 2

After that, the [frac] / [dec] button toggles between displaying the value as decimal or as a fraction.

When fractions are displayed, touch in the number display area at the top of the screen and drag left or right to adjust the maximum denominator (which adjusts the accuracy of the fraction for irrational numbers).

1-10 of 11

Comments