Re: [ANN] Organize - A daily task manager

2021-08-26 Thread Skip Kimpel via use-livecode
After seeing it, I will take credit for it :)

SKIP

On Thu, Aug 26, 2021 at 12:10 PM Mark Smith via use-livecode <
use-livecode@lists.runrev.com> wrote:

> Hi Martin, I’ll take the compliment (that was I, not Skip, who produced
> the app) 
>
> Your suggestion of having a switch to hide/show checked items on the main
> page is a good one, if I had more room. As it is, I’m pretty much cramming
> everything I can onto that page. The row menu could be an option but I’ve
> already got plans for unused real estate there. However, I'll add it to the
> list and keep thinking about it.
>
> All the best,
> Mark
>
>
> > On Aug 26, 2021, at 2:10 PM, Martin Koob via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >
> > Hi Skip
> >
> > The app looks great.  I will definitely download and try it once it is
> in the app store.
> >
> > A couple comments from your YouTube demo:
> >
> > First  I really like how you can create items by tapping in white space.
> It reduces the complexity of the interface.
> >
> > Second is a suggestion regarding the showing and hiding of checked items.
> >
> > You went to settings to do that.  I think that would be better if you
> could do that from the main interface, say with a toggle button for show
> and hide checked, or drop down “view” menu.
> >
> >   View
> >   Unchecked
> >   Checked
> >All
> >•••
> >
> > The ••• could be for the  ‘more…’ maybe that could open the settings or
> a dialog with other view options.
> >
> > Martin
> >
> >
> >> On Aug 26, 2021, at 7:48 AM, Skip Kimpel via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >>
> >> Thank you, Mark!
> >>
> >>> On Aug 26, 2021, at 5:55 AM, Mark Smith via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >>>
> >>> Hi Skip, I’ve sent you a direct link in email as well.
> >>>
> >>> Cheers,
> >>> Mark
> >>>
>  On Aug 26, 2021, at 1:13 AM, Skip Kimpel via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> 
>  Me as well!  Looks like a fantastic product.
> 
>  SKIP
> 
> >> On Aug 25, 2021, at 8:08 PM, Marc Siskin via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >
> > Mark,
> >
> > I would like to test your app.  I need an invitation code in order
> to do so.
> >
> > If you still have space, please send me a code directly to my e-mail.
> >
> > Thanks,
> > Marc Siskin
> > ---
> > Marc Siskin, Learning Engineer
> > Manager, Modern Language Resource Center
> > Carnegie Mellon University
> > msis...@andrew.cmu.edu
> >
> >
> >> On Aug 25, 2021, at 4:57 PM, Mark Smith via use-livecode <
> use-livecode@lists.runrev.com>
> wrote:
> >
> > I am very pleased to announce a wide-beta release of my first iOS
> app; Organize -- a daily to-do list manager. There is a demo on Youtube (
> https://youtu.be/LtQ5O1Qk80w ) and you can
> download and install the (final) beta version here... (
> https://testflight.apple.com/join/AysRGtVv <
> https://testflight.apple.com/join/AysRGtVv>). A really big thanks to
> everyone who has helped me along the way (you all know who you are!!). I
> would be delighted to have anyone interested kick the tires and provide
> feedback, advice and suggestions.
> >
> > Cheers,
> > Mark
> >
> > ___
> > use-livecode mailing list
> > use-livecode@lists.runrev.com
> > Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> > http://lists.runrev.com/mailman/listinfo/use-livecode
> >
> > ___
> > use-livecode mailing list
> > use-livecode@lists.runrev.com
> > Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> > http://lists.runrev.com/mailman/listinfo/use-livecode
> 
>  ___
>  use-livecode mailing list
>  use-livecode@lists.runrev.com
>  Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
>  http://lists.runrev.com/mailman/listinfo/use-livecode
> >>>
> >>>
> >>> ___
> >>> use-livecode mailing list
> >>> use-livecode@lists.runrev.com
> >>> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> >>> http://lists.runrev.com/mailman/listinfo/use-livecode
> >>
> >> ___
> >> use-livecode mailing list
> >> use-livecode@lists.runrev.com
> >> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> >> http://lists.runrev.com/mailman/listinfo/use-livecode
> >
> >
> > ___
> > use-livecode mailing 

AW: setting the dragImage under LC 9.6.3

2021-08-26 Thread Paul Dupuis via use-livecode

Panos,

Thank you. I should have searched the quality center, but knowing that 
it is a bug has just saved me from hours of debugging. So thanks for 
replying to my post.



On 8/26/2021 10:29 AM, panagiotis m via use-livecode wrote:

Hello all,

Yes, unfortunately the dragImage is broken on Windows:

https://quality.livecode.com/show_bug.cgi?id=21562

Kind regards,
Panos
--




___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [ANN] Organize - A daily task manager

2021-08-26 Thread Mark Smith via use-livecode
Hi Martin, I’ll take the compliment (that was I, not Skip, who produced the 
app) 

Your suggestion of having a switch to hide/show checked items on the main page 
is a good one, if I had more room. As it is, I’m pretty much cramming 
everything I can onto that page. The row menu could be an option but I’ve 
already got plans for unused real estate there. However, I'll add it to the 
list and keep thinking about it. 

All the best,
Mark


> On Aug 26, 2021, at 2:10 PM, Martin Koob via use-livecode 
>  wrote:
> 
> Hi Skip
> 
> The app looks great.  I will definitely download and try it once it is in the 
> app store.
> 
> A couple comments from your YouTube demo:
> 
> First  I really like how you can create items by tapping in white space. It 
> reduces the complexity of the interface.
> 
> Second is a suggestion regarding the showing and hiding of checked items.
> 
> You went to settings to do that.  I think that would be better if you could 
> do that from the main interface, say with a toggle button for show and hide 
> checked, or drop down “view” menu.
> 
>   View
>   Unchecked
>   Checked
>All
>•••
> 
> The ••• could be for the  ‘more…’ maybe that could open the settings or a 
> dialog with other view options.
> 
> Martin
> 
> 
>> On Aug 26, 2021, at 7:48 AM, Skip Kimpel via use-livecode 
>>  wrote:
>> 
>> Thank you, Mark!
>> 
>>> On Aug 26, 2021, at 5:55 AM, Mark Smith via use-livecode 
>>>  wrote:
>>> 
>>> Hi Skip, I’ve sent you a direct link in email as well. 
>>> 
>>> Cheers,
>>> Mark
>>> 
 On Aug 26, 2021, at 1:13 AM, Skip Kimpel via use-livecode 
  wrote:
 
 Me as well!  Looks like a fantastic product.
 
 SKIP
 
>> On Aug 25, 2021, at 8:08 PM, Marc Siskin via use-livecode 
>>  wrote:
> 
> Mark,
> 
> I would like to test your app.  I need an invitation code in order to do 
> so.
> 
> If you still have space, please send me a code directly to my e-mail.
> 
> Thanks,
> Marc Siskin
> ---
> Marc Siskin, Learning Engineer
> Manager, Modern Language Resource Center
> Carnegie Mellon University
> msis...@andrew.cmu.edu
> 
> 
>> On Aug 25, 2021, at 4:57 PM, Mark Smith via use-livecode 
>> mailto:use-livecode@lists.runrev.com>> 
>> wrote:
> 
> I am very pleased to announce a wide-beta release of my first iOS app; 
> Organize -- a daily to-do list manager. There is a demo on Youtube 
> (https://youtu.be/LtQ5O1Qk80w ) and you can 
> download and install the (final) beta version here... 
> (https://testflight.apple.com/join/AysRGtVv 
> ). A really big thanks to 
> everyone who has helped me along the way (you all know who you are!!). I 
> would be delighted to have anyone interested kick the tires and provide 
> feedback, advice and suggestions.
> 
> Cheers,
> Mark
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your 
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your 
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your 
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
>>> 
>>> 
>>> ___
>>> use-livecode mailing list
>>> use-livecode@lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your 
>>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> ___
>> use-livecode mailing list
>> use-livecode@lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:

Re: Accumulating text is *VERY* slow in LC9 on Windows

2021-08-26 Thread Ben Rubinstein via use-livecode

Thank you Mark!

Using a buffer indeed essentially solves the problem (at least for this 
example!).

Because I may have to use this in a bunch of places, I made my life easier by 
putting it in a command using variables passed by reference. Because I'm 
almost invariably appending a line at a time, and usually have a row counter 
going anyway, I'm deciding when to dump the buffer based on number of lines 
rather than length of the buffer (which may occasionally mean the buffer has 
to be resized up).


command appendRow tRow, @iRowCounter, @tBuffer, @tOutput
   put tRow & return after tBuffer
   add 1 to iRowCounter
   if (iRowCounter mod siBuffSize) = 0 then
  put tBuffer after tOutput
  if sbDeleteBuffer then
 delete codeunit 1 to -1 of tBuffer
  else
 put empty into tBuffer
  end if
   end if
end appendRow

I initially wrote this emptying the buffer just by putting empty into it. Then 
I borrowed your line of deleting the contents, which I presume makes it more 
likely to be retained in the heap.


In general inline is a bit faster than using the command; and deleting the 
code points of the buffer is a bit faster than emptying - but it's not 
completely clear cut. (This is one set of runs, not averaging repeated ones.)


  command command inline  inline
buffer size   empty   delete  empty   delete

  500 lines  33  31  29  29
 1500 lines  16  13   7  14
 2500 lines  14  10   7  11
 4000 lines  18  11   8   9
 5000 lines  19   7  11   9


(All times in seconds on Windows, LC 9.6.3.)

And given that not using a buffer takes 589 seconds, none of the above 
variations really matter!


So my remaining question for you Mark is this:
> P.S. This is an engine issue - we'll need to look into why there's such a
> difference with 6.7 - as, I'm pretty sure I kept the rules about extending
> buffers pretty much the same in string concatenation.

Do you have a sense of (a) how likely it is you'll have an "aha!" moment and 
(b) any idea of when you might have a chance to look at this. I'm just asking 
purely selfishly, because if it's soon I might get away without having to 
address my 5,000 line code jungle nightmare...!


Many thanks for this tip-off,

Ben


On 26/08/2021 12:23, Mark Waddingham via use-livecode wrote:

On 2021-08-25 18:15, Ben Rubinstein via use-livecode wrote:

I simplified it down to this (pointless) loop which just rebuilds a
table one line at a time:

   local tNewTable
   repeat for each line tRow in tWorkTable
  put tRow & return after tNewTable
   end repeat

with these results:

6.7.11 MacOS  8 seconds
6.7.11 Win32  7 seconds
9.6.3  MacOS  0 seconds
9.6.3  Win32    591 seconds


Using a buffer var should workaround the performance issue (which is related 
to the windows heap manager not being very good at continually re-extending a 
buffer):


on mouseUp
    local tLine
    repeat 256 times
   put "*" after tLine
    end repeat

    local tTime
    put the millisecs into tTime

    local tBuffer

    local tText
    repeat 257000 times
   put tLine & return after tBuffer
   if the number of codeunits in tBuffer > 50 then
  put tBuffer after tText
  delete codeunit 1 to -1 of tBuffer
   end if
    end repeat
    put tBuffer after tText
    answer (the number of codeunits in tText) & return & (the millisecs - tTime)
end mouseUp

In the original loop, tNewTable is continually extended internally, something 
which appears to cause O(n^2) performance on Windows.


In the revised loop, an intermediate buffer var is used which (after first 
time getting 'full') will have a backing store of 500k ish - meaning tText is 
extended much less often. (Playing with the value of 50 up or down will 
affect the resulting speed - there will always be a sweet spot).


On my Windows VM - the above loop (which generates about 68mb of text or so, 
takes about 3s.


Hope this helps!

Mark.

P.S. This is an engine issue - we'll need to look into why there's such a 
difference with 6.7 - as, I'm pretty sure I kept the rules about extending 
buffers pretty much the same in string concatenation.




___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Storing json - mergeJSON, textdecode and "\u00a0”

2021-08-26 Thread Keith Clarke via use-livecode
Not sure if it’s related but I had issues recently with processing JSON on Mac 
with PHP and attempts to force encoding/decoding of the JSON didn’t work. 

It was an encoding issue caused by the JSON strings being served into HTML 
pages that lacked an explicit UTF-8 tag. Adding '> replace "\u00a0” with empty in rJSON
> 
> While this is fixing the cases I have so far - I am not sure what the 
> underlying encoding issue is here. Its a unicode non-breaking-space - 
> https://www.fileformat.info/info/unicode/char/00a0/index.htm but I’m not sure 
> about the encoding and whether its valid utf8?
> 
> Bit stuck any thoughts?
> 
> Schedule a call with me
> On 15 Aug 2021, 11:46 +0100, David Bovill , wrote:
>> I’ve been historically a bit lazy in taking care of how I store json data - 
>> so mostly it works but some times I get a different result on the server 
>> than I do locally on OSX. I suspect this is due to encoding differences in 
>> how the data is stored and which characters are in the json. I’d like to 
>> standardise on utf8 encoded json as my text storage of choice, and use a 
>> standard way to store this while in Livecode I parse the json and just deal 
>> with arrays.
>> 
>> As I understand it I should really be using textEncode and textDecode() - 
>> and I should store the utf8 encoded json files using “binfile:” not “file:” 
>> - however this is not what the dictionary entry fo textEncode() illustrates:
>>> quote_type
>>> put textEncode(field "output","UTF-8") into tOutput
>>> put tOutput into url ("file:output.txt")
>> 
>> So if I want to implement best practice in storing utf8 encoded json locally 
>> on Mac, on mobile and on unix servers according to:
>>> quote_type
>>> The textEncode function takes text, and returns it as binary data, encoded 
>>> with the specified encoding.
>>> It is highly recommended that any time you interface with things outside 
>>> LiveCode (files, network sockets, processes, etc) that you explicitly 
>>> textEncode any text you send outside LiveCode and textDecode all text 
>>> received into LiveCode. If this doesnt happen, a platform-dependent 
>>> encoding will be used (which normally does not support Unicode text).
>> 
>> How should I do that? Should I not do something like this (in pseudocode):
>>> quote_type
>>> function fetchFromUrl jsonURL
>>>   put url someURL into utf8JSON
>>>   put textDecode(jsonURL, "UTF-8") into encodedJSON
>>>   put json_ToArray (encodedJSON) into someArray
>>>   return someArray
>>> end fetchFromUrl
>>> 
>>> command exportToUrl someArray, jsonURL
>>>   put json_FromArray (someArray) into encodedJSON
>>>   put textEncode(encodedJSON, "UTF-8") into decodedJSON
>>>   put decodedJSON into url someURL
>>> end exportToUrl
>> 
>> And. If so - should I be using “binfile:” or “file:” for writing to the file 
>> system?
>> 
>> Schedule a call with me
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: setting the dragImage under LC 9.6.3

2021-08-26 Thread panagiotis m via use-livecode
Hello all,

Yes, unfortunately the dragImage is broken on Windows:

https://quality.livecode.com/show_bug.cgi?id=21562

Kind regards,
Panos
--

On Thu, 26 Aug 2021 at 17:13, Craig Newman via use-livecode <
use-livecode@lists.runrev.com> wrote:

> Hi.
>
> I have done this sort of thing for decades, starting with HC. But I used
> an invisible field to “carry” the line of interest, not an image. I do not
> know if this will help your issue. If you need a description of that let me
> know.
>
> Craig
>
> > On Aug 25, 2021, at 5:36 PM, Paul Dupuis via use-livecode <
> use-livecode@lists.runrev.com> wrote:
> >
> > I have a situation I just noticed running under LC 9.6.3.
> >
> > I have a field where you can drag lines to drop on other specific lines.
> on dragStart, take a snapshot of the line just clicked and make set and
> existing image object to the image data of the snapshot.
> > i.e.
> >   put pText into fld "DragList"
> >   export snapshot from fld "DragList" to tImg as PNG
> >   put tImg into img "CodeBookDrag"
> >
> > I have check all this in the debugger. The field "DragList" has the text
> of the line clicked on at the start of the drag. The image "CodeBookDrag"
> is set to an image of the field containing the text - all is good
> >
> > In my dragStart handler, I have:
> >
> > set the dragImage to the id of image "CodeBookDrag" of this cd
> >
> > on macOS (Mojave), as I perform the drag, the cursor changes to the line
> of text image (YEA!)
> >
> > on Windows (same exact code) , the cursor remains a circle with a slash
> (default) when over a line that can not be dropped on and a plus icon over
> a lien that can be dropped on.
> >
> > This used to work cross-platform. The code is the same across macOS and
> Windows. Has anyone else seen an issue like this? is dragImage broken on
> Windows?
> >
> > ___
> > use-livecode mailing list
> > use-livecode@lists.runrev.com
> > Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> > http://lists.runrev.com/mailman/listinfo/use-livecode
>
>
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
>
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Storing json - mergeJSON, textdecode and "\u00a0”

2021-08-26 Thread David Bovill via use-livecode
An update on my flailing attempts to get a robust way to go Fromm arrays to 
json and back. Essentially the story is stuff that works on OSX fails now and 
then on the server - and I’m trying to track down why?

It’s an intermittent problem and hard to pinpoint as the json files have a lot 
of content -so finding a character that is causing the problem is not easy. My 
assumption is that this is an encoding issue - but attempts at using 
textDecode() are not helping.

I found one instance that was causing the array encoding to fail:
> quote_type
> put textDecode (utf8JSON, "UTF-8") into rJSON
> replace "\u00a0” with empty in rJSON

While this is fixing the cases I have so far - I am not sure what the 
underlying encoding issue is here. Its a unicode non-breaking-space - 
https://www.fileformat.info/info/unicode/char/00a0/index.htm but I’m not sure 
about the encoding and whether its valid utf8?

Bit stuck any thoughts?

    Schedule a call with me
On 15 Aug 2021, 11:46 +0100, David Bovill , wrote:
> I’ve been historically a bit lazy in taking care of how I store json data - 
> so mostly it works but some times I get a different result on the server than 
> I do locally on OSX. I suspect this is due to encoding differences in how the 
> data is stored and which characters are in the json. I’d like to standardise 
> on utf8 encoded json as my text storage of choice, and use a standard way to 
> store this while in Livecode I parse the json and just deal with arrays.
>
> As I understand it I should really be using textEncode and textDecode() - and 
> I should store the utf8 encoded json files using “binfile:” not “file:” - 
> however this is not what the dictionary entry fo textEncode() illustrates:
> > quote_type
> > put textEncode(field "output","UTF-8") into tOutput
> > put tOutput into url ("file:output.txt")
>
> So if I want to implement best practice in storing utf8 encoded json locally 
> on Mac, on mobile and on unix servers according to:
> > quote_type
> > The textEncode function takes text, and returns it as binary data, encoded 
> > with the specified encoding.
> > It is highly recommended that any time you interface with things outside 
> > LiveCode (files, network sockets, processes, etc) that you explicitly 
> > textEncode any text you send outside LiveCode and textDecode all text 
> > received into LiveCode. If this doesnt happen, a platform-dependent 
> > encoding will be used (which normally does not support Unicode text).
>
> How should I do that? Should I not do something like this (in pseudocode):
> > quote_type
> > function fetchFromUrl jsonURL
> >   put url someURL into utf8JSON
> >   put textDecode(jsonURL, "UTF-8") into encodedJSON
> >   put json_ToArray (encodedJSON) into someArray
> >   return someArray
> > end fetchFromUrl
> >
> > command exportToUrl someArray, jsonURL
> >   put json_FromArray (someArray) into encodedJSON
> >   put textEncode(encodedJSON, "UTF-8") into decodedJSON
> >   put decodedJSON into url someURL
> > end exportToUrl
>
> And. If so - should I be using “binfile:” or “file:” for writing to the file 
> system?
>
>     Schedule a call with me
___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: setting the dragImage under LC 9.6.3

2021-08-26 Thread Craig Newman via use-livecode
Hi.

I have done this sort of thing for decades, starting with HC. But I used an 
invisible field to “carry” the line of interest, not an image. I do not know if 
this will help your issue. If you need a description of that let me know.

Craig

> On Aug 25, 2021, at 5:36 PM, Paul Dupuis via use-livecode 
>  wrote:
> 
> I have a situation I just noticed running under LC 9.6.3.
> 
> I have a field where you can drag lines to drop on other specific lines. on 
> dragStart, take a snapshot of the line just clicked and make set and existing 
> image object to the image data of the snapshot.
> i.e.
>   put pText into fld "DragList"
>   export snapshot from fld "DragList" to tImg as PNG
>   put tImg into img "CodeBookDrag"
> 
> I have check all this in the debugger. The field "DragList" has the text of 
> the line clicked on at the start of the drag. The image "CodeBookDrag" is set 
> to an image of the field containing the text - all is good
> 
> In my dragStart handler, I have:
> 
> set the dragImage to the id of image "CodeBookDrag" of this cd
> 
> on macOS (Mojave), as I perform the drag, the cursor changes to the line of 
> text image (YEA!)
> 
> on Windows (same exact code) , the cursor remains a circle with a slash 
> (default) when over a line that can not be dropped on and a plus icon over a 
> lien that can be dropped on.
> 
> This used to work cross-platform. The code is the same across macOS and 
> Windows. Has anyone else seen an issue like this? is dragImage broken on 
> Windows?
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [ANN] Organize - A daily task manager

2021-08-26 Thread Martin Koob via use-livecode
Hi Skip

The app looks great.  I will definitely download and try it once it is in the 
app store.

A couple comments from your YouTube demo:

First  I really like how you can create items by tapping in white space. It 
reduces the complexity of the interface.

Second is a suggestion regarding the showing and hiding of checked items.

You went to settings to do that.  I think that would be better if you could do 
that from the main interface, say with a toggle button for show and hide 
checked, or drop down “view” menu.

   View
Unchecked
Checked
All
•••

The ••• could be for the  ‘more…’ maybe that could open the settings or a 
dialog with other view options.

Martin


> On Aug 26, 2021, at 7:48 AM, Skip Kimpel via use-livecode 
>  wrote:
> 
> Thank you, Mark!
> 
>> On Aug 26, 2021, at 5:55 AM, Mark Smith via use-livecode 
>>  wrote:
>> 
>> Hi Skip, I’ve sent you a direct link in email as well. 
>> 
>> Cheers,
>> Mark
>> 
>>> On Aug 26, 2021, at 1:13 AM, Skip Kimpel via use-livecode 
>>>  wrote:
>>> 
>>> Me as well!  Looks like a fantastic product.
>>> 
>>> SKIP
>>> 
> On Aug 25, 2021, at 8:08 PM, Marc Siskin via use-livecode 
>  wrote:
 
 Mark,
 
 I would like to test your app.  I need an invitation code in order to do 
 so.
 
 If you still have space, please send me a code directly to my e-mail.
 
 Thanks,
 Marc Siskin
 ---
 Marc Siskin, Learning Engineer
 Manager, Modern Language Resource Center
 Carnegie Mellon University
 msis...@andrew.cmu.edu
 
 
> On Aug 25, 2021, at 4:57 PM, Mark Smith via use-livecode 
> mailto:use-livecode@lists.runrev.com>> 
> wrote:
 
 I am very pleased to announce a wide-beta release of my first iOS app; 
 Organize -- a daily to-do list manager. There is a demo on Youtube 
 (https://youtu.be/LtQ5O1Qk80w ) and you can 
 download and install the (final) beta version here... 
 (https://testflight.apple.com/join/AysRGtVv 
 ). A really big thanks to 
 everyone who has helped me along the way (you all know who you are!!). I 
 would be delighted to have anyone interested kick the tires and provide 
 feedback, advice and suggestions.
 
 Cheers,
 Mark
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your 
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
 
 ___
 use-livecode mailing list
 use-livecode@lists.runrev.com
 Please visit this url to subscribe, unsubscribe and manage your 
 subscription preferences:
 http://lists.runrev.com/mailman/listinfo/use-livecode
>>> 
>>> ___
>>> use-livecode mailing list
>>> use-livecode@lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your 
>>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> 
>> ___
>> use-livecode mailing list
>> use-livecode@lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [ANN] Organize - A daily task manager

2021-08-26 Thread Skip Kimpel via use-livecode
Thank you, Mark!

> On Aug 26, 2021, at 5:55 AM, Mark Smith via use-livecode 
>  wrote:
> 
> Hi Skip, I’ve sent you a direct link in email as well. 
> 
> Cheers,
> Mark
> 
>> On Aug 26, 2021, at 1:13 AM, Skip Kimpel via use-livecode 
>>  wrote:
>> 
>> Me as well!  Looks like a fantastic product.
>> 
>> SKIP
>> 
 On Aug 25, 2021, at 8:08 PM, Marc Siskin via use-livecode 
  wrote:
>>> 
>>> Mark,
>>> 
>>> I would like to test your app.  I need an invitation code in order to do so.
>>> 
>>> If you still have space, please send me a code directly to my e-mail.
>>> 
>>> Thanks,
>>> Marc Siskin
>>> ---
>>> Marc Siskin, Learning Engineer
>>> Manager, Modern Language Resource Center
>>> Carnegie Mellon University
>>> msis...@andrew.cmu.edu
>>> 
>>> 
 On Aug 25, 2021, at 4:57 PM, Mark Smith via use-livecode 
 mailto:use-livecode@lists.runrev.com>> 
 wrote:
>>> 
>>> I am very pleased to announce a wide-beta release of my first iOS app; 
>>> Organize -- a daily to-do list manager. There is a demo on Youtube 
>>> (https://youtu.be/LtQ5O1Qk80w ) and you can 
>>> download and install the (final) beta version here... 
>>> (https://testflight.apple.com/join/AysRGtVv 
>>> ). A really big thanks to 
>>> everyone who has helped me along the way (you all know who you are!!). I 
>>> would be delighted to have anyone interested kick the tires and provide 
>>> feedback, advice and suggestions.
>>> 
>>> Cheers,
>>> Mark
>>> 
>>> ___
>>> use-livecode mailing list
>>> use-livecode@lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your 
>>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>>> 
>>> ___
>>> use-livecode mailing list
>>> use-livecode@lists.runrev.com
>>> Please visit this url to subscribe, unsubscribe and manage your 
>>> subscription preferences:
>>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> ___
>> use-livecode mailing list
>> use-livecode@lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Accumulating text is *VERY* slow in LC9 on Windows

2021-08-26 Thread Mark Waddingham via use-livecode

On 2021-08-25 18:15, Ben Rubinstein via use-livecode wrote:

I simplified it down to this (pointless) loop which just rebuilds a
table one line at a time:

   local tNewTable
   repeat for each line tRow in tWorkTable
  put tRow & return after tNewTable
   end repeat

with these results:

6.7.11 MacOS  8 seconds
6.7.11 Win32  7 seconds
9.6.3  MacOS  0 seconds
9.6.3  Win32591 seconds


Using a buffer var should workaround the performance issue (which is 
related to the windows heap manager not being very good at continually 
re-extending a buffer):


on mouseUp
   local tLine
   repeat 256 times
  put "*" after tLine
   end repeat

   local tTime
   put the millisecs into tTime

   local tBuffer

   local tText
   repeat 257000 times
  put tLine & return after tBuffer
  if the number of codeunits in tBuffer > 50 then
 put tBuffer after tText
 delete codeunit 1 to -1 of tBuffer
  end if
   end repeat
   put tBuffer after tText
   answer (the number of codeunits in tText) & return & (the millisecs - 
tTime)

end mouseUp

In the original loop, tNewTable is continually extended internally, 
something which appears to cause O(n^2) performance on Windows.


In the revised loop, an intermediate buffer var is used which (after 
first time getting 'full') will have a backing store of 500k ish - 
meaning tText is extended much less often. (Playing with the value of 
50 up or down will affect the resulting speed - there will always be 
a sweet spot).


On my Windows VM - the above loop (which generates about 68mb of text or 
so, takes about 3s.


Hope this helps!

Mark.

P.S. This is an engine issue - we'll need to look into why there's such 
a difference with 6.7 - as, I'm pretty sure I kept the rules about 
extending buffers pretty much the same in string concatenation.


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

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [ANN] Organize - A daily task manager

2021-08-26 Thread Mark Smith via use-livecode
Hi Alex,

Where are you stuck? There are many steps in the process and I too found many 
of them confusing. Luckily I had some help so I am happy to pass along what 
I’ve learned (also, many others will have answers to your questions). 

See below for my specific responses… happy to take them here if it doesn’t 
violate any list rules. 

> On Aug 26, 2021, at 1:16 AM, Alex Tweedly via use-livecode 
>  wrote:
> 
> Hi Mark,
> 
> Looks great. I'm impressed - and inspired to have another try at getting past 
> the hurdles and making an iOS app :-)
> Any suggestions on how to get started would be welcome.
> 
> I'm not sure if I should send comments/suggestions directly to you, or to 
> start on the list to encourage discussion. I'll start here for now.
> 
> 1. (Always my first question :-)  Can I export the data if I want to move to 
> another app ?
> Or import ? (e.g. CSV, ...)

Not at present, but I’ll add that to the list.

> 
> 2. Is there a "move un-completed items to the next day" (i.e. to make it more 
> like a traditional to-do list manager) ?

At the moment you would have to do that item by item (i.e. no batch move 
option… I’ve added that to the suggestion list as well :)

> 
> 3. Blank items ?  From around 40sec - 1:10 sec there is a 'blank' item left 
> on the screen while you do other things. Does it stay forever, or disappear 
> if you move to another section ?

In general, blank lines are not saved to the DB. You can see this in action 
between 1:10 - 1:15 when I leave to go to the Settings page and then return 
again. The blank line is gone. If you add text to a line, save it (most any 
action will save it), then remove the text from the line the program treats the 
update like any other update and will save it as blank. Of course you can 
manually remove it later if you want.

> 
> 4. Your "left arrow' menu. Shouldn't that be (i.e. wouldn't iOS users expect 
> that to be) a left-swipe to bring up the menu ?

Good catch. I used “open” text fields (like any standard LC text entry field) 
instead of the "Edit Field” concept provided with the DG. This was for several 
reasons but in general I found it made it easier to enter/edit text. However, 
you cannot swipe across an “open” text field since it just inserts the cursor. 
Some other mechanism had to be found and this seems to be a reasonable 
alternative. At least for this application I am happy with the choice and hope 
others are as well. Time will tell :) 

> 
> Thanks 
> 
> Alex.
> 
> On 25/08/2021 21:57, Mark Smith via use-livecode wrote:
>> I am very pleased to announce a wide-beta release of my first iOS app; 
>> Organize -- a daily to-do list manager. There is a demo on Youtube 
>> (https://youtu.be/LtQ5O1Qk80w ) and you can 
>> download and install the (final) beta version here... 
>> (https://testflight.apple.com/join/AysRGtVv 
>> ). A really big thanks to 
>> everyone who has helped me along the way (you all know who you are!!). I 
>> would be delighted to have anyone interested kick the tires and provide 
>> feedback, advice and suggestions.
>> 
>> Cheers,
>> Mark
>> 
>> ___
>> use-livecode mailing list
>> use-livecode@lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [ANN] Organize - A daily task manager

2021-08-26 Thread Mark Smith via use-livecode
Hi Skip, I’ve sent you a direct link in email as well. 

Cheers,
Mark

> On Aug 26, 2021, at 1:13 AM, Skip Kimpel via use-livecode 
>  wrote:
> 
> Me as well!  Looks like a fantastic product.
> 
> SKIP
> 
>> On Aug 25, 2021, at 8:08 PM, Marc Siskin via use-livecode 
>>  wrote:
>> 
>> Mark,
>> 
>> I would like to test your app.  I need an invitation code in order to do so.
>> 
>> If you still have space, please send me a code directly to my e-mail.
>> 
>> Thanks,
>> Marc Siskin
>> ---
>> Marc Siskin, Learning Engineer
>> Manager, Modern Language Resource Center
>> Carnegie Mellon University
>> msis...@andrew.cmu.edu
>> 
>> 
>> On Aug 25, 2021, at 4:57 PM, Mark Smith via use-livecode 
>> mailto:use-livecode@lists.runrev.com>> wrote:
>> 
>> I am very pleased to announce a wide-beta release of my first iOS app; 
>> Organize -- a daily to-do list manager. There is a demo on Youtube 
>> (https://youtu.be/LtQ5O1Qk80w ) and you can 
>> download and install the (final) beta version here... 
>> (https://testflight.apple.com/join/AysRGtVv 
>> ). A really big thanks to 
>> everyone who has helped me along the way (you all know who you are!!). I 
>> would be delighted to have anyone interested kick the tires and provide 
>> feedback, advice and suggestions.
>> 
>> Cheers,
>> Mark
>> 
>> ___
>> use-livecode mailing list
>> use-livecode@lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>> 
>> ___
>> use-livecode mailing list
>> use-livecode@lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: [ANN] Organize - A daily task manager

2021-08-26 Thread Mark Smith via use-livecode
Hi Marc, 

Please give the link another try… it seems the first time you click it just 
installs TestFlight. I think the 2nd time will let you install the app. I have 
tried on a bunch of different phones and I’ve seen at least 3 different UI’s, 
so its definitely a bit confusing to navigate. I’ll also send you a direct 
email request which should fix the problem, but I would also be interested in 
knowing if a 2nd click on the link works too. 

Mark


> On Aug 26, 2021, at 1:07 AM, Marc Siskin via use-livecode 
>  wrote:
> 
> Mark,
> 
> I would like to test your app.  I need an invitation code in order to do so.
> 
> If you still have space, please send me a code directly to my e-mail.
> 
> Thanks,
> Marc Siskin
> ---
> Marc Siskin, Learning Engineer
> Manager, Modern Language Resource Center
> Carnegie Mellon University
> msis...@andrew.cmu.edu
> 
> 
> On Aug 25, 2021, at 4:57 PM, Mark Smith via use-livecode 
> mailto:use-livecode@lists.runrev.com>> wrote:
> 
> I am very pleased to announce a wide-beta release of my first iOS app; 
> Organize -- a daily to-do list manager. There is a demo on Youtube 
> (https://youtu.be/LtQ5O1Qk80w ) and you can 
> download and install the (final) beta version here... 
> (https://testflight.apple.com/join/AysRGtVv 
> ). A really big thanks to 
> everyone who has helped me along the way (you all know who you are!!). I 
> would be delighted to have anyone interested kick the tires and provide 
> feedback, advice and suggestions.
> 
> Cheers,
> Mark
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> ___
> use-livecode mailing list
> use-livecode@lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription 
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Accumulating text is *VERY* slow in LC9 on Windows

2021-08-26 Thread Ben Rubinstein via use-livecode

Thanks Curry.

In fact (apologies I didn't make this clear in my already too-long email) it 
really is just the accumulating of text, at least in this instance, that's the 
issue. After I added a test on each extracted (i.e. looped over) line to see 
if it was "strictly a binary string", and counting the results; but then 
commented out the line that appended the text, the loop completed in a second 
or less. Uncommenting the line put it back to 8 minutes or so.


So of your items below, it really is just item 3.

The difference between the Mac and Windows machines I happened to be using 
isn't really relevant. The point is that on one Windows machine, running the 
same script in LC9 is about 50 times slower than the same script on the same 
machine in LC6. On a given Mac machine, it's many times faster in LC9 than 
LC6. Something is awry on Windows.


BUT - I've only tested on one Windows machine, that's all I've got access to 
at the moment. So if anyone has a chance to see if they get similar results, 
that would be very helpful.


Ben

On 26/08/2021 02:27, Curry Kenworthy via use-livecode wrote:


Ben:

 > But the key thing is: for this task, LC9 is
 > dramatically slower on Windows!)
 > Have others seen something like this?

Generally: Yep, I've seen plenty of slowdowns.
On both Windows and Mac, depending on the task.

Specifically: I'd like to test this later;
still recovering from two back-to-back illnesses.

Suggestion: although your code may look short,
you're potentially testing up to 5 different issues:

1. Loop speed
2. Text line parse speed
3. Text concat speed
4. Variable/memory speed
5. Mac to Win text

It would be good to narrow your test
and see which area has the biggest impact,
or eliminate some of those possible factors.

Best wishes,

Curry Kenworthy

Custom Software Development
"Better Methods, Better Results"
LiveCode Training and Consulting
http://livecodeconsulting.com/

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:

http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode


Re: Accumulating text is *VERY* slow in LC9 on Windows

2021-08-26 Thread Ben Rubinstein via use-livecode

Hi Alex,

Thanks for responding. It's an interesting idea and I may have to try it.

But I've got 5,000 lines of script that has evolved over 20 years, so I really 
don't want to have to rewrite it all! It seems to me that there is an 
identifiable problem here; something that is happening on (at least one) 
Windows machine, which was fine under LC6 but is broken under LC9; whereas on 
Mac it's not the case.


My hope is that there is some simple solution to fix this!

Ben

On 25/08/2021 19:48, Alex Tweedly via use-livecode wrote:

Crazy idea - totally untried  (sorry, I don't have a Win machine)


   put 1 into tLineCount
   repeat for each line tRow in tWorkTable
   put tRow into tNewTable[tLineCount]
       add 1 to tLineCount
   end repeat
   combine tNewTable using CR

Alex.


On 25/08/2021 18:15, Ben Rubinstein via use-livecode wrote:


Some 20 months ago, I reported that I was in a situation where an app 
written in 6.7 needed to be updated to access 64bit drivers, which meant 
updating to 9.5 - which displayed horrifying increase in processing time.


In fact I was able to put off the evil day - but now it has returned, and 
can be put off no longer. A process that normally takes 2 hours is currently 
taking 9. The core processing stage has gone from around ten minutes to over 
six hours.


After way too long, I've finally got down to at least one smoking gun; which 
is as simple as can be.


Part of what took me so long is a confusion; in production the process runs 
on Windows, but I develop on Mac. Although on Mac the overall process does 
take about a third longer in LC9 than LC6, the simple tests I've finally 
isolated actually run much _quicker_ in LC9 than LC6. So switching between 
LC6 and LC9 on Mac as I tried to isolate the issue was giving confusing 
signals. But unmistakeably it's *much* slower on Windows.


A simple routine which loops over a load of tab and return formatted data 
loaded from a TSV file, to truncate a particular field, had the following 
results processing a 70MB file of approximately 257,000 rows:


6.7.11 MacOS  9 seconds
6.7.11 Win32 10 seconds
9.6.3  MacOS  2 seconds
9.6.3  Win32    498 seconds

I simplified it down to this (pointless) loop which just rebuilds a table 
one line at a time:


   local tNewTable
   repeat for each line tRow in tWorkTable
  put tRow & return after tNewTable
   end repeat

with these results:

6.7.11 MacOS  8 seconds
6.7.11 Win32  7 seconds
9.6.3  MacOS  0 seconds
9.6.3  Win32    591 seconds

(there's obviously a lot of variability in these - both were running in IDE, 
on a logged-in computer, so stuff was probably going on in the background; 
but I know the overall effect is similar when built as standalone and 
running by schedule on an unattended machine. But the key thing is: for this 
task, LC9 is dramatically slower on Windows!)


Have others seen something like this?

When I posted about this before (thread: "OMG text processing performance 
6.7 - 9.5") Mark Waddingham suggested that it might be to do with a hidden 
cost of binary<->text transforms. That makes some sense; but given that the 
text already exists, I'm wondering whether taking a line out of text would 
cause it to be transformed, only to be transformed again when appending? And 
in particular, why this would affect Windows only.


I have also added tests using "is strictly a binary string" in the code 
above, and this was true for neither input 'tWorkTable', nor the output 
'tNewTable', nor any of the 257,00 extracted lines.


However it is definitely the accumulating of text that is the issue - simply 
looping over the lines - even with testing each one to see if it is 
"strictly a binary string" - is a second or less on Windows in LC9.


Has anyone had similar experiences? Suggestions for how this could be avoided?

Many thanks in advance,

Ben

___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:

http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:

http://lists.runrev.com/mailman/listinfo/use-livecode


___
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode