Omnimaga

Calculator Community => Casio Calculators => Topic started by: z80man on October 30, 2011, 07:12:41 pm

Title: Prizm developer code of ethics
Post by: z80man on October 30, 2011, 07:12:41 pm
Here is a list of rules and suggestions that I believe those who develop for the Prizm should keep in mind for their apps. Many of these apply to all platforms whether it be other calculators or computers but a few are more targeted at the Prizm.

Title: Re: Prizm developer code of ethics
Post by: calcdude84se on October 30, 2011, 07:53:49 pm
z80man, I edited it a bit for better English. Also, since you mentioned GitHub, perhaps an elaboration on version control would be in order?
Personally, I am already aware of these things, but a reminder is always nice :)
Title: Re: Prizm developer code of ethics
Post by: DJ Omnimaga on October 30, 2011, 11:11:32 pm
Nice post, and I agree a lot about the Open source, especially since the Prizm community is so young right. There aren't a lot of apps yet and it's good if new people interested in developing for the Prizm have access to examples, not just documentation.
Title: Re: Prizm developer code of ethics
Post by: Hayleia on October 31, 2011, 03:46:40 am
I totally agree with you. There is just a point that needs to be cleared. Some of your points doesn't only apply to the Prizm ;).
So yeah, I should make readmes -.-°

EDIT: I made a readme :w00t:
Title: Re: Prizm developer code of ethics
Post by: AngelFish on October 31, 2011, 12:37:50 pm
Here is a list of rules and suggestions that I believe those who develop for the Prizm should keep in mind for their apps. Many of these apply to all platforms whether it be other calculators or computers but a few are more targeted at the Prizm.

  • Treat the user's calculator with respect. Don't use any code that will put THEIR calculator at risk! Test your programs extensively and remove any holes that could potentially cause a major error. Even if you're not liable for damage, these types of incidents can tear apart communities.
...
  • Value user friendliness over extreme optimization. I'm not condemning optimization—in fact, every program should be extensively optimized—but what I'm warning against is overdoing it. You should always program in extensive exception handlers to prevent the user from breaking your apps. Graphical appearance should also be focused upon. Most users would prefer a sharp UI over an additional frame per second.

The first one is especially important in the case of custom flash routines. Don't use them. They have the potential to seriously damage calcs.

Also, the second may not be true for programming utilities like interpreters and emulators. In such reasonably uncommon situations, extreme optimization is often entirely warranted (and lamented if not present).
Title: Re: Prizm developer code of ethics
Post by: z80man on November 01, 2011, 01:53:51 am
Also, the second may not be true for programming utilities like interpreters and emulators. In such reasonably uncommon situations, extreme optimization is often entirely warranted (and lamented if not present).
Very true but those kind of projects are not very common. Unless a program is pushing the limits of the hardware extreme speed optimization is not necessary. In addition to emulators and interpreters games such as fps's could also fall into this category. One of the main reasons why I put that there is that I find it annoying in some programs when you see a function that is called at most once per second and is optimized to save 10 T states at the cost of 30 additional bytes. That there is just bad programming and all it does is increase the size.
Title: Re: Prizm developer code of ethics
Post by: calcdude84se on November 01, 2011, 07:58:59 am
Well, that's not really optimization at that point. That's a poor choice of speed optimization over the more sensible size optimization. (You seem to have ignored that programs can also be optimized for size. ;))
Title: Re: Prizm developer code of ethics
Post by: MPoupe on November 01, 2011, 09:47:33 am
Most users would prefer a sharp UI over an additional frame per second.
[Citation needed] :-)

I cannot agree with this. I think super nice (and slow) GUI is nice on few first uses. But I prefer faster (and simple / ugly) GUI in the most used application.
Also the optimizing the code is important, the calculator is not fast enough, it is something like Pentium I.

Title: Re: Prizm developer code of ethics
Post by: z80man on November 01, 2011, 11:13:48 am
Well, that's not really optimization at that point. That's a poor choice of speed optimization over the more sensible size optimization. (You seem to have ignored that programs can also be optimized for size. ;))
that's what I meant there by size optimization. Many people forget the all important size optimization and focus on speed. It also should be noted that on the prizm a size optimization is often also a speed increase too because of the reduced chances of a cache miss