13 Replies Latest reply on Sep 16, 2013 4:29 AM by Gustavo Del Vechio

    Expose or not the JavaScript code for the public?

    Gustavo Del Vechio Level 3

      Hi friends

       

      I´m planning to develop some public JavaScript scripts for Illustrator, Photoshop and InDesign.

       

      I perceived ESToolkit has a command that´s able to transform the code into a JavaScript Binary file. This is used if you want to share your script but do not want to expose and allow others to read or change your code. What do you think about it? Do you use it?

       

      My first idea was to share my public scripts as a normal JSX file..code exposed..anyone could modify. When you share your scripts, do you care about exposing your code? Or it´s a good idea to share using this Binary file?

       

      What do you advice?

       

      Thank you for the tips

      Gustavo.

        • 1. Re: Expose or not the JavaScript code for the public?
          Pedro Cortez Marques Level 3

          Hi Gustavo,

           

          I had in the past this doubt too, and I did send some binary scripts to some people and teams 2 years ago.

           

          After a an 3/4 months with intense usage - on windows7 - some of the binary scripts just started giving errors to the people and when I received them back I didn't find why. Aparently they were like the originals but the system wasn't reading them the same way.

          The solution was to save them again e send again to the team/people.

          After a while the same. I did gave up sending binary files.

           

          I think the open-source for me works well and I just don't give public access to all my scripts but to only a bunch of snippets that can be included on open-source code.

          I would be necessary to spend lots of time transposing my inner scripts and adapting to the public. That's not my work. I work for my team.

          But there is also a 'must': to share my script improvements help the adobe community going further where many people thought it would be almost impossible.

          The lack of boundaries is the reason for open-souce code and the immagination is its limit.

           

          In case you want to use binary files the same, my advice would be to put only one central script in binary with all tha major functions on it. Then the others scripts (not binary) should be needing this central binary one to get the returns of the functions just loding them with $.evalFile("*.jsxbin").

          • 2. Re: Expose or not the JavaScript code for the public?
            Michael L Hale Level 5

            I am not sure how binary encoding works with the current versions. But at one time you had to make sure that you encoded the script using the oldest version of ESTK you script supports. In other words if your script supports CS3 you have to encode using the ESTK that shipped with CS3. A file encoded with CS4 would not run in CS3. Other than that version issue I have not heard of any trouble using jsxbin files.

             

            I think open source is better but that is a personal choice.

            • 3. Re: Expose or not the JavaScript code for the public?
              JJMack Most Valuable Participant

              If I download a script and its saved in  binary I delete it immediately even if its free.  I can learn nothing from it, can not fix it if there a bug, can not change it to meet my needs.  I do not like to run something in Photoshop that I can not see how it does what it does. The only plug-in I have always installed is neatimage. Have tried a few plug-ins but deleted them all except neatimage. I use Scripts and Actions and that Plug-ins the are part of Photoshop.

               

              With every update Adobe been making lately they seem to add bugs and Adobe does not fix many reported bugs. Now there is CC where you must subscribe. I have not so far and I worry if I do can I install versions of cc with just the update that are good and provide value. For  I want the latest ACR for its where the best improvements for Photoshop are. Will a less then fully updated Photoshop CC continue to work for paying customers? Can I have several version of CC installed in a single install of an OS? 

               

              Paul Riggott seems to have departed this forum for he just could stand that Adobe was not fixing the script bugs he reported and now Adobe with CC is demanding continuous payment for buggy code. Paul was one of the best contributors here. I miss his support. Adobe supportis nothing to count on we need user forums like this one.

              • 4. Re: Expose or not the JavaScript code for the public?
                c.pfaffenbichler Level 9

                Paul was one of the best contributors here.

                Indeed he was.

                • 5. Re: Expose or not the JavaScript code for the public?
                  Gustavo Del Vechio Level 3

                  Thank you very much for the advices. It´s always a pleasure to read from such experts like you.

                   

                  Yes I will definitelly share public scripts the same way I share with my team: as a JSX open file!

                   

                  Yeah, Paul answered a lot of questions mine when I was starting to read about Photoshop scripting! I miss he is not in the forums any longer.

                   

                  Gustavo.

                  • 6. Re: Expose or not the JavaScript code for the public?
                    DBarranca Level 4

                    Hello Gustavo,

                    I guess it's a matter of personal preference. While binary is great for commercial purposes (even if someone says that it's not that much un-crackable - but frankly who would bother to hack my stuff?!), it might not be a good idea if you plan to distribute your code.

                    Personally I'm not against encryption for free projects in principle. It's just you that decide whether a script is provided "as is" (locking the possibility of other developers' contribution) or as a, say, GitHub project.

                    GitHub has gained popularity among PS scripters as well, recently.

                    That said, my old scripts are such a mess that I consider a favor that I do towards the community not to share the source code ;-)

                    Best,

                     

                    Davide

                     

                    PS

                    In case I haven't done it already: yes, Paul Riggott is missed here!!

                    • 7. Re: Expose or not the JavaScript code for the public?
                      Gustavo Del Vechio Level 3

                      Hey Davide!

                       

                      Thank you very much for the comment. I do not know GitHub. Is this: https://github.com/ ??

                       

                      I´ll take a time to discover this site and learn what can be achieved with the service!

                       

                       

                      Gustavo

                      • 8. Re: Expose or not the JavaScript code for the public?
                        DBarranca Level 4

                        Ciao Gustavo!

                         

                        Yes, GitHub is the website for, how can I say, storing in the cloud Git repositories.

                        Git is an open source version control system made by Linus Torvalds - which happens to be what I use for code management (there are others, like Mercurial, Subversions, etc). You can give it a try here.

                        For opensource repositories GitHub is free, while if you need private ones you've got to pay a subscription. There are several websites that hosts repositories, I have an account at bitbucket.org (which provides free private repos).

                        Or you may use Git in combination with a DropBox account - which is handy and what I personally use most of the times - you can find instructions here.

                        Cheers,

                         

                        Davide

                        • 9. Re: Expose or not the JavaScript code for the public?
                          Gustavo Del Vechio Level 3

                          Very good Davide

                           

                          Thank you for the explanation. Time to give a try

                           

                          Best Regards

                          Gustavo.

                          • 10. Re: Expose or not the JavaScript code for the public?
                            Michael L Hale Level 5

                            I also use git for version control. In addition to hosted repositories you can have local ones. As long as you are working on a project alone a local repo is easy to set up and is free.

                            • 11. Re: Expose or not the JavaScript code for the public?
                              DBarranca Level 4

                              I should probably open a standalone topic, but since we are talking about binary encoding: I'm running into an issue that is quite puzzling.

                              I've a rather complex script that I cannot post here that includes BridgeTalk (PS->Bridge). If I run the script as a plain, readable code everything works as expected, while if I export it as binary... something fails (the script runs but the part involving the BridgeTalk - retrieving a Thumbnail image - is broken).

                              I'm wondering whether there are known incompatibilities between BridgeTalk and binary that I'm unaware of.

                               

                              Any thought?

                              Thank you!

                               

                              Davide

                              • 12. Re: Expose or not the JavaScript code for the public?
                                DBarranca Level 4

                                By the way,

                                this is an interestig and recent article about the pros of open coding:

                                http://blogs.adobe.com/digitalmedia/2013/09/why-should-you-work-in-the-open/

                                 

                                Davide

                                • 13. Re: Expose or not the JavaScript code for the public?
                                  Gustavo Del Vechio Level 3

                                  Very interesting

                                   

                                  Thank you Davide for sharing the link.

                                   

                                  Best Regards

                                  Gustavo.