RE: Speed Issues
"alex black" <[email protected]> Mon, 4 Jul 2005 12:32:39 -0700 (PDT)
| Newsgroups | gmane.comp.lib.binarycloud.devel |
|---|---|
| Message-ID | <[email protected]> |
> After taking a look at rails I can see why it would be hard to go back > after > using it. It's like other programming languages are struggling to evolve > to > OO/MVC frameworks, each one with it's own strengths and weaknesses, but by > starting with all of those concepts in mind from the beginning, rails > seems > to cover it all. It covers all of the foundation beautifully. There are still many things missing or underdeveloped, but finally I feel as if the language is helpful, not a hindrance like PHP. Rails is the _single_and_only_ clean, elegant MVC implementation I've seen, and it works beautifully in production. It makes planning and scoping an application easy: spec the models, then the controllers, then the controller actions. Bingo. > My main reason for choosing binarycloud was the parent-child node > structure. Right, I miss this just a little bit in rails, i.e. the rails presentation structure is simplistic - but frankly 99% of apps just don't need the insane power of Nodes. I'm coming around to think perhaps that was a mistake with bc - by making Node so powerful, we made it inaccessible and a little scary ;) > Even though I wasn't a big fan of ndf, I really liked the organization of > each extendable node being encapsulated within a parent. I think that > could > be ported to rails fairly easily, and by adding properties to each node, > we > could do things like control caching for each node individually through > native rails cache functions. It would simply be adding a better > presentation/organization layer. You can already control a lot with native rails caching functions in controller actions - and you can render any controller action inside any other controller action - so you basically retain all of the best parts of Node. It was a little hard to use rails the first time - the framework design is simply better than bc. SOme credit goes to the language, but much is deserved by DHH. I set out to design bc because I needed the tools, not because I had a giant ego about being the best ;) Everything else I saw was crap or "nice but not there" - except rails, which I have found very, very few flaws with. Part of the reason rails has evolved so fast is Ruby. Rails would not exist in its current form were it not for ruby. Once you realize _how_insanely_powerful_ ruby is, PHP seems like a child's toy. Building a site with PHP, even binarycloud, is like building a house with a chainsaw and a hammer. Building a site with ruby and rails is like building a site with a set of fine woodworking tools, and a little workbench where you can easily make your own tools for each little job ;) > I think that the current form implementation could use a lot of work but > would be a good component. I actually have a really nice javascript form > validation library that I wrote that I would like to integrate into > something. It handles validation automagically by parsing variables > attached > directly to form fields. You can see some of the functionality here: > http://beta.zaadz.com/forms/?formName=site_registration.html Very, very nice form. I'd love to get more intellgent widgets into rails, that is a big strength of binarycloud and I think it's missing from rails. Easy! Let's make gems! Also, I think if we did port our form implementation, it would be MUCH more simple than the current bc form implementation. Regexes are a snap in ruby. > There is also a lot of room in rails for working out globalization and > localization issues since that doesn't seem to be well developed > currently. Yes, these are particularly weak areas in rails which I think we could contribute a great deal to. > I would be really interested to see what Alex comes up with as a proposal > since he knows far more than I do about the inner workings of binarycloud > ;) I'm working on it... > - The TranslationManager is also doing a lot of extra work because it > loads > translations each time a smarty template is rendered by calling the > XMLContainer. Since TranslationManager is a singleton instance as well, it > should contain a cache of translation arrays indexed by filename so that > no > additional processing needs to be done if a language file has already been > loaded. Man, this could go into rails SO easily. Have you see REXML? It's like simpleXML for ruby, but because it's ruby, it works well and is simple to use ;) We could port our formats and everything to rals easily, and all the tools to allow people to edit translations could be built into a little rails app. > I think applying these changes would speed up the application > significantly > since those two areas are the main bottleneck as far as I can see. Coo _a _______________________________________________ dev mailing list dev-PnctHDZWAvB/Cz2I37pSEPZ4XP/[email protected] http://lists.binarycloud.com/mailman/listinfo/dev