Goodreads Developers discussion

214 views
what are you building for goodreads?

Comments Showing 1-16 of 16 (16 new)    post a comment »
dateUp arrow    newest »

message 1: by Michael (new)

Michael Economy (michaeleconomy) I'm working on a widget that lets out add links to book and authors to free text super easily!

What are you guys working on?


message 2: by Giacomo (last edited Sep 03, 2008 12:52AM) (new)

Giacomo (giacomol) | 5 comments As of now:

- GR Estimator, to estimate how much a shelf is worth according to Amazon.
- Amazon-to-Goodreads, a greasemonkey script adding a link to GR on Amazon pages
- Goodreads Exploder, a greasemonkey script to "open all books in tab" from a shelf

I'm thinking about other mashups, but there's a limit to my imagination :)

(Edit: no tags? :(


message 3: by Michael (new)

Michael Economy (michaeleconomy) unfortunately, our escape html parser is really primitive so doing nested tags like would be pretty tricky :(


I'd like to promise that someday we'll support that, but its soooooo far down the list of priorities, it will only get done if it gets merged into another ticket


message 4: by [deleted user] (new)

Hey,

Not to snake this thread, but why not implement something like TinyMCE, or even Wordpress' text editor, as the default text UI?

It would be more flexible in terms of HTML allowances, and alot more familiar to the non-code-geeks out there.

I realize this has already probably come up elsewhere, but I felt I should point it out.

--Kyle


message 5: by Michael (new)

Michael Economy (michaeleconomy) TinyMCE looks cool, and works in safari. We'll have to think about implementing it.

Our problem is more with the fact that we have to validate all user input on ourside to prevent people from redoing page styles, breaking the layout, or even worse - embedding their own javascripts.


message 6: by [deleted user] (last edited Dec 02, 2008 12:19PM) (new)

Oh, I see.

Well if you prevent people from writing raw HTML in TinyMCE (I believe that's an option... it treats everything as text if you choose this), then you're mostly set! Especially since it will handle all the open+close tags for everything.

If not, have you considered breaking the text string into an array, and comparing positions for tags? For example if you have "hello there" you would look at positions 0 and n-1 for the matching tags... the symmetry carries throughout the process.

As for the Javascript... I'm assuming you guys have already figured that one out. ;-)

--Kyle


message 7: by Nick (new)

Nick Black (dankamongmen) | 3 comments MICHAEL wrote: "I'm working on a widget that lets out add links to book and authors to free text super easily!

What are you guys working on?"


Ahh, I just wrote my "Hello, World" of DOMsmanship; a right-menu "bibtexize" option now generates bibtex-suitable output directly to the clipboard. This will accelerate paper-writing by a few delicious seconds.

It'd be even more effective, of course, if GoodReads handled arbitrary academic papers.

HOT HOLY SHIT OTIS THIS IS AN AWESOME IDEA. If you think otherwise, set ->gradschool to 1 and loop.


message 8: by Michael (new)

Michael Economy (michaeleconomy) nice :D

we might add magazines and other periodicals at some point, if we do end up doing that, we'll consider adding academic papers also. What do you think the special characteristics that seperate academic papers from books. I take it they have no isbn, but most of our other fields would still be valid right?


message 9: by Nick (new)

Nick Black (dankamongmen) | 3 comments MICHAEL wrote: "nice :D

we might add magazines and other periodicals at some point, if we do end up doing that, we'll consider adding academic papers also. What do you think the special characteristics that sep..."


It depends on what you want to do. I was thinking about this today, and what I'd really want for papers is a bit different from what goodreads currently offers.

For papers, you've got something like ISBN in the DOI. It's URI-based, not radix-based, but since ISBN's don't exhibit a well-ordering property, it shouldn't matter. There is a real problem, however, in that the percentage of papers with DOI's is far below that of books with ISBN's.

Given that I really know nothing outside of computer science, physics and math papers, I'm also probably not the best person to ask about this. GRFeedback has plenty of MSLibSci folks that ought be able to authoritatively answer this, though.

More importantly, academic papers would have a very different focus:

- as opposed to fairly unimportant "publisher", there'd be absolutely critical "journal". "author" would be not so much "author" as "author+organization", where organization-based searching would be just as critical (if not more so) than author-based.

- you could chain them by citation tree, ala CiteSeer, and meaningfully supporting papers would pretty much require this.

Now that I think about it, the paradigms for socializing books and papers are very different. It's dubious, I think, that GoodReads could really winningly support socializedpapers without significant effort unapplicable to its main focus -- you'd need an awful lot of code and schema both, for features that 95% of GR users would never touch.

Perhaps we need a RigorousReads.com sister site. Hrmmmmm.


message 10: by Michael (new)

Michael Economy (michaeleconomy) Great summary thanks!


message 11: by Shane (new)

Shane Hi

I've been trying to make something like the lastfm "recently played" images, like this one:



theyre handy because you can stick it in your signature on message boards whereas you cant do that with the widgets. i've tried to make a "currently reading" one from the rss feeds however im not too knowledgeable about this stuff so the best i could do was two pictures like this:




its two pictures because i cant get the text to go onto a new line. is there any chance goodreads could make a nicer one with different display options or is there an easier way to accomplish this? here is the code incase anyone is interested:

<?php

if (isset ($_GET['id':])) {

if ($contents = file_get_contents("http://www.goodreads.com/review/list_...")){

$contents = ereg_replace("[\n\r\t:]", "", $contents);
$contents = str_replace('> <', '', $contents);

$expression = "/\\\<\/title\>/";
$title = $matches[0:];
if (preg_match ($expression, $contents, $matches)) {

foreach ($matches as $match) {
$title = $match;
$title_link = str_replace(' ', '+', $title);
}


$img = imagecreate (590, 20);
$bg = imagecolorallocate( $img, 49, 77, 132 );
$textcolour = imagecolorallocate( $img, 240, 240, 240 );
imagestring( $img, 2, 3, 3, "$title", $textcolour );
header( "Content-type: image/png" );
imagepng( $img );
imagedestroy( $img );

} else {

// If theres no book on the currently reading shelf

$img = imagecreate (590, 20);
$bg = imagecolorallocate( $img, 49, 77, 132 );
$textcolour = imagecolorallocate( $img, 240, 240, 240 );
imagestring( $img, 2, 3, 3, "Eh...", $textcolour );
header( "Content-type: image/png" );
imagepng( $img );
imagedestroy( $img );

}

}

}

?>


message 12: by Michael (new)

Michael Economy (michaeleconomy) why use an image, rather than html?


message 13: by Shane (new)

Shane Its for sites where you're not allowed to use html but where there is the means to add an image.


message 14: by Michael (new)

Michael Economy (michaeleconomy) ahhh


message 15: by Otis (new)

Otis Chandler | 18 comments We have one of those, but we took it off the widget page in the last redesign, due to lack of interest, and it being very ugly.

Here is mine:



message 16: by Shane (new)

Shane Ah. It might be a bit too big though. one with just the currently reading info, maybe with a smaller font, and that could be changed for different users by changing the url might be a bit more popular. people could link it to their profiles and then everyone would want to sign up and show off what theyre reading.


back to top