where can I download the Serendipity library

Want to talk about something that isn't covered by another category?

Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller

Lagi Pittas
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 365
Joined: Mon Jun 10, 2013 1:32 pm

where can I download the Serendipity library

Post by Lagi Pittas » Tue May 30, 2017 2:52 pm

Hi

Does anyone have a WORKING link to Rob Cozens' Serendipity Library?

I have use the wayback machine and cannot find anything.

Andrea had it at wecode.org but that is now defunct.

This should really be on the Livecode share site

Regards Lagi

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9802
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Re: where can I download the Serendipity library

Post by FourthWorld » Tue May 30, 2017 4:34 pm

It's been many years since I saw Rob demo Serendipity at a friend's house, and at the moment I can't seem to turn up anything for it on the web.

But IIRC it was fully written in LiveCode Script, and didn't use any of the more common DB engines (SQLite, postgreSQL, etc.).

What did you need from it? I wonder if it may be worth creating something with newer syntax that serves those needs.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

Lagi Pittas
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 365
Joined: Mon Jun 10, 2013 1:32 pm

Re: where can I download the Serendipity library

Post by Lagi Pittas » Tue May 30, 2017 4:49 pm

Hi Richard,

I was scanning the forum and went to the community projects part , where you added the associative arrays bit.

- I got sidetracked and forgot to upload a couple of the other routines I did for that.
Then I read about serendipity and thought there must be a lot of tricks and tips for us "noobies"

I would have thought that Andre should have a copy as he gave Rob some space at wecode.org as I said.

It would be a shame to lose all that stuff in the bitbucket.

Regards lagi

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9802
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Re: where can I download the Serendipity library

Post by FourthWorld » Tue May 30, 2017 5:00 pm

Lagi Pittas wrote:Hi Richard,

I was scanning the forum and went to the community projects part , where you added the associative arrays bit.
For anyone else following along, the thread I believe Lagi is referring to is this one:
http://forums.livecode.com/viewtopic.php?f=108&t=28828
- I got sidetracked and forgot to upload a couple of the other routines I did for that.
Then I read about serendipity and thought there must be a lot of tricks and tips for us "noobies"

I would have thought that Andre should have a copy as he gave Rob some space at wecode.org as I said.
You might write to Andre to see if he still has a copy. His newer domain is:
http://andregarzia.com/
It would be a shame to lose all that stuff in the bitbucket.
FWIW, I don't believe there's anything in Serendipity to emulate indexed arrays with LC's associative arrays.

It was an ambitious project, but old enough that I'm not even sure whether it may predate nested arrays, or even if it uses arrays at all. It may be based exclusively around chunk expressions.

I may have a copy in my archives somewhere, but I would be reluctant to redistribute it without permission from the author. I'll take a gander and see if I have a copy, and if it allows redistribution.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

Lagi Pittas
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 365
Joined: Mon Jun 10, 2013 1:32 pm

Re: where can I download the Serendipity library

Post by Lagi Pittas » Tue May 30, 2017 5:07 pm

Hi Richard

I think SDB webt further but it sounded like Rob didn't release it to more than a couple of folk.

I can't see what the problem is with posting it here, when obviously Rob has lost interest in the whole project from my readingof the uselist

Lagi

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9802
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Re: where can I download the Serendipity library

Post by FourthWorld » Tue May 30, 2017 5:33 pm

I found a copy in my archives, but it seems DOA: the main library stack is password-protected, the license is proprietary, and the redistribution terms ambiguous.

Without being able to reach the author I'm not comfortable redistributing it, and since it's password-protected no modification is possible until the author is reached anyway.


FWIW, there are many ways to store data using native LC Script, and if there's value in having a data store written entirely in script I have several I could share.

I haven't bothered documenting any of them yet because of perceived lack of interest in such things. Seems everyone likes SQLite for local work and MySQL for servers; doesn't seem to be many folks asking for scripted data stores.

One of the challenges of any script-driven data store will be scalability. Most data store engines are written in a machine-compiled language like C++, so they're able to deliver a rich feature set with great efficiency.

Any scripted data store will suffer from performance impairment at a certain scale, esp. with aggregate functions that work across the whole data set, like queries.

The ones I've made work well up to a few tens of thousands of records, but performance degrades above 50k or so, maybe earlier depending on record size (in one performance degrades earlier, at around 12k, but it has other charms that made it worth using on a couple projects).

The bigger challenge is with features: both relational and "No SQL" data stores usually rely on b-tree structures for their index, which opens up a lot of flexible options for getting specific elements quickly. B-trees are not well suited for implementation in a scripting language, and other index types which may lend themselves to scripted implementation limit either performance, features, or both.

If the data set is small enough, relying on limited indexes, or even no index at all, may suffice.

But even then, if you need relational features you'll find those difficult to do efficiently in a scripting language.

Non-relational stores (simple CRUD on discrete record/document entities) for modest data collections are easy enough to write ad hoc in a scripting language for the rare cases where they may provide an advantage that I haven't seen much call for a generalized solution.

TL;DR: Let's identify what's needed, and if there's a use-case here that could benefit from a simple embeddable data store solution I may be able to document one of the stores I have here. or we might look at starting a fresh solution as a community project.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

Lagi Pittas
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 365
Joined: Mon Jun 10, 2013 1:32 pm

Re: where can I download the Serendipity library

Post by Lagi Pittas » Tue May 30, 2017 6:05 pm

Hi Richard

It's not about difficulty in using SQL or sqlite - I've been using SQL since 1991 (Foxpro 2 for dos).

It just pains me to see so many libraries fall by the wayside - everything has a nugget of useful stuff in there IM(NS)HO.

I didn't know it was propriety but that makes it even more of a shame that he wasted all that effort - not making any money from it and SDB obviously had some good ideas.

Sometimes we want something a little less "strict" and a little more fluid than SQL i have a good few routines that read in a text file and parse the contents.

I would be open to any of your libraries that people not necessarily to use them as is but you have been through the trenches with Hypertalk/livecode and the best way of learning is looking through and understanding someone else's code.

Maybe your "... degrades ...... at around 12k, but it has other charms that made it worth using on a couple projects)" bit of code would be even more interesting as it was used in a real-world problems.

Also gives me a chance to thank you for your always erudite and seemingly always polished posts over the years - Don't know how you get the time.

I'm still saving up for a smelling checker - my typing pistakes are getting worse. ;-)

Regards Lagi

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9802
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Re: where can I download the Serendipity library

Post by FourthWorld » Tue May 30, 2017 7:46 pm

Lagi Pittas wrote:It just pains me to see so many libraries fall by the wayside - everything has a nugget of useful stuff in there IM(NS)HO.

I didn't know it was propriety but that makes it even more of a shame that he wasted all that effort - not making any money from it and SDB obviously had some good ideas.
The older I get the less I worry about old code.

These days I'm more inclined to write a new system from scratch than to retrofit something that's been sitting idle too long. So much changes, both in the language options we have available, computing options in general, and what I've learned in the meantime. After enough time I often don't even like my older code at all. :)

In communities we see a similar pattern: code that has immediate value tends to get maintained. When no one's maintaining a code base that often just means the use case it was written for isn't as relevant anymore.

There are sometimes exceptions, most of them rare and grim, involving a serious illness or even death of an author. Our LiveCode community has been around long enough that I've seen at least three of our brother scripters leave us for The Great Adventure.

But short of such dire reasons, if the author is still living and still computing, if they're neither still maintaining a code base or have seen fit to open source it for others to maintain, that may tell us what we need to know about what code we might want to work on going forward.

There's a lot of legacy code on the planet. Not all of it is worth reading, and less worth applying to modern problems.

This is an interesting start at identifying a use-case:
Sometimes we want something a little less "strict" and a little more fluid than SQL i have a good few routines that read in a text file and parse the contents.

I would be open to any of your libraries that people not necessarily to use them as is but you have been through the trenches with Hypertalk/livecode and the best way of learning is looking through and understanding someone else's code.

Maybe your "... degrades ...... at around 12k, but it has other charms that made it worth using on a couple projects)" bit of code would be even more interesting as it was used in a real-world problems.
Let's see if my problems are your problems: what sort of systems are you building that need a data store for which one of the existing DB engines isn't a great fit?

Also gives me a chance to thank you for your always erudite and seemingly always polished posts over the years - Don't know how you get the time.
Thank you for the kind words. My motivation is purely mercenary: my business relies on LiveCode for much of my work, so it's in my interests to see the platform grow and its community well supported.
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

capellan
Posts: 654
Joined: Wed Aug 15, 2007 11:09 pm

Re: where can I download the Serendipity library

Post by capellan » Wed May 31, 2017 10:22 pm

Hi All.

As Richard said, the stack Serendipity Library is encrypted, but the stack Serendipity Reference is not encrypted and
includes this text:

"This stack may be freely distributed so long as it is not modified in any way. For further information, eMail: serendipity@oenolog.com ©2002 Serendipity Software Company"

This is the content of SDB License Read Me file:

This is a legal agreement between you, the developer or end user of Runtime Revolution and MetaCard applications, and Serendipity Software Company, developer & distributor of Serendipity Library. Be sure to read the following agreement before using the Serendipity Library. BY CLICKING ON "Accept License Terms", YOU ARE AGREEING TO BE BOUND BY THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO THE TERMS OF THIS AGREEMENT, DELETE ALL COPIES OF THE SOFTWARE.

SERENDIPITY LIBRARY SOFTWARE LICENSE

1. GRANT OF LICENSE.
Serendipity Software Company grants to you the right to use the enclosed software program (Serendipity Library.rev and related files) free of charge and without time limit or other restrictions, except as noted herein.

2. COPYRIGHT. Serendipity Library is owned by Serendipity Software Company and is protected by United States copyright laws and international treaty provisions. Therefore, you must treat the software like any other copyrighted material (e.g. a book or musical recording) except that you may freely transfer Serendipity Library to any computer and include it when distributing other software that uses the Library SO LONG AS THE LIBRARY AND RELATED FILES ARE NOT MODIFIED. If Serendipity Reference.rev is not distributed with the Library, a text copy of this license agreement must be included in the documentation for the distribution. You may also incorporate the handler logic of any script THAT IS NOT PASSWORD PROTECTED into your own Revolution or MetaCard stacks and standalones.

3. OTHER RESTRICTIONS. You may not attempt to defeat the password protection and directly access the scripts of Serendipity Library.rev. You may not charge for Serendipity Library when distributing it with other software.

4. MISCELLANEOUS. This Agreement shall be governed by the laws of the State of California. If for any reason a court of competent jurisdiction finds any provision of this Agreement, or portion thereof, to be unenforceable, that provision of the Agreement shall be enforced to the maximum extent permissible so as to effect the intent of the parties, and the remainder of this Agreement shall continue in full force and effect.

5. DISCLAIMER OF WARRANTY AND LIMITED WARRANTY. SERENDIPITY LIBRARY AND ACCOMPANYING FILES (INCLUDING INSTRUCTIONS FOR USE) ARE PROVIDED ÒAS ISÓ WITHOUT WARRANTY OF ANY KIND. FURTHER, SERENDIPITY SOFTWARE COMPANY DOES NOT WARRANT, OR MAKE ANY REPRESENTATIONS REGARDING THE USE, OR THE RESULTS OF THE USE, OF SERENDIPITY LIBRARY OR ACCOMPANYING FILES IN TERMS OF CORRECTNESS, ACCURACY, RELIABILITY, CURRENTNESS, OR OTHERWISE. THE ENTIRE RISK AS TO THE RESULTS AND PERFORMANCE OF SERENDIPITY LIBRARY IS ASSUMED BY YOU. IF SERENDIPITY LIBRARY OR ACCOMPANYING FILES ARE DEFECTIVE, YOU, AND NOT SERENDIPITY SOFTWARE COMPANY OR ITS DEALERS, DISTRIBUTORS, AGENTS, OR EMPLOYEES, ASSUME THE ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

U.S. GOVERNMENT RESTRICTED RIGHTS
SERENDIPITY LIBRARY and documentation are provided with RESTRICTED RIGHTS. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subdivision (b)(3)(ii) of The Rights in Technical Data and Computer Software clause at 252.227-7013. Manufacturer is Serendipity Software Company, 13010 Boonville Road, Boonville, California, USA 95415-0476

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9802
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Re: where can I download the Serendipity library

Post by FourthWorld » Wed May 31, 2017 10:54 pm

Thanks, Alejandro. My copy may be older; the license is somewhat different, and doesn't include a note about free redistribution.

Do you have a more current copy posted somewhere?
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

capellan
Posts: 654
Joined: Wed Aug 15, 2007 11:09 pm

Re: where can I download the Serendipity library

Post by capellan » Wed May 31, 2017 11:12 pm

I have a copy from 2002, Which year is your copy?

By the way, in the READ ME file, Rob Cozens give thanks to many developers.
They could have a more recent version of this library:

Serge Grenier, whose post to the HyperCard List regarding "Networking HyperCard Stacks"
many years ago, lit the spark that resulted in creation of Serendipity Database--Binary.

* Sannyasin Sivakatirswami and Ken Ray for initial design critiques and tips on cross-platform scripting.

* Sjoerd Op 't Land, whose sound translation made the audio feedback mechanism possible.

* Bjornke von Gierke, whose suggestions led to an adjustable audio feedback and improvements in the Library Translation screen.

* Jose L. Rodriguez Illera, whose critique reminded me not to lock out MetaCard developers with Revolution-specific syntax and who created Mensajes_en_español.

* Terry Vogelaar, who pointed out the need for ASCII-ANSI conversion of high-order characters and created Nederlandse_Berichten.

* Yves Coppe, who created Alertes_en_Français.

* Klaus Major, who created Deutsche_Texte.

* All the helpful folks on the Run Rev, MetaCard, and HyperCard mailing lists for tips and advice over the years
Last edited by capellan on Wed May 31, 2017 11:37 pm, edited 1 time in total.

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 9802
Joined: Sat Apr 08, 2006 7:05 am
Location: Los Angeles
Contact:

Re: where can I download the Serendipity library

Post by FourthWorld » Wed May 31, 2017 11:33 pm

I miswrote that. What I meant to ask is if you've posted a copy of the version you have, which explicitly allows redistribution?
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

capellan
Posts: 654
Joined: Wed Aug 15, 2007 11:09 pm

Re: where can I download the Serendipity library

Post by capellan » Wed May 31, 2017 11:38 pm

Check your email :D

Lagi Pittas
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 365
Joined: Mon Jun 10, 2013 1:32 pm

Re: where can I download the Serendipity library

Post by Lagi Pittas » Thu Jun 01, 2017 10:24 am

I think the fact that in a use list response rob said his direction was changing and that he didn't have much time to even contemplate putting a new version up and the fact that his website is down and has been for years says a lot in itself.
I am not looking at it as a database library to use but as a pot pourri of ideas/ideoms/algorithms/api's/tricks/hacks you get the picture - It's my version of pulp fiction - i'm sad i know.

Talking about old code - I've looked at a lot of the snippets on your site - and saved them - just in case. All old code will spark some new idea and gives impetus to anothe AHA!!! moment.

Anyway if anyone has Rob's email i'll send him an a email to see if he would open source it and maybe put a donate button there - I would certainly donate a few shekels site unseen.

Otherwise i'll wait for it to arrive on here :wink:

https://winworldpc.com/library

KIndest Regards Lagi

Lagi Pittas
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 365
Joined: Mon Jun 10, 2013 1:32 pm

Re: where can I download the Serendipity library

Post by Lagi Pittas » Thu Jun 01, 2017 11:04 am

Well thanks to Al, I have the passworded copy - Im sure I wouldn't use SDB as a database anyway - for what it is useful for to me - for say hundreds of unstructured/records I would quickly knock up something.

probably the "clever" coding is in the library but the un passworded stacks look more like hypercard than livecode (with the extra keywords).

It REminds me of software on my Apple ][ - move on nothing to see here - you were right Richard - in this instance. ;-)

Which brings something to mind a few of the the mark smith libraries were misnamed so on this site

http://marksmith.on-rev.com/revstuff/

You cant download id3 library and the audiofile info library

but if you go here

http://marksmith.on-rev.com/revstuff/files

They can all be downloaded. - what a bit of serendipity tagging /files on the end and it worked - ironic innit?


Regards Lagi

Post Reply

Return to “Off-Topic”