My Approach to building projects

Q: How would you approach building multiple projects from scratch in a short timeframe?

Okay, so it depends on the type of project first and the timeframe. Since the question is about the approach I do following,

Methodology:

  1. Define Modules/ Components and agree upon in advance with client.
  2. Create a doc with agreed upon specifications and stick to it as much as possible.
  3. Setup a project management board like Trello, Teamwork or JIRA
  4. Setup github repo
  5. Setup VM or docker or local setup LAMP
  6. Setup a communication channel skype, slack or anything client prefers
  7. Setup framework
  8. Create Database (first thing I do when I start a project is create database)
  9. Start with back office/ admin panel to make management of various modules CRUD functional. Reporting later.
  10. Code the user interactive features like forms, signup, signin, search first
  11. Test each module iteration before presenting
  12. Update client on daily/ weekly basis
  13. Push every thing to git
  14. Setup auto deploy to push to dev env
  15. Share progress with client on each update

For some of different types of projects and my preferences for frameworks are as belows,

If the project is a website design:

  • Design (mockup/ wireframe ) is available
    • Using bootstrap, I will work in converting the mockup in actual html/css files and make the design functional.
  • Design is not available
    • If design is not available, I will ask the client some questions to decide the website design type and then go to themeforest or any other templates website and would suggest 3-5 templates to choose from. If this works great. If not and or I could not the design that fits client requirements, then I will get bootstrap and build a wireframe with base styles first. But only if we have enough time available.
When design part is done,

Option A: The best option is to go with wordpress, quickest is to use a template, second best to conver the html/css provided or created in earlier step into a wordpress theme.

Option B: If the speicifications do not fit into a wordpress CMS, then I will go with either Laravel or Codeigniter.

If the project is Website Development:

(design provided or created)

Same, if it doesn’t fit into a wordpress webiste than I would probably go with another framework my choice of frameworks for various types of products are listed below,

Ecommerce – Shopping Cart:

Framwork of ChoiceExperience Rating
1. Woocommerce★★★★★
2. Magento 1★★★★
3. Magento 2★★★★
4. Shopify★★★★★
Peham’s choice of framwork for development of an ecommerce website

CMS/ Blog/ Personal site/ Company Website

Framwork of ChoiceExperience Rating
1. WordPress★★★★★
2. Joomla★★★★
3. Drupal★★★★
Peham’s choice of framwork for development of a CMS based site

LMS

Framwork of ChoiceExperience Rating
1. Moodle★★★★
Peham’s choice of framwork for development of a LMS

Customized Soltuions:

Framwork of ChoiceExperience Rating
1. Codeigniter★★★★★
2. Laravel★★★★★
3. Yii2★★★★
4. CakePHP/ Symfony★★★★
Peham’s choice of framwork for development of a custom solution

Also see Steps & Decisions I would recommend teams to be successful

Leave a Reply