We value your input!
Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey

Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

Hiding GDL code?

TomWaltz
Participant
I know a lot of the objects on Objectsonline.com have most of their scripts hidden.

How is this actually done? Are they just saved as binary?
Tom Waltz
20 REPLIES 20
Anonymous
Not applicable
I agree with Richard. It is hard to imagine a situation where the cost of enforcing a copyright would not be greater than the settlement (or even the amount of the judgment). I strongly believe that it is more important to contribute what we can than to worry about being under-compensated.

It reminds me of a comment by the inventor of Terra-dome earth sheltered houses made regarding some of his customers' preference for composting toilets over conventional septic systems: "People think that their s__t is worth too much."
Karl Ottenstein
Moderator
Richard wrote:
I would like to add something from a user's standpoint. When an object doesn't work properly, often I can go in and fix it. Also, I can slightly tweak it for my own use. When I discover the object's code has been compiled or othewise hidden, forcing me to live with a buggy or "almost usable" object, the ill-will this generates makes it the last object I will buy from that developer.
Of course, as a programmer, I've said the same thing about Graphisoft, Microsoft, Intuit, Macromedia and others for years ... why don't they give me the source code so I can fix the bug instead of waiting for them?!? Answer is obvious I think? And how is it so different with GDL?

What I think is being missed in this discussion, and which I tried to raise early on, is that one might see surprisingly complex objects if there was encryption because developers could protect their investment in 'base' objects in order to distribute their development costs across a range of end-user objects. Building software is a process made more efficient by creating building blocks of code that enable the more efficient and robust production of larger and larger things. Sure, perhaps aspects of the final object might and should be open source so that we all can tweak them... but developers might be willing to put the thousands of dollars of effort into making more sophisticated objects if they knew that their proprietary 'building block' objects and macros were encrypted and protected.

I don't understand the conflict ... if some people or firms need encryption to protect their investment, they can use it ... if others want to be open source, let them... And, market forces will say what sells.

Cheers,
Karl
One of the forum moderators
AC 28 USA and earlier   •   macOS Sonoma 14.7.1, MacBook Pro M2 Max 12CPU/30GPU cores, 32GB
Anonymous
Not applicable
Good points Karl.

I have also used "hide scripts" to enforce office standards. The CAD manager keeps the open versions for future revisions, but the operators are prevented from making their own "standards" on the fly.

I agree that there are definitely good reasons for wanting the ability to encrypt parts and/or hide scripts. (I would also like the capability to compile the GDL to reduce the reliance on separate macro objects while retaining the modular code base.) But I also feel that people are often too protective of their ideas and that we should err on the side of sharing the knowledge.

For encrypted parts to remain useful over the long run means that the publisher has to maintain a long term commitment to their development and maintenance. This is always everyone's intention to start with but "'tis many a slip twixt the cup and the lip."
Karl wrote:
Of course, as a programmer, I've said the same thing about Graphisoft, Microsoft, Intuit, Macromedia and others for years ... why don't they give me the source code so I can fix the bug instead of waiting for them?!? Answer is obvious I think? And how is it so different with GDL?

What I think is being missed in this discussion, and which I tried to raise early on, is that one might see surprisingly complex objects if there was encryption because developers could protect their investment in 'base' objects in order to distribute their development costs across a range of end-user objects. (snip)
Well, Karl, I notice you didn't include Linux in your list of "annoying" software. Fact is, the software you cited sells IN SPITE of its being encrypted, but that doesn't prove that it should be a model to be emulated.

I think the difference is one of scale. For GDL objects, we're not typically talking about "person-years" worth of time investment. And for those folks who DO want to make the significant and protected programming investment, there is the SDK, isn't there?

Buying encrypted GDL objects is like buying a car that has been welded shut so that if it breaks down on the freeway, you have to send it back to the manufacturer for repairs. And in some cases, not even being able to FIND the manufacturer.

The whole point of GDL, I thought, was this wonderful exciting world of relatively easy-to-create powerful objects that users could develop on their own, builidng on the advances of others. Taking the most basic building blocks into the world of proprietary, protected software sort of sabotages an atmosphere of collaboration and participation, involving users all over the globe, doesn't it? Wasn't that one of the core values of the culture that Graphisoft is trying to promote? Maybe I've got this all wrong, and Graphisoft is really hoping to create a platform to foster little cottage industries of object developers.
Richard
--------------------------
Richard Morrison, Architect-Interior Designer
AC26 (since AC6.0), Win10
Anonymous
Not applicable
I can see both sides of this.

Trus Joist hides the scripts in our libraries so people do not use them to specify products from a competitor. The reality is a quick note on the plans can change all (Trus Joist TJI or equivalent) that but that isn’t a reason to make it easier. I try to test the objects vigorously before releasing them so they'll work for the intended purpose.

If I were making objects for my own amusement and on my own time, I wouldn’t hide the scripts. I don’t really believe I'm doing anything ground breaking as far as scripting goes but if some one wants to play around with it more power to them.
LiHigh
Newcomer
Put aside the pros and cons, if we still want to hide script, how can we do it?
ps--I don't think I can find HIDESCRIPT for v9.0.
Howard Phua

Win 10, Archicad 19 INT
Anonymous
Not applicable
I think this discussion is funny.

You can say that the white is a good's symbol
or is simply white!!

Dwight said : "Hiding code is small-minded"

I think this:
- GS, in his kit, has inserted a "hidescript".
- Is GS small-minded to furnish such tool ?!!?

- Free code and hidden code is simply a choice
(not a crusade).

CU mirco
www.cad3d.it
Anonymous
Not applicable
Matthew wrote:

There is greater risk of theft from people copying your stuff whole and not paying for it.


This is more the issue. If someone has paid for the work I have done they can do what they want to it, if they can figure it out. I read a lot of scripts when I first started but I soon discovered that starting from scratch was faster than copying. It would be nice if you could tie objects do a dongle number or something like that.

I have seen various versions of using macros that disable scripts after a time period, works well until you get someone who knows abit about GDL.
LiHigh
Newcomer
Julia wrote:
Matthew wrote:

There is greater risk of theft from people copying your stuff whole and not paying for it.


This is more the issue. If someone has paid for the work I have done they can do what they want to it, if they can figure it out. I read a lot of scripts when I first started but I soon discovered that starting from scratch was faster than copying. It would be nice if you could tie objects do a dongle number or something like that.

I have seen various versions of using macros that disable scripts after a time period, works well until you get someone who knows abit about GDL.
Indeed, but only if you know what you are doing!
Let try to write scripts for an object similar to Door/Window Builder and see.......
Howard Phua

Win 10, Archicad 19 INT
Anonymous
Not applicable
Skipping the writer's choice
I think the matter is other,

Nobody can hide the gdl's script
to the experts (less too).

but, to consult a hidden script implicates:
- the author doesn't want changes his writing
and his object
- he goes against the writer's wishes.

An "open" object doesn't mean the contrary one.

In fact many writers don't expressly write
"you can use, change or other, to this code".

CU mirco
www.cad3d.it