ExtJS/Sencha vs DHTMLX

Like this small detail I just encountered: Radio button in grid. Vertical grouping is in the open source version. Horizontal grouping is only in the commercial version.

There are lots of these ‘small’ details that make you want a commercial version if you make something with a little more-than-basic functionality.

I understand that DHX and Sencha want to make money, but sometimes I don’t get these limitations. I’m not gonna buy a commercial license for projects I don’t need to sell. Developers who want to sell their closed product need to buy a commercial license anyway. So why the obstacles?

Sencha does it too. The framework is completely open, but they don’t make a GUI builder available for free anymore, which is quite annoying. DHX has a GUI builder online which is very convenient for building a draft of the layout.

Yes, grid is one of the four components I mentioned that has Pro versions.

I can’t speak for DHTMLX and their business model, but many companies offer ‘Lite’ free versions of components with limitations, meant only for small apps or personal web sites, but as soon as you try to build something more complex for companies/organizations/enterprises, you hit the limitations.

Whether these limitations generally define whether the app is meant for personal use or not is another issue - a tricky one at that. In my experience, I find that even simple users often require complex functionality and the only sane way to limit products is by the amount of usage (users, tables, size, installs, etc as applicable). But this approach isn’t always possible or appropriate either, especially with products that are only embedded components.

Think about it, how would you, as a commercial company that makes components, differentiate between personal and business apps? It’s not easy.

Like Sencha does. Like Red Hat does.

FOSS project? Unlimited, free.
Want to package it, sell it, make a profit? Commercial license.
Want support? Commercial license.

youtu.be/7XTHdcmjenI?t=8m14s

That is such a misleading lecture for several reasons but I am afraid that if I comment, this will go way off topic. For example, the chart shows only growth, not actual profit or revenue. And it compares growth of companies that are in different stages. Also, support and services are no way as profitable and easy to live on as licenses, and I know this from experience. Also, last but not least, companies like Red Hat are profiting on OTHER people’s work.

Open-source is very nice for many reasons, but it is not such a clear-cut paradise when it comes to business. It’s very easy to sit there and tell companies to provide their work for free or make it all open-source, it’s quite another issue to explain how to make it profitable.

There is also the issue of trusting your users that download your free software to pay when the time comes.

And as far as Sencha’s business model is concerned: You are forgetting that they started as open-source based on open-source libraries. Once again, extending and building on the free work of others. They started as pure open-source and then they suddenly switched to a dual license model, causing a lot of controversy and angry people. So, first of all, if open-source is so great, and revenue from support is so good, why switch the license model? Second of all, if they are less restrictive in their free model, perhaps it is because of this legal background?

oreillynet.com/onjava/blog/2 … s_and.html

P.S. Found this at MODX: A community-based content management system based on Ext JS that wanted to stop using it for several reasons, some of them overlapping things I said earlier:
markhamstra.com/extjs/2013/ … re-jquery/

They don’t consider or compare any alternatives to ExtJS or jQuery though.

I just wanted to throw in a few comments here…

Dhtmlx has also become my #1 framework of choice. There are so many things which can be done in this framework–so many it is hard to remember. For example, putting a container in form. What’s that? You have a form and you want to drop in a grid or a tree or a layout. One line of code in the form then create the object and that’s it. It works in every browser, it loads before you can blink your eyes and it works every time.

Another hardly unknown item is the Layout View. With this you can make single page web apps in nice neat modules called Views. Simply change the view, ajax some data, maybe call a url pushstate() function and bam. The benefit here that the page structure is cached so only data is moving from server to client.

That’s the dhtmlx way. Things work, they work fast and there are lots of programmer APIs. Sure there could more. For just about everything I’ve wanted to do, I’ve either found an API or was able to create a prototype.

I experimented with extJs and it drove me batty. After making a few pages, it was clear that the programming effort was vastly more time consuming. For example, just getting data on the page, you need to map the data to a model and then map the controller to the model too. In dhtmlx the data contains the mapping either by json field names, array position or by xml id (or position). So there are 1/3 the moving parts—this equates to faster development and it easy to maintain. Seriously, how many times have you ever had a data->field mapping problem that could not figure out in 20 seconds as it was being developed? There is no need to jump through so many hoops. In reality, this strict MVC framework makes it easier for the developers of extJs to create the product. In the end, it makes it harder for us end users to create our apps AND and it will always run slower than it could. Json already contains the data mapping–just use it.

I’ve also worked on an app where we had to use jqueryUI (thanks to some unmentioned person who now uses dhtmlx). jqueryUi (not to be confused with “jquery”), also drove me batty. One group created the window object and then another group created jqgrid, can’t image why there might be problems when you try to put a grid in window. Things like seeing double scroll bars would appear in some browser and not in others . There were grid to window sizing issues. This has never happened in dhtmlx. The grids snap into windows, layouts and containers exactly to the pixel.

All in all, if you want a product that works and performance is a high priority, dhtmlx has got it.

Same goes for dhtmlx touch. In it’s current release(version 1 or something), I created an iPad app which controls a credit card reader for a Point of Sale app. Apple accepted it on the first look. It is a one page web app written in HTML5. It runs fast and it looks great. I did used only Apple’s X code and dhtmlx touch.

The power of dhtmlx is vast and wide. And it is only getting better!

Ah I missed the latest updates for this topic.

I don’t want to stir too much, but one comment I cannot leave unanswered:

ZevToledano: “companies like Red Hat are profiting on OTHER people’s work.”
They are also doing a lot of development and commit this back to the community. They sponsor Fedora, some of the ‘other’ people who do this work.

Apple is also profiting on years of OTHER people’s work. Forking BSD. And they take it one step further; only take licenses compatible with closed source code, and keep all the essentials under wraps. Now they are the richest company in the world.
That makes me sympathetic to Red Hat and annoyed with Apple.

I’m not gonna respond to your Sencha licencing issues. I’m well aware of that, and it’s not my place to defend other company’s business models. Not Sencha and not Dhtmlx. Why do you? Are you a Dhtmlx employee?
All I care about is my options. With Dhtmlx they are more limited. I explained why it doesn’t HAVE to be that way, and I’d like to leave it at that.

bmcgin: Agreed. My experiences have been similar.

Redsandro: According to your logic, if you criticize DHTMLX’s business model then that would make you a Sencha employee. Or perhaps you are an employee of Red Hat? :wink:

I am merely defending my choice of DHTMLX. I figure that the more people use it, the more advanced it will become and the lower the chances of it being discontinued. The last thing I need is for this framework to disappear after migrating all of my code.

But I have also had plenty of experience in my professional life with people thinking that open source is some kind of panacea because they don’t understand it and how it affects business, so this topic kinda hit close to home. We will just have to agree to disagree here.

If you find the ‘lite’ versions too limiting, then that’s a fair evaluation and I never said otherwise. I was only pointing out the lack of equally profitable alternatives.

Well that’s not very fair, is it? We both shared our likes about ExtJS and DHTMLX. I like DHX for a lot of the reasons mentioned here, too.

Except for the limitations of the lite version I run in to. Once I mentioned that I, as a user, find that a drawback in comparison, you start pointing out that businesses need to earn money. I went along with you to illustrate why I disagree in order to satisfy any wonders about me being just another FOSS drooler without thinking, but apart from that, I don’t and we shouldn’t even care about what business model drives their choices in order to evaluate the pros and cons.

So when you start to defend a company’s profit model in a discussion about the usability of their product for us developers, you start to emit a sense of employee-like bias.

Not every project is about investing finance and harvesting finance. Some projects are based partially or entirely on love. Sencha allows for love projects. DHX supports love up to a certain point, and then you have to pay.

I think that exact point as a plus for Sencha is what I mentioned earlier, it’s beneficial in order to make the product more popular (and lower the chances of it being discontinued). We want the same thing.

We have an entire FOSS workflow. It’s not entirely fair to bring up the suggestion that plenty of FOSS people misunderstand FOSS because you disagree. The opposite is also true: There is plenty of people who dislike FOSS because they misunderstand it and cannot imagine there can be quality in anything that doesn’t cost money.

And last but not least, it’s also a philosophy. Close to home. Hence my enthusiasm here.

So I agree to disagree. I wish both DHX and ExtJS the best. I wish they would both learn a bit from each other.

First we is you and I, second we is we here at the office.
Sorry for the confusion. No edit-button here. :slight_smile:

Personally, I like that the product is purchased.

This creates incentive to produce something which is better than status quo. And it creates accountability that the product is worth the price of admission.

This directly translates into quality of my product.

We’re deteriorating into nit-picking, but: Defending the business model is the same as defending a feature-set, simply because it has many very obvious repercussions on us as developers.

And yes, even whether it is profitable or not has an effect on developers, if only because it affects whether the company has a long future or not. But also because they approach customers, support and product development differently if they are open source. And also because it affects pricing for when you do need to go commercial.

Look at Sencha. Their business model was pure open-source in 2008, but since this wasn’t profitable for several reasons, they had to give this up for both commercial and library uses, and suddenly people using it for commercial applications found themselves stranded with an old version, or having to pay unexpectedly. So here we have a real-life example of even ‘free users’ who suffered because they ignored the business model.

So I strongly disagree with this statement: “I don’t and we shouldn’t even care about what business model drives their choices in order to evaluate the pros and cons.”

The fact that you, as a free user, feel different limitations in both frameworks was never a debated point. But since, in order to change this, one would have to change the business model, the discussion naturally shifted.

And finally, since I handle part of the business at my company, I am interested in debates on business model decisions even if they may be off topic and pertain to another company. By assuming I am their employee, you are assuming everything is commercial-oriented. Think of it as ‘open-source debating’ :wink:

You have some good points on which I simply agree to disagree. But some points are also wrong to use as an argument.

For example, the Sencha past is irrelevant. I am comparing the two as they are now. They are both dual-licensed. They both have a commercial license for developers who don’t want to release the source with their web-apps. This is where they earn money.

The difference is, Sencha open sourced the whole framework and DHTMLX did not.

We both want the same thing, great projects not dying out. The difference is, I say that Sencha’s choice to open source the whole thing in stead of a limited version is better, because this encourages people who use the product in open source projects to fall in love with the product. This encourages people to keep using it, because they don’t encounter limitations. And encourage those same people to get a commercial license for the product they love once they are setting up a commercial project.

The fact that you don’t trust a project can live and prosper without some kind of crippling limitation for non-paying users, is a sentiment I don’t quite understand. Because you seem to say that this kind of choice determines if the company has a future or not.

I think Red Had does a great job. Oracle’s MySQL is highly profitable without any limitations for open source use. cough Google cough. And of course, Sencha seems to do well.

Like someone at IBM said: “Most people think either open-source or commercial, but they’re not mutually exclusive.” (or something :stuck_out_tongue:) This is basically what uncrippled dual licensing is about (Sencha, MySQL, etc).

We can only agree to disagree if we understand each other. I brought the Sencha example simply to demonstrate why the business model is critical when considering a framework. You said it isn’t. QED.

Also, you repeatedly argue with me about a point that I already agreed with ten posts ago. I.e. The fact that free DHTMLX is more limited than free Sencha. The topic shifted to business models ages ago because that is the only area where we disagree (and that’s why the Sencha history was relevant).

As far as your comments on the viability of open source are concerned - I replied to this a few posts ago. To reiterate, you are comparing apples and oranges since the background and origins of each company and its source code are different. But this debate obviously isn’t going anywhere, so I’ll quit here. :smiley:

Discussion could be updated with Ext js 5 and DHTMLX 4 which are around the corner.
Ext js 5 seems to simplifies some things and add some performance. I guess it won’t be up to a Dhtmlx level anyway :slight_smile: On the other hand, Sencha bring Architect 3 which took a look advance now on the added values path, continue to evolve while Dhtmlx designer didn’t take any significative evolution for a long time.

“which took a long advance”…
sorry no edit here

How about Webix, the spinoff project from DHTMLX Touch?

It’s almost completely open-sourced (GPL), with 55 widgets and only some advanced features in the “PRO” edition: vertically rotated headers, header menu and grouped columns in DataTable, extra locales, initialization from XML, custom scrollbars, that kind of thing. TreeTable (DHTMLX’s TreeGrid) is free.

If i understood correctly webix is not only for mobile like DHTMLX Touch but for both desktop and mobile, correct ?

DHTMLX Touch is not developed anymore by DHTMLX but by XB software ?

The free release seems to have much more things than DHTMLX free edition.

Correct, Webix works on desktop as well as mobile. Check out the demos at webix.com and http://webix.com/demos/touch.html.

In September 2012, DHTMLX released an HTML5 JavaScript framework optimized for touchscreen and mobile devices, called DHTMLX Touch 1.2. By July 2013, touch features had been integrated directly in dhtmlxSuite, and development of DHTMLX Touch was transferred to Webix, which went on to become an alternative full-blown JavaScript GUI widget component library. Since November 25, 2014, support for DHTMLX Touch has been completely transferred to Webix. Hence the Migration page.

Finally it’s quite the same thing as dhtmlx simplified situation by letting their suite to work on both desktop and mobile; while webix works on both desktop and mobile too :slight_smile:

This drives to a comparison. Technically i can’t tell, while on the price level, webix is more expansive so has to justify this in a way or another.