nova-framework / framework

Demo application using Nova - this is an extensive playground, use "app" repository for real applications.
http://novaframework.com/
MIT License
418 stars 210 forks source link

Nova vs 3.0 #608

Closed jimgwhit closed 8 years ago

jimgwhit commented 8 years ago

@daveismyname I saw in the forum where you were thinking about having a 3.0 and a nova, this might be a good idea. You could just let the 3.0 be the way it was when you did the two YouTube videos and just let folks move it up from public or the htdocs on wamp. But of course leaving the option in to let everything still fall under the htdocs folder if need be just like in your video. And thank you for considering this option of having both. Because really for most things I do Nova would be overblown. And if you did do both I'm assuming that 3.0 would also be well maintained is this true?
And by the way I like the way the original renders views a heck of a lot better then what they did in Nova.

dcblogdev commented 8 years ago

I think what's been done is good as a standalone framework, I'm just feeling it may not be as appealing to newcomers are 2.2 is. By that I mean how easy it is to pick and run with it.

To be honest I'm leaning towards the idea of letting @LuckyCyborg run this as his own framework leaving the SMVC with me to release under the Nova name or we could just stick with SMVC and have 3.0?.

@LuckyCyborg has done an awful lot of work on the beta I don't want to disrespect what he's accomplished, instead honor him by letting him take what he's build and put it under his own chosen name.

I don't want to try and support two very different frameworks it's going to be too much work. Having said that we can take inspiration from one another and implements elements should they be a better fit.

This has been on my mind for too long but I don't know how to approach the subject without offending anyone, that is the last thing I want.

jimgwhit commented 8 years ago

@daveismyname are you leaning toward having the ver 3 kinda like it was after the two youtube videos referenced in issue #222 ?

dcblogdev commented 8 years ago

Yes with a few improvements along the way

On Wednesday, 17 February 2016, jimgwhit notifications@github.com wrote:

@daveismyname https://github.com/daveismyname are you leaning toward having the ver 3 kinda like it was after the two youtube videos referenced in issue #222 https://github.com/simple-mvc-framework/framework/issues/222 ?

— Reply to this email directly or view it on GitHub https://github.com/simple-mvc-framework/framework/issues/608#issuecomment-185323298 .

Warmest Regards.

DAVID CARR Web Developer

Email: dave@daveismyname.com website: www.daveismyname.com website: www.simplemvcframework.com http://www.simplemvcframework.com Mobile: 07429 561 809

zszymczyk commented 8 years ago

If we are talking about a few improvements in 3.0 it would be great to have language core class similar to this in Nova. ;)

dcblogdev commented 8 years ago

do you mean the existing language system in 2.2?

zszymczyk commented 8 years ago

Yes. It would be cool to to use for example: <?php echo __('Open subpage'); ?>

dcblogdev commented 8 years ago

OK thank you, it would be great have that optionally so for the users that don't want to use languages can do it the old style still.

I'll be working on this shortly.

LuckyCyborg commented 8 years ago

@daveismyname First of all, sorry for the delayed response, I have some very busy days at job and all efforts are redirected for a high priority project.

In other hand, the translations are optional into current 3.0-beta branch variant. For someone to write into bare English or Italian, he just have to use directly the strings instead of calling the translation function __()

Talking about the subject of this thread, I'm really surprised about, and I have no instructions to claim the 3.0-beta source code or to do other things. I will discuss about with my colleagues and our Management, to see what we can and we will do.

Still, I do not understand what is seen as complicated into using Nova, like it is now. We tried the best to keep the compatibility and/or to offer legacy support pointing to 2.2 release. Sure, Nova is somewhat complicated per sè, but its usage should be easy to figure.

For example, there is a Nova\Helpers\Database who try its best of, to emulate the design of the old Database Helper, on top of the actual DBAL. Also, the routing configuration works almost similar with the older one.

Talking about @jimgwhit lamentations about that the views rendering is complicated, beyond of half of Nova\Core\View is compatibility code, supporting even something very similar with the ol'good style:

View::renderTemplate('header', $data);
View::renderView('/welcome/index', $data);
View::renderTemplate('footer', $data);

The main @jimgwhit disappointing is that he can't use javascripts or CSS files, random positioned into tree.

Why he can't do that? Because all the files are served via Routing, and then they should have very specific paths.

Why are those files served via Routing? Because is the single relative solution to serve files behind of public path, happily living into Modules and other paths.

And you, Dave, made the decision to use a public path, different from the framework one. Everything else are consequences of your decisions.

And talking about complications, lets see the Routing. Every framework use a Routing style, even the big names like Laravel, CodeIgniter or CakePHP. It is interesting to see that you want to use TWO.

Finally, we developed that code, that mini-framework, primarily for our own use, then I can suppose that there will be workforce to maintain it. Us.

All the bests!

jimgwhit commented 8 years ago

@LuckyCyborg I don't to dwell on rendering, all I'm saying is I love the way @daveismyname setup rendering of views in version 2.2.

dcblogdev commented 8 years ago

@LuckyCyborg the current beta is way more complex than SMVC and yes I did agree to some of the changes while I was away there were on average 80+ emails a day it was almost impossible to stay up to date with the changes.

The beta is currently 27.9MB while 2.2 is 456KB that's a huge difference.

I feel most users choose SMVC due to the how easy it was to understand I feel the beta is not easy to understand in comparison, there are lots of folders with the same names ie app/core system/core

I know the reason behind them but I feel it's too completed for most users, it seems your business wants a more complicated system, that's fine but I love the simplicity of SMVC.

I know you have put much effort in for your company, whilst appreciated I don't share that vision.

LuckyCyborg commented 8 years ago

@jimgwhit To write a legacy View class, compatible 100% with the old code, is trivial.

If you can't live without, I can invent an Nova\Legacy\View which give you all experience of 2.2's rendering. With one IF; if you don't use webroot (public path), but anyway that wasn't supported by the previous version.

Maybe is a good idea to use a Nova\Legacy namespace, we can move also Nova\Helpers\Database there...

LuckyCyborg commented 8 years ago

@daveismyname

The beta is currently 27.9MB while 2.2 is 456KB that's a huge difference.

Let's be honest: 20MB, bare. And in those 20MB you have two Routers, plenty of Controllers, a CodeIgniter-rish BaseModel, Events, DBAL, Query Builder and even a Laravel-esque ORM. Yet, still being far away from the Laravel's hello-world, which is about 145MB.

Oh, I said that about 18MB are from the premium AdminLTE backend theme?

I know the reason behind them but I feel it's too completed for most users, it seems your business wants a more complicated system, that's fine but I love the simplicity of SMVC.

In fact, my business use to write portals, usually under Laravel and CakePHP, and really, my Management, as any Management, don't care about complexity but the results.

And, like I said when I arrived there, my Manager wanted a framework faster than the orthodox Laravel and CakePHP, for a specific project (portal), then a micro/mini framework, simple enough to be fast like Hell, complete enough to support a huge portal on top of it.

What you see is our take on this specific approach; a simple yet (almost) complete framework, minimally able to drive portals.

I feel most users choose SMVC due to the how easy it was to understand I feel the beta is not easy to understand in comparison, there are lots of folders with the same names ie app/core system/core

Huh? That's the (almost) single namespace similar between System (\Nova) and Application (\App), excluding the Helpers one, if you want to point to, in this case, is about Modules and Packages, which are literally mini-apps. ;)

Drezzler commented 8 years ago

Guys whatever you do , please try to keep it simple . I picked up SMVC only because it is simple to use and i can add my own bells and whistles to it the way i want. Their are already mature and complicated frameworks out their , but most of them either use a lot of resources or have steap learning curve or both.

I am with @daveismyname on this ...

jimgwhit commented 8 years ago

@Drezzler and that is all I have tried to say all along, please keep it simple, if a programmer wants to spruce it up with more, there are packages where they can do that.

dcblogdev commented 8 years ago

Yes @Drezzler we are all in agreement regarding 3.0.

@LuckyCyborg you are naturally defending what you've built I can understand that, what you've built is a good product, just doesn't fit in with a simple micro framework like SMVC.

If you want to release this great, either way I need to clear out the beta branch for my updated beta version.

I really hope you're not offended, that was not my intent.

LuckyCyborg commented 8 years ago

@daveismyname

If you want to release this great, either way I need to clear out the beta branch for my updated beta version.

I still do not have yet instructions about an eventually claiming of the actual code. Until further developments, in my side, the powers that be to do a decision, and you really consider the need to a fresh beta tree, the GitHub permit you an elegant solution: just rename the actual 3.0-beta tree as you like, i.e. 3.0-nova, or whatever, then you can go a new start on the old tree.

That way is, after all, appropriate with my instructions, who simply say to contribute to your project, and not specify that our code shall arrive in one or another of your releases.

Eventually, I can continue my developing into this new branch, considered by you being a personal one, and from where you can cherry-pick what elements you want.

All the best!

dcblogdev commented 8 years ago

OK I've moved the code into 3.0-nova and will open 3.0-beta when ready.

LuckyCyborg commented 8 years ago

@daveismyname OK, thanks.

One last question: I have writing access to 3.0-nova right now?

dcblogdev commented 8 years ago

Yes you should have.

LuckyCyborg commented 8 years ago

@daveismyname Okay, then. We are all set. Thanks again!

That way is maybe the best of the two worlds, without much drama.

Me, I can follow the received instructions and my guidelines; and yours you can have a place with shiny things without a company vision to be enforced in the overall project...

All the best!

skorpion352 commented 8 years ago

I know I'm late to the party and the matter is already resolved but I would like to chip in my two cents anyway.

I started using SMVC last year after my lecturer introduced it to us as part of our web design assignment. I have since been using it for my own web projects (the first of which I'm planning to launch next month). If it wasn't so easy to learn and use, I wouldn't have kept using it.

So thank you for making the decision to keep it simple, being able to download it, copy it to my web server, edit the config file and have it work without any further messing around has been really helpful for rapid prototyping different ideas I have had over the past 6 months.