My ideas for changes to the way apps work.


craigix

Mega GP Mania
Joined
Feb 3, 2003
Messages
11,008
Location
England
Website
twitter.com
The most common problem I deal with in customer support is people not knowing how to use the Pandora.


Here is what happens:


Casual gamer buys Pandora.


Casual gamer downloads various apps.


Casual gamer puts apps in root of SD card (or a folder they have made and named at random 'games' 'steves emulators' ect.


Pandora does nothing.


I explain to them how to make it work.


Later apps become out of date and they say their app isn't doing 'x,y,z', and tell me other users are doing 'x,y,z'.


I explain to them the apps do not auto update or even tell you there is an update.


Solving these two issues would stop 80% of new users teething trouble. It would also make the Pandora far more user friendly.


Here is what I propose:


The root is scanned for *.PND files, as well as all directories one deep.


Pandora Apps adds a key to the file names which are downloaded eg:


'Snes9x.pnd' would become 'Snes9x.Pv1.PND', doing this removes the need to 'repack' the PND, but marks it so minimenu can see where the app has come from 'P' (for pandora apps) and the version of the app (v1). It's quick and simple.


MiniMenu can then know where this app came from and can quickly call Pandora Apps to check for updates to it, probably like this: pandoraappsURL.com/chk.pl?Snes9X.Pv1.pnd, Pandora apps would return 'N' if that is the latest version, but would return 'Y' if there is a newer file. (it could then also drag information, messages etc. too).


Minimenu can then put a little 'update available' icon on the icon for the app. Because the process is so simple and the Pandora and PandoraApps only have to look at file names it will be as close to instant as you can get. The user can decide if they want to update it from there.


If a developer wants to use their own webspace they can add the url to the PND format itself (but I'll leave that to the people who maintain the format).


So, in conclusion, doing these two things would solve many an issue I face with supporting users 'behind the scenes', as well as making things work better.


These are just my thoughts on the matter and the simplest way I can think of to fix them. It's the first step to pulling the Pandora in to the i-user-friendly arena, something which, as more and more casual gamers buy Pandoras, we need to move towards.
 
The auto-update-thingie has been resolved with PNDStore, why not use that? Shouldn't be too much work to get a update notification implemented in minimenu.


Also: I think a lot of new users could use a "getting started" document placed on the desktop, that explains these not-so-obvious things.
 
Last edited by a moderator:
I don't think casual gamers should be expected to use PNDstore. This is what I'm trying to get at, it's not user friendly to tell them to do these things, it should 'just work'.
 
What's unintuitive about PNDstore? It's as easy as you can get.


It's easier and quicker than navigating to Pandora Apps with a browser, I dare say.


If Tempel finds time to make a few additions to it, such as I recommended in the official thread, you could be able to sort programs by category as well. It's your one-stop installing/uninstalling/updating place for all your PNDs. And if other repos adopt the PND Store Repository spec (hint, hint), it could work with them as well.


Putting a "simple instructions" PND on the desktop seems like a simple and effective solution. These instructions are really not hard to follow.


Scanning all directories one level deep means longer scanning times, especially since I have some large files in some of them...
 
Last edited by a moderator:
So something more automatic can be made. Like an update notifier that uses the same backend as PNDstore. Checks for updates when it sees an internet connection (and periodically if still connected) and puts up a small "updates available" notification with "click here to update" button. The framework for updating PNDs is already done. The interface for the software sources (repositories) is written and there already exists one provably working implementation of both a server and a client. What does this system provide that the current systems don't? Usability can be improved, but I don't see why the backend needs to be changed.


EDIT: On the topic of scanning SD card root for PNDs. The current system was, IIRC, constructed so that the pandora-specific stuff would be neatly organized under a single subdirectory and further categorized by where they should show up. The system you're proposing does neither. Should the apps in SD card root be in the menu? On the desktop? Both? I see the obvious cons of the current system for a novice, but how about making it more usable instead of throwing it away? Maybe have a daemon process check inserted SD cards for a pandora directory and ask if the directory structure should be made if none exist. It could even give a small hint on how to use the directories while doing so.
 
Last edited by a moderator:
What's unintuitive about PNDstore? It's as easy as you can get.


It's easier and quicker than navigating to Pandora Apps with a browser, I dare say.


If Tempel finds time to make a few additions to it, such as I recommended in the official thread, you could be able to sort programs by category as well. It's your one-stop installing/uninstalling/updating place for all your PNDs. And if other repos adopt the PND Store Repository spec (hint, hint), it could work with them as well.


Putting a "simple instructions" PND on the desktop seems like a simple and effective solution. These instructions are really not hard to follow.


Scanning all directories one level deep means longer scanning times, especially since I have some large files in some of them...

Right, great, I'm sure Apple would move to this system if you just showed them it!


Great, whack in some text files on the iphone to tell them not to just copy their apps over (but don't make them aware of those text files, just deal with their emails when they complain), and make them run an app to check their apps from within an app which could do it anyway... don't forget to tell them about the app to check their apps though!


This is embarrassing that you think these are acceptable solutions.


Also there is no 'scan' time when checking SD cards. We're not using floppy disks. Jesus. Who started this rumour? It takes microseconds to get dir lists from directors on SD cards. You can't wait maybe 10microseconds on boot? Once? But you're willing to make people use an app to check their apps are updated? This is madness.
 
Last edited by a moderator:
So something more automatic can be made. Like an update notifier that uses the same backend as PNDstore. Checks for updates when it sees an internet connection (and periodically if still connected) and puts up a small "updates available" notification with "click here to update" button.
Yeah sure, that would work. Just make it so that the automatic-update-check thingy is on by default, but can be manually turned off somewhere in the settings. (because some of us might not want it slowing down our internet connection periodically, but new users would like that it "just works" as Craig says)

You can't wait maybe 10microseconds on boot?
Minimenu takes a few seconds to scan directories, not microseconds. People were saying about scanning times in the previous thread where this was discussed.


Also, without folders, how would you differentiate between things that you want on the desktop, only in menu, and so on?

Great, whack in some text files on the iphone to tell them not to just copy their apps over (but don't make them aware of those text files, just deal with their emails when they complain), and make them run an app to check their apps from within an app which could do it anyway... don't forget to tell them about the app to check their apps though!
What the hell do you guys print a manual for, anyway? Include another slip of paper with the Pandoras you ship with this image printed on it.


Or just create those folders automatically upon insertion of a new SD card, and let PNDStore handle everything else.

and make them run an app to check their apps from within an app which could do it anyway... don't forget to tell them about the app to check their apps though!
It's not just to check for updates to existing apps, it also lists ALL AVAILABLE APPS online and it ALSO allows you to uninstall existing apps. That's a lot of useful features in one spot, and is a great time-saver.
 
Last edited by a moderator:
I just tried PNDstore yesterday and thought it was a good first step. (Some pnds did not match in version somehow, but both are the same version. An example of which was MAME 106.0.0.0 and MAME 0.106.0.0 - It shows both, with a green check on 106.0.0.0, there are several others, but you get the idea).


I believe that if PNDstore was included as part of the standard build in a hotfix after some polish (perhaps add an icon for each app or a screenshot thumbnail) serving as a pnd repository to compliment apps.open-pandora.org (and other sites) would be sufficient for anyone.


It has also been suggested to put some sort of "first steps" guide on the desktop would go a long way to making it user friendly for casual gamers.
 
1. PNDStore will be improved, I am sure. If it is ready it could be an auto-starting update center like we have one in ubuntu (dunno about other linux distros). Update problem solved.


2. But a "How to start" - guide on the desktop of every new delivered pandora. Lot of devices have such. "Apps don't get recognised" - problem solved.


3. Questions are to be asked in the forums.


I can already hear you blasting, but sometimes I get the feeling Craig, that you want to swim against the community. We have great developements here like the repo, like the spec, like PNDStore. Why not take use of them???
 
The root is scanned for *.PND files, as well as all directories one deep.
You dont want this. PNDs have been forced to be in sub-directories for a reason.


Let's say we allow PND in the root of the SDcards, there is only a configuration file to edit. Now pndnotifyd will monitor the whole card.


Say I copy a mp3 on my sdcard in the mp3 directory. The system detect a file modification within the path pndnotifyd say he wants to monitor, so the system inform the deamon. the deamon will rescan the whole card to find the modified PND and then will notify minimenu (or xfce-desktop) to rescan for desktop files.


Now if an app modify it's configuration files, as this config file is stored in the sdcard, same problem arise.


even worst, some apps write constantly in their appdata directory (frogatto does that for example) each new write will force a complete rescan of the whole card. slowing down the game to an unplayable speed.


EDIT :

Also there is no 'scan' time when checking SD cards. We're not using floppy disks. Jesus. Who started this rumour? It takes microseconds to get dir lists from directors on SD cards. You can't wait maybe 10microseconds on boot? Once? But you're willing to make people use an app to check their apps are updated? This is madness.
The scan include :


* for pndnotifyd :


- scanning all the directories and files


- extract the icon from each PND


- extract and parse each PXML.xml files


- notify the interface (minimenu/xfce-desktop) that files changed


* the interface :


- rescan all the desktop file


- rebuild the menu


- rebuild the desktop index


- re-cache the icons


- redraw the desktop


believe it or not, that way longer than a few micro-seconds
 
Last edited by a moderator:
We're still at the beginning of a lot of things..


You may rercall a couple months ago where I mentioned integration of somethign like pndstore into mmenu -- ie: coudl make a call to pndstore (or equivilent) that woudl return a list of app unique-ids that have updates.


Mmenu coudl then show a badge on the icon to indicate upgradable, and offer two options..


1) upgrade all


2) upgrade this icon you're poking


Then it woudl invoke pndstore (or equivilent) to do the actual udpate task.


Abstracting it out of mmenu using a simple little command line interface means the actual technology douing the updates can be replaced or configured as to user preference.


--


The repo spec we have now fulfills this stuff pretty easily; coudl also add additional oepration 'can you check this particaulr app for me' perhaps to make it easier for tools to use, but right now its 'suck down the list of everything on repo, and app can do whatever it wants', which is okay too. (JSON is trivial to produce and parse)


--


So..


i) Scanning root of SD is somethign can add, as discussed other thread (and somethign I've been mulling around for quite some time)


ii) Scanning root + one more ... that coudl balloon to a lot of dirs still, but doesn't sound too bad on the surface. (And _yes_ Craig, scanning directories _can_ be very slow .. depending on the number of files, the type of media, the type of device; you're assuming a small class 6-10 SD but what if its a slow giant SD, like a class 4 64GB SD? Or w a external hdd on USB, with slow spin up, etc? We have to allow for average case, but also for edge cases :)


iii) I think pndstore is still young, it does need a cleaned up UI etc, but its not bad; it (or equiv) shoudl be in NAND for hf6, and in the menu


iv) I think if pndstore (and others, since a couple more are in the works) add command line interface, so that mmenu (and others) can ask them 'list updates' and 'do update for app x', then we can simplify the experience via mmenu and xfce


1) add "update all" menu to xfce, which just calls cmdline pndstore to do it


2) optionalyl enable pndstore scan every Xth connection to the net? (configurable to disable it)


3) mmenu could add badges to the icons as mentioned above


--


I think a lot of ideas have been bouncing around, but we shoudl be careful to proceed in an organized fashion :)


We have built lots of cool tech, we shoudl leverage it.


jeff
 
1. PNDStore will be improved, I am sure. If it is ready it could be an auto-starting update center like we have one in ubuntu (dunno about other linux distros). Update problem solved.


2. But a "How to start" - guide on the desktop of every new delivered pandora. Lot of devices have such. "Apps don't get recognised" - problem solved.


3. Questions are to be asked in the forums.


I can already hear you blasting, but sometimes I get the feeling Craig, that you want to swim against the community. We have great developements here like the repo, like the spec, like PNDStore. Why not take use of them???

There is no swim against the community, there is a constant urge to IMPROVE the system for users. Just because a solution exists which 'just about works' does not mean we should then stop and only use it.


Yes there is PNDstore, do I think this is good? Yes. Do I think it's good enough for the Pandora to just rely on this and stop trying to make things better? No I don't.


Yes, you can put in a bit of paper or a text file to tell people where to put PND files. Will this work? Yes. Is it good enough? No.


Etc.


I'm not trying to be difficult, I just want to make the Pandora as good as I know it can be. You act as if my two suggested changes would result in your Pandora bursting in to flames and you having to piss it out.


These changes I'm suggesting would not effect you at all.


And once again, there is no time taking scanning DIRs. What takes time is opening and closing FILES, I'm not suggesting this. Please try to understand the difference. This is why my system is fast - it just uses the file names.
 
Last edited by a moderator:
I stil like my way best..


Show badges, and offer 'update all' or 'update one' buttons. Poof, easy.


(Think, Apple app-store, but integrated into mmenu as well. For xfce or non-mmenu menus, it;'d be just like appstore, where you launch an app to find out about udpates.)


jeff
 
Yes there is PNDstore, do I think this is good? Yes. Do I think it's good enough for the Pandora to just rely on this and stop trying to make things better? No I don't.


Yes, you can put in a bit of paper or a text file to tell people where to put PND files. Will this work? Yes. Is it good enough? No.


They are probably a good start though, especially something as simple as a desktop file - that alone would save a ton of unnecessary questions....
 
The selling point is the open-ness. Facilitating updates does not remove openness (in theory).
 
I dont think its a good thing to compare us to Apple, i thought it was a selling point that pandora was not Apple.

There is no reason why the Pandora should not be as easy to use though, is there?

I stil like my way best..


Show badges, and offer 'update all' or 'update one' buttons. Poof, easy.


(Think, Apple app-store, but integrated into mmenu as well. For xfce or non-mmenu menus, it;'d be just like appstore, where you launch an app to find out about udpates.)


jeff

Why is this solution better than what I have suggested? Explain your take on how this should work.
 
Yes there is PNDstore, do I think this is good? Yes. Do I think it's good enough for the Pandora to just rely on this and stop trying to make things better? No I don't.
So PNDstore can improve. And you can help things. Why not work with people and build on what's been done? PNDStore, the repo & repo spec were launched in spite of your initial opposition and wariness of using anything created/designed by another person. And yet it is unpaid coders who eventually filled the demand that you failed to notice, and this will probably happen again in the future.


I'll believe that there's negligible loading time it when I see it, because people seem to be disagreeing. Also, is everything going to automatically be on the desktop in this new system, or what? Some of us do use Xfce, you know, perhaps because we like multitasking.
 
Last edited by a moderator:
I dont think its a good thing to compare us to Apple, i thought it was a selling point that pandora was not Apple.

There is no reason why the Pandora should not be as easy to use though, is there?

I stil like my way best..


Show badges, and offer 'update all' or 'update one' buttons. Poof, easy.


(Think, Apple app-store, but integrated into mmenu as well. For xfce or non-mmenu menus, it;'d be just like appstore, where you launch an app to find out about udpates.)


jeff

Why is this solution better than what I have suggested? Explain your take on how this should work.

Read my post, higher up; its similar to your proposal, but more concrete - you didn't go into detail how it works, just said 'poll this url to knwo if app-such and such is updated'.


What I'm proposing is more concrete -- we can auto poll or do it on user demand, and use already well-defined and working technologies we built. (ie: I don't like the idea of modifying a filename just to add a version number, and noting that version numbers can be giant; the version number is _already_ in the pxml, so why make the filenames ugly by adding them?) More to point.. were you proposing to do it when the user runs mmenu (polling 400 urls for 400 apps?) or...? My suggestion is we auto poll once in awhile when user connects, or do it on user demand; we use the repo spec (it works, is well defined _now_), and show badges on the apps in mmenu, so the user knows what can be updated.. they can then mass update, or dot hem one by one.


So I've clarified an idea from some time ago, which seems to do what you want ;)


Further, I'd like to do it using existing designs we've come up with over the months, that are known to work, and quite easy to do.


Don't really want to reinvent the wheel.


I mean..


Why wouldn't you want to use the repo spec? (honestly, take you a couple hours to code into your app store).


After repo spec is added to your store, then existing pndsrtore and upcoming tools will 'just work', and thats great.


Then we also can build into mmenu and xfce/etc other options to make it even more transparent.. like my badge idea, or whatever we all come up with. Auto update of apps by default, once a month, or whatever.


So..


Steps are..


1) you add repo spec support to your site (easy, and big wins)


2) we add pndstore (say) to hf6 nand


3) we get templer/whoemever to add command line support to pndstore, in a standardized way (so that other upcoming repo clients can offer the same function to mmenu/etc)


4) mmenu uses cmdline api to repo client to find out about possible updates, or to apply udpate requests


Easy pleasy, no rocket science, just logical steps that we take, one after the other. It'll take a few weeks of work to do it, subject to developer availability. (Sorry, I'm a pro, I talk like that :)


I'm agreeing with you, but trying to do it in a standards way, where standards are things we already have built over the last year or two.


jeff
 
Back
Top