-
wildlyinaccurate posted...
I used to be a CodeIgniter evangelist but my discontent with CodeIgniter as a framework has grown to the point where I just do not use it anymore.
The fact is that there are dozens of mature and stable PHP frameworks out there now. Rather than sticking with one framework, I think it makes sense to choose the framework that best suits a particular project. In my experience, Slim and Silex (both "micro" frameworks) have been more than enough for most projects. Laravel feels very familiar and is what I use as my day-to-day framework. Symfony is great as well but I think it is only suited for very big projects that need an all-in-one framework.
-
p0llk4t posted...
Rackspace Cloud Sites do support PHP 5.3. I just had to set one up to install a piece of PHP software that only supported 5.3. You can choose 5.2 or 5.3 as the technology when setting up the could site. Just FYI for anyone needing to know. I didn't actually know they did until I had an issue.
-
mario posted...
A little less version koolaid might be in order
http://w3techs.com/technologies/details/pl-php/5/all
Outdated back and forth, but reality mandates that relying on PHP 5.3 isn't quite feasible *yet*. Maybe by years end. But certainly not yet.
And know what? I'm quite happy with that. Because it appears none of the sensible 5.3 additions are used overly widely. It's just favored by many cargo culters to crap us into a shitstorm of shitty backslash namespaceritis without any actual need for identifier conflict resolution.
-
guest posted...
So how do you explain EE as THE product (or vice versa rather) out of which CI was born?
Don't be silly, not everyone will be making FB despite their dreams hitting it big.
I have read this long time ago...
"Only fools worship tools"
-
go_outside_and_play posted...
Its just -- maybe you should rethink whether its really worth flaming codeigniter like this.
-
baileylo posted...
Have you checked out fuel - http://bit.ly/KGiehj
-
William Rufino posted...
I agree with Phil... Your post sounds like just a link bait, and a way to get attention.
Just because you don't use CI anymore, doesn't like the way things are going doesn't mean it's dead.
-
Thomas Hunter posted...
The thing I hate the most:
$this->load->library('example');
$this->example->something();
Singletons and magic (assigning a loaded library as a property of the controller, yuck!)
-
Taufan Aditya posted...
Someone need to separate myth and fact within this article : http://taufanaditya.com/codeigniter-myth-and-fact
-
Stefano G posted...
Shawn I agree with you that Codeigniter is very still since A LOT of time but I wouldn't say "is dead", mainly because it is widely used and actively contributed by users.
I had tried LARAVEL for a while, but, honestly, a framework that needs an httpd virtual host configuration as a requirement is a bit too pretentious: I have developed several websites on several ISPs and NO ONE amongst them ever allowed me to see the httpd.conf file!
Ok I could tweak the index.php a little, the paths and so on, but, really this is a loosing strategy!
I totally agree with you that we need to explore, even because we might need different frameworks for different website types, but, please don't be to hard to CI :p
-
Shawn McCool posted...
Who knows? Maybe so! I don't like being restricted.
-
Shawn McCool posted...
While I understand where you're coming from. I believe that there is more to this than you're suggesting.
I have been observing and can't help but to notice the warm response that this has post has received amongst many in the CodeIgniter community. I'm discovering that many people feel the same way that I do.
Let me make my point clear. I completely disagree with the way in which CI's leadership has handled development of the framework.
Sparks are obviously a retro-fit of modularity implemented for the simple reason that the CI team has allowed CI to stagnate. What does it offer to developers, exactly? Separate folders in which to store their libraries when they originally had one? The repository itself has no value.
Sparks being integrated into the core is an easy implementation that the community has been asking for. It offers nothing to developers and it shows that nobody is taking charge and willing to make unpopular decisions.
I find the idea that any sort of progress beyond fixing bugs and typos is a hindrance is disingenuous.
I'm not sure if the Reactor team has its hands tied or if they're simply no longer motivated by this project. But, I'm FAIRLY sure it's the latter.
I think that many developers feel like I do and I don't think it's due to some guy's blog post.
-
Shawn McCool posted...
Phil, thanks for your thoughts. I wish you the best of luck with your business interests.
-
Shawn McCool posted...
Phil,
I'm sure you're a nice guy and I respect you as a developer. But, let's talk about the CI project for a minute. I have no ill will towards you, the Reactor team, or CI itself. I have fond feelings towards CI and I have been known as a CI evangelist. This will probably be my last post on the subject as I have no intention of turning this into a negative discussion.
My observation is that CI doesn't and can't change in any meaningful capacity.
I honestly don't see what anyone can do to change the state of CI code modularity. Like I said in the post.. There are libraries, configs, helpers. That's not going to change, right?
A major point that I have is that after having written some 50-60 sites in CodeIgniter and reusing my code without something like MX was sort of a mess.
I worked for a good design firm developing a new site every couple weeks. I ended up doing some stuff pretty twisted to CodeIgniter in order to give our company a resource advantage. It worked but it was less than optimal. Modularity and code reuse are very important as I'm sure you'll agree.
At some point in time I realized that CodeIgniter did not change in a way that sped my workflow or improved the integrity of my code from the day that I picked it up.
I went to CiConf 2012 in London and am very glad I did. I met a lot of really cool people who I hope to call friend for a long time to come.
This is important to note: Other than a few mentions of how unit-testing was sort of getting off the ground there was no presentation or discussion about the future of CodeIgniter. I think that this is an important note. When was the last time that you went to a technology conference and you didn't get some sort of 'state of the technology' presentation? Nothing about the future of CI was outlined.
You can see how interested in "link bait" I am by looking at my blog. For probably the 10th time in 2 months I had someone send me a contact form message asking me why I don't use CodeIgniter anymore. I replied to them with this post before realizing that I had damn near written a novel.
I don't have a particularly heavy heart about the fact that CodeIgniter won't change. It's just a tool. But, it's a bit sad to me to say goodbye to the community as we've been together for quite a while.
I wish the best for you and your team. I respect you as developers and like I said in another comment yesterday, CodeIgniter and the people who made it possible made me a better developer and discovering CI was the first time that I had fun with PHP.
-
Shawn McCool posted...
No reason not to go with Rails or Django (I assume that's what you're talking about). Whatever keeps you happy and gets the job done.
-
Shawn McCool posted...
I'm sure you have the best of intentions. But, please do try to understand my point.
I didn't say that CodeIgniter doesn't have users or that all of those users shouldn't use it.
I'm observing some of the reasons why CI doesn't change as a way to express why I no longer create new sites with it. This is a subject that's important to me and many people are interested in my response.
Please, take it at face value. I'm a programmer who uses these tools to further establish an advantage in a market, I'm not a framework salesman.
-
Shawn McCool posted...
I'm sorry to say that I can't give you much information on either Zend or Cake. I looked into both of them years ago and chose CI because it was lighter weight and it would allow me to more leverage my own code. I chose Laravel because it fixed the architectural issues that I had with other PHP frameworks.
If you have any other questions for me I'd love to hear them. Sorry that I can't be of more help with Cake and Zend.
-
Shawn McCool posted...
I'm not originally a web-developer. I came from a world of game development, desktop app development, and systems administration.
I think that at first CodeIgniter showed me that I should think about PHP and web-development differently. I was quickly bored as a web-developer and it reflected in my work. When I learned CI I realized that hey.. this doesn't have to be so bad.
Then, I think that when I decided to move away and leave CodeIgniter I was a bit frustrated with it. I had not identified the need to move on. Once I did, I did a lot of research and found Rails and Laravel and discovered that there were many more options out there. I think that through these experiences I've become a much better developer and I think that CodeIgniter played an important role in my evolution as a web-app dev.
I appreciate CI and everyone who made it possible. I made some 50-60 sites with it and that was pretty fun, too. That said, I'm having far more fun these days than I thought possible with web-app development and as happy as I was to find CI I am more happy than ever to be involved in the Laravel community.
Thank you CI, you were once the best of us. R.I.P.
-
Shawn McCool posted...
I'm hesitant to have a strong opinion without having used a framework extensively. The only frameworks that I've used enough to have a real opinion on would be CodeIgniter, Kohana, Rails, and Laravel. All of the other frameworks that I've used recently have aged reasonably well, and Laravel is still in its infancy.
-
Shawn McCool posted...
I wasn't trying to be patronizing, Phil. I just felt we had each said our piece.
-
Shawn McCool posted...
I seem to spend my time around a lot of people lamenting the fact that they recently switched their companies to use FuelPHP. I don't use it and in a lot of ways I see its design and leadership as more of the same, and not in a good way.
At the end of the day, use what makes you happy.
-
Shawn McCool posted...
I have no experience with Symfony so I can not really compare much. However, I do know that Symfony is often considered to be a good framework that has a high learning curve.
Let me tell you a few things about the way that I approach projects and that may give you a few ideas as to why I chose Laravel.
I turn over a reasonable amount of web-apps. We are a 2 person operation. My partner primarily handles design and most front-end dev. I handle everything on the back-end and jump in when complex JS is needed. Most of the time we get away with not using a lot of complicated JS.
I like to "own" my framework and really dig into it a bit more project by project, focusing on new aspects every time. Consequently, I like my frameworks to be relatively small and written using a good code-style.
Our projects tend to be of medium size so I need something a bit more than the micro-frameworks like Slim and Idiorm. However, we turn over projects rather quickly so heavier frameworks like Symfony are not really the kind of thing that really fits our specific organization.
I like Laravel because I like creating my own solutions. Laravel has most all of the functionality that I covet from other frameworks. But, it's also developed in a way that allows me to have REAL control over my architecture. This means that not only do I get to create solutions that are more analogous to the original requirements of the businesses, but I constantly get to play with new design patterns. This keeps me happy because I'm actively learning.
I've discovered that this is the aspect that is most important to me as a developer. So, I take goals like rapid development, minimal design, attractive code-style for granted. They'll automatically be goals because that's what people who do our kind of work strive towards. But, keeping myself exploring, interested and happy without sacrificing much development time or the integrity of the code is my basic need.
-
Shawn McCool posted...
For what it's worth, I suggest finding the framework that most resonates with your core philosophies. For me that is Laravel.
-
Rick posted...
Which framework do you suggest? I have to start a user-login system with objects and sessions.
Thank you.
-
Richard Tester posted...
You know what i get from you in this post. You are very defensive. and it reminds me of children when they do not like what they hear or get their way! I agree with Shaun, and from what i read here and from other forums about different php frameworks they are right. Also everyone has the right to their own opinion and you as a developer should listen to the people who is using or will be using your product. or you will get left behind. There comes a time when you have to let go of the past or you will get left behind. as for breaking the app, people can still use the version they have right now, if they want legacy support. Your produce would very much benefit from all the new features PHP 5.3 and 5.4 has to offer. IMHO you need to listen more to the public instead of being blinded by your defensive standings listen, take in, and decide if your going to give us John Q public what were asking for. In the end the decision is yours.
-
Phil Sturgeon posted...
You can't argue that PHP 5.2 is still important:
http://w3techs.com/technologies/details/pl-php/5/all
If you control your environment then install PHP 5.4 and have a great time playing with all the brand new and exciting features. I do, and I love using FuelPHP for that!
Building distributed applications that need to go onto any server though... um... well I would like them to work on more than 28.5% of PHP servers out there and CodeIgniter gives me a great framework to use while doing that.
-
Phil Sturgeon posted...
They only released PHP 5.3 the day before I wrote that comment. I don't follow them THAT closely, but I accept that I was wrong. It took them long enough though ey?
-
Phil Sturgeon posted...
The fact that code re-use is not as good as other systems is a common problem with PHP and nothing to do with CodeIgniter. CI like any framework has various components and using Packages (or Sparks) you can bundle these to reuse.
These are almost identical to Laravels bundles. So similar in fact that their oauth2 bundle is actually my CodeIgniter Spark with a few tweaks.
This is ridiculous, and is something that will only be resolved when a community gets behind a package management system such as Composer, as I have been trying to encourage people to do as much as possible.
Being locked into any one framework is a stupid situation as they all meet one of two fates:
1. Change so much you piss everyone off
2. Change so little you piss everyone off
The fact that you have build 50-60 sites in CodeIgniter means it is a good system.
The fact that you are using something else now means you are progressing as a developer who is interested in learning something new, which is standard. You have no need for a PHP 5.2 only framework because you have no need to build a PHP 5.2 only application.
I am absolutely fine with developers changing their application and while I've clearly lost a CICONF customer I don't care what people use, but when I see posts like this from respected community members with a message that is essentially "I got bored so now it sucks" it is not a useful post and it is highly frustrating.
People who don't know any better start tweeting about how the community is dying, which causes people to start rebuilding applications. That is a stupid reaction, but I have seen it happen.
Just try and keep your messages on point. This should have been "Why I have started using Laravel" and not a slag-off about a product which is still doing exactly what it set out to do.
-
Phil Sturgeon posted...
So you suggest we break existing applications for everyone currently using it, or force people to switch hosts in a bid to try and fix the internet?
It's a nice dream, but highly unrealistic. PHP 5.3 will be common-place soon, and that will be a good day for everyone. Until then all of the grown-ups with distributed applications will have to wait before they get to enjoy the PHP 5.3-only lifestyle.
Hell, I want all the hosts to upgrade to PHP 5.4 immediately so I can use short-array syntax, but that isn't going to happen either.
-
Phil Sturgeon posted...
Rackspace Cloud Sites still don't have PHP 5.3, as do a few other big players. CodeIgniter is moving its dependencies up, just behind others.
1.7.x was PHP 4
2.0.x was PHP 5.1.6
3.0.x is PHP 5.2.4
We can certainly add in PHP 5.3 optional features, but jumping all the way from PHP 5.1.6 to PHP 5.3.x when there are still (frustratingly) a large number of providers still not upgraded is just not possible.
-
Phil Sturgeon posted...
I am immature and selfish? How do you figure that?
Ignoring that bizare statement and moving onto a response, I am unsure why you think 3.0 should drop 5.2.x support and move onto 5.3.
If CodeIgniter were to totally rewrite itself it would break the applications that require it. Who is that helping?
Saying that we were fine with screwing over every single developer in the community that relies on stability, how would you like to see it progress?
As I see it, if I were tasked with rewriting CodeIgniter and EllisLab supported it, we would have a product that ended up very much like FuelPHP or Laravel. Who is that helping?
CodeIgniter does what it does and it does it well. 3.0 has come a long way and improved a lot of things, but does not throw away support for developers that rely on it.
-
Phil Sturgeon posted...
How very patronising.
-
Phil Sturgeon posted...
How do you get to that conlusion? Are you reading different posts?
I have no problem with anyone having opinions. I have no problem with anyone using any frameworks.
Shaun is a Laravel developer and he likes Laravel, so do a lot of developers I know. I also use FuelPHP, NodeJS and Rails.
I am just asking Shaun to not be a dick about saying "CodeIgniter is dead" just because he doesn't want to use it anymore. I think that is pretty fair.
-
Phil Sturgeon posted...
CodeIgniter Engineer stopping by.
Firstly, I can understand while you feel this way. Some frameworks rebuild themselves from the ground up every version and some take a slower pace. I was VERY annoyed when it took so long for CI to get from 1.7.x to 2.0 and luckily I was given a chance for that to happen by being allowed onto the team.
Now your points:
"If your host doesn't support PHP 5.3 then jump ship as soon as possible"
Absolutely, but not everyone is the server admin for their project. I do not use any host that only has PHP 5.2 because that is ridiculous, but I sell software to anyone who wants to buy it, and I will not be the person to say "sorry no you can't give me money, you need to upgrade".
CodeIgniter has ALWAYS been the slower moving framework that makes sure your application will work just as well on any potentially installation, and not just on the most recent version of PHP. That is INVALUABLE!
Do you know how tempting it is to implement namespaces and shove in traits? I would LOVE to, but then I would have just cut the potential audience for PyroCMS down to about 40% - if that.
"Unfortunately, due to the fact that there is no strong or dedicated leader"
I would disagree with that. I have spent at least an hour every damn day organising Conferences, Meetups, doing code-review, helping with pull requests and working my ass off. We've had a huge number of pull requests and lots of people helping out.
"CodeIgniter 2.0 brought only minor usability improvements at the cost of dropping PHP4 support entirely."
The community - myself included - fixed upwards of 100 bugs. That is worth a release.
"CodeIgniter is not well unit tested."
It certainly is:
http://travis-ci.org/#!/EllisLab/CodeIgniter
"CodeIgniter has proven its inability to change and it can no longer compete with the feature-set or practices found in any other modern PHP framework."
Nobody on the team is trying to make CodeIgniter the most modern thing ever. Laravel - of which I know you are a fan - has done that because it started from scratch then reinvented itself completely 3 times in about a year. Well done to Taylor he has an amazing framework with some very new and interesting approaches. Callbacks for the win!
At the end of the day, you got bored of a slow moving stable framework and decided you wanted to learn something new. That is perfectly natural, but don't crap all over what CodeIgniter is intended for just because it's no longer the correct tool for you.
-
Phil Sturgeon posted...
A full-rewrite is not required for autoloading or PSR-0 compatability. Composer works fine with PHP 5.2, so that is not relevant.
Autoloading can be added fine in 5.2 and I already have a plan for an autoloader that will work with PHP 5.2 and PHP 5.3, as Composer is pretty important (I've written a post about that)
http://philsturgeon.co.uk/blog/2012/03/packages-the-way-forward-for-php
FuelPHP 1.x has come across problems with the static interfaces and will be removing them for 2.x. Laravel and FuelPHP 2.x will both only use the static interface as a layer, and the syntax ends up looking quite a lot like CI does already.
As for "legacy mode" that is not really fair. CodeIgniter is doing more than just fixing bugs, and leaving all 2.x users stranded on their PHP 5.2 version means they no longer get features, and if CI 3.x is PHP 5.3 only we'll end up writing those features twice.
Really, it's not as easy cut and dry as you think. The CodeIgniter community has a lot of smart people in it, and we're not just waiting for someone to say "have you seen PHP 5.3 before? It's nice".
-
Phil Sturgeon posted...
"I have been observing and can't help but to notice the warm response that this has post has received amongst many in the CodeIgniter community. I'm discovering that many people feel the same way that I do."
If other developers also do not need a PHP 5.2 framework and also feel like trying out something new, then this is still nothing new - they are just in the same boat as you. You're still wrong for taking an aggressive stance against a framework that is still doing what it has always set out to do: offer a stable API for long-life applications that is backwards compatible with a highly portable base. Just because you've got some retweets and one or two comments of agreement doesn't make this post any more correct than if it was you and you alone.
"I completely disagree with the way in which CI's leadership has handled development of the framework."
So you don't like the fact that the community called out to open up the source code, stop it from being a proprietary closed-source system and earned the ability to let dedicated community members represent everyone else, help shape the code, moderate bugs, tag new releases and help add new features? What part about that is negative?
"Sparks are obviously a retro-fit of modularity implemented for the simple reason that the CI team has allowed CI to stagnate. What does it offer to developers, exactly?"
Sorry what? Modular code is what we all want right? We want to be able to re-use packages of code. It's not just "putting your libraries and helpers in different folders" - what a pile of rubbish. Modular code is not restricted to HMVC (which if you actually understood the HMVC pattern you would know has nothing to do with modules) but is actually about the ability to easily find and implement specific code. Why should CodeIgniter ship with OAuth, Doctrine, 4 different Asset managers, an Amazon S3 plugin or any of the other Sparks? Reusable code components are a fundamental part of development. Sure you can use Composer (http://philsturgeon.co.uk/blog/2012/05/composer-with-codeigniter) or PEAR2, but Sparks gives us CodeIgniter specific code for our applications with realistic PHP 5.2 compatibility, which is what CI is about.
"I'm not sure if the Reactor team has its hands tied or if they're simply no longer motivated by this project. But, I'm FAIRLY sure it's the latter."
Are you kidding me? Right now I an in a hotel room in Chicago. I have come here to showcase PyroCMS to an audience, and without CodeIgniter we would not be here. I implement any and all new features I need, and if that does not mean we are adding enough features for you to be happy then I am sorry, but I have not seen you actively submitting anything on GitHub.
As I have said, you wanted new and shiny. CodeIgniter no longer offers that, so like any other developer you've moved on. That is fine, I'm just suggesting you don't be a dick about it in public.
I am well known for my tirade against CodeIgniter over a year ago:
http://philsturgeon.co.uk/blog/2010/10/what-happens-next
You have pretty much said everything I said back then, but this was back when there WAS a problem. When I said things weren't moving forward enough it was down to the 1.7.0 to 1.7.3 taking almost 2 years and having about 30 commits, not "you aren't recoding it and using enough bleeding edge features" like you seem to be concerned about.
I offered suggestions and tried hard to make an improvement, sadly for a while they were all ignored and I was forced to write that post. It was me trying to change the landscape, not just complain about stuff pointlessly like this article seems to be doing.
Since then we have been allowed to take over CI and do whatever the hell we want to make CI better - without breaking it.
We have unit testing, we have new PDO drivers, we have a whole bunch of subtle useful features.
We haven't recoded the whole damn thing and nobody needs to, it works and you need to either get on with it or use something that you enjoy using. But just don't hate on a tool that does what it does. It doesn't make you sound big or clever.
Stop trying to justify the post. You don't have to love CodeIgniter forever and one day I will stop using it too, just don't shit all over the hard work the entire community is - and has - put into this framework because you wanted to switch to something new.
-
Mody posted...
to be honest, I'm fed up from everything called PHP :( the DRY thing just doesn't work with php, I think its time to go to ror or python
-
Mody posted...
You guys should stop talking about php version, I don't think those who want to build app with codeigniter are going to use Hostgator or bluehost, instead they will be using cloud hosting, vps, dedicated server.
All which are very customizable
-
Matt Borja posted...
Shawn, be careful about writing posts like these. Not everybody has the same application or development needs you do. It is clear that in every project, you seek to implement the latest cool gadgets and new features a framework has to offer, at the expense of abandoning what you suddenly deem aged and "behind the times," thus explaining your transition, really.
When having been such a large proponent, now an adversary, understand that what you used to do, your involvement in its community, and how you used to embrace CodeIgniter now means nothing to readers and subscribers when they come across an article like this. It's like closing a credit account after years and years of established good credit; you terminate that track record permanently, and all because it didn't do what you needed it to do.
It's one thing if we as developers quietly do our job in the background, directly interfacing our clients and carrying on business as usual. It's another thing to take on the role of being a mentor within the development community where you are now accountable for what people learn from you. Furthermore, you set yourself up as more authoritative and assume an even bigger role when you are not only a teacher, but now have become the board of education when you start making judgment calls like this; "CodeIgniter is dead, Laravel is alive." You better be sure you know what you're talking about because a few years down the road when we all see a "Laravel is dead, I went back to CodeIgniter" post, followed by, "Laravel and CodeIgniter are both dead, web development is also dead, I'm now doing male modeling;" well, let's just say you would've been better of leaving well enough alone.
Here's the problem: In all of this, you are affecting and influencing new developers, seasoned ones, and professional. Let me remind you that these happen to be developers that either run their own web firm, work for a company, or in some other way, are making a living off of what they do well, and what they enjoy doing. When you rip that away from them with a post like this because now CodeIgniter leaves you discontent, it gives them reason to become discontent with their work, etc, etc. If CodeIgniter was so instrumental in helping you get to where you are now, why discredit that for upcoming developers and not rather let them make those calls for their own applications?
CodeIgniter has broken as much as a 12 part series of screencasts (each 40 minutes long) for us, costing us literally months of waiting time before we could refactor and readdress. We are now prepared to present the community with an even more robust series, but only because we made it happen and we made it work. My bottom line and counter-solution to this post is two fold: 1) CodeIgniter is not dead because you say it is, and 2) As with everything else in life, it is what you make of it.
Discussions like these are most volatile and best kept amongst inner circles of friends, not the world wide web.
-
Kapil Verma posted...
sorry about that comment, yup it was out of line.
About CIv3.0 dropping 5.2.x support and moving on to 5.3, it won't screw devs up if the legacy branch is maintained. Zend is doing the same with 2.0 and Symfony has done the same with with 2.0.
Actually a re-write of CI can be done in a better way than Fuel or Laravel (by having less static stuff and making it fully hmvc) and it'd help the community move forward while having CI as an option. It'd also benefit CI as an autoloader which supports psr0 will offer CI a lot more extensibility and will allow CI to integrate with composer etc
-
Kapil Verma posted...
Statistics have to be interpreted properly ... out of all the web servers running on php5.2, how many would actually be hosting an app ? my bet is less than 5%, the only distributed application i can think of which codeigniter is tied to is pyrocms. And i bet event that would be rarely hosted on a webhost crappy enough to not upgrade to php5.3 till now
-
Kapil Verma posted...
If CI's rewrite in 5.3 would have been a lot like fuel or laravel, and CI is not taking 5.3 up to provide legacy support, i think that one should pick up either of these frameworks for a new project. CI is filling in the role that ZF1 and Symfony1 play for their newer counterparts, for frameworks like fuel and laravel. No point writing new s/w in CI
-
Kapil Verma posted...
I'd say that hosting services that haven't yet moved to 5.3 are pretty shitty, will probably do the same in future with 5.4 unless they are pushed by the community hard enough. And making CIv3 a legacy framework of sorts is not pushing them at all
-
Kapil Verma posted...
I think its pretty bad that CI is still not embracing php 5.3 fully. Sure there is legacy code and all and whatever, but keeping CI 2.x as a legacy branch and making 3.0 better by using 5.3 features would have been a much better choice for moving CI on. (Do note that its been 3-4 years since 5.3 came out)
And even you would have to admit that php 5.3 frameworks provide a much better dev experience than codeigniter, are easier to test, extend etc.
Also, its not INVALUABLE that CI supports php<5.3 .. it SUCKS, libs and frameworks written using php5.3 are so much better than others and keeping a project like CI which has a large user base from using 5.3 features would just hold back a large number of php users. Which in turn would hold back php, which was becoming a decent language with 5.3.
I would like to argue more, but i think your post is immature and selfish on so many levels that i shouldn't
-
Kapil Verma posted...
Also, asking for php5.4 support is not the same as asking for php5.3 support. a host not supporting 5.4 yet is acceptable, but given how much 5.3 improved php, a host not supporting it is really crappy
-
Ian Landsman posted...
There you go problem solved!
http://www.rackspace.com/blog/rackspace-cloud-sites-update-adds-new-features/
Anyway there's been a solution to this forever in software. You keep the v2 branch going as a bug fix only branch and move ahead with v3 on 5.3. Just like PHP itself does, Linux, etc etc.
We've used CI from the beginning and love it and though we're obviously doing new dev in Laravel we still have systems that use CI and will continue to.
CI's problem is as much marketing as anything else and telling people that some hosts don't have 5.3 so we can't move forward has reached a tipping point where it's no longer a sufficient answer and so people are moving on.
Unfortunately developers are a prickly breed and so to discount the marketing aspect is to do CI a great diservice.
-
Ian Landsman posted...
I won't jump all the way in on this, but for the aspect of the debate around PHP 5.3 I'll share my experience. We've moved thousands of licenses of our on-premise product to PHP 5.3 in our latest release this fall and had almost no trouble.
Pretty much every hosting company makes 5.3 an option and most of the good ones have already moved everyone over. We were prepped for huge amounts of support on this issue and literally received none. It was a non-factor.
-
Huzzi posted...
Some valid points but the title of the post is wrong.
-
Go_outside_and_play posted...
And then next year are you going to write about how you've switched over to python? :-)
-
George Edwards posted...
This is an interesting post, but as Phil has said, you've gone the wrong way about it. I agree with a lot of what you have said, but again, as Phil correctly put it, there is no need to torpedo the community with such a negative post. There are still a large number of CI developers hard at work on improving the framework (Phil included) and to be honest, with the history of the framework and EllisLab's behaviour towards it, to say they are working against the grain is an understatement. Kudos to them all, and I think they deserve some thanks in such a thankless role, rather than a post like this.
I certainly don't think CI is dead, in fact quite the opposite. A couple of years ago when shit did hit the fan, it could have been, but Reactor has turned things around.
Like I say, however you do raise a few good points. I've written a few CI projects, one of them being pretty huge by comparison to your average "blog" app and I did find CI limiting in some (but certainly not all) respects. I find it interesting in your comments you mention coming from a game and desktop development background. I'm a game development student learning lower level programming (C++) and the more advanced OO ground I cover, the more I do notice that CI does have it's weaknesses. Hell, so does PHP as a language.
That being said, CI does have a *significant* amount of plus points - like you mention, speed of development, community and a user guide better than any other I've come across. For that reason I wouldn't hesitate in using CI for certain projects.
But let's take a minute to reflect - every framework is ultimately a different set of tools, and it's up to you to pick the right tool for the job. Let's also remember that perhaps CI would be entirely perfect if it was rewritten from the ground up - but surely as developers we know better than most - this isn't possible for long established codebases.
-
Filip_kostovski posted...
Agree
-
EddyF posted...
"I *don't* think the post is link-bait per se, but to write a post that a framework (still used happily by many) is dead sound more like you wish it were dead, because it now has aspects that annoy you.
You are either psychic or just experienced a brains merged situation...but either way I couldn't possibly agree more.
To say CodeIgniter is dead because it still has downfalls to which we all are aware of, is not something we can all relate to. Every single framework I worked with previously has advantages and disadvantages, this will always be the case with any technology you choose to use.
As pointed out before many of the things on this post is either irrelevant or not completely true.
CodeIgniter is quickly becoming one of the most popular php frameworks in the UK Market both for professional freelancers and organisations, although that doesn't mean its the 'best solution' it does mean it still holds a significant advantage over others.
I also dont believe we need a knight in shine armour to lead every single move and strategy, the most powerful thing about this framework, is the community dedication.
Sure I believe CI has issues, but It's not dead yet, because it has just being born.
-
Don Myers posted...
I guess it depends if you want a framework that
1. Changes every version so you need to rewrite your application to use it
2. A newer framework which takes advantage of the newer PHP features (but more than likely will be in the same boat as CI - 3 years from now unless they do #1 above)
I like the fact that CI has stayed backward compatible for all of these years. I couldn't image rewriting all of my applications when CI 2.x comes out or how much it would cost my company.
I agree core CI with HMVC would make adding modules easier and a few other things but I'm not about to give up on it yet.
-
Cyrus David posted...
But this isn't just about what framework the author recommends (and he reserves the right to), it's about his views and/or opinion about what future CI will have :|
-
Conrad Kleinespel posted...
Thanks for this interesting post.
-
Ci_guy posted...
this.
It's a perfectly good framework. Some of you points are valid, but as valid when tested against any relatively mature framework in a number of languages.
I *don't* think the post is linkbait per se, but to write a post that a framework (still used happily by many) is dead sound more like you wish it were dead, because it now has aspects that annoy you. Its not dead yet, dear fellow. you just stopped using it. Your post is a bit of a middle finger to those that still put a fair amount of time and effort into it.
-
Brandon Corbin posted...
Laravel FTW
-
Ben Hutton posted...
Maybe you could also writing a comparison article showing which frameworks are better than CI and why. For example how does this compare with other frameworks of a similar age?
-
Banago posted...
I share a lot of feeling with you about development and I think it's time to give Laravel a proper try :) Thanks mate!
-
Banago posted...
Great article.
I've been following you around since I came here to learn about CI and you had switched to Laravel already. I kinda like Laravel too but have not jumped into it yet - playing with my little framework still.
At this point I'm considering Laravel and Symphony since both seem modular and both have "bundles". I'd like to know your opinion about them and why I would choose Laravel? Give this fellow developer a hand :)
-
Andre_Morita posted...
I was a little sad reading this post, but I understand your point of view. I live in Brazil and here the level of programming is delayed and the vast majority of people and especially companies still use pure PHP or basic PHP. I know PHP advanced and with his screencasts CI met and learned a lot about programming with CI after their tutorials sailed long to learn more and started to migrate most of the pure PHP systems and extremely disorganized for CI 2.1. During this trip a year in CI programming each day found many gaps and problems, and finally ended up creating a custom version almost the core of the IC that is used in all systems and new sites, I went minify the assets based on your one screencast and created a class of layouts / templates incredible with ajax, modules, js, css, minify all automated also based on a screeencasts and some of their ideas based on CakePHP so I can only thank you for your tutorials.
I will follow in their screencats Lavarel but it was difficult to convince the boss to implement CI already know that I think make another migration is impossible.
What do you think about CakePHP and ZendFramewroks? I already know and CakePHP, but I'm thinking of going for something that will not be lost in time and I'm learning ZendFrameworks.
Congratulations to the tutorials and sorry for English I used Google to translate.