Xojo project, Binary, or XML?

  1. 5 weeks ago

    olivier v

    Sep 14 Pre-Release Testers, Xojo Pro Europe (France)

    Hi all!

    I have a pro license and I work alone on Mac for web projects. What is the best project format (xojo project, binary, or xml) in your opinion? In particular in terms of speed (project opening, compilation, execution) and reliability.

  2. Kem T

    Sep 14 Pre-Release Testers, Xojo Pro, XDC Speakers Connecticut

    Text files to use with version control. The rest of the criteria are irrelevant and probably makes no difference.

    In my opinion.

  3. Emile S

    Sep 14 Europe (France, Strasbourg)

    Do not set a 1024 x 1024 Application Icon (better, remove the default ones).

    It will be time to set these iconsonce the application is done.

  4. Douglas H

    Sep 14 Pre-Release Testers, Xojo Pro

    And just because you work alone, don't make the mistake of thinking version control is not still useful. It is amazingly useful even for a single developer like most of my projects. There are various schools of thought, but if not familiar with any of them (which I am guessing is the case since you asked about potentially storing in binary format), then my personal recommendation is GIT.

    A very useful pro guide to using Git is here . There are tons of resources on the web devoted to GIT if you do some simple searches.

  5. Rick A

    Sep 14 Pre-Release Testers (Brazil. GMT-3:00)

    I like to keep a binary copy, because I had loss of content with the text version in the past.

  6. Dave S

    Sep 14 San Diego, California USA

    LOL... I like to keep an XML(text) copy because I had file corruption with the binary version in the past

  7. Beatrix W

    Sep 14 Pre-Release Testers, Third Party Store Europe (Germany)

    I find the text format not very useful. Most of my code lives in multiple projects and there is no good way to handle this with text format. XML with external items works fine. For the speed I haven't seen a difference between binary and XML - as long as you save your icons externally.

  8. Douglas H

    Sep 14 Pre-Release Testers, Xojo Pro

    @Rick Araujo: was your previous loss experience with GIT or with another version control system. With GIT, it seems nearly impossible to actually lose anything unintentionally. By design, unlike other VCS systems, it never stores just deltas of files. It stores the exact contents of each file in its database, but internally references by a SHA-1 hash of the contents so that you can even rename or move a file between folders and it still tracks it perfectly.

    Take a look at the explanation here

  9. Emile S

    Sep 14 Europe (France, Strasbourg)

    I was happy (years ago) to have a pdf print of a 2 days old project. It allows me to rebuild the project based on a far older surviving project. (And if I didn't had this one, I would build a brand new one with the pdf, but this wuld take much more time (because of the lost images for example).

    The error above was mine. :(

  10. Rick A

    Sep 14 Pre-Release Testers (Brazil. GMT-3:00)
    Edited 5 weeks ago

    @Douglas H was your previous loss experience with GIT or with another version control system?

    Nope. Was a Xojo bug. Norman explained that the binary code is an "exact image" of the Xojo internals, easy in/out without missing parts; the XML is the same content exposed as text (just a read the structures, translate them as text, write them out, and the opposed when reading them in); and the pure TEXT save have much more interaction, processing and formatting of the content (out and in), so binary saves have no secrets when Xojo changes internal things, those things are saved; XML rarely could have issues; but... bugs can be introduced to the "pure text" if they forget something out or miss something in the "translation". Seems that that happened.

  11. Rick A

    Sep 14 Pre-Release Testers (Brazil. GMT-3:00)

    So the more reliable formats are Binary and XML.

  12. Norman P

    Sep 14 Pre-Release Testers, Xojo Pro great-white-software.com/blog

    none of the formats should have any more or less "internal secrets"
    none is a memory dump

    text is, imho, the most useful since there are things that now you have a VERY difficult time dealing with in binary or XML
    Feedback Case #56260

  13. Douglas H

    Sep 14 Pre-Release Testers, Xojo Pro

    @Rick A Nope. Was a Xojo bug.

    I misinterpreted the previous comment to mean the loss was due to the version control system, not Xojo.

    So I understand now where you are coming from, but unlike the binary format, if Xojo did mess up a project save in text format, a version control system can still easily show you EXACTLY what is different between files, and you can still easily go back to a prior commit and pick and choose what changes to merge into a new branch or version. So I'll stand by my assertion that using source control is better than not doing so -- even for a single developer -- and that the text format is the easiest way to do that.

    And yes, I understand Arbed can make it possible to do with XML, and you can even "version control" binary files but doing so with binary files is mostly an easier way to go back to a prior commit to make a hot fix or something. Then you can't easily merge those with a develop branch. But it is perhaps better than reverting to Time Machine versions or something.

  14. Tim S

    Sep 14 Canterbury, UK

    @Norman P Feedback Case #56260

    Any movement on this one since July?

  15. Tim J

    Sep 14 Pre-Release Testers, Xojo Pro Dehydrating in AZ

    Because I am heavily dependent on SVN and CVS for my company's code (literally millions of lines in C, ASM, TCL, Python, Java, Xojo, Shell, PowerShell, and Mathmatica) over 32 years of coding history, the text format is the only way that I maintain things.

    There have been moments in the past where I've saved as Binary, loaded that save into a new version of the IDE, and the re-saved as text to sort out some of the issues mentioned above, but text is my go-to for long saving of projects.

  16. Rick A

    Sep 14 Pre-Release Testers (Brazil. GMT-3:00)
    Edited 5 weeks ago

    @Norman P text is, imho, the most useful

    I agree. I just have my trust in it hurt. So that's why a keep binaries as a backup plan and save open text copies for version control.

    To be true, for me, Xojo should give up on "alternative" formats and go all open text. That would ensure the proper fine care to the format and just one point of failure.

    The older formats should be only "read only" for conversion for some time, and even this should be abandoned in the future, like 5 to 10 years in the future, and having a separated conversion tool available for historic reasons.

    @Douglas H if Xojo did mess up a project save in text format, a version control system can still easily show you...

    1. I just don't accept "saving messed" because of bugs. Sometimes you just noticed that something had gone very wrong starting when you saved the v3.4.2324 when you reached v5.8.6534 (like having lost properties and their values and using defaults messing things, or getting null pointers, or things losing positions or changing colors, and who knows what more in not very noticeable parts of the system) and you don't know what, and when, things started to be messed or even what Xojo versions did that. Comparing the two last versions wont help you after a large cascade of mess.

    2. I was replying on topic. VCS wasn't part of the discussion.

  17. Norman P

    Sep 14 Pre-Release Testers, Xojo Pro great-white-software.com/blog

    @Tim S Any movement on this one since July?

    No idea
    I dont work there any more

  18. 4 weeks ago

    olivier v

    Sep 24 Pre-Release Testers, Xojo Pro Europe (France)

    Sorry, sorry for the delay and thank you very much for all your answers!

    I was asking this question because I've been having unexplained slowdowns in my web app for a while now, in debug mode on Mac. After doing a lot of tests and research, I found the problem: it was simply the system.log (or debugLog) sometimes used too often in a method sequence (via a thread or not)!

  19. Markus R

    Sep 24 Pre-Release Testers, Xojo Pro Europe / Germany

    i work also alone and the useful thing is send to zip and put it into cloud. just that nothing get lost anyhow.
    i use also a cheap backup software and save my whole developer drive from time to time.
    i think binary is much faster than xml.
    this argument for comparing xml files, you can also save it to xml at need and compare it with a tool.
    i try always to move forward because if u step back and use a older save state u lost days of unique work.
    if something get lost than likely because git auto migration and team work.

  20. Newer ›

or Sign Up to reply!