As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I have been trying to learn Yii without luck. I find Zend Framework, Kohana, Code Igniter among other frameworks much easier to learn than Yii. The documentation also su**s. Can you post links to easy-to-understand and well written tutorials/articles? The official documentation is filled with grammar errors and seems to be rushed...
I've started here http://blog.dmcinsights.com/series/learning-the-yii-framework/
Then I did the online blog tutorial
A very good place to search/ask for info is the forum. The community is nice and will always answer you very fast.
Yes, the blog tutorial is filled with typos and errors of some sort. But IMHO, this is were you develop more skills. You have to actually search. Or if you're lazy, the comments after the tutorial tell you what to do. But usually, after the half of the tutorial, you'll begin to understand why it is not working and how to solve it. This is, from my point of view, the best way to learn.
Don't give up, Yii is very nice and powerful. Yii is the faster fully-loaded framework after symfony 2.
Try this link:
http://www.yiiframework.com/forum/index.php?/topic/6129-total-fresher-in-php-frameworks-and-yii-i-dont-understand-tutorials/
It's my thread and in the first post there is attached PDF. On Xmas 2009 I was beginning with Yii. I had never user PHP framework before so I was lost in terms like Controller, using views, integrated ajax etc.. So (when I understood it) I created a small manual that could help beginners. Have a look at it and let me know if it was helpful. It's not finished yet, it wants to reformulate something, but main concept of YII and MVC architecture is described..
Also, don't forget the "Definitive Guide to Yii". I found that after I started developing my app (basing all of the code on the blog tutorial), most of the things I got stuck on were further explained in the Guide.
Also, don't forget to contribute your questions/suggestions to the community - it will only become more robust with more people banging away at it...
http://www.yiiframework.com/doc/guide/
an ongoing, and up-to-date wiki article on this subject can be found here:
http://www.yiiframework.com/wiki/268/how-to-learn-yii
As mentioned above, reading through the "Definitive Guide to Yii" is the best place to start as it covers all of Yii's main (and numerous) features. The "Blog Tutorial" is helpful too.
Yii also has a nice set of easily searchable and cross-referenced Class Reference (API) Docs here:
http://www.yiiframework.com/doc/api/
The Yii forum is very active too, with the developer himself (qiang) answering lots of questions. Yii is very actively developed so when you report bugs in Google Code you often get fast responses there as well.
Finally, included in the Yii source when you check it out of SVN is a "demos" folder which has a working Blog demo, a Hello World, and a few other demo apps.
Yes, I would add that both the definitive guide and the api manual can be downloaded in pdf and chm (recommended) format.
You can buy the Agile with Yii 1.1 and PHP5 from Packt publisher. I'm actually reading it right now. There's quite a bit of small errors in the book, you could totally tell they rushed it, probably because it's the first Yii book.
https://www.packtpub.com/yii-1-1-and-php5-for-agile-web-application-development/book?tag=ns/agile-yii-abr1/0810&utm_source=ns_agile_yii_abr1_0810&utm_medium=content&utm_campaign=naheed
There's the link, I bought mine from Amazon.
--
SQL schema in the book have typos and type errors. I just asked about it on stackoverflow too.
I started reading Larry Ullman tutorial translation (into Italian) here: http://www.programmandofacile.it/impariamo-yii-framework/
Then I went on reading the Yii documentation.
And finally I started looking at the Yii forum.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I just now completed javascript in 24 hours now i want to move to advanced javascript, can someone suggest me advanced javascript books. I am pretty well versed in HTML and CSS and a novice at PHP. Me and my friend are planning to create a website(think it as a social networking site for college or something similar to that) so what should i learn to do that. Is PHP JS and HTML are enough? Can you suggest me books for this. Thank you
24 hours isn't enough to fully understand any language beyond its syntax and how to accomplish some basic tasks. Before tackling a large social networking project, try to make smaller, simpler programs or layouts.
To fully realize your social network, you'll need to know PHP (or Ruby, or Python, or C++ if you're crazy), HTML, probably JS, and some sort of data store; usually an SQL implementation or one of the newer NoSQL databases. It's not something you can throw together in a week or a month unless you really know what you're doing.
Start small, with a blog or a forum engine. That alone will take weeks. Then work your way up.
I will suggest You to learn some security in php like sql_injection and xss.If you are familiar with them then you should learn some ajax with javascript and jquery.It will very helpful to provide a interactivity like facebook
Quoting the advice from Gordon
if you want to become an expert programmer, google SOLID, buy GOF, buy POEAA, buy Clean Code, lookup GRASP, DDD, CQRS, DCI … but dont ask for PHP books. That's the most reasonable suggestion I can give you when you ask for Expert PHP books really.
maybe start here: ustream.tv/recorded/22783515
and you have just got he overview of language ... no one can be perfect in 24 hour even i think john skeet cant do that so you need to learn at lease 2 month to get a good or ok level knowledge
and also there is a level of website like if you think you want to make a website for a college which might have not many feature you can do this by some knowledge of php ,html,jS,ajax and basic database but if you want to make eCommerce website or a website like so working than you need highest level of knowledge
It depends on what kind of website you're trying to develop.
If you are looking for a highly interactive modern website, I would really suggest learning Flash, ActionScript, and continuing on JavaScript. Taking a good look into HTML standards and animation would also be extremely useful.
If you are looking for how to make an e-commerce website or something similar, improve your knowledge on PHP. Ajax in JavaScript is also extremely useful, as you don't want your customers waiting forever if you have a slow connection. SQL, along with some kind of database engine (I'd suggest MySQL) is mandatory, or your users can't buy anything. But that's far down the track.
I think most websites split into those two categories.
But then again, some beforehand practice is definitely needed. No book on sale, as far as I'm concerned, will give you enough knowledge to build your own good website straight up. It takes experience, and not just of coding, but more of the study of user friendliness and what makes up that.
Really depends on what you need. ;)
Learn Web Security. Start with the book Essential PHP Security. Then check out the question What should every programmer know about web development on programmers.stackexchange.
I'd suggest you first read this post in Stack Exchange Programmers:
https://softwareengineering.stackexchange.com/questions/46716/what-should-every-programmer-know-about-web-development
It is a very similar question to yours, and has many helpful answers.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Anybody familiar with wdCalendar ,a google look a like event calendar plugin in jquery .
I got this from http://www.web-delicious.com/jquery-plugins/.
I need to increase the drag and drop area of wdcaledar. I installed fresh copy from there site .it works well .But When I installed it to my site ,mine have a header portion ,that takes 200px height ,then the draggabble area misplaced .So I cannot drag events to bottom area. I've checked so many times in the code ,but couldn't find a good solution . Any explanation? Thanks!
My advice, if you don't know java, don't start doing web application development. Web application development goes as far as designing the system or architecting your application.
As for web application framework, use the currently available Java EE web application framework, JSF. Again, there are tons of tutorials on the web on how to use JSF (even good blog by an avid SO geek, BalusC). This assumes you already have knowledge of Enterprise Application, such as Servlet.
You will have to start from the beginning, like all of us did: understand Servlet and Filters, as every web application framework, including REST frameworks are built on top of it. You will need to.
Start writing a simple servlet web application and once you understand Servlet, move to MVC type framework, such as Struts, or jump to Component-based MVC such as JSF.
I'd recommend Oracle's official tutorial: http://docs.oracle.com/javaee/6/tutorial/doc/bnadp.html
I know you asked for "freely available" but I'm going to highly recommend the java certification as a way to get a develop a good all round understanding of the core language. The certification book is excellent, and the certification itself will provide you with a learning goal, even if you are not really that interested in the piece of paper(which I wasn't).
I feel that it's very important to have an understanding of the core before trying to embark on the many other facets provided by the Java architecture.
I think yo have to first start with core java then move to advance. you may refer headfirst of java.
A good introductory book is
"Head First Servlets & JSP - passing the sun certified web component developer exam." from O'Rielly
It starts right from the basics, I wish I'd known about it when I started out. Although there is a lot of stuff on the web, a lot of it is basic to the point of being dangerous and you cna end up structuring your applications very poorly.
I'd also recommend getting some Jave experience first, just try writing a few that output text to the console.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I would really like to get a list of hands-on approach books, where you mostly learn by examples and not only theory. I'm looking for CSS/PHP/SQL maybe and any other hands-on books.
For example, I wasn't very comfortable reading HTML Dog (although it's a good book) and would really much prefer books like CSS Anthology 101 Tricks, where you learn mostly by examples / questions etc.
I tried to find those kind of books but couldn't really and I think I'll benefit more from them then a pure theory book where you read 300 pages without writing code.
The Head First series by O'Reilly is a beginner series that teach you entirely through applications / examples. EDIT: the Head First series is definitely not like any technical book you have ever read before. First and foremost it is designed to stimulate your mind and get you thinking about what you're learning creatively (e.g. cross-word puzzles, brain teasers) which, combined with the examples/code really help you understand the concepts.
Head First Labs
Head First Web Design
The Cookbook series by O'Reilly is another good (more intermediate) series that teaches you through different examples. The structure of the book CSS Cookbook, for example, is just "recipes" (tutorials) on how to solve certain problems or accomplish specific tasks.
I know you're asking about books, but since you mention a hands-on thing, I'll bring up my method. I'm more of a deconstructionalist. This probably works best when you've already got a programming language or two under your belt, though you don't mention if you're in that category. Note: this requires having a web server/site available to you and some existing knowledge of probably ftp/ssh.
To do this, I like to take working project and tinker with it, and then perhaps start coding a plugin or something. PHPBB is old-ish now, and originally more done for PHP4, but the source is available. Also, Drupal and WordPress. Drupal is a great tool. Drupal is the best thing since sliced bread, imo, and has a huge community and selection of free offerings. If you really wanted to get your feet right in there, then there's also CakePHP, which is more of "just" a framework, and it's a smaller community. A required tool will no doubt be PhpMyAdmin, so get that, as well.
What you could do is get one or more of them installed on a web server, and attach a few other existing plugins like a working blog or cart, and then get in there and see how things work by making raw code adjustments. Cake may be less threatening, though. Then, just return back to ask specific questions, an you'll be an expert in 3-6mo, depending on effort (and aptitude? :)
For PHP/mySQL try Larry Ullman's books:
PHP 6 and MySQL 5 for Dynamic Web Sites: Visual QuickPro Guide
PHP 5 Advanced: Visual QuickPro Guide
I found the books very easy to read through, there is a small amount of theory involved, but mostly practical code examples.
I gained a lot of contemporary web development methodology from Practical Web 2.0 Applications with PHP. It was fun reading through as I was enjoying creating all cool stuff by my own. As this book title Web 2.0 you'll find a good examples on making things usable with HTML/CSS.
For php, I invite you to read the indispensable PHP and MySQL Web Development book
For the CSS/HTML, I recommend the Meyer's references (book, articles):
CSS: The Definitive Guide, Third Edition
Meyer's website
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
i've been with Yii for a few months and before I use main CodeIgniter, SilverStripe in my projects. Does anyone know a good Yii based CMS such as SilverStripe based on Sapphire or EE based on CodeIgniter ?
My experience is working with Yii is much more easier and straightforward assuming you are good OOP coder but Yii is still young and there are not lot of samples that I can put together quickly for a real prodcution project.
A couple of YII based CMS I spotted at do not look really promising or maybe at a very early stage such as dotPlant, Web3CMS.
The developer of http://www.phundament.com/ is active over in the Yii forums.
Also, a new yii CMS has popped up that seems to be quite actively developed, and has a good feature set:
https://github.com/charlesportwoodii/CiiMS
I agree with thaddeusmt. Yii per se is very transparent and can easily be used for complex tasks. Learning a yii-cms without good docs seems like a waste of time. You could be mastering yii itself during that time.
I mean, what's the point of learning a cms from scratch on top of learning a framework from scratch...
We have developed a new open source Yii CMS - GXC-CMS. You can check the demo at : http://www.gxccms.com! Hope you like it
Would it not make sense to build the extensions that would go into making a cms so that you can easily build a cms that works the way you need it. Surely this would be the reason to use Yii rather than learning how to extend Drupal or Joomla to do what you need.
I just found this new CMS based on Yii: DotPlant; I haven't tested it yet.
Edit: Here a two other yii based CMSs that I found in the extensions section of the official site:
yaycms
ovencms
web3cms is another promising CMS based on Yii:
http://code.google.com/p/web3cms/
I don't think that there are any really mature CMS's built on Yii yet. Flexica looks like the best, but it's still not on par with Drupal or WordPress. Yii is best for developing a new application from scratch.
FlexicaCMS is worht to look at and keep an eye on it still it become mature and ready for production.
I don't agree the idea to develop an application from scratch if you have things you can use, if so then what are Joomla and Drupal and Wordpress for ?
If you look for a Yii cms and you have time to dig the code then you can spend that time with Flexica. I can learn a couple of things from it including the user management with RBAC permission and the multilanguage implementation using Yii behavior. This is the best multilanguage implementation i have seen in fact. I a large web application which need custom parameters and parameter per module then their parameter system is very cool.
The only problem right now to me is Flexica author has not provided enough document so you should be experienced with Yii to use it. On the other hand, you can use it to learn Yii as the installation has a good company website demo.
We released a CMS module for Yii a few days ago. It's very simple but you should check it out, it might cover you needs.
http://www.yiiframework.com/extension/cms
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm not a fan of PHP or spaghetti code, or anything like that, but in my experience WordPress works amazingly well, it's well organized, and I've never come across any hard to understand code. The documentation is incredibly thorough, any security flaws are fixed within seconds, and it "just works". Not to mention that it does EVERYTHING, and it has an awesome plug-in system. Oh, and "the Loop" is awesome. I've never had any problems doing simple modifications to the code or to themes.
Can you guys give any specific examples of what you don't like about it, or what you would have programmed differently? I just don't understand why it gets such a bad rap. I wish my own software worked as well and had as many features and looked as nice.
I'm a fan of WordPress, but there are definitely issues that impede coders trying to work with it. As a small example, there's get_the_content() (returns) and the_content() (prints), but there's get_permalink() and the_permalink(). Then, there's just the_date(), because it accepts an argument indicating whether you want it to print or return. This kind of thing drives even an experienced WP person up the wall, because you've always got to be Googling the usage - and it speaks to a deeper lack of attention to detail in the code.
Another glaring issue is the lack of built-in caching. It even used to have it, but they ripped it out and never replaced it. You shouldn't need a third-party plugin to have basic caching in a system like WordPress, particularly with all the other bells and whistles it builds in.
To paraphrase (supposedly) Churchill, though, "WordPress is the worst blogging system... except for all the others".
I've written many custom applications in PHP/MySQL over the years - from tiny to huge. Not having taken the time to learn the details of WordPress, I find it very frustrating to work with (under the hood).
Subjectively:
Very poor naming conventions
Execution flow is bizarre
General lack of organization
Hard to audit what happens when
etc...
Their concepts of usability is great, and support for plugins is also great. I'd just love to see the system re-engineered with those principles, but with a disciplined and clear development methodology.
I'm sure the next guy would say "no it isn't, bla bla bla", but that is just my opinion after bumping into it (hosting, modifying) about 3 times.
It's a subjective question for sure. From experience I've notice WP takes way, way more server resources than other systems or my custom code. I've had to move WP sites off my servers as a consequence. So my experience suggests there are some memory use issues.
As an exercise try going through the code, tracing the logic from the start of a request to a page, and look at how many objects are loaded, how many methods are called before any HTML is output.
Apart from what's been mentioned already:
No sane templating system. All those years and they still have PHP code intertwined with HTML, and default templates that have no support for i18n or l10n whatsoever (hard-coded strings, hard-coded date formats, etc.).
Multiple entry points - maybe it's just me, but it's annoying. Especially when some of those are way too big.
When you have to be sure of a statement that is made by "everyone", if you can, is trying to check it for yourself.
And you can do something in your statement: just read Wordpress source code. Some modules are good, some are a mess, some others are just normal. But all of them compose a great blog system that are used by thousand of people around the world that are more interested in writing good stuff instead of complaining about "how ugly" is a particular source code. In summary, the Wordpress creators have a shippable product that is useful.
In the end, it doesn't matter. If you want a perfect blog system, you can always write one yourself.
Can you guys give any specific
examples of what you don't like about
it, or what you would have programmed
differently?
I would have added more comments.
On a separate note, the most recent version of Wordpress introduced a labyrinthine piece of code that denies access to pages that:
1. Aren't in a menu or submenu
2. Aren't in the $_registered_pages variable.
A lot of plugins for earlier versions of Wordpress have been broken by this new security measure.
Finally, sessions. Wordpress does its very best to get out of your way by handling all its session data in a separate manner from PHP's built-in $_SESSION variable, but it doesn't give you the option of starting the PHP session, you have to add that to the core program yourself. I haven't found documentation that would allow us WP hackers and plugin writers to take advantage of the pre-existing WP session yet, either.