Re: [Koha-devel] To React or not to React
At 08:18 AM 9/19/2016 -0400, Kyle Hall wrote:
Thanks for the feedback Stefano! Please, if anybody is *against* the use of React in Koha, please voice your concerns!
Question: what has Facebook added to js that we could not use as "regular" js? Not a show stopper, but our "gut feeling" (not fully documented, but more than anecdotal) is that all js code, given its standalone capability, has a more than proportional speed downside. And I'm not going near the licensing questions. If I understand this bug 17297 ("low enhancement") correctly, it refines itemnotes by adding granularity. If this is a "good thing", can the original coding be improved? Add an auth value? If we need js, how optional might this be? (do we know how many Koha users are truly interested?) I've always been impressed by Koha core speed, and without using such expressions as "mission creep" (or heaven forfend, code bloat) I truly recognize that enhancements are a real life necessity. Just wondering how and where they are best added while maintaining the KISS principle... Best -- Paul
Kyle
<http://www.kylehall.info>http://www.kylehall.info ByWater Solutions ( <http://bywatersolutions.com>http://bywatersolutions.com ) Meadville Public Library ( <http://www.meadvillelibrary.org>http://www.meadvillelibrary.org ) Crawford County Federated Library System ( <http://www.ccfls.org>http://www.ccfls.org )
On Fri, Sep 16, 2016 at 9:50 AM, Stefano Bargioni <<mailto:bargioni@pusc.it>bargioni@pusc.it> wrote: My +1 for React. Angular requires a specific skill, other than Javascript. Stefano
On 15 set 2016, at 19:22, Kyle Hall <<mailto:kyle.m.hall@gmail.com>kyle.m.hall@gmail.com> wrote:
I have my proof of concept for using React within Koha completed! You can see it here: <https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17297>https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17297
Please give it a try!
So, I've written this development ( at least in part ) in both Angular and React. I know Angular 2 is out but here are my thoughts so far.
1) It's much easier to think in React than in Angular. React is for the most part just Javascript. It's far less opinionated than Angular. They saying goes React is Javascript and Angular is Angular. I think the flexibility of React works well within the Koha ecosystem.
2) Writing React feels much more like programming. I think it's much faster to develop reactive and ajax features in React than it is using jQuery.
3) React makes it pretty easy to create widgets that we can drop in to a given page and have just work. Pretty much anything that shows up on multiple pages would make for a good React widget. Think the holds table which is on the checkouts page and the patron details page. It is ajaxified now, but a far far cleaner version could be written in React.
4) React is just a view layer. Angular is a full MVC framework with many pieces we don't really need.
I think React is probably the way to go for Koha. I like Angular but for Koha in particular, I think React is a better fit. I think we really need to get this decision made as soon as possible. If anyone has opinions, please let everyone know!
Kyle
<http://www.kylehall.info/>http://www.kylehall.info ByWater Solutions ( <http://bywatersolutions.com/>http://bywatersolutions.com ) Meadville Public Library ( <http://www.meadvillelibrary.org/>http://www.meadvillelibrary.org ) Crawford County Federated Library System ( <http://www.ccfls.org/>http://www.ccfls.org ) _______________________________________________ Koha-devel mailing list <mailto:Koha-devel@lists.koha-community.org>Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : <http://www.koha-community.org/>http://www.koha-community.org/ git : <http://git.koha-community.org/>http://git.koha-community.org/ bugs : <http://bugs.koha-community.org/>http://bugs.koha-community.org/
_______________________________________________ Koha-devel mailing list <mailto:Koha-devel@lists.koha-community.org>Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : <http://www.koha-community.org/>http://www.koha-community.org/ git : <http://git.koha-community.org/>http://git.koha-community.org/ bugs : <http://bugs.koha-community.org/>http://bugs.koha-community.org/
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
--- Maritime heritage and history, preservation and conservation, research and education through the written word and the arts. <http://NavalMarineArchive.com> and <http://UltraMarine.ca>
Regarding licensing: https://en.wikipedia.org/wiki/React_(JavaScript_library) See part "Patents clause controversy" Marc Am 19.09.2016 um 17:15 schrieb Paul A:
At 08:18 AM 9/19/2016 -0400, Kyle Hall wrote:
Thanks for the feedback Stefano! Please, if anybody is *against* the use of React in Koha, please voice your concerns!
Question: what has Facebook added to js that we could not use as "regular" js? Not a show stopper, but our "gut feeling" (not fully documented, but more than anecdotal) is that all js code, given its standalone capability, has a more than proportional speed downside. And I'm not going near the licensing questions.
If I understand this bug 17297 ("low enhancement") correctly, it refines itemnotes by adding granularity. If this is a "good thing", can the original coding be improved? Add an auth value? If we need js, how optional might this be? (do we know how many Koha users are truly interested?)
I've always been impressed by Koha core speed, and without using such expressions as "mission creep" (or heaven forfend, code bloat) I truly recognize that enhancements are a real life necessity. Just wondering how and where they are best added while maintaining the KISS principle...
Best -- Paul
Kyle
http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org )
On Fri, Sep 16, 2016 at 9:50 AM, Stefano Bargioni <bargioni@pusc.it <mailto:bargioni@pusc.it>> wrote:
My +1 for React. Angular requires a specific skill, other than Javascript. Stefano
On 15 set 2016, at 19:22, Kyle Hall <kyle.m.hall@gmail.com <mailto:kyle.m.hall@gmail.com>> wrote:
I have my proof of concept for using React within Koha completed! You can see it here: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17297
Please give it a try!
So, I've written this development ( at least in part ) in both Angular and React. I know Angular 2 is out but here are my thoughts so far.
1) It's much easier to think in React than in Angular. React is for the most part just Javascript. It's far less opinionated than Angular. They saying goes React is Javascript and Angular is Angular. I think the flexibility of React works well within the Koha ecosystem.
2) Writing React feels much more like programming. I think it's much faster to develop reactive and ajax features in React than it is using jQuery.
3) React makes it pretty easy to create widgets that we can drop in to a given page and have just work. Pretty much anything that shows up on multiple pages would make for a good React widget. Think the holds table which is on the checkouts page and the patron details page. It is ajaxified now, but a far far cleaner version could be written in React.
4) React is just a view layer. Angular is a full MVC framework with many pieces we don't really need.
I think React is probably the way to go for Koha. I like Angular but for Koha in particular, I think React is a better fit. I think we really need to get this decision made as soon as possible. If anyone has opinions, please let everyone know!
Kyle
http://www.kylehall.info <http://www.kylehall.info/> ByWater Solutions ( http://bywatersolutions.com <http://bywatersolutions.com/> ) Meadville Public Library ( http://www.meadvillelibrary.org <http://www.meadvillelibrary.org/> ) Crawford County Federated Library System ( http://www.ccfls.org <http://www.ccfls.org/> ) _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha-devel@lists.koha-community.org> http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha-devel@lists.koha-community.org> http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
--- Maritime heritage and history, preservation and conservation, research and education through the written word and the arts. <http://NavalMarineArchive.com <http://navalmarinearchive.com/>> and <http://UltraMarine.ca <http://ultramarine.ca/>>
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
I did much research on that particular issue and it was put to rest when Facebook updated it's license for React. It looks like the Wikipedia page only has the vaguest reference to that ; )
Regarding licensing:
https://en.wikipedia.org/wiki/React_(JavaScript_library)
See part "Patents clause controversy"
The updated licence isn’t without controversy: <https://discuss.reactjs.org/t/legal-department-did-not-allow-use-of-react/3309/4> https://discuss.reactjs.org/t/legal-department-did-not-allow-use-of-react/33... That said, I think the issue is that Facebook could revoke your licence to use React if you take legal action against Facebook. I don’t imagine the Koha community is going to do that, so it’s probably not a blocker. David Cook Systems Librarian Prosentient Systems 72/330 Wattle St Ultimo, NSW 2007 Australia Office: 02 9212 0899 Direct: 02 8005 0595 From: koha-devel-bounces@lists.koha-community.org [mailto:koha-devel-bounces@lists.koha-community.org] On Behalf Of Kyle Hall Sent: Tuesday, 20 September 2016 3:24 PM To: Marc Véron <veron@veron.ch> Cc: Koha Devel <koha-devel@lists.koha-community.org> Subject: Re: [Koha-devel] To React or not to React I did much research on that particular issue and it was put to rest when Facebook updated it's license for React. It looks like the Wikipedia page only has the vaguest reference to that ; ) Regarding licensing: https://en.wikipedia.org/wiki/React_(JavaScript_library) See part "Patents clause controversy"
David Cook schrieb am 21.09.2016
The updated licence isn’t without controversy: <https://discuss.reactjs.org/t/legal-department-did-not-allow-use-of-react/3309/4> https://discuss.reactjs.org/t/legal-department-did-not-allow-use-of-react/33...
That said, I think the issue is that Facebook could revoke your licence to use React if you take legal action against Facebook. I don’t imagine the Koha community is going to do that, so it’s probably not a blocker.
If you are right and that is the issue, does that mean Koha would not be Free Software anymore unless everything React is reverted? That sounds like something I would not just push away with "i don't imagine that happening", it sounds scary and not a way I want to go. I don't see how a license that can be revoked for whatever reasons could work for us. -- Mirko
Mirko, you would have no worries. The license basically means that an entity that sues facebook may lose the patent grants facebook has. So if I sue Facebook, I might lose my patent grant to distribute React based software, but you would not be affected in any way. The license cannot be revoked. Kyle If you are right and that is the issue, does that mean Koha would
not be Free Software anymore unless everything React is reverted?
That sounds like something I would not just push away with "i don't imagine that happening", it sounds scary and not a way I want to go.
I don't see how a license that can be revoked for whatever reasons could work for us.
-- Mirko
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
At 02:14 PM 9/21/2016 +0200, Mirko Tietgen wrote:
David Cook schrieb am 21.09.2016
The updated licence isnât without controversy:
<https://discuss.reactjs.org/t/legal-department-did-not-allow-use-of-react/3309/4>
https://discuss.reactjs.org/t/legal-department-did-not-allow-use-of-react/33...
That said, I think the issue is that Facebook could revoke your licence to use React if you take legal action against Facebook. I donât imagine the Koha community is going to do that, so itâs probably not a blocker.
If you are right and that is the issue, does that mean Koha would not be Free Software anymore unless everything React is reverted?
That sounds like something I would not just push away with "i don't imagine that happening", it sounds scary and not a way I want to go.
I don't see how a license that can be revoked for whatever reasons could work for us.
Agreed. But IANAL. However ISTR that are recent thread suggested "tens of thousands" of potential libraries|users worldwide (based on downloads?) so Murphy|Sod's Law will kick in sooner or later... Best -- P.
Paul, that's not how it works. As I wrote earlier, if *I* sue Facebook I could potentially lose my right to distribute software using React, but you would be unaffected. Kyle <https://secure2.convio.net/cffh/site/Donation2?df_id=1395&FR_ID=4715&PROXY_ID=2706639&PROXY_TYPE=20&1395.donation=form1&s_src=CHORUS&s_subsrc=CHAADOEB> http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org ) On Wed, Sep 21, 2016 at 8:30 AM, Paul A <paul.a@navalmarinearchive.com> wrote:
At 02:14 PM 9/21/2016 +0200, Mirko Tietgen wrote:
David Cook schrieb am 21.09.2016
The updated licence isn’t without controversy: <https://discuss.reactjs.org/t/legal-department-did-not-allo w-use-of-react/3309/4> https://discuss.reactjs.org/t/legal-department-did-not-allow -use-of-react/3309/4
That said, I think the issue is that Facebook could revoke your licence to use React if you take legal action against Facebook. I don’t imagine the Koha community is going to do that, so it’s probably not a blocker.
If you are right and that is the issue, does that mean Koha would not be Free Software anymore unless everything React is reverted?
That sounds like something I would not just push away with "i don't imagine that happening", it sounds scary and not a way I want to go.
I don't see how a license that can be revoked for whatever reasons could work for us.
Agreed. But IANAL. However ISTR that are recent thread suggested "tens of thousands" of potential libraries|users worldwide (based on downloads?) so Murphy|Sod's Law will kick in sooner or later...
Best -- P.
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
Yes, I've done as thorough a review on the issue as I've been able to. Basically, Koha is never in any danger. But if say, *I* sued Facebook, I could possibly lose my patent grants and wouldn't be able to distribute software that uses React. Everyone else would continue on using Koha as usual. Many very large companies with cadres of lawyers are using React, so I don't think it is anything to worry too hard about. Kyle On Tue, Sep 20, 2016 at 6:11 PM, David Cook <dcook@prosentient.com.au> wrote:
The updated licence isn’t without controversy: https://discuss.reactjs.org/t/legal-department-did-not- allow-use-of-react/3309/4
That said, I think the issue is that Facebook could revoke your licence to use React if you take legal action against Facebook. I don’t imagine the Koha community is going to do that, so it’s probably not a blocker.
David Cook
Systems Librarian
Prosentient Systems
72/330 Wattle St
Ultimo, NSW 2007
Australia
Office: 02 9212 0899
Direct: 02 8005 0595
*From:* koha-devel-bounces@lists.koha-community.org [mailto: koha-devel-bounces@lists.koha-community.org] *On Behalf Of *Kyle Hall *Sent:* Tuesday, 20 September 2016 3:24 PM *To:* Marc Véron <veron@veron.ch> *Cc:* Koha Devel <koha-devel@lists.koha-community.org> *Subject:* Re: [Koha-devel] To React or not to React
I did much research on that particular issue and it was put to rest when Facebook updated it's license for React. It looks like the Wikipedia page only has the vaguest reference to that ; )
Regarding licensing:
https://en.wikipedia.org/wiki/React_(JavaScript_library)
See part "Patents clause controversy"
El mié., 21 sept. 2016 a las 11:17, Kyle Hall (<kyle.m.hall@gmail.com>) escribió:
Yes, I've done as thorough a review on the issue as I've been able to. Basically, Koha is never in any danger. But if say, *I* sued Facebook, I could possibly lose my patent grants and wouldn't be able to distribute software that uses React. Everyone else would continue on using Koha as usual. Many very large companies with cadres of lawyers are using React, so I don't think it is anything to worry too hard about.
This is the kind of thing we need lawyers for. Do we have access to some? -- Tomás Cohen Arazi Theke Solutions (https://theke.io <http://theke.io/>) ✆ +54 9351 3513384 GPG: B2F3C15F
I suppose that is the most prudent thing to do Tomas. We do have a access to a lawyer so I'll talk to her and let you know her thoughts! Kyle <https://secure2.convio.net/cffh/site/Donation2?df_id=1395&FR_ID=4715&PROXY_ID=2706639&PROXY_TYPE=20&1395.donation=form1&s_src=CHORUS&s_subsrc=CHAADOEB> http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org ) On Wed, Sep 21, 2016 at 8:22 AM, Tomas Cohen Arazi <tomascohen@gmail.com> wrote:
El mié., 21 sept. 2016 a las 11:17, Kyle Hall (<kyle.m.hall@gmail.com>) escribió:
Yes, I've done as thorough a review on the issue as I've been able to. Basically, Koha is never in any danger. But if say, *I* sued Facebook, I could possibly lose my patent grants and wouldn't be able to distribute software that uses React. Everyone else would continue on using Koha as usual. Many very large companies with cadres of lawyers are using React, so I don't think it is anything to worry too hard about.
This is the kind of thing we need lawyers for. Do we have access to some?
-- Tomás Cohen Arazi Theke Solutions (https://theke.io <http://theke.io/>) ✆ +54 9351 3513384 GPG: B2F3C15F
I'm still going to run this past our lawyer, but I think it's even less of a concern then before. Not only would I need to sue Facebook, I would need to sue Facebook *for infringing on my own patents*. Kyle <https://secure2.convio.net/cffh/site/Donation2?df_id=1395&FR_ID=4715&PROXY_ID=2706639&PROXY_TYPE=20&1395.donation=form1&s_src=CHORUS&s_subsrc=CHAADOEB> http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org ) On Wed, Sep 21, 2016 at 8:40 AM, Kyle Hall <kyle.m.hall@gmail.com> wrote:
I suppose that is the most prudent thing to do Tomas. We do have a access to a lawyer so I'll talk to her and let you know her thoughts!
Kyle
http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org )
On Wed, Sep 21, 2016 at 8:22 AM, Tomas Cohen Arazi <tomascohen@gmail.com> wrote:
El mié., 21 sept. 2016 a las 11:17, Kyle Hall (<kyle.m.hall@gmail.com>) escribió:
Yes, I've done as thorough a review on the issue as I've been able to. Basically, Koha is never in any danger. But if say, *I* sued Facebook, I could possibly lose my patent grants and wouldn't be able to distribute software that uses React. Everyone else would continue on using Koha as usual. Many very large companies with cadres of lawyers are using React, so I don't think it is anything to worry too hard about.
This is the kind of thing we need lawyers for. Do we have access to some?
-- Tomás Cohen Arazi Theke Solutions (https://theke.io <http://theke.io/>) ✆ +54 9351 3513384 GPG: B2F3C15F
Kyle Hall schrieb am 21.09.2016
I suppose that is the most prudent thing to do Tomas. We do have a access to a lawyer so I'll talk to her and let you know her thoughts!
Excellent, thank you Kyle. And to Tomas for bringing lawyers into the discussion. In the end nobody cares what we thought was right or how we voted about it. And it could have huge consequences. Or we are scared for no reason. -- Mirko
Question: what has Facebook added to js that we could not use as "regular"
js? Not a show stopper, but our "gut feeling" (not fully documented, but more than anecdotal) is that all js code, given its standalone capability, has a more than proportional speed downside. And I'm not going near the licensing questions.
If I understand this bug 17297 ("low enhancement") correctly, it refines itemnotes by adding granularity. If this is a "good thing", can the original coding be improved? Add an auth value? If we need js, how optional might this be? (do we know how many Koha users are truly interested?)
I've always been impressed by Koha core speed, and without using such expressions as "mission creep" (or heaven forfend, code bloat) I truly recognize that enhancements are a real life necessity. Just wondering how and where they are best added while maintaining the KISS principle...
Best -- Paul
Kyle
http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org )
On Fri, Sep 16, 2016 at 9:50 AM, Stefano Bargioni <bargioni@pusc.it> wrote: My +1 for React. Angular requires a specific skill, other than Javascript. Stefano
On 15 set 2016, at 19:22, Kyle Hall <kyle.m.hall@gmail.com> wrote:
I have my proof of concept for using React within Koha completed! You can see it here: https://bugs.koha-community. org/bugzilla3/show_bug.cgi?id=17297
Please give it a try!
So, I've written this development ( at least in part ) in both Angular and React. I know Angular 2 is out but here are my thoughts so far.
1) It's much easier to think in React than in Angular. React is for the most part just Javascript. It's far less opinionated than Angular. They saying goes React is Javascript and Angular is Angular. I think the flexibility of React works well within the Koha ecosystem.
2) Writing React feels much more like programming. I think it's much faster to develop reactive and ajax features in React than it is using jQuery.
3) React makes it pretty easy to create widgets that we can drop in to a given page and have just work. Pretty much anything that shows up on multiple pages would make for a good React widget. Think the holds table which is on the checkouts page and the patron details page. It is ajaxified now, but a far far cleaner version could be written in React.
4) React is just a view layer. Angular is a full MVC framework with many pieces we don't really need.
I think React is probably the way to go for Koha. I like Angular but for Koha in particular, I think React is a better fit. I think we really need to get this decision made as soon as possible. If anyone has opinions, please let everyone know!
Kyle
http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org ) _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
--- Maritime heritage and history, preservation and conservation, research and education through the written word and the arts. <http://NavalMarineArchive.com <http://navalmarinearchive.com/>> and < http://UltraMarine.ca <http://ultramarine.ca/>>
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
Question: what has Facebook added to js that we could not use as "regular" js? Not a show stopper, but our "gut feeling" (not fully documented, but more than anecdotal) is that all js code, given its standalone capability, has a more than proportional speed downside. And I'm not going near the licensing questions.
I must disagree. Ajax Koha features powered by javascript are far faster then the traditional cgi-powered equivalents. Another powerful speed factor is "just in time" loading. Consider all the data loaded in tabs they may only be viewed once every dozen or more views. The prime example I can point to is the holds tab. In the past we had to process and load the holds data for a patron on every checkout. Now we only load that data when the tab is clicked on, thus saving many wasted cpu cycles!
If I understand this bug 17297 ("low enhancement") correctly, it refines itemnotes by adding granularity. If this is a "good thing", can the original coding be improved? Add an auth value? If we need js, how optional might this be? (do we know how many Koha users are truly interested?)
This discussion is not really about this particular feature or what it does, but about the architecture that it uses. This is my second iteration of the feature. The first version I wrote used Angular which gives me a good perspective on the use of both in Koha, which is why I started this discussion ; ) The short answer is yes, it's definitely optional and the feature can be safely ignored if you aren't interested in it.
I've always been impressed by Koha core speed, and without using such expressions as "mission creep" (or heaven forfend, code bloat) I truly recognize that enhancements are a real life necessity. Just wondering how and where they are best added while maintaining the KISS principle...
Getting proper tools in Koha will have a great impact on *reducing* bloat rather than adding to it. When we make requests via our services we bypass all the ui processing that is needed the redisplay the page. Koha has suffered from bloating in the last few years of releases, but they had nothing to do with javascript or restful services ( thanks again to Jonathan for doing so much work de-bloating Koha! ) Kyle
Best -- Paul
Kyle
http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org )
On Fri, Sep 16, 2016 at 9:50 AM, Stefano Bargioni <bargioni@pusc.it> wrote: My +1 for React. Angular requires a specific skill, other than Javascript. Stefano
On 15 set 2016, at 19:22, Kyle Hall <kyle.m.hall@gmail.com> wrote:
I have my proof of concept for using React within Koha completed! You can see it here: https://bugs.koha-community. org/bugzilla3/show_bug.cgi?id=17297
Please give it a try!
So, I've written this development ( at least in part ) in both Angular and React. I know Angular 2 is out but here are my thoughts so far.
1) It's much easier to think in React than in Angular. React is for the most part just Javascript. It's far less opinionated than Angular. They saying goes React is Javascript and Angular is Angular. I think the flexibility of React works well within the Koha ecosystem.
2) Writing React feels much more like programming. I think it's much faster to develop reactive and ajax features in React than it is using jQuery.
3) React makes it pretty easy to create widgets that we can drop in to a given page and have just work. Pretty much anything that shows up on multiple pages would make for a good React widget. Think the holds table which is on the checkouts page and the patron details page. It is ajaxified now, but a far far cleaner version could be written in React.
4) React is just a view layer. Angular is a full MVC framework with many pieces we don't really need.
I think React is probably the way to go for Koha. I like Angular but for Koha in particular, I think React is a better fit. I think we really need to get this decision made as soon as possible. If anyone has opinions, please let everyone know!
Kyle
http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org ) _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
--- Maritime heritage and history, preservation and conservation, research and education through the written word and the arts. <http://NavalMarineArchive.com <http://navalmarinearchive.com/>> and < http://UltraMarine.ca <http://ultramarine.ca/>>
_______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
Haven’t there been complaints about the slowness of the AJAX-powered circulation system? That said, I think that’s an exception to the norm. “Just in time” loading can be useful, since users see a loaded webpage with a “processing” or “loading” notification rather than a white page as their browser struggles to load everything at once. Although when something takes a long time with a “processing” notification, it still highlights the slowness of the system anyway. I’m confused though, Kyle, when you say that the feature is optional. How would it be optional? Wouldn’t the React implementation be the only implementation? I don’t imagine there being a system preference to say “use server-side processing instead”. I’ve been thinking a lot about bloat lately. I use the Catalyst framework on a different Perl project, and I absolutely love it. It makes it so easy to put together and maintain a web app. But I do wonder about committing ourselves to X number of frameworks and such. What do we do when they’re no longer supported? Rip them out and use a new one? Of course, if React is as lightweight as Kyle says, that might make it ideal choice as perhaps it would be easy enough to rip out and replace if need be. David Cook Systems Librarian Prosentient Systems 72/330 Wattle St Ultimo, NSW 2007 Australia Office: 02 9212 0899 Direct: 02 8005 0595 From: koha-devel-bounces@lists.koha-community.org [mailto:koha-devel-bounces@lists.koha-community.org] On Behalf Of Kyle Hall Sent: Tuesday, 20 September 2016 3:22 PM To: Paul A <paul.a@navalmarinearchive.com> Cc: Koha Devel <koha-devel@lists.koha-community.org> Subject: Re: [Koha-devel] To React or not to React Question: what has Facebook added to js that we could not use as "regular" js? Not a show stopper, but our "gut feeling" (not fully documented, but more than anecdotal) is that all js code, given its standalone capability, has a more than proportional speed downside. And I'm not going near the licensing questions. I must disagree. Ajax Koha features powered by javascript are far faster then the traditional cgi-powered equivalents. Another powerful speed factor is "just in time" loading. Consider all the data loaded in tabs they may only be viewed once every dozen or more views. The prime example I can point to is the holds tab. In the past we had to process and load the holds data for a patron on every checkout. Now we only load that data when the tab is clicked on, thus saving many wasted cpu cycles! If I understand this bug 17297 ("low enhancement") correctly, it refines itemnotes by adding granularity. If this is a "good thing", can the original coding be improved? Add an auth value? If we need js, how optional might this be? (do we know how many Koha users are truly interested?) This discussion is not really about this particular feature or what it does, but about the architecture that it uses. This is my second iteration of the feature. The first version I wrote used Angular which gives me a good perspective on the use of both in Koha, which is why I started this discussion ; ) The short answer is yes, it's definitely optional and the feature can be safely ignored if you aren't interested in it. I've always been impressed by Koha core speed, and without using such expressions as "mission creep" (or heaven forfend, code bloat) I truly recognize that enhancements are a real life necessity. Just wondering how and where they are best added while maintaining the KISS principle... Getting proper tools in Koha will have a great impact on *reducing* bloat rather than adding to it. When we make requests via our services we bypass all the ui processing that is needed the redisplay the page. Koha has suffered from bloating in the last few years of releases, but they had nothing to do with javascript or restful services ( thanks again to Jonathan for doing so much work de-bloating Koha! ) Kyle Best -- Paul Kyle http://www.kylehall.info ByWater Solutions ( http://bywatersolutions.com ) Meadville Public Library ( http://www.meadvillelibrary.org ) Crawford County Federated Library System ( http://www.ccfls.org ) On Fri, Sep 16, 2016 at 9:50 AM, Stefano Bargioni <bargioni@pusc.it <mailto:bargioni@pusc.it> > wrote: My +1 for React. Angular requires a specific skill, other than Javascript. Stefano On 15 set 2016, at 19:22, Kyle Hall <kyle.m.hall@gmail.com <mailto:kyle.m.hall@gmail.com> > wrote: I have my proof of concept for using React within Koha completed! You can see it here: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17297 Please give it a try! So, I've written this development ( at least in part ) in both Angular and React. I know Angular 2 is out but here are my thoughts so far. 1) It's much easier to think in React than in Angular. React is for the most part just Javascript. It's far less opinionated than Angular. They saying goes React is Javascript and Angular is Angular. I think the flexibility of React works well within the Koha ecosystem. 2) Writing React feels much more like programming. I think it's much faster to develop reactive and ajax features in React than it is using jQuery. 3) React makes it pretty easy to create widgets that we can drop in to a given page and have just work. Pretty much anything that shows up on multiple pages would make for a good React widget. Think the holds table which is on the checkouts page and the patron details page. It is ajaxified now, but a far far cleaner version could be written in React. 4) React is just a view layer. Angular is a full MVC framework with many pieces we don't really need. I think React is probably the way to go for Koha. I like Angular but for Koha in particular, I think React is a better fit. I think we really need to get this decision made as soon as possible. If anyone has opinions, please let everyone know! Kyle http://www.kylehall.info <http://www.kylehall.info/> ByWater Solutions ( http://bywatersolutions.com <http://bywatersolutions.com/> ) Meadville Public Library ( http://www.meadvillelibrary.org <http://www.meadvillelibrary.org/> ) Crawford County Federated Library System ( http://www.ccfls.org <http://www.ccfls.org/> ) _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha-devel@lists.koha-community.org> http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/ _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha-devel@lists.koha-community.org> http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/ _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha-devel@lists.koha-community.org> http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/ --- Maritime heritage and history, preservation and conservation, research and education through the written word and the arts. <http://NavalMarineArchive.com <http://navalmarinearchive.com/> > and <http://UltraMarine.ca <http://ultramarine.ca/> > _______________________________________________ Koha-devel mailing list Koha-devel@lists.koha-community.org <mailto:Koha-devel@lists.koha-community.org> http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel website : http://www.koha-community.org/ git : http://git.koha-community.org/ bugs : http://bugs.koha-community.org/
participants (6)
-
David Cook -
Kyle Hall -
Marc Véron -
Mirko Tietgen -
Paul A -
Tomas Cohen Arazi