Skip to main content
deleted 1 characters in body
Source Link
keppla
  • 5.2k
  • 25
  • 32

I would suggest to refactor heavily instead

The Problem you anticipate here:

I really want to thoroughly plan this rewrite out, I want to detail every feature I want, where it will go, and how it will connect to every other part - but I have no experience with this level of planning. Any advice? Any programs that will help? I'm getting tired of Trac, I've never really liked it.

is a real tough one. It is basically the Waterfall model with all its uglyness. Here's some anecdotical evidence for the problems with the 'great rewrite' approach, that comes to the conclusion: you will probably not anticipate the problems correctly, and end up with another mess you want to rewrite from scratch. Not because you're bad, but because it's impossible to get something big right in one shot.

When you instead start to refactor, you can write individual tickets and you can continue using the project. The trick here is to identify smaller changes that lead to an overall better design.

For example: you mention, you have nowno MVC, but you want to. As a first step, you could take a single PHP-file, and, assuming the usual mixup, sort it, so that in the top you have all db-access, calculation, etc, in the bottom you have the "templating" (first tickets, for each file). As a second step, you could encapsulate all these templating parts into functions, that get their parameters passed. (a lot of more tickets). Done? Congrats, you finished your V in MVC.

I would suggest to refactor heavily instead

The Problem you anticipate here:

I really want to thoroughly plan this rewrite out, I want to detail every feature I want, where it will go, and how it will connect to every other part - but I have no experience with this level of planning. Any advice? Any programs that will help? I'm getting tired of Trac, I've never really liked it.

is a real tough one. It is basically the Waterfall model with all its uglyness. Here's some anecdotical evidence for the problems with the 'great rewrite' approach, that comes to the conclusion: you will probably not anticipate the problems correctly, and end up with another mess you want to rewrite from scratch. Not because you're bad, but because it's impossible to get something big right in one shot.

When you instead start to refactor, you can write individual tickets and you can continue using the project. The trick here is to identify smaller changes that lead to an overall better design.

For example: you mention, you have now MVC, but you want to. As a first step, you could take a single PHP-file, and, assuming the usual mixup, sort it, so that in the top you have all db-access, calculation, etc, in the bottom you have the "templating" (first tickets, for each file). As a second step, you could encapsulate all these templating parts into functions, that get their parameters passed. (a lot of more tickets). Done? Congrats, you finished your V in MVC.

I would suggest to refactor heavily instead

The Problem you anticipate here:

I really want to thoroughly plan this rewrite out, I want to detail every feature I want, where it will go, and how it will connect to every other part - but I have no experience with this level of planning. Any advice? Any programs that will help? I'm getting tired of Trac, I've never really liked it.

is a real tough one. It is basically the Waterfall model with all its uglyness. Here's some anecdotical evidence for the problems with the 'great rewrite' approach, that comes to the conclusion: you will probably not anticipate the problems correctly, and end up with another mess you want to rewrite from scratch. Not because you're bad, but because it's impossible to get something big right in one shot.

When you instead start to refactor, you can write individual tickets and you can continue using the project. The trick here is to identify smaller changes that lead to an overall better design.

For example: you mention, you have no MVC, but you want to. As a first step, you could take a single PHP-file, and, assuming the usual mixup, sort it, so that in the top you have all db-access, calculation, etc, in the bottom you have the "templating" (first tickets, for each file). As a second step, you could encapsulate all these templating parts into functions, that get their parameters passed. (a lot of more tickets). Done? Congrats, you finished your V in MVC.

Source Link
keppla
  • 5.2k
  • 25
  • 32

I would suggest to refactor heavily instead

The Problem you anticipate here:

I really want to thoroughly plan this rewrite out, I want to detail every feature I want, where it will go, and how it will connect to every other part - but I have no experience with this level of planning. Any advice? Any programs that will help? I'm getting tired of Trac, I've never really liked it.

is a real tough one. It is basically the Waterfall model with all its uglyness. Here's some anecdotical evidence for the problems with the 'great rewrite' approach, that comes to the conclusion: you will probably not anticipate the problems correctly, and end up with another mess you want to rewrite from scratch. Not because you're bad, but because it's impossible to get something big right in one shot.

When you instead start to refactor, you can write individual tickets and you can continue using the project. The trick here is to identify smaller changes that lead to an overall better design.

For example: you mention, you have now MVC, but you want to. As a first step, you could take a single PHP-file, and, assuming the usual mixup, sort it, so that in the top you have all db-access, calculation, etc, in the bottom you have the "templating" (first tickets, for each file). As a second step, you could encapsulate all these templating parts into functions, that get their parameters passed. (a lot of more tickets). Done? Congrats, you finished your V in MVC.