Lifelesspeople.com

 Forum FAQsForum FAQs  Knowledge BaseKnowledge Base  RulesRules   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   HostingHosting   RegisterRegister 
 DonateDonate   WikiWiki   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Web frameworks (for PHP, Ruby, Python, etc.)
Goto page Previous  1, 2
 
Lifelesspeople.com Forum Index -> Web Architects' Abode
Post new topic   Reply to topic View previous topic :: View next topic  
Author Message
ClickFanatic
Est. 2005


Joined: 18 Jan 2005
Posts: 3980
Location: A particular geographic area

PostPosted: Mon Feb 18, 2008 1:14 pm    Post subject: Reply with quote

SolidRaven wrote:
I personally think that if you don't use your own framework that it's already counter productive.

What arguments do you have to back this up? Do you have any idea how much effort can go into creating a truly flexible framework?

SolidRaven wrote:
Sadly a lot of new "programmers" just start using a framework from day 1.

They will find out that they need more skills to become good at programming in different situations. Using a framework is not an alternative to learning how to program.

SolidRaven wrote:
Quote:
On the other hand, frameworks can be a great learning resource for beginning programmers, because they are usually written in a very well-structured way.

I don't agree, simple software written in a simple way with no unnecessary structures is the best thing to learn from.

Once you get past the point of writing small and managable programs and head into the world of big applications things can get out of hand. Adopting a framework as guidance for writing such an application can greatly improve the programming style of the programmer.
_________________
Captain Jell-O Buster from the Future
[img]http://feeds.feedburner.com/sparepencil.1.gif[/img]
Back to top
 
LP-SolidRaven
Dictator of the Dump


Joined: 06 Jun 2004
Posts: 7182
Location: The cheese is made out of moon

PostPosted: Mon Feb 18, 2008 2:01 pm    Post subject: Reply with quote

ClickFanatic wrote:
What arguments do you have to back this up? Do you have any idea how much effort can go into creating a truly flexible framework?

If you didn't write it yourself you'll constantly look into the documentation without even really realizing it. Also I have an idea how long it takes to create a truly flexible framework. I add features to my own framework as I need them actually.

Quote:
They will find out that they need more skills to become good at programming in different situations. Using a framework is not an alternative to learning how to program.

As I said, not everybody thinks that way; wouldn't be the first time I've seen somebody hack together something dirty with a framework that could be done in less than 10 lines of code without any framework feature.

Quote:
Once you get past the point of writing small and managable programs and head into the world of big applications things can get out of hand. Adopting a framework as guidance for writing such an application can greatly improve the programming style of the programmer.

You need to start small, start with something too big and you're doing it wrong. If you can't even manage a small application, than how are you supposed to manage a big one. And the requirement of a framework for such projects is quite over rated, at least in terms of making it manageable.
It's all about coding guidelines and rules. If you make good rules and guidelines before you write a single line of code, plan it all out you wouldn't really even need a framework. It's not really that hard, you should only spend a minimal amount of time coding if it's done correctly:
1) Grab a piece of paper and write down the problem in an extended way that explains as much as possible. Try to use a tree structure and don't be afraid to start over several times until you have something you like. Also draw the connections between everything.
2) Check if a solution is already available. If there is, check if you can use it instead of writing something yourself or analyse it. If there isn't you must try to solve each sub problem by itself first. After that change them to fit in the major problem.
3) Revise the solutions and see if you really didn't miss anything. If you did go back to step 1
4) Decide about the more specific factors. Like the programming language, team size, coding guidelines and rules.
5)Work out a reasonable schedule, don't be afraid to allocate more time than you'd actually need and keep your team members into account as well
6) Write a prototype on a quick (and dirty) way to see if there are any additional problems that you didn't think of before. You don't need to prototype the entire application. Only the parts that might cause issues later.
7) Write the application
Cool Debug for several weeks/months
9) Analyse the results
10) Take over some small country and play dictator while your application is running as it should. Or something like that.
_________________
Quote:

<bart416> I just realized something
<bart416> we celebrate the fact that this piece of rock made one rotation around a glowing ball of plasma that is kept together due to its own gravity well
<njsg> HAPPY NEW YEAR
<Easter> ^^
Back to top
 
krt
...


Joined: 11 Jan 2005
Posts: 4709
Location: Down Under

PostPosted: Tue Feb 19, 2008 9:10 pm    Post subject: Reply with quote

Quote:
What arguments do you have to back this up? Do you have any idea how much effort can go into creating a truly flexible framework?

When you go beyond content management systems and simple programs, the effort pays off.

Quote:
As I said, not everybody thinks that way; wouldn't be the first time I've seen somebody hack together something dirty with a framework that could be done in less than 10 lines of code without any framework feature.

Yep. Using frameworks with limited technical knowledge is just as bad as reading a tutorial or two and diving straight into development. It even gets worse when they have a false sense of safety that whatever they are doing is extensible and maintainable just because they are using a framework. The same applies to OOP and design patterns.
Back to top
 
ClickFanatic
Est. 2005


Joined: 18 Jan 2005
Posts: 3980
Location: A particular geographic area

PostPosted: Wed Feb 20, 2008 7:55 am    Post subject: Reply with quote

krt wrote:
Quote:
What arguments do you have to back this up? Do you have any idea how much effort can go into creating a truly flexible framework?

When you go beyond content management systems and simple programs, the effort pays off.

I know. I was questioning SolidRaven's statement that not using your own framework is already counter-productive.
Content management is the primary aspect of web development today. Publicly released web frameworks generally work very well for this task. Writing your own framework for such task is (a) going to take much time (not a really big deal, though, because framework developments usually occur while working on a project) and (b) the result will probably be strikingly similar to existing web frameworks.

Of course I am not saying that people should not write their own frameworks. In fact, it's something I applaud because, in the end, the programmer will have a much better understanding of the language.

krt wrote:
Using frameworks with limited technical knowledge is just as bad as reading a tutorial or two and diving straight into development. It even gets worse when they have a false sense of safety that whatever they are doing is extensible and maintainable just because they are using a framework. The same applies to OOP and design patterns.

I couldn't agree more. Smile
_________________
Captain Jell-O Buster from the Future
[img]http://feeds.feedburner.com/sparepencil.1.gif[/img]
Back to top
 
Xtreme $niper
Lifeless Person


Joined: 29 Mar 2005
Posts: 1453
Location: Canada

PostPosted: Sun Feb 24, 2008 2:44 pm    Post subject: Reply with quote

I can only really see web frameworks being considered a fad because let's assume you build a few websites using this framework, and then you move on to new projects.

Then, down the line you come back to look at your old source code and you'll sit there dumbfounded by what any of the written code means because it's all using a framework you may have forgotten, or is no longer supported... So you have to go back and re-read documentation just to understand what your code is doing.

That may be an extreme scenario, but I can see it happening to many people.
_________________
Come visit Shattered Abstracts! (Photoblog!)
Back to top
 
krt
...


Joined: 11 Jan 2005
Posts: 4709
Location: Down Under

PostPosted: Fri Mar 28, 2008 4:09 am    Post subject: Reply with quote

Quote:
Then, down the line you come back to look at your old source code and you'll sit there dumbfounded by what any of the written code means because it's all using a framework you may have forgotten, or is no longer supported... So you have to go back and re-read documentation just to understand what your code is doing.

Yes, but that only applies with excessively complex frameworks. I prefer a thin one where the only actual "framework" is for request handling, e.g. a MVC paradigm. Anything beyond that should be modular and more akin to a library.
Back to top
 
ClickFanatic
Est. 2005


Joined: 18 Jan 2005
Posts: 3980
Location: A particular geographic area

PostPosted: Fri Mar 28, 2008 7:48 am    Post subject: Reply with quote

krt wrote:
Quote:
Then, down the line you come back to look at your old source code and you'll sit there dumbfounded by what any of the written code means because it's all using a framework you may have forgotten, or is no longer supported... So you have to go back and re-read documentation just to understand what your code is doing.

Yes, but that only applies with excessively complex frameworks. I prefer a thin one where the only actual "framework" is for request handling, e.g. a MVC paradigm. Anything beyond that should be modular and more akin to a library.

I agree with that. In fact, it is probably one of the most important reasons why I liked CodeIgniter so much: it's focussed mainly on request handling and code/template separation. All the extra features are plugin-based and can be easily removed or replaced (as a matter of fact, even the template system can be replaced).
_________________
Captain Jell-O Buster from the Future
[img]http://feeds.feedburner.com/sparepencil.1.gif[/img]
Back to top
 
Display posts from previous:   
Post new topic   Reply to topic    Lifelesspeople.com Forum Index -> Web Architects' Abode All times are GMT - 6 Hours
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Home | Hosting | News | Forum | Links | System Status | About | Archive | Donate ]
Powered by phpBB © 2001, 2002 phpBB Group
All trademarks and copyrights on this page are owned by their respective owners. Posts and comments are owned by the poster. Everything else © 2001 - 2007 Lifelesspeople.com