Why is Widgets 2.0 not open sourced??

This is not a specific feature request but rather a more general question.

With widgets 1.0 I was always sure it is implemented in native code and not lua. That explained to me why CoronaLabs can not give us the source.

But I was surprised to see (with the release of 2.0) that it was actually a lua module…

I’m assuming now that widgets 2.0 is also written in lua, and if that’s the case I really think it’s a huge mistake keeping it closed (I myself am going to try to decode my apk and put my hand on the code sometime soon).

I think it’s a shame the community cannot contribute to this satellite project and I can’t see how it can harm CoronaLabs as it can only be used with their SDK…

My guess would be that if this was published on Github you would have seen a lot of free extensions and forks that people would do to improve and enhance it’s capabilities, and as much as I love the new widgets library it is still not complete and as a matter of fact I think it’s one of those things that communities can drive forward and let CoronaLabs concentrate on core native features.

If someone can give me one good reason to keep this lua module closed I’ll be happy to hear but to me it seems like a huge mistake. [import]uid: 80469 topic_id: 36308 reply_id: 336308[/import]

furthermore I’m sure a lot of users would find it useful being able to tweak the library just a bit to meet there needs… and it lowers the urgency of fixing widget bugs because anyone can fix anything :slight_smile: [import]uid: 80469 topic_id: 36308 reply_id: 144248[/import]

I would imagine that it is because they are a small company which needs to protect it’s IP. [import]uid: 8271 topic_id: 36308 reply_id: 144251[/import]

What IP? This library can only be used with their SDK. What benefit could it be to people that are not already paying customers?

Furthermore it could easily be extracted from an android APK is anyone really wants it… [import]uid: 80469 topic_id: 36308 reply_id: 144254[/import]

Just about any code can be extracted from the binary if someone tries hard enough. That’s not really the point of taking at least minimal steps to protect one’s property.

No; Their libraries cannot *only* be used with CoronaSDK. Lua is used with many other platforms and their libraries could probably be easily modified to work with a number of them.

I would think that if you’re dedicated enough to go the distance to retrieve actual lua libraries from Android binaries then you’re probably going to commit to getting those same libraries working on another platform. [import]uid: 8271 topic_id: 36308 reply_id: 144257[/import]

Besides, you did say it was a general question and not a request. If you actually want to make it a request: http://feedback.coronalabs.com

You also stated: “What IP? This library can only be used with their SDK.”

Even if that were true, the fact that the code only worked with their own SDK would not stop it being their IP; It would actually reinforce the argument that “it is their IP.” [import]uid: 8271 topic_id: 36308 reply_id: 144258[/import]

Regardless of any IP. I’m simply saying that widgets being open source _will_ improve Corona SDK. And _will_ benefit CoronaLabs.

I don’t see how this library is any Rocket Science and from my small experience in migrating to other lua based frameworks I wouldn’t see how it would be worthwhile to anyone trying to port it. But regardless, as you stated if someone is willing to put that much effort into it he will also be able to get the code from the binary.

My request is that more libraries (lua based ones) become open source so the community can help improve and progress. I’d rather see progress from CoronaLabs on fronts that cannot be solved in lua.

I think that widget.* is an nice library, so is WidgetCandy, I prefer the more lean widget.* API but these two products provide a similar solution.

If for example CoronaLabs would develop a native particle system that would actually be something totally different because the equivalent ParticleCandy for example is based on the regular sprite engine and doesn’t take full advantage of the GPU. This would require native work on Corona’s part something no 3rd party vendor can do right now…

Same goes for shaders… These are core features that we want and other engines have. If you take MOAI for example their UI elements are really lame but you can find open source wrappers that provide nice UI elements and themes. [import]uid: 80469 topic_id: 36308 reply_id: 144265[/import]

The only widget that is hard to implement is the scrollView and its trackVelocity() function. All other widgets are based on scrollview library. If there was somebody who can rewrite this function so we can implement our own widgets. The first version on code exchange works very bad. [import]uid: 138389 topic_id: 36308 reply_id: 144284[/import]

furthermore I’m sure a lot of users would find it useful being able to tweak the library just a bit to meet there needs… and it lowers the urgency of fixing widget bugs because anyone can fix anything :slight_smile: [import]uid: 80469 topic_id: 36308 reply_id: 144248[/import]

I would imagine that it is because they are a small company which needs to protect it’s IP. [import]uid: 8271 topic_id: 36308 reply_id: 144251[/import]

What IP? This library can only be used with their SDK. What benefit could it be to people that are not already paying customers?

Furthermore it could easily be extracted from an android APK is anyone really wants it… [import]uid: 80469 topic_id: 36308 reply_id: 144254[/import]

Just about any code can be extracted from the binary if someone tries hard enough. That’s not really the point of taking at least minimal steps to protect one’s property.

No; Their libraries cannot *only* be used with CoronaSDK. Lua is used with many other platforms and their libraries could probably be easily modified to work with a number of them.

I would think that if you’re dedicated enough to go the distance to retrieve actual lua libraries from Android binaries then you’re probably going to commit to getting those same libraries working on another platform. [import]uid: 8271 topic_id: 36308 reply_id: 144257[/import]

Besides, you did say it was a general question and not a request. If you actually want to make it a request: http://feedback.coronalabs.com

You also stated: “What IP? This library can only be used with their SDK.”

Even if that were true, the fact that the code only worked with their own SDK would not stop it being their IP; It would actually reinforce the argument that “it is their IP.” [import]uid: 8271 topic_id: 36308 reply_id: 144258[/import]

Regardless of any IP. I’m simply saying that widgets being open source _will_ improve Corona SDK. And _will_ benefit CoronaLabs.

I don’t see how this library is any Rocket Science and from my small experience in migrating to other lua based frameworks I wouldn’t see how it would be worthwhile to anyone trying to port it. But regardless, as you stated if someone is willing to put that much effort into it he will also be able to get the code from the binary.

My request is that more libraries (lua based ones) become open source so the community can help improve and progress. I’d rather see progress from CoronaLabs on fronts that cannot be solved in lua.

I think that widget.* is an nice library, so is WidgetCandy, I prefer the more lean widget.* API but these two products provide a similar solution.

If for example CoronaLabs would develop a native particle system that would actually be something totally different because the equivalent ParticleCandy for example is based on the regular sprite engine and doesn’t take full advantage of the GPU. This would require native work on Corona’s part something no 3rd party vendor can do right now…

Same goes for shaders… These are core features that we want and other engines have. If you take MOAI for example their UI elements are really lame but you can find open source wrappers that provide nice UI elements and themes. [import]uid: 80469 topic_id: 36308 reply_id: 144265[/import]

The only widget that is hard to implement is the scrollView and its trackVelocity() function. All other widgets are based on scrollview library. If there was somebody who can rewrite this function so we can implement our own widgets. The first version on code exchange works very bad. [import]uid: 138389 topic_id: 36308 reply_id: 144284[/import]

furthermore I’m sure a lot of users would find it useful being able to tweak the library just a bit to meet there needs… and it lowers the urgency of fixing widget bugs because anyone can fix anything :slight_smile: [import]uid: 80469 topic_id: 36308 reply_id: 144248[/import]

I would imagine that it is because they are a small company which needs to protect it’s IP. [import]uid: 8271 topic_id: 36308 reply_id: 144251[/import]

What IP? This library can only be used with their SDK. What benefit could it be to people that are not already paying customers?

Furthermore it could easily be extracted from an android APK is anyone really wants it… [import]uid: 80469 topic_id: 36308 reply_id: 144254[/import]

Just about any code can be extracted from the binary if someone tries hard enough. That’s not really the point of taking at least minimal steps to protect one’s property.

No; Their libraries cannot *only* be used with CoronaSDK. Lua is used with many other platforms and their libraries could probably be easily modified to work with a number of them.

I would think that if you’re dedicated enough to go the distance to retrieve actual lua libraries from Android binaries then you’re probably going to commit to getting those same libraries working on another platform. [import]uid: 8271 topic_id: 36308 reply_id: 144257[/import]

Besides, you did say it was a general question and not a request. If you actually want to make it a request: http://feedback.coronalabs.com

You also stated: “What IP? This library can only be used with their SDK.”

Even if that were true, the fact that the code only worked with their own SDK would not stop it being their IP; It would actually reinforce the argument that “it is their IP.” [import]uid: 8271 topic_id: 36308 reply_id: 144258[/import]