Volunteers for appstore updating.


Why not use his code? Seems ludicrous that someone has basically done the work for you with an app store that will essentially update itself along with url upload capabilities. How often, when milkshake finishes, would you modify the source anyway? Maybe a few tweaks here and there and that doesn't require you to have an in depth understanding of it.

Craig already answered this and i think it's a very valid reason. He/OP Ltd doesnt want to be reliant on somebody else that may leave and then have to maintain code that he hasnt written himself.


for my tuppence worth :


keep apps.openpandora as the default site on the pandora


keep openhandhelds going and use it / whatever as mirror sites for desktop machines and "advanced applications". in that the way they are stored is advanced. link from the official site to there for the apps that are in "advanced format", so in effect have the stuff in the official site but dont keep the code, link out to whaichever site the author wants with notes saying something like "this application requires you to do additional work to get it going, we are keeping it here so you know it exists but we recommend visit this site to obtain the file and any relevant instructions"


if people then want to install or use something else on the Pandy they can, just that it requires extra work that those who visit the forums (cos least we forget many people have bought pandys that dont seem to visit here) will be aware of and "standard users" can use the official site.
 
To be fair, if problems come up in Apache, there's a whole community that can fix them. Though I agree: since milkshake's repo does everything the app store does and more, it's probably easier to understand its code than it is to reimplement from scratch.

JSON interface or similar, please :)
This interface, please :) Then the client I'm making will work with it effortlessly.
 
There is no way I'm digging though someone elses source code to find their bugs. It could take weeks.
You have no problems using the source code provided by Skeezix and Notaz in the Pandora's OS. I don't see how this is in any way different. Less so, because if the app store breaks it's merely inconvenient until you fix it, unlike a Pandora OS break which could cause real problems. The entire PND system rests squarely on Skeezix, really, and if he were to be hit by a bus tomorrow the only way to get updates would be for someone else to go digging through his code, even if it takes weeks. So why not accept the help of developers already working on a repository?

I'm also a bit disappointed that no one has pointed out anything which is out of date on pandora apps yet.


Is it out of date or not?


And the PSX emu seems to be up to date? What's all this talk of it being 3 versions out?
There are lots of things that are out of date and missing. You should not, volunteers should not, be the ones who update them. The only person who should update the app store should be the developer of the application, or at least the porter/PNDifier, in my opinion. You need to convince developers that your location is the best location to put their PNDs, and you can do that by implementing the features that they are requesting, and you can do THAT by accepting the help of the large community of developers which have already begun filling the gap which your app store has failed to fill. If you really want to do it yourself then you've got a lot of work ahead of you: Milkshake's repository is already miles ahead of where the app store is right now, even though it's simple alpha, because he listened to what the developers were asking for. You can rewrite the code yourself from scratch to do the same thing if you want, but at the very least you'll have to accept advice from others on features that need to be added, otherwise Milkshake's repository will naturally become the de-facto place people go to get their updates and there's nothing you can do about it.
 
Perhaps clarification from the Shake on open source or not will assuage some concerns. I recall he said it'd be open source at release time..


Asked him in IRC:


milkshake> once I have all the features that "I" want to implament and its production ready I may release the source code yes


So thats that concern out.


jeff
 
^ I agree with WizardStan's post


I also agree with what skeezix said.


There does not need to be one central _storage_ for programs (well, games, PNDs, whatever you would run on your Pandora) and that is ok, you can't force people to upload their stuff to another website.


But in my eyes there should be a central place for uses to go to where you know you will get all (or most) programs in the latest version.


It seemed to me that you (Craig) wanted apps.open-pandora to be that place and I am totally fine with that (as stated before, I like it more than it being some unofficial third-party website, because I trust that ED's servers will run as long as the Pandora lives), just to be clear.


It currently lacks features, that has been mentioned often enough, but what it also lacks (which milkshake's site does) is to scan other websites and link to programs found there and the ability to not only upload files but also submit links to files or even to whole other repos (aka links to the interface provided by the other sites), so it will generate a list of all programs found (on the same server and on others).


This would have the big advantage that new users only have to visit one place to get all they need and to stay up to date and is the one big advantage the centralized Apple AppStore has and is one big complaint of new users that the Pandora lacks such a thing (and you have to visit a dozen pages and somehow manage to look through that mess).


As skeezix said, you have to define your scope, though to me it always seemed like apps.open-pandora should become the _one_ place to get programs for the Pandora (also becausse you wanted it to replace the file archive), so I actually took that for granted.


foxblock out


PS: I know I am mostly overlooking there is more than just programs, there also are documentations, source code archives, tools, graphics (the logo), etc.


This seems like it was not the target of apps.open-pandora and that is also fine, but then you would still need a place for that, which we currently (only) have in the form of the file archive.
 
Last edited by a moderator:
It will work because we will kill off the old archive when we're ready with pandora apps, which is obviously still in beta.

I understand you prefer to rely on your own code, but it looks like you're a bit into Perl, which I love, so in case you ever need to synchronise the App store after the openhandhelds archive, I quickly hacked for you a small script that basically dumps its app list with author/version/date/size/comments/snapshot/downloadlink, all stored in easy to use structures (tree or list, you choose).


Less than a hundred lines, use as you see fit (that includes requesting changes, or somehow croning a daily update of pandora apps).

Code:
#!/usr/bin/perl


use strict;

use warnings;

use Data::Dumper;


my $baseurl = 'http://dl.openhandhelds.org/cgi-bin/pandora.cgi';


my $filetree = {};

my $filelist = [];


exploreDir( $baseurl, '', $filetree, $filelist );


# Dump the openhandhelds pandora archive in tree form

print Dumper( $filetree );


# Dump the openhandhelds pandora archive in list form

print Dumper( $filelist );


sub exploreDir

{

	my( $baseurl, $url, $filetree, $filelist, $path ) = @_;

	$path = [] unless $path;

	$filetree->{ cat } = [];

	$filetree->{ files } = [];


	print "Getting category: $baseurl$url\n";

	my $html = cleanHtml( getHtml( $baseurl . $url ) );

	my $clean = removeImg( $html );


	while( $clean =~ m!<TD WIDTH="\d+"><FONT CLASS="\w+"><B><A HREF="(\?[\d,]+)">([^<]+)</A></B> </FONT></TD><TD WIDTH="\d+" ALIGN="RIGHT"><FONT CLASS="mid">(\d+) Files&nbsp;</FONT></TD>!g )

	{

		next if $3 == 0;

		my $cat = { name => $2, filenb => $3, url => $1, data => {} };

		exploreDir( $baseurl, $1, $cat->{ data }, $filelist, [ @{$path}, $2 ] );

		push @{$filetree->{cat}}, $cat;

	}


	while( $html =~ m!<TD WIDTH="100"><IMG SRC="([^"]+)".*?></TD><TD align="left"><FONT CLASS="mid">&nbsp;<A HREF='(\?[\d,]+)' >([^<]+)</A> </FONT></TD><TD WIDTH="80" ALIGN="RIGHT"><FONT CLASS="mid">([\d/]+)</FONT>&nbsp;</TD><TD WIDTH="90" ALIGN="RIGHT"><FONT CLASS="mid">\d+</FONT>&nbsp;</TD><TD WIDTH="90" ALIGN="RIGHT"><FONT CLASS="mid">\d+</FONT>&nbsp;</TD><TD WIDTH="70" ALIGN="RIGHT"><FONT CLASS="mid">([^<]+)</FONT>&nbsp;</TD>!g )

	{

		my $file = { img => $1, url => $2, name => $3, date => $4, size => $5, path => $path };

		push @{$filelist}, $file;

		exploreFile( $baseurl, $2, $file );

		push @{$filetree->{files}}, $file;

	}

}


sub exploreFile

{

	my( $baseurl, $url, $filedata ) = @_;


	print "Getting file: $baseurl$url\n";

	my $html = cleanHtml( getHtml( $baseurl . $url ) );


	# full author, description, version & download link

	$filedata->{ description } = $1 if $html =~ m!<FONT CLASS="fsmall">(.+?)</FONT>!;

	$filedata->{ version } = $1 if $html =~ m!<B>Version:</B></FONT></TD><TD WIDTH="50%"><FONT CLASS="mid">([^<]+)</FONT></TD>!;

	$filedata->{ author } = $1 if $html =~ m!<B>Author:</B></FONT></TD><TD WIDTH="50%"><FONT CLASS="mid">([^<]+)</FONT></TD>!;

	$filedata->{ download } = $baseurl . $1 if $html =~ m!CLASS="vbig"><B><A HREF='(\?[\d,]+)'>Download</A>!;


	# comments

	while( $html =~ m!<TD ALIGN="RIGHT"><FONT CLASS="mid">([^:]+):</FONT>&nbsp;</TD></TR></TABLE></TD><TD><TABLE WIDTH="100%"[^>]+><TR><TD>&nbsp;<FONT CLASS="mid">([^<]+)</FONT></TD>!g )

	{

		$filedata->{ comments } = [] unless $filedata->{ comments };

		push @{$filedata->{ comments }}, { user => $1, comment => $2 };

	}

}


sub cleanHtml

{

	my $html = shift;

	$html =~ tr/\n\r//d;		# remove all CR

	$html =~ tr/\t/ /;			# replace all tabs by spaces

	$html =~ s/\s+/ /g;			# condense all multiple spaces

	return $html;

}


sub removeImg

{

	my $html = shift;

	$html =~ s/<img [^>]+>//gi;	# remove images

	return $html;

}


sub getHtml

{

	my $url = shift;

	my $html = `wget -O /dev/stdout -q '$url'`;

	return $html;

}
 
Last edited by a moderator:
It will work because we will kill off the old archive when we're ready with pandora apps, which is obviously still in beta.


...

It might be obvious to you but why not make it obvious to users by clearly stating this fact on the official website & better still on the Pandora Apps home page itself.


Here is a small contribution :


PSXReARMed is out of date, we are now on R7.


Edit : The Wizard speaks a lot of sense, Craig, please reconsider your position for the good of the community. Seems like you've got more than enough on your plate at the moment. I'm sure if you had a bit more spare time we'd have an official 'App Store' that was fit for purpose, sadly at the moment we don't.
 
Last edited by a moderator:
There are lots of things that are out of date and missing. You should not, volunteers should not, be the ones who update them. The only person who should update the app store should be the developer of the application, or at least the porter/PNDifier, in my opinion.

my suggestion would be to do it like pouet.net and have the files hosted somewhere else with links to the hosting homepage so people can always get the latest version.


it'd just be a central index "of stuff that runs on OpenPandora" but without hosting the PNDs directly.


there are lots of free file repositories out there people can use to host the stuff, all we need is a centralized "shopping flyer" this way the files will be always the latest.
 
Omfg, that's exactly what milkshakes site does.


The source code thing is a total crock, unless milkshake does his comments in swahili, nigerian or russian, I think he'll be able to figure it out. Even if craig wrote it from scratch hed still be using the same apache/php/mysql functions.


Didn't we go through this bullshit with dflemstr? And the result back then was that dflemstr jacked in all his hard work and X amount of months later were still using a system which is a fucking mess.
 
This is bollocks! CRAIG: DO WHATS BEST FOR THE CUSTOMERS, NOT WHATS BEST FOR YOU!


An open-source appstore for Pandora is the absolutely best thing that could possibly happen for the customers. We volunteers would maintain it, ensure it didn't die, and would keep it flourshing. The current offerings are pathetic ..
 
Ok just to clarify on the source code.


I will release the source code to github; when I am happy with the final product and I do not wish to personally add any new features, this might only be i a few months from now.


I realize it might be quicker and better on development if I were release the source code now.


The reason I am not doing this is because I want to use my site as part of my portfolio when trying to get jobs in web development, I cant really say I made the website if alot of the code was not contributed by myself.


I hope that doesn't sound too selfish.


I also think people should not give craig such a hard time at the moment as most of his time is spent building pandora's (this is good right?).


This means he doesn't have much time right now to devote himself to the app-store.


But I do feel your frustration which is why I decided to take on my little project.


And don't worry I am constantly working on my repository when ever I get any spare time, I hopefully will have a version 1.0 release by the end of march (this will be basic but fully functional with more improvements to come).
 
The reason I am not doing this is because I want to use my site as part of my portfolio when trying to get jobs in web development, I cant really say I made the website if alot of the code was not contributed by myself.

Of course you can! In fact you can *add* to your skills, by saying "I started this open source app-store project, and it has now grown into THIS", and any decent employer looking at this project would understand completely. If I was hiring you, I'd certainly think higher of you if you put it on github today, and then stay involved in the project and participate as people add features/tweaks.


Besides, what I've seen of the site so far leads me to believe you are *very* skilled at building these kinds of web-based apps, and I wouldn't think twice about hiring you.


The point is, what you've gotten working so far is miles ahead of what we've got out there for the public to use. You should really re-consider this position, release the code, and watch the project grow. You may be surprised at just how much credit you earn for this.


Just IMHO of course.
 
Of course you can! In fact you can *add* to your skills, by saying "I started this open source app-store project, and it has now grown into THIS", and any decent employer looking at this project would understand completely. If I was hiring you, I'd certainly think higher of you if you put it on github today, and then stay involved in the project and participate as people add features/tweaks.
That's exactly what I thought, too. Getting the job you want is as much about what you've done as the skills you've used to do it. In fact, the former may well weigh in higher in many cases and get you interviews for jobs you'd otherwise never have been considered for. Starting and maintaining a successful open source project shows that you're not only technically proficient, but also able lead a software project, communicate with other developers and - considering you're doing it in your free time - that you have a passion for coding. Employers love all that stuff.
 
you really think so? I do not have a degree or anything so "my work" is the only thing that will show im a capable candidate for a job role.


how will they know what "I" can do? they may know I can manage an open source website how will they know my coding skills?


I am considering putting it up sooner but im just scared as i hate my job I have at the moment, and this project could lead into a job role that I like (if they think I am compitent and I get around the no-Degree but)
 
Last edited by a moderator:
you really think so? I do not have a degree or anything so "my work" is the only thing that will show im a capable candidate for a job role.


how will they know what "I" can do? they may know I can manage an open source website how will they know my coding skills?
If they look at the git they can see which parts were contributed by you, and which parts by someone else.


So they know exactly how much you did, and how much other people.
 
you really think so? I do not have a degree or anything so "my work" is the only thing that will show im a capable candidate for a job role.


how will they know what "I" can do? they may know I can manage an open source website how will they know my coding skills?


I am considering putting it up sooner but im just scared as i hate my job I have at the moment, and this project could lead into a job role that I like (if they think I am compitent and I get around the no-Degree but)

Title yourself the "lead developer" or something of the kind for the project. This will make it clear that this is your project, but you accept contributions. Also stay active, it'll show in the git statistics so you can prove your competence :)
 
yes thats true but are they going to want to spend time sifting through the github of a project to see which bits I contributed?
 
Don't listen to them. :p


There's nothing wrong with completing a project to your own satisfaction before releasing it as open source. You've got a very good reason to do so. Holding off won't hurt anything, and it will definitely help you: you can take a snapshot of a solid working project to demo, and you can then demonstrate how others have taken your project and are able to work with it.
 
Back
Top