Page 1 of 3 123 LastLast
Results 1 to 10 of 25

Thread: moo-ext - opinions

  1. #1

    Default moo-ext - opinions

    I thoroughly enjoy yui-ext. Its simply just a great library (thanks jack). I'm currently utilizing it to build a new CMS for our company which is quite destinctive.
    http://don.atomicmotion.com/cms/
    Feedback would be great and please bare with that particular server, kinda slow.

    With larger applications like this I find myself concerned about size, load time and wishing for other functionalities. So, I have started porting yui-ext to utilize mootools, thus moo-ext. Mootools provides a really enhanced libary but with a minimal foot print. I have already ported a number of scripts and it has drastically reducing some of there sizes. It also has various other differences I just find easier to use than YUI (cough $, hehe).

    I wish to know if anyone else thinks this might be a good idea and if they wish to assist in the port.

    Cheers

  2. #2
    Sencha User Animal's Avatar
    Join Date
    Mar 2007
    Location
    Bédoin/Nottingham
    Posts
    30,892

    Default

    I've changed the way I think about web apps. I think this one I'm working on is going to be single page. The JS and CSS BorderLayout, navigation etc will be loaded once. All JSPs will be loaded into a ContentPanel in the center Region.

    So the js loading hit will be only at application startup.

    With the new "X-Requested-By" (I think that's what it will be called) header coming up in the next release of YAHOO.util.Connect, my page handling tag will be able to know whether to output a full HTML document with head, CSS, JS, layout and body, or just a fragment containing the body.

    I'll have a document click handler to handle clicking on links which will cancel the event and load the page into the content area.

  3. #3
    Sencha User
    Join Date
    Apr 2012
    Location
    Austin, Texas
    Posts
    4

    Default

    Can you give some more examples of things you have ported and why?

    Also, Jack intentionally stays away from global functions (cough $ ) for the most part as they tend to cause conflicts with other libraries. Besides, if you just want a shorthand to save typing, you can always do this in your code without actually "porting" another function into Ext:

    Code:
    var $ = YAHOO.ext.Element.get; // .33 syntax, or...
    var $ = Ext.get; // .40 syntax
    I don't know much about mootools, but Jack's element stuff does a lot of work under the covers to boost performance (dynamically-compiled selector functions, element caching, etc.) so that multiple calls to Ext.get perform extremely quickly for the same element -- make sure that you aren't actually giving up useful functionality by replacing Ext functions!

    Also, I'll close with the obvious -- once you start down the road of porting overlapping functions between libs, then you're setting yourself up for a serious maintenance headache. I hope you have good enough reasons to justify the effort!

  4. #4
    Sencha User HarryC's Avatar
    Join Date
    Mar 2007
    Location
    London, England
    Posts
    89

    Default

    While on the subject of others libraries, what do people make of dhtmlsuite: http://www.dhtmlgoodies.com
    It seems to have (copy?) many of the UI features that Jack has built.

    As for the discussion about the size of the footprint that YUI and YUI-EXT warrants, I think it is something developers ignore at times. But things link On-Demand Javascript (http://www.glennjones.net/Post/808/M...tinterface.htm), PHPIED (http://www.phpied.com/javascript-include-ready-onload/) and Ajile (http://ajile.iskitz.com/) seem to me sensible ways around these issues. I feel this is something that would benefit yui-ext.

    PS. I can't get the links to work. [edit] I've put in the standard BBCode URL example below this line and it shows nothing.

    Visit phpBB!

  5. #5

    Default

    Good points. This is why I posted this, so i can get some feedback like this.

    Animal: The X-Req sounds interesting but one of my biggest fears with this library is subpages. I load a page and it simply has to load all the required scripts again. Sure you can optimize and cut down the calls but its gonna happen. Im sure someones going to mention that its cached. Not to first load and not if you have caching disabled (alot of people do). Then you can get into that iframe loader another guy had post, sorry but that was just a headache in a can. don't know, maybe i'm just missing something.

    bmoeskau: I basically was having to rewrite numerous scripts of server compatibiliy (better response handling, etc.). Not to mention the addition of newer functionalities. When I started building the CMS I originally wanted to build it in mootools but it had not yet been released so functionalities still being ironned out. The maintance and size is a definite convern thus is also why I would like to get some opinions first before I dive in 2 deep. Thanks on the alias creation example but I think I'm ok :wink:. The global function and other libraries is a good arguement but how often does anyone use more than one library(like yui-ext) with another. Yes, JQuery but it has not become unnessecary since Jack has implemented the dom functionality. This brings be to my points at the end.

    HarryC: The similarities are scary. not as nice though

    I think the largest reason I have started this is for the fact of communitee size. Let one complete communitee maintain the core elements and we maintain the gui elements. I think thats what we all ready want out of this library. The ability to build robust web applications without a worry of performance or maintenance. double up the use base workin on it and you can get an even better product with the addition of even more functionality. yui-ext did start as an extension of yui. why take on more than needed. my opinion.

  6. #6
    Sencha User Animal's Avatar
    Join Date
    Mar 2007
    Location
    Bédoin/Nottingham
    Posts
    30,892

    Default

    That DHTMLgoodies stuff is very similar to Ext.

    I do like the way they've done theiw "Windows". The buttons are floated to the right in the header so that you can enable/disable close/maximize/minimize.

    Ext's BasicDialog is going to have to become a Window...

  7. #7
    Sencha User
    Join Date
    Apr 2012
    Location
    Austin, Texas
    Posts
    4

    Default

    DHTMLGoodies has been around for a while, but it looks like their "application" suite is a repackaging of some of their old stuff with some newer stuff thrown in (the layouts, in particular, seem to be a pretty blatant rip-off of Ext :x ) Some of their stuff (the non-ripped-off stuff?) is not nearly as nice, plus I'm not sure whether or not they actually offer a core API to work with, and if so, how good it is.

    Regarding lib size and people having caching turned off etc., it's a valid concern, but at this point, those same people would not be able to use any newer Google app, any modern online email app, etc. The way I look at it is that most reasonable people are willing to turn on javascript/cookies/caching in order to get the benefit offered by modern web apps. Personally, I'm not killing myself worrying about that particular aspect.

  8. #8
    Sencha User
    Join Date
    Mar 2007
    Posts
    62

    Default Re: moo-ext - opinions

    Quote Originally Posted by dselkirk
    I wish to know if anyone else thinks this might be a good idea and if they wish to assist in the port.

    Cheers
    Is this really necessary?

    1. YUI core (utilities.js) (83K)
    2. Yahoo Ext (yui-ext.js) (250K)

    that's a lot of power- it includes the all the awesome ext widgetry and raw utilities in 300K.
    if you're designing a cms for 56K then maybe it's justified, but otherwise, I think you're probably wasting your time.

  9. #9
    Sencha User
    Join Date
    Mar 2007
    Posts
    7,854

    Default Re: moo-ext - opinions

    Is this really necessary?

    1. YUI core (utilities.js) (83K)
    2. Yahoo Ext (yui-ext.js) (250K)

    that's a lot of power- it includes the all the awesome ext widgetry and raw utilities in 300K.
    if you're designing a cms for 56K then maybe it's justified, but otherwise, I think you're probably wasting your time.
    I would agree. You're building a Web application for a specific target that will undestand the complexity and size. While the 'smallest possible download' goal may apply when you're building web pages (not apps) for the masses, I think it no longer applies in the application building world. You can't build a web app that looks and functions like a desktop app in 100K.

    Jack continues to strive to reduce the footprint of Ext, and I'm guessing that yahoo will do the same with yui, because the noise ratio about code bloat in their stuff is probably much higher.

  10. #10

    Default

    Thats very true and I am not debating the functionality. But your also forgetting images, customized scripts, implementing scripts, etc. Also, since when has yui-ext been 250k, current trunk built with jsbuilder is around 350k. The CMS listed above has been optimized for better performance and loading and yet its still fairly large.

    Images (17 files) 151 kb
    Scripts (14 files) 487 kb
    Style Sheets (6 files) 52 kb
    Total 692 kb

    So its a toss up, you load a majority once or attempt little bits hear and there. Either way your still working with a lot. I'm not even done yet and I'm already reaching a fairly significant sizes. As for the caching people it think its a fairly valid concern. Not so much for people turning off caching but for all those cleaning programs being utilized to help prevent spam.

    To give a better example of size comparison. I have done a basic port of the DomHelper. The below are the uncompressed sizes of corresponding required files.

    Mootools
    Moo.js 4.26 kb
    Utility.js 3.30 kb
    Array.js 6.53 kb
    String.js 5.00 kb
    Function.js 5.93 kb
    Element.js 20.9 kb
    DomHelper.js 8.43 kb
    Total 54.35 kb

    YUI-EXT
    utilities.js 69.1 kb
    yutil.js 23.3 kb
    Element.js 88.0 kb
    DomHelper.js 16.7 kb
    Total 197.1 kb

    How many clients care about complexity and size. There interested in functionality and ease of use. That is what got me interested in yui-ext. It was robust, functional and fairly sturdy. Isn't there a way we can have both.

Page 1 of 3 123 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •