free-jqgrid / jqGrid

jQuery grid plugin
https://github.com/free-jqgrid/jqGrid
Other
480 stars 195 forks source link

Free jqGrid roadmap #212

Open mgallegos opened 8 years ago

mgallegos commented 8 years ago

Firstable I want to congratulate you for all the amazing work you've done since the unfortunate change of jqgrid license. I believe this is the more active forked at the moment and since I have project that uses the jqgrid library I'm very insteresting in the work that you're doing.

I just want to ask you about your plans for free-jqgrid in the near future, are you planning on creating a community around it?

Best regards!

OlegKi commented 8 years ago

I don't want to promise too much. Because of that I publish no "official" roadmap or free jqGrid. Free jqGrid bring me very few money from donations. Thus I earn the money for me and my family from another consulting and software development projects. The projects have of cause higher priority for me as free jqGrid. Because of the reason I can make a pause in development of free jqGrid at any time. Nevertheless I try to fix all bugs as quickly as possible and to answer on the issues on GitHub and on questions on the stackoverflow.

The next step of free jqGrid development is providing better support of Bootstrap (without requirement to include jQuery UI CSS additionally) and supporting of the third iconSet - iconSet: "glyph" (together with old iconSet: "fontAwesome" and iconSet: "jQueryUI"). I posted already the most changes to GitHub. I want to make some additional changes to simplify customization of guiStyle, to make some tests and to fix all bugs, which could found.

You can see the current state of the above implementations on the following demos: bootstrap bootstrapPrimary bootstrap with grouping and custom colors bootstrap with grouping and glyphicons bootstrap with glyphicons jQuery UI with glyphicons

Moreover I plan to extend the texts of the site http://free-jqgrid.github.io/, to include many code examples and to include the documentation of all implemented options and methods. The new features are described currently only on wiki and readmes to every published version. I want try to create some demo examples for the server side code (using the technologies, which I use myself).

The main problem, which I have, is the time to implement my plans. :-)

P.S. I will take look on your project laravel-jqgrid later. It seems interesting at the first glance.

mgallegos commented 8 years ago

Thank you for your honest answer. I believe It's worth working on a project you care about and even though it's brings you few money directly, I'm sure the reputation you earn by doing this will pay off.

I hope more people will you join your effort, It will be nice to create a community around free-jqgrid in order to work together in the development of the project.

Finally, I just wanted to offer my help if there is anything I can do to help.

P.S: The demos look great, I look forward for the better support of Bootstrap.

OlegKi commented 8 years ago

Hi Mario,

I created free jqGrid repository initially under my personal GitHub account https://github.com/OlegKi, but then registered https://github.com/free-jqgrid as organization and moved the repository under it. I mean that I thought about the community directly at the beginning.

The problem was only that the imagination about the development was too different by another people with which I had contact at the time and the communication about the problem took much more time as the implementation itself. I suggested to divide the responsibility of the development. It could reduce the requirement of permanently communications. It reduces the side effects too.

One good plugin grid.odata.js have developed Mark Babayev. It was full his part and I just made some suggestions about clean up the code and about integration of the plugin in the build process.

There are many absolutely separate subjects in development of jqGrid. It's common parts like build process, clean-up of CSS of ui.jqgrid.css, creating unit tests (which could be very important) or creating more better rules for jshint, the usage of eslint instead or jshint, extending documentation, creating demo examples which demonstrates the usage of free jqGrid. Documentation and unit tests are for me the most important parts which needs free jqGrid noe. I posted just now the changes in jqGrid to support glyphicons and Bootstrap. One could implement support of other icon set for example (see here) or support of another popular CSS framework like foundation. If you prefer to write the code then one can implement extended functionality in some existing methods or to create new method. For example I posted for a long time some methods, which are not yet integrated in free jqGrid. For example addColumn, which allows to add column to the grid without recreating of it. One can modify and extend the method and integrate in free jqGrid. One can examine plugins and modify showHideColumnMenu, createContexMenuFromNavigatorButtons or some other methods like columnChooser to work with Boostrap (without jQuery UI). One can write removeColumn too. One can choose more simple method like footerData and add support of multiple-rows in the footer. I can continue very long time...

You can post your suggestions (changes of jqGrid code or in documentation) as pull requests at the beginning. Later I can get you more write permissions.

I can create new repository under https://github.com/free-jqgrid, where you would have full write permission and where you can develop some separate parts like some PHP code, which could be used in combination with free jqGrid on the backend.

Everything is possible and I'm full opened. You can choose yourself which parts from described above or some new one seems to your the mostly interesting. You could contact me to clear any parts of jqGrid. The main goal, that you could do some specific part of the development of free jqGrid, and for the part you will be more responsible as me.

It's very important just to get to know us at the beginning and to understand whether we can easy work together or not.

Thus think about all that and write me how you could see your part in the possible working together. You can post me any information to the email oleg.kiriljuk@ok-soft-gmbh.com if you don't want that everybody read the information.

Best regards Oleg

savornicesei commented 8 years ago

I would also like to say "thank you" to Oleg for supporting and developing jqGrid for so many years. I do hope it will flourish, since it's the most advanced client-side grid as far as I know.

OlegKi commented 8 years ago

@savornicesei : Thank you for the post! Developing of free software product and spending a lot of time in answering questions from unknown people over the world is heavy. One asks yourself regularly whether to continue to do this or not. Such posts like youth helps don't drop to do this.

afattahi54 commented 8 years ago

Dear Oleg, I was too, looking for a place to thank you for this GREAT GRID ! I remember four/five years ago when I find jqGrid ... at that time I was hesitate to use it our not... But now I am quite happy for my choice ! Until then, I used this gird in all my web-based application and recommend it to other teams too.

With your support, on stack overflow, the jqGrid never let me down.... thank you again !

OlegKi commented 8 years ago

@afattahi54 👍 Thank you very much for your feedback! I'm glad to know that my work helps you and other people over the world.

fletchsod-developer commented 8 years ago

We have been a little disappointed with slow development. But understandable that you're the only one developing this complex source code and no one else helping you out. So, we're thankful that free-jqgrid still around for, hopefully, a long time to come. Next year, my company going to do a complete rewrite of few websites (combine) into one cloud web application for scalalibity reasons & sparse matrix database logics. We're going to go with Angular 2 & TypeScript to cut down on customer issues & support calls. Customers are not always nice to us, unfortunately. Also, unfortunately with the rewrite, it means no more JQuery and a full blown ES6 and ES7, and no ES5 support on our end. :-(

Thanks for all you do with jqGrid. 5 years ago, we were hoping more & more people get involve in free-jqgrid because this is a great stuff.

OlegKi commented 8 years ago

@fletchsod-developer : Sorry, but I can't follow your first statement: "a little disappointed with slow development". What you expect? Do you posted some feature requests, bug reports, which are not fixed or you posted some performance problems, which isn't solved? In which direction you expected the development of jqGrid? In my opinion the main problem of jqGrid: 1) creating better documentation with many code examples and integration examples (inclusive the usage from Angular 1/2, React and so on) 2) creating of many good unit tests, which could reduce the side effects of modification of the code. There are of cause many parts, which can be improved and where I know, how to improve the performance additionally. The problem of any kind of development: the time investments and thus the money investments. I can see more as 5000 downloads of different version of free jqGrid from nuget and about 4800 from npm, but I get only a few donations to the project. Because of that free jqGrid is only a hobby for me and I can't invest to many of my time for it.

My main goal of the free jqGrid development was helping the developers, who used already jqGrid 4.7 or early in his existing solutions. Many people just updated the existing solution to the next version from https://github.com/tonytomov/jqGrid without understanding that it can't be used more under MIT license as before. Thus the companies used the solution can just get some day the letter from the lower with the request of some large payments because of breaking the license. I find this unfair and mostly because of that I started free jqGrid development. Because of the goal I hold 4.x.y conversions of all versions and try to hold maximal compatibility to the previous version (<=4.7) of jqGrid.

The languages ES6 and ES7 are mostly superset of ES5. It's more comfortable to develop in ES7, but rewriting existing code written in ES5 to ES7 isn't good idea in my opinion. Much better is rewriting only small parts of the code, where one have bottleneck or where one miss some important feature, to get real advantages. All modern JavaScript frameworks contains the possibility to use a component, which manipulate DOM internally. It's directive/directives in Angular 1/2, componentDidMount in React, mounted in vue.js and so on. All frameworks support existing components even implemented using a foreign technology. If the existing component is well good written then rewriting it in the new technology will follow the performance degradation. At the end it's important only the list of features implemented in the "component" and the performance of the component. The technology used inside of the component isn't really important for the final solution. Try the demo for example. It displays the time of filling, paging, sorting and filtering of 5000 rows of data with 13 columns and 25 rows per page or you can try another demo with 40000 rows. Try to display/sort/filter the grid using another "modern" technology and compare the performance. It's interesting for me which native Angular 2 grid you plan to use? Has the grid the same or better performance or the same of better set of features? I believe that there are always a better control, but free jqGrid is still not out-of-date in my opinion.

I don't want to start long discussion about the subject in the thread. I wanted just write my personal opinion about the subject.

olavorn commented 7 years ago

@OlegKi,

as one says : Software is free but work is not slavery :+1: