As you may have noticed, I am currently working on Binary Clock 3.0 for Palm OS. The WristPDA suport basically is there, but there still is this one little annoying fatal alert that I can’t reproduce, don’t know where it hides and generally can’t do much against.

Anyways, since I have my silent Acer notebook, running Gremlins over night is finally possible without getting my family in a “Kill him” mood. For all of you new to the term, gremlins are the automatical testing tool in the Palm OS emulator/simulator. What they do is simple – they fire random clicks, taps, drags and characters at your application until it breaks.

Sounds good…but totally sucks for Binary Clock for a variety of reasons:
They tend to hang around Global Find all the time
Don’t ask me why, but 50% of the time I see the gremlins taping around global find entering crap text. Basically, they waste my poor Centrino Duo’s cycles testing the Palm OS…as if PalmSource couldn’t afford an Acer Aspire :-) .

They seem to restart the application way to often
Same thing as above. Binary Clock gets restarted all the time, and thus the gremlins keep hanging around the hint form. Great!

They dont seem to exercise the functions “hidden behind menus” very much
Dont ask me why this happens…but 10000 gremlins didnt manage to change the Binary Clock color…

Please don’t take this as “gremlins are bad” – but gremlins or any other “screen mass tappers” are IMHO not useful as sole testing tool. They may find the one or the other bug, but can not replace the human testing crew doing a few “hammer tests”… . What do you think?

The folks at Trizoko’s apperently seem to read my mind. I recently wrote on mentoring, and they now followed it up by posting a bit about why mentoring pays out when it comes to finding good employees for cheap:

http://www.trizle.com/how-to-find-superstar-employees-on-the-cheap/

Little to add here…

Dallas Maxim seems to be at it again – this time, their latest application note covers adding a resistor across a linear regulator to “boost” its maximum output current:

http://www.maxim-ic.com/appnotes.cfm/appnote_number/3865

Little to add here…

I just got this per email:
http://www.youtube.com/watch?v=Ucx3OiPxEQM

Basically, it is all about a cheap aftermarket knockoff of the Nintendo DS. No, for all of you hoping to save cash, this is not a reral DS and cant run Nintendo DS games either. The games come integrated into the LCD module(!!!), and seem to be very, very crappy – you have to take a look and laugh…

UI design is a topic that many programmers are afraid of. It is perceived to be similar to graphics design, a work that is said to be very difficult for the average programmer. Anyways, Joel Spolsky (he is the guy behind Joel on Software) wrote a tutorial on UI design a few years ago (available online) and Apress published it as book.
front UI design for programmers review back UI design for programmers review
UI Design for Programmers is divided into 18 little chapters and looks at the usability side of things. Each of the chapters is a few pages long at best, however, reading the book from cover to cover usually is the best approach!

Joel Spolsky has a few basic theories, and about half of the book goes around them. UI should make people happy, usability and learnability are different, users can’t read, users can’t use the mouse and so on. While I didn’t agree to every point made, most of the concrete hints given here are very useful.

The second big topic of the book is usability testing. Joel Spolsky has probably experienced more usability tests that most others (at various companies), and the first conclusion that he pulls is: you need no lab! After that, he covers the amount of needed users (no more than 6) and the difference between usability and usability success rate.

The text is written very well, and the images included simplify understanding. Reading the book is no problem for a non-native speaker like me, and reading it before falling asleep is no problem either, as there are no really difficult words.

Overall, this book gives you a great overview of the “people related” things in UI design. It may not teach you about using specific UI elements, but rather tries to give you a big picture of what the phenomenon User Interface is trying to accomplish and how it can screw up. Read it together with O’Reilly’s UI Design Patterns, and your UI design skills will receive a big boost!

When developing, you should really try to subdivide the work into tiny steps for motivation and simplicity. An other big benefit of the small-step programming is that you can always keep the system in a more-less releasable state – if you want to.

Before we will look at why developing with open bugs in the back is bad, lets look at the core benefit of always keeping your applications releasable. Should your software house ever need cash(for example), if your products are readily releasalke, releasing a new version is a matter of a quick Q&A test and a marketing campaign. Should you ever want to add a feature quickly, there is no need to clean up in advance.

But now on to keeping bugs in the back. If you break up your program into many tiny subtasks, you can easily test each one of them immediately after completition. This helps you to keep the program in a releasable state, as said above.

The second(and bigger) benefit is recency. If you have just finished coding a routine, the code still is in your mind(most of the time, that is). When the code is still in your mind, you will probably have an idea about where the program is burning when you see the bug and can thus fix it very fast.

The last and biggest benefit is lack of “recursive bugs”. If one bit of code is buggy, it probably affects other parts of the program inversely, making thise harder to debug than neccecary…

Overall, I have benefitted greatly from introducing this technique. My programs are better, and programming is much more fun. As with every process, your mileage may vary – but I think that you will benefit greatly!

What do you think?

I programmed this little ‘gem’ a bit of time ago:


static Int16 asciisort(char* s1, char* s2)
{//recursive ascii sorter for SysQSort
//FIXME: fails if both strs are exactly the same
//0...p1==p2
//-1.p1 < p2
//1...p1 > p2
if(*s1< *s2)
{
return -1;
}
else if(*s1>*s2)
{
return 1;
}
else
{
return asciisort(++s1,++s2);
}
}

Don’t ask me why I did it recursively, but it was the easiest way to code it(imho). The code breaks when two filenames are exactly equal, but well, this rarely happens…

Finding a case for the Palm Z22 is very difficult, as it offers no kind of ‘docking’ mechanism for cases. We reviewed a leather case for the Palm Z22 a few weeks ago, and Boxwave sent us their ArmorCase aluminium case.

Boxwave shipped the ArmorCase in a huge box:
 The BoxWave ArmorCase for Palm Z22 review
 The BoxWave ArmorCase for Palm Z22 review  The BoxWave ArmorCase for Palm Z22 review
The ArmorCase itself whips in a blister with a belt clip(ignored as usual); the fixer is contained in the middle of the case at shipment:
 The BoxWave ArmorCase for Palm Z22 review  The BoxWave ArmorCase for Palm Z22 review
The ArmorCase for Palm Z22 looks like a classic aluminium hardcase, however, it opens to the left:
 The BoxWave ArmorCase for Palm Z22 review  The BoxWave ArmorCase for Palm Z22 review  The BoxWave ArmorCase for Palm Z22 review
Inserting the Palm Z22 into the housing is rather simple – you simply push the handheld in from the top:
 The BoxWave ArmorCase for Palm Z22 review
In use, the case is not really annoying – it works well:
 The BoxWave ArmorCase for Palm Z22 review
The ArmorCase protects your Palm Z22 well, while still allowing you to access all neccecary functions at the top. There is a little hole at the bottom as well, however, there is nothing there on a Palm Z22:
 The BoxWave ArmorCase for Palm Z22 review  The BoxWave ArmorCase for Palm Z22 review
Overall, the BoxWave ArmorCase does a very good job protecting the Palm Z22(hmm, why is there no bad peripheral for the Palm Z22). If you want a very sturdy case, buy this!

If I had two dollars, I would buy bread and a flower – the soul needs food just like the body!

This article starts off with a quote from Muhammad. Basically, what he means is that it takes more than just food to get going – and many people forget to keep this in mind!

The average office is far from ideal – everyday, millions of workers are annoyed by sub-ideal workplace conditions. For example, the Alt key is broken, the processors are stored far away from the eeprom’s that accompany them, literature is hard to find and so on! This list could be continued ad infinituum…

And indeed, those nuissances look ‘tiny’ and not worth fixing because you have more important things to do – and in the end, you still go home pissed every day. WooHoo! Frustrations tend to amplify one another – a really tiny thing can be the famous straw that lays the camel flat for good!

One of the most efficient people I ever worked with was a graphist – and you should have seen her office. While it looked chaotic sometimes, every mm was ‘engineered’ by her for maximum usability.

So, try to elimnate ‘environmental nuissances’ whenever you can. Your employees(and you yourself, too) will be much happier than before – and happyness usually leads to motivation!

This is a quick hint to all WristPDA users and developers – forget the ronamatic stroke! The WristPDA does not support it!

AdSense recently introdued a service called custom reports. To cut a long story short, custom reports means that data from AdSense’s web control panel gets packed up every now and then(for example, daily) and then gets sent out to your email address. This saves you the hassle of needing to go to the AdSense web site for information and generally is a good thing for a PDA user – only problem is that I rarely read the reports for a simple reason: they come zipped up.

One such a report usually is less than 150 bytes big(!!!), nevertheless, Google insists on putting a zip envelope around it for some reason I will never understand. In fact, the reports get bigger when zipped – so really, no one gains anything here!

Zipping up stuff is nice and all, but you always need to keep in mind if it really pays out as it creates an extra step of work for the user(unzipping takes time and clicks, like 3 seconds on my good ole P4 workstation).

What do you think?

The people at AllAboutSymbian seem to have telepatchic capabilities recently. They recently posted a post about how most Series 60 users don’t “want to” understand the Series 60 OS and treat it as they would treat any other IOS:

http://www.allaboutsymbian.com/features/item/Turns_out_you_dont_need_a_smartphone_after_all.php

Ladies and Gentlemen, I declare myself guilty of not having purchased or used a single third party application for my now dead Siemens SX1 for more than half a day. Yeah, I had a file manager on it – but this thingy was used like once a year at best. The only benefit that I reaped from the innovative operating system was the capability to transmit more than one photo at the same time – and this as a Palm OS developer.

The reason for this actually is simple – people who already have a PDA and are satisfied with it(Palm Tungsten T3) usually dont see a need to try out software for their mobile phone. For them, the handheld is the notebook – and the mobile phone only adds extra functionality to the handheld, sort of like a bluetooth dongle adds functionality to a PC.

So, the only kind of software that they would use are things that make the “connection” between the two devices even stronger. For example, the file manager made it easier to transfer images from the SX1 to the Palm – thus, it stayed on the mobile phone. Games, clocks or calculators, on the other hand, took up space where more photos could reside – so they usually were booted off the box before the evaluation period ended.

IMHO, the Series 60 economy must start to accept the “Tam Hanna’s” in their market sector – and the faster they do it, the better. While most people who buy an expensive Palm Treo smartphone understand that it is so expensive because of the capability to add third party applications, a person who chooses a Series 60 machine because it looks cool or is pink will probably never feel a need to add a feature!

What Series 60 developers should instead do is focus on the existing niche of interested customers – those that are interested in stuff like gaming, for example. Creating a market out of nowhere usually is difficult, entering a market is rather easy…

What do you think?

I have posted before on palm music software, but always about where we are now. I thought it would be useful to post on the chronology of palm music making software. As it is a fascinating subject (to me anyway). Also, it is useful to know what software is still around and might be useful to Palm OS 4 users as well. Before I go further I’d like to point out that this is just about software that helps you make music and doesn’t include tuners, players metronomes etc, and it is not a complete list, it just gives you a flavour of what happened and when.

Let’s start back in 1997: We had apps like 4 Octave Piano, and PocketSynth, both good apps for making notes.

1998: Pocket Piano, simple sequencer and lots of fun.

1999: MiniMusic get’s going with MiniPiano and MiniGrid, eventual precursors to NotePad 1.4. We also get Theremini (very fun). NotePad first appears.

2000: BeatPad sequencer released.

2001: MelodyPad allows a conduit based MIDI export. ittyMIDI player comes out allowing playback of MIDI files. MiniMIDI appears allowing a palm to control external MIDI devices.

2002: RhythmPro drum machine appears.

2003: PocketDJ flash based music app for Clie PDAs. MusicStudio polyphonic app, again working well with Clies with built in MIDI chips and external MIDI modules. Wave Edit Pro (not strictly a music app, but excellent for sound editing). MusicPal, more sequencing and MIDI. TuneSketcher, simple sequencing / editing. Microbe released, synths and a drum machine all in one application, and then, Bhajis Loops begins giving sequencing, sampling, sound editing and synthesis and eventually export to .wav files!

2004: Palm Drum Kit Studio, nice drum app but no recording.

2005: SoundPad FM Synth app, a major leap forward for Palm Music creating a suite of applications that will all work together (SoundPad, NotePad, and BeatPad). Virtual Piano launches.

2006: ? Not much really this year, at least not in the way of new applications, updates and new version sure. Where will we go next with mobile music making on a palm?

Many developers fear the act of creating a web site for their product – in fact, I felt much the same way when creating the Binary Clock for Palm OS Website. Or, to be more accurate – I felt the same way until I found out that readily available templates are online!

Uche Ogbuji ob FourThought has posted an article on developerworks that covers a few places where you can “nick” stuff like web site templates or clipart to make your life easier – if you need to design a web site, it is a must read:

http://www-128.ibm.com/developerworks/library/wa-freeweb/

And, last but not least: creating web sites from a good template is easy; trust me. If you can master C and can write good manuals, you will get a web site up and running in no time!

© 2012 TamsPalm - the Palm OS / web OS Blog Suffusion theme by Sayontan Sinha