I will pretend that I do not know anything, but I hope that there are sensitive souls that would understand what I will be mentioning here.
I hope that this thread is good one to point to some needs as it purpose is to introduce framework and that purposely yii framework to the newcomer to frameworks and yii.
Please do not take this as personal critics but how I see it it becomes a trend in programming documentation. It looks like this:
-
say hey this one is great to do something
-
claim at the beginning ITS EASY (and cool)
-
select simple special case request is framework is specially geared for
-
dump a number of iterative steps using various tools add to this bunch of code examples showing special case modifications
-
show that it works
-
stir in couple of programming techniques, concepts, approaches, methods touch them lightly to increase compatibility to other people work
-
show two to three more complex examples
-
say you now know how to use it! Go ahead.
I’m sorry but no. I still do not understand how it works. And no, I do not find it easy. And no, I do not know how to use it. Consequently it becomes not cool.
Why?
- Simply there is no explanation what whole system purpose to solve from 50000 ft high view.
In case of yii after spending some days exploring, reading tutorials, some books, writing examples and tweaking code here and there, with more or less success, main impression I got that it is specially suitable to write internally usable database applications working on the web. I have found virtually no advices, tutorias, books in the fashion how to use yii to make your web site automated. I am perfectly aware that yii can do that, but i find more about being agile, tdd, crud, model, view, controller, sending messages, than how to get out of the yii box and make yii work for you, instead that you work for yii in yii.
- There is no explanation of concept of philosophy behind this framework so someone new can quickly find where to modify what in order to get desired result. Any text get too much distracted with some example adding even more jargon on the way. In essence what OO programming approach usually does is tossing framework api at you. Class tree is not self explainable. Framework needs explanation how conceptual ideas of final product are mapped to conceptual ideas of the framework.
For example, I simply want to add sub menu, or i want to extend yii with some specialized component that I am going to write, I want to completely redesign how application works. I want to make user system to work for my model of operation. Quick examples how to do simple needs would be much more benefitial.
- It may turn out after some investigation that one is better off taking another approach to building final product, time is wasted, and good piece of work is put aside. Claims of being easy and quick, quickly loose its claim.
What is needed for yii is giving conceptual view rather than repeating recipes how to create database, create crud controller and following test/add functionality agile paradigm.
What is needed is tutorial or book on how to utilize yii to build a web site with various page components that are needed on modern web sites.
And what it the possibly most important what yii IS and even more what yii IS NOT. (for example yii IS NOT CMS, but it can be used to make CMS)
Maybe better idea would be to make crude CMS in yii and use that as example how yii can be utilized to build web sites with web application built into it.
Or I completely missed the concept of YII (no wonder if that is, i am stupid)
Possibly best beginning reading is provided in guide http://www.yiiframework.com/doc/guide/ at least gives some concepts how yii is built.