PHP framework, or hand-made code?

Centur

Acquaintance
Joined
Feb 26, 2014
Messages
37
Reaction score
0
FP$
6
Which would you prefer? I am coding a simple CMS and have been thinking of using Symfony's PHP framework to develop it, but I have concerns about if I ever change the license considering Symfony is open source. On the other hand, hand-coding I could do whatever I want, but is a bit harder.

Which would you suggest I put my hand at? I want it to be secure but only moderately hard to make.
 
I would only go with hand-made code.
There is no less hard, but less control.
I am super comfortable with PHP after 3 years and I have been working on CMSs for quite some time. What is even more interesting, is that I always start every project from scratch in order to make all the website logic but it will come a day I will develop my own MVC and OOP oriented framework.
For now making the framework is my main aim.
I really hate using other frameworks, but this doesn't mean I don't have to see how they are coded 😉

BTW, now a CMS for me is a joke. It takes 5 hours to finish a basic one fully functional from scratch.
 
I would normaly like to code everything from scratch but I am starting to find it becoming a tedious thing. I am actually created my own web applications framework, because I don't like other frameworks. They seem be more focus on CMS / MVC designs.

The only problem is I wanted to put on github, I am still trying to figure out git. lol
 
I would use a framework (or make your own framework.)
 
If you're a good enough coder to code everything from scratch, do that. Works much better in the long run, and makes it much easier to modify things when the need arises.
 
CM30 said:
If you're a good enough coder to code everything from scratch, do that. Works much better in the long run, and makes it much easier to modify things when the need arises.
i second this 🙂
 
Symfony is licensed under MIT which doesn't restrict you to use it on free or open sources products only. You can develop a commercial product and sell it without any need to redistribute the source code.

I would suggest you to use a framework. PHP syntax isn't consistent like Java or C# and you might end up with a huge mess of code if you are not very good with it. A framework reduces all the pain and takes care of most of the common things like authentication, template management, etc.

Why re-invent the wheel when its already available. And above all when a new developer join your project, he will see a familiar code if you use a framework rather than studying your entire code base.
 
i dont think that hand-made code is harder....
I believe the opposite. To customize a framework is harder....
To customize your own code no...cause its already custom!
 
Personally I would rather hand code. Being the creator means you know where to edit everything as you coded it. Easier many time to just code yourself, rather then learning to use a framework. After you get enough experience hand coding you can make a good framework for the type of projects you create the most.
 
I think there is this perception that web frameworks don't allow customization. I think people get web frameworks confused with CMSs. Most of the time frameworks are there to provide well thought-out, useful tools that are common across large applications, generally within the MVC paradigm.

Yes, you could write all of your own RESTful routing sytems, database abstraction, controller handling, package management, migration/schema tracking system, etc. But why would you reinvent the wheel, especially when Laravel, jQuery, CakePHP, Symfony, Express.js, Mongoose, etc. are going to do it way better than you are ever going to do it?

Pointing out that you could potentially have slightly more control with writing your own tools for a web application is similar to pointing out that if you wrote your application in assembly language instead of some high level language, you'd have much more power. It's silly. If you're writing a medium-sized web application by yourself or with a small team, and most of the platform you need or would want exists in some framework, you shouldn't reinvent the wheel. The framework will do it better than you 9 times out of 10.
 
Carson said:
I think there is this perception that web frameworks don't allow customization. I think people get web frameworks confused with CMSs. Most of the time frameworks are there to provide well thought-out, useful tools that are common across large applications, generally within the MVC paradigm.

Yes, you could write all of your own RESTful routing sytems, database abstraction, controller handling, package management, migration/schema tracking system, etc. But why would you reinvent the wheel, especially when Laravel, jQuery, CakePHP, Symfony, Express.js, Mongoose, etc. are going to do it way better than you are ever going to do it?

Pointing out that you could potentially have slightly more control with writing your own tools for a web application is similar to pointing out that if you wrote your application in assembly language instead of some high level language, you'd have much more power. It's silly. If you're writing a medium-sized web application by yourself or with a small team, and most of the platform you need or would want exists in some framework, you shouldn't reinvent the wheel. The framework will do it better than you 9 times out of 10.
I find that when you use a framework you have to essentially forget everything you learned to learn how to use a framework. Also i don't think using a framework is any easier. To me it's more like doing dbl to triple the work.
 
I think that the best is Hand-maded code.
You can do whatever you want!

And it's not harder.
 
Stalin said:
I find that when you use a framework you have to essentially forget everything you learned to learn how to use a framework. Also i don't think using a framework is any easier. To me it's more like doing dbl to triple the work.

A framework essentially provides you easier ways to do common tasks. Frameworks like Laravel, Symfony, etc; doesn't ask you to code in Java syntax. They just ask you to follow some best practices in PHP. If you feel like you have to forget everything you learned to learn a framework, then it means you most likely learn from wrong source the first time.

It would take a lot less time to learn a framework than building a proper database abstraction alone.
 
kavin said:
Stalin said:
I find that when you use a framework you have to essentially forget everything you learned to learn how to use a framework. Also i don't think using a framework is any easier. To me it's more like doing dbl to triple the work.

A framework essentially provides you easier ways to do common tasks. Frameworks like Laravel, Symfony, etc; doesn't ask you to code in Java syntax. They just ask you to follow some best practices in PHP. If you feel like you have to forget everything you learned to learn a framework, then it means you most likely learn from wrong source the first time.

It would take a lot less time to learn a framework than building a proper database abstraction alone.
I think that has to do with expertise of the person. It is not hard at all to make a database abstraction layer class. but using a framework is alot harder, to me.

Don't get me wrong I have used frameworks here and there. But they are a waste of time for the niche I code for.
 
Stalin said:
kavin said:
Stalin said:
I find that when you use a framework you have to essentially forget everything you learned to learn how to use a framework. Also i don't think using a framework is any easier. To me it's more like doing dbl to triple the work.

A framework essentially provides you easier ways to do common tasks. Frameworks like Laravel, Symfony, etc; doesn't ask you to code in Java syntax. They just ask you to follow some best practices in PHP. If you feel like you have to forget everything you learned to learn a framework, then it means you most likely learn from wrong source the first time.

It would take a lot less time to learn a framework than building a proper database abstraction alone.
I think that has to do with expertise of the person. It is not hard at all to make a database abstraction layer class. but using a framework is alot harder, to me.

Don't get me wrong I have used frameworks here and there. But they are a waste of time for the niche I code for.

For someone who can create a database abstraction class, learning a framework shouldn't be hard. I'm not saying that a database abstraction layer is that hard, but learning a framework is much more easier.

Moreover you have learn it only once and you can use it in rest of your projects. Its better that way than redoing everything over and over for every projects, isn't it (aka reinvent the wheel).
 
kavin said:
Stalin said:
kavin said:
Stalin said:
I find that when you use a framework you have to essentially forget everything you learned to learn how to use a framework. Also i don't think using a framework is any easier. To me it's more like doing dbl to triple the work.

A framework essentially provides you easier ways to do common tasks. Frameworks like Laravel, Symfony, etc; doesn't ask you to code in Java syntax. They just ask you to follow some best practices in PHP. If you feel like you have to forget everything you learned to learn a framework, then it means you most likely learn from wrong source the first time.

It would take a lot less time to learn a framework than building a proper database abstraction alone.
I think that has to do with expertise of the person. It is not hard at all to make a database abstraction layer class. but using a framework is alot harder, to me.

Don't get me wrong I have used frameworks here and there. But they are a waste of time for the niche I code for.

For someone who can create a database abstraction class, learning a framework shouldn't be hard. I'm not saying that a database abstraction layer is that hard, but learning a framework is much more easier.

Moreover you have learn it only once and you can use it in rest of your projects. Its better that way than redoing everything over and over for every projects, isn't it (aka reinvent the wheel).
I think it is for those that don't have the EXP to create their own framework. Most frameworks need composer to be installed, and there are alot of people that don't have access to server with ssh capabilities.
 
Stalin said:
kavin said:
Stalin said:
kavin said:
Stalin said:
I find that when you use a framework you have to essentially forget everything you learned to learn how to use a framework. Also i don't think using a framework is any easier. To me it's more like doing dbl to triple the work.

A framework essentially provides you easier ways to do common tasks. Frameworks like Laravel, Symfony, etc; doesn't ask you to code in Java syntax. They just ask you to follow some best practices in PHP. If you feel like you have to forget everything you learned to learn a framework, then it means you most likely learn from wrong source the first time.

It would take a lot less time to learn a framework than building a proper database abstraction alone.
I think that has to do with expertise of the person. It is not hard at all to make a database abstraction layer class. but using a framework is alot harder, to me.

Don't get me wrong I have used frameworks here and there. But they are a waste of time for the niche I code for.

For someone who can create a database abstraction class, learning a framework shouldn't be hard. I'm not saying that a database abstraction layer is that hard, but learning a framework is much more easier.

Moreover you have learn it only once and you can use it in rest of your projects. Its better that way than redoing everything over and over for every projects, isn't it (aka reinvent the wheel).
I think it is for those that don't have the EXP to create their own framework. Most frameworks need composer to be installed, and there are alot of people that don't have access to server with ssh capabilities.
You can push the dependencies to the server yourself.
 
For the record, if anyone uses jQuery, I don't think they should be able to say they don't use a framework. 😛
 
Back
Top Bottom