Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I just started a project with the newly release Sencha Designer Beta, and I was researching the free commercial license. Someone pointed out on a blog post comment that the 11. Support and Updates section of the license agreement is very restrictive and deceptive. After reading this section, I cannot fully understand it, as I have little experience in interpreting software license agreements.
Can anyone decode this for me in terms of what it really means about receiving updates to the Sencha Touch framework and what is means for someone who is creating an end-user mobile app?
11 . SUPPORT AND UPDATES
You are not entitled to any support for the Software under this
Agreement. All support must be purchased separately and will be
subject to the terms and conditions contained in the Sencha support
agreement. You are entitled to receive minor version updates to the
Software (i.e. versions identified as follows (X.Y, X.Y+1). You are
not entitled to receive major version updates (i.e. X.Y, X+1.Y) or bug
fix updates to the Software (X.Y.Z, X.Y.Z+1). Major version updates
and bug fix updates to the Software are available separately for
purchase.
I'm fully clear on the fact that you have to pay for support, but not about the availability of updates. When they release updated versions of the framework, how does this prevent someone from just updating their packages? What are the hidden pitfalls here? As long as we aren't directly requesting bug fixes and support, what in this text would prevent me from just downloading and updating my local framework to the latest release?
Here is a link to the blog post which contains the comment that caused me confusion on the matter: http://mobile.dzone.com/articles/sencha-touch-or-jquery-mobile
Please note that I do not endorse the view taken by this blog comment. I am only linking for the reason that it brought my questions to the surface.
As the person who wrote much of that text - originally for our Ext JS license - I can tell you that the intent was not to be deceptive, but some of the text doesn't make sense when it's applied to a free license like the Sencha Touch developer license (and legalese can be read with the wrong tone)
Here's what it means.
You've just downloaded version 1.0 of the software, good for you
You're entitled to get version 1.1, and 1.2, and 1.3 as well if and when we ship them
You're not entitled to get version 1.1.1, 1.1.2, 1.1.3 (if and when we ship them) - that's a benefit just for our technical support subscribers
You're not entitled to file technical support tickets either.
Does that make sense?
(Incidentally, I am a little upset by the implications of the comment in the post you linked and will reply to it now. Our support subscribers allow us to pay for developers to develop patches, which then we make available only to our support subscribers. All patches are rolled into the next minor release.)
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
Long story short. I've found nice open source project with API that is useful for my app. However, originally it is distributed under GPL-v3 licence. I've talked with creator who is the only contributor and he said that he can make for me an exception and provide me it under Apache Licence 2.0.
My questions are:
Is email where he wrote that he can provide me it under this licence enough, or he should write me something else like: I agree to provide X project to [PERSON] under Apache Licence, version 2.0 instead of GPL-v3
What should I write in about page: Project X under exceptional Apache Licence, version 2.0, or what? Because writing that Project X is under GPL-v3 will suggest that whole app should be under this licence.
If this project uses another open source project [library] (under licence Apache 2.0), do I need to write it also as another about list element, or not?
Thank you very much for all answers.
EDIT
Generally speaking, because it might be unclear, I am asking not about About box inside code, because after all it is only comment that will disappear, but something more or less like this:
Open Source projects included:
...
Project X Copyright Creator Y 2010-2013, distributed exceptionally under Apache Licence, version 2.0
or
Project X Copyright Creator Y 2010-2013, distributed under Apache Licence, version 2.0
or
Project X Copyright Creator Y 2010-2013
...
More than about creator, I am concerned about people who may read it and realise that this project is currently distributed under another licence, so they should get source code of whole app.
The third question is about, do I need to also write in similar form about projects from which Project X is taking some elements, like extra libraries that are used only there?
If the original author(s) agreed to license the software under Apache 2.0 to you, you should have received a so called LICENSE or COPYING file containing the terms and conditions of use next to the exact copyright statement you need to preserve.
Additionally as this is the Apache 2.0 license and you write this is some exception, you might have as well received a NOTICE file that is giving notice about this circumstance.
All you normally need then is to pass along this information [these files] to the end user(s).
Also don't ask about Project X here, as this is real-life, name the project, that would allow to give better examples and make this question more useful for future users to compare with their situation.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 8 years ago.
Improve this question
I will built an applications using Sencha Ext JS.
I tried a little application in order to lean it. But I was wonder what are the difference between the GPL and the commercial license?
I noticed that the code is exactly the same, and the way on programming also.
So what are the advantages to buy the commercial license?
Thank you
The GPL license is for open source applications. If you are creating an open source application and are compatible with the GNU General Public License http://www.gnu.org/copyleft/gpl.html (providing source code etc.) you don't have to buy a commercial license.
If you are releasing an application for commercial purposes and do not plan on sharing the source code... you would have to buy a commercial license. The advantages? Staying legal, rewarding Sencha for their great framework and supporting future updates to the framework to name a few!
NOTE: I am not a Sencha representative and/or lawyer. Contact Sencha http://www.sencha.com/contact/ to find out exactly what is required for your particular situation.
I'M NOT A LAWYER !!!
You can make money if you decide to use the GPL version. However you have to make your application source available moreover any one who is using your app as a library for his application should do too.
If you plan to open source your app then look at this thread: Which license should I use for my open source project
If not then go with the commercial one. Sencha touch provide a good FAQ regarding licensing:
https://www.sencha.com/store/licensing-faq/
Good luck with your choose.
I think this will help: http://www.sencha.com/products/extjs/licensing/
Also i think you require a commercial license if you are going to distribute(sell) your product and wants only you to have the permission to change the source code on the product and customers to only use them, open source license you need if you develop your application for your own purpose and whosever use it do have the permission to make any change in it(source code).
Cheers
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
Let's say I create a CMS that uses ExtJS.
I want to avoid the license fee, so I open-source the CMS on github.
Now let's imagine that I make your friend Dave a website that uses my CMS. I spend three hundred hours designing a logo and layout. Can I charge a fee for this, and would I be obliged to open-source Dave's website too or is it enough to just open-source the CMS?
I find this LPGL license a little confusing. Say hi to Dave for me.
Only ExtJS code prior to 2.1 is under LGPL. It currently uses GPLv3. That means if you distribute it, "the entire work, as a whole" must be licensed under GPLv3. The entire work may include code directly connected to ExJS. But "separate and independent works, which are not by their nature extensions of the covered work" (which probably includes server code) don't have to be GPLv3. So the way I interpret it, only code (e.g. client JS you develop) that tightly extends Ext would have to be released. See also this FAQ.
Regardless, you can charge as much as you want for services and/or the CMS itself.
IANAL.
ExtJS GPL Licence means that if you are using ExtJS under GPL Licence, and not modifying ExtJS itself, then you are Free to use ExtJS in whatever manner on any Website. But if you take ExtJS and start modifying ExtJS itself ( to make some better 'Super-Duper-ExtJS' Library ), then you have to share that with everyone, because if you start selling 'Super-Duper-ExtJS' to your Clients, then whats going to happen is that 'ExtJS-Company' finds itself Competing with Itself. I dont think you need to share your 'Website's Source-code' in any case. If you need to share your 'Websites source-code' ifself with other People while using ExtJS-GPL, then only the ExtJS-GPL Licence would start looking absurd, and you need to start looking at jQueryUI or DOJO ! But I dont think that 'ExtJS-Company' means to share your Websites-source just for the reason that you used their ExtJS Library ! What say .......
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I am building my own web app, and there are open source code out there that would be useful in my reducing my development time.
For now, I plan to develop in closed source, but opening the source code when the code is mature can be a possibility. However, for now, I'd like to know the possible (legal) issues in using open source code (esp reusable apps) in my platform?
I understand there are various licenses, such as Creative Commons, BSD, Mozilla licenses. Could you guys possibly elaborate in general about them and others?
URLs would be useful as well!
Thanks!
In general:
BSD - do what you like with it, just don't advertise your product as being endorsed by the authors http://en.wikipedia.org/wiki/BSD_licenses
MIT - do what you like with it
Creative Commons - Depends on the type (see below)
(1) Attribution - Do what you like with it, but acknowledge the author(s)
(2) Noncommercial - Do what you like with it, but don't sell it
(3) No derivative works - You can use it as long as you don't modify it or create a work derived
from it
(4) Sharealike - Distribution of this or derivative works must comply to the original license
(5) Combinations of (1) to (4)
http://en.wikipedia.org/wiki/Creative_Commons_licenses
Mozilla public license - It's complicated http://www.mozilla.org/MPL/mpl-faq.html
Apache license - Do more or less what you want with it (with some restrictions)
http://en.wikipedia.org/wiki/Apache_License
GPL - Do whatever you want with it, but if you modify it and distribute it in any way, you MUST
release the source code under the GPL. If any of your code contains GPL licensed code, your entire source code must be released under the GPL
LGPL - Mostly applies to libraries, you can link against a library or include the source code in your application as long as you do not modify the source code. Modified code must be released under the LGPL http://en.wikipedia.org/wiki/GNU_General_Public_License and http://en.wikipedia.org/wiki/GNU_Lesser_General_Public_License
Please note, IANAL.
Except for the Affero GPL, most open-source licenses will not affect the output of your server-side web application. client-side code (such as javascript) may trigger redistribution clauses and limitations of the license involved.
Please note there is a no-derivatives CC licenses, which mean you may not modify code under that license.
Read the license. If real money may be involved, ask a lawyer.
Your question is very general, for better answers you need to be more specific is terms of the intended use and license involved.
The answer would depend on the specific license covering the code you plan on using.
For example, there are a variety of Creative Commons licenses. Someone may release under a Creative Commons license stating that you can reuse their code, but you must give them credit for it. Or they may require that you only reuse it for not-for-profit ventures. CC licensed items are generally pretty clear and concise.
The GPL on the other hand is a fairly dense topic and I'm unclear on how it applies to code you will be using on your own site but not distributing for use to others. In that case I would recommend trying to contact the originator of the code you wish to use and ask for clarification.
What license? There are plenty of licenses (the definitive list is at the Open Source Initiative website). You will want to review the individual licenses, since they have different requirements. A BSD-style license allows you to use the code as you please, provided you keep the attribution and license statement, while Gnu GPL versions will require you to release under the GPL and make your source available to users. All Open Source licenses will allow you to use the code for any application you like, but aren't necessarily compatible with all business models.
There are also Creative Commons licenses, which have various stipulations, and which are generally intended for a wide variety of creative works, not just software. Again, you'll have to read them to find out what you can do (some, for example, forbid commercial use, and therefore don't qualify as Open Source licenses).
The licenses were designed to be readable. Some of them take more work, but anybody who can program should be able to understand them.
What you have to worry about is dependencies and chaining. You need to do more than examine the licenses of the open source libraries you use; you also need to examine all their dependencies as well. Your project will be subject to the lowest common denominator.
If you're really concerned, best to invest in a good lawyer.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
Has anybody any experience in using Gupta (formerly Centura) Team Developer?
If so, what do you think of it in terms of its capability to support the development of mature, scalable, maintainable applications?
Thanks
I have been using the CTD since version 1.1. Currently I'm still using 2.1 PTF4, mainly for doing rich client CRUDs under windows 98-Vista against Centura SQLBase, MS Sql Server or MS Access. I have not upgraded from 2.1 to the newer versions, so I can only talk about the relatively old 2.1 from 2001.(§)
Our applications typically have about 150 form windows, make heavy use of classes (still called "user defined variables" in 2.1) and integrate MS Office. We have no stability issues or memory leaks. The development environment is a bit long in the tooth, though: no intellisense, no smart debugging and practically unusable without a mouse. This may have changed with newer versions.
There is nothing in the nature of CTD that forces you to write un-maintainable code. Using classes and file-includes you can have a good degree of reusability in your code if you designed your code to be reusable, that is. A problem for maintainability may be that CTDs variables and classes do not have access modifiers like "private" or "protected". Also: no interfaces or abstract classes. On the other hand: multiple inheritance.
The "outline structure" of the code takes some getting used to, but I even sometimes miss the outline structure when I get lost in a sprawling C#-file with variable declarations and event handlers all over the place...
The controls for 2.1 where pretty complete but we still had to manually integrate "modern" things like toolbars, datepickers or tab-controls. OTOH it even has a numerical input field out of the box. One of the Unify-Newsletters stated that they added a lot of eye-candy, to let the apps look more up-to-date. The mtable-Extensions for table windows where very helpfull, available here: MTable by MICSTO . Integrating 3rd-party-DLLs (e.g. for integrating a smartcard-reader) is not really fun, especially when they use structs. Oh: and the "Centura Report Builder" is a royal pain in the derierre.
A big pro is the SDK that shipps with the CTD: this makes it very easy to integrate self written tools into the development environment, e.g. for code generation.
Bottom line: We used and still use CTD for scalable and maintainable apps. The learning curve can be a bit steep because of the unusual outline structure and can lead the unwary towards writing "ugly" code: e.g. lots of static functions, lots of code in the "Message Actions" and problems with variable scoping. I think your success with CTD will depend on the nature of the application you want to write: for a rich client CRUD you might almost certainly be better off than with .net, for a web app I honestly don't know.
Keep in mind that all this relates to the 8 year old 2.1 version of CTD. Things may be radically different now. If you can, get an evaluation version.
Edit: Aside from the pros and cons of the language alone, you might want to consider that CTD is a niche. There are not many free tools and I have yet to find a vibrant community (there was a newsgroup, but the server went down after the merger - maybe its still around somwhere). So, googling up help on specific Problems may no be easy.
(§) I did not continue the upgrade path from 2.1 to 5.1 because after the merge with Unify they wanted to make patches available only for subscribers to their support scheme (called GLS). Since I was not going to pay for bugfixes I deceided to continue using 2.1 for our legacy apps and switch to .net for new apps. I think they revised this later on.
I have been working with Team Developer (formerly Centura Builder, SQL Windows, etc.) for 9 years. IMO things have not changed too much from the version 2.1 which Stephan Keller described in his comprehensive answer.
The company I am working for is currently using TD version 5.1 and considering upgrade to TD 5.2 next year. We are developing a business software product, run against Oracle database. The application has more than 500 form windows and several hundred reports.
I think Team Developer scales well to both simple small applications, and larger enterprise application suites with big RDBMS and hundreds of users.
The code outline makes the IDE easy to approach and I think the learning curve will not be that steep. The code editing is possible even without mouse, since there is a number of handy keyboard shortcuts. Of course the window designer needs mouse. There is also a built-in Active Coding Assistant in the newer releases.
The newest releases (5.1 and 5.2) offer some new GUI controls, such as a date/time picker, a grid window (enhancement to the widely used table window) and Rich Text editor. There is also a new tab control. Menus can be shown ribbon-like, though this is not a "real" ribbon bar. Sample screenshots can be found on the Unify web site.
Also new GUI themes were introduced in the 5.x versions of TD, to provide a more modern look and feel for the applications.
There have been a number of stability issues, performance problems and problems with screen painting etc. with the 5.x versions of TD. The older 3.x and 4.x are known of very robust quality, having only a very limited number, if any, stability or other issues. These issues are discussed actively on the Unify Support Forum. Many of these issues are related to database routers (Oracle, MS SQL Server) or Windows API calls. The basic functionality of TD is usually working quite fine.
Also help on specific problems and questions can be reached on the Support Forum. The developer community is maybe small, but quite active.
My Company uses Team Developer for years successfully (most of our Applications are written in 2.0, with some in 5.2 as Web-Applications) and there are plans to change our development to version 6.0.
Coming from a C++ background I first had to find the way into the language (I still miss some features like encapsulation, well-structured error handling1 or scoping of variables2)
But after all, I learned to live with the limitation of the language and with some discipline our applications are relatively easy to maintain. (as a note: We have a set of base applications working together and use the same codebase with some customer-related variations to build individual versions for every customer - bugfixes appear at the common codebase (and is used afterwards for any other project), special modifications at the lokal project files). You just need to set up some basic guidelines for your projects and keep with them as the compiler wouldn't enforce them.
1 You could catch a sql error only at the point it occurs or globally for the whole program.
2 I still sometimes get cases where a mis-spelled variable compiles for something in a completely independent window - or compiler errors for semi-referenced handles sharing the same name but different data types
We used TD for several large apps but due to the lack of resources, the obsolete SAL language and aged runtime we have migrated millions of lines of SAL code and several thousand forms to C# and Visual Studio 2010 using ice tea group gupta/unify migration tool.
We were skeptical at first. But now we have brand new apps, fully integrated with our other .NET assetts with a small fraction of the time needed for a rewrite. And we didn't have to try to understand what all that all code was doing. :) the conversion was nearly perfect!
Forgot to mention that we automatically converted over 1200 report builder reports to crystal reports .NET saving probably a century of boring work.