Kickstarter 2013 Revisited

Mark Waddingham mark at livecode.com
Sun May 10 13:21:21 EDT 2015


> I have taken quite some time to write this, and the reason that I have
> taken the trouble is that, oddly enough, I both believe in Runtime
> Revolution, and have put a very significant amount of time and effort
> into learning how to get the thing to do things over the last 14
> years.
> 
> Had I come to it just before the Open Source Kickstarter campaign I
> don't think I would have bothered, and I don't think I would be
> working
> with LiveCode just now.

I appreciate the time you have taken - and, indeed, I appreciate your 
ongoing support (which you clearly still give unconditionally it seems, 
even though you are perhaps not entirely enamoured with the way we go 
about things!).

Indeed, the fact you have taken this time suggests that we (from the 
technical point of view) have failed to a certain degree to communicate 
adequately what we are doing and the path we are taking to achieve it.

I'm not going to go into specific details or responses to your direct 
questions just now as that would take longer than I perhaps have on an 
idle Sunday evening whilst my other half is working - but there is 
obviously a communication issue here we need to address and we will in 
time.

In the meantime, however, please believe me when I say that no 
KickStarter goals have been forgotten - they are just taking longer to 
achieve than we had originally hoped. Indeed, in the process of 
attempting to achieve them we did decide to go down a slightly different 
route than we had originally intended.

The reality is that the scope of what LiveCode is, and indeed we want it 
to be, is so wide that the current rift between engine and script cannot 
continue if we are to keep up with the pace of evolution of the software 
industry. We have an engine written in what I would term C++ish (the 
codebase goes back 25 years or so at this point), and we have an IDE 
written in what we term LiveCode Script (LCS). C++ is not a forgiving 
task-master and in reality if you are using LiveCode you are probably 
doing so to avoid using C++ or other lower-level languages to a certain 
degree.

Therefore, as a result, we are in a situation where the people who 
perhaps would be best to help evolve the platform find it difficult to 
do so having to rely on those who have C++ abilities (and, indeed, 
understand how the engine works!). This disconnect directly reflects the 
more fundamental problem which LiveCode is intended to solve - 'Everyone 
Can Code' is an ambitious goal, certainly, but the way by which it works 
is having a high-level system which is tailored towards individual 
domains (black-boxes tied together with a flexible language for 
composing and expressing algorithms that act on them).

The solution we came up with is widgets. We are trying to raise the 
level at which the majority of what you currently consider to be 'the 
engine' is written so that there isn't that rather large chasm between 
the way the the functionality you use everyday is written and the 
functionality you build atop it. By raising the level of language in 
which 'the engine' is written, we both gain rapidity of development for 
ourselves, but also (perhaps more importantly) raise the ability of the 
LiveCode community as a whole to introspect on and also adapt and 
improve what we do.

Of course, I say 'try' here - but there is no try. It works, it really 
does work. Even in its nascent form LCB is proving to be a highly useful 
and productive way to implement the things people really need and it can 
only get better as we iterate on its feature-set and its gradual 
unification with LiveCode Script.

-- 
Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/
LiveCode: Everyone can create apps




More information about the use-livecode mailing list