CodeIgniter Forums
Framework Shopping - Getting burned out - Printable Version

+- CodeIgniter Forums (https://forum.codeigniter.com)
+-- Forum: Archived Discussions (https://forum.codeigniter.com/forumdisplay.php?fid=20)
+--- Forum: Archived General Discussion (https://forum.codeigniter.com/forumdisplay.php?fid=21)
+--- Thread: Framework Shopping - Getting burned out (/showthread.php?tid=4518)



Framework Shopping - Getting burned out - El Forum - 11-29-2007

[eluser]idxman[/eluser]
Hello CI's!

As the topic says I've been framework shopping for awhile and lately have been getting burned out with trying code and comparing features to make a decent decision. I don't intend for this to turn into a "tell me what framework is better" discussion, but would certainly appreciate some pointers from those of you actively using CI.

Here's the scenario:

I'm currently using an old framework of sorts (that never really made it) that I've heavily hacked into shape for my own internal and external use. I'm really getting tired of writing my own CRUD and the lack of other cool features like scaffolding, etc really slows down the dev process.

The only thing I like is the Auth/ACL and how I've been able to easily apply it to my various needs. I see that CI doesn't include auth or acl out of the box and Cake doesn't seem to include auth. (just ACL which looks interesting) From the discussions I've read the trend seems to be "just wack one into shape yourself since every project/module is going to be so unique." Well, I agree to a slight extent, but have to say that even my krusty old framework has functioned just fine (acl-wise) without having to re-invent the wheel each time. It has enough user fields and generic code to work well in different situations.

Here's what I'm looking to do:

User Auth: Typically mysql-based. One app is completely LDAP-based (AD actually) and another is a hybrid of mysql and AD. Currently I just hack the user class and make very minor adjustments as needed.

eg: The LDAP-only app uses the 'adldap' package to auth and fetch AD groups then uses the rest of the existing code to function as normal. The hybrid requires a record in mysql first then uses a user-defined field to determine the auth method. (local or ldap)

Yet another app uses local auth, but user accounts are synced from an AIX server and the encryption class is flexible enough to use the salt/crypt instead of something typical like md5.

As I read topics on options such as FreakAuth the rigidity makes me want to steer clear. Other options appear to have more hope, but I don't know yet..

Second big item: ACL
- Current krusty fw has several levels to this. A per "module" ACL (with multiple modules being contained within a single deployment) with different public/admin perms, a per-page acl and per "function" acl. Functions being special "published" functions (within a class) that can be executed via URL string.

So far this has proven to be pretty helpful in taking care of the blanket ACL needs and just leaves me with the fine-grained stuff. (eg: they're a manager, but can only access departments 1, 7 and 64. )

The 3rd item is: Consistency.

- While I look at something like Symphony and think 'wow', I also want to use a fw that can be easily deployed in diverse environments. For now I'm deploying FreeBSD VM's (esx blades) and can control everything, but down the road I want to be able to easily build a public website/app on a typical restrictive/shared hosting account.

Learning one fw now to handle all of this would be a big plus.

4: PHP4
- Haven't moved to 5 yet and have too much code to test to easily just make the jump.


I certainly don't mind helping out on a project if something is already in the works. It would be great to have some basics in the core, but a drop-in system would also be fine.

So, after all of that, please flame, er point, away. Smile

Thank You,


Framework Shopping - Getting burned out - El Forum - 11-29-2007

[eluser]Rick Jolly[/eluser]
CI is flexible. You can do anything with it.

IMO, flexibility is the most important aspect of any framework. You don't want to take the time to master anything if it limits you. CI doesn't have everything you need, but you are free to easily include what's missing - even replace the things you don't like. Having said that, if I were to start fresh, I'd use the Zend Framework which is just as flexible.

Auth is too simple (although I've never used LDAP).

The Zend Framework ACL is nice. To use it, simply put the files somewhere in your CI installation, set the include path, and require() or include() it.

Although I wouldn't waste time porting old code to php 5, I really don't understand why anyone would want to use php 4 for a new project.


Framework Shopping - Getting burned out - El Forum - 11-29-2007

[eluser]Desireco[/eluser]
[quote author="idxman" date="1196377250"]Hello CI's!

4: PHP4
- Haven't moved to 5 yet and have too much code to test to easily just make the jump.
[/quote]

I know it is a lot of code but PHP4 will be obsolete in two months and you should ask yourself why are you sticking with ti Smile. Once you made up your mind I am sure you would discover that it is not that hard.

Anyway, check out http://gophp5.org/

Regards,
Zeljko


Framework Shopping - Getting burned out - El Forum - 11-30-2007

[eluser]idxman[/eluser]
I appreciate the feedback! (and the PM regarding ZF ACL)

Yeah, I'm letting myself get caught between the chicken and egg with php4. I suppose that without that 2/5/08 cutoff it would never happen. (and the good news is at least my standard webhost supports php5 - not sure what ver yet) Guess I've planted my head in the sand for awhile with php5. :red:

LDAP: Can get a bit hairy (especially with AD) doing it yourself, but is pretty simple with the adLDAP class.

I'll have to drop ZF into the mix and see how that goes. The main thing is that most of what I do seems to require a number of levels/layers of security per app/module. Just don't want to end up spending all my time dorking around with security.

Quote:I know it is a lot of code but PHP4 will be obsolete in two months and you should ask yourself why are you sticking with ti . Once you made up your mind I am sure you would discover that it is not that hard.

Anyway, check out http://gophp5.org/

Part lazy, part out of time. Thanks for the site though.

I did test some of the code on php5 a bit ago and much of it seemed to work so I'm hoping I wont have to change too much.