I'm sure this varies widely by programmer and company, but it is a good 
idea to get a minimal working example ASAP and then build features on top 
of it (iterative development).  The minimal working example should take 
into account server/client side libraries/frameworks you plan to use.  Look 
to their documentation for best practices, directory structure, testing 
frameworks and build processes.  All of these can affect the project for 
it's lifetime.

Then I would work feature-by-feature prioritizing the most 
important/necessary.  This way, after one "task" you have a new working 
component of your website which you know works which can be tested, 
improved and most importantly: used.

If you're not familiar, this isn't special to web development, it's simply 
the "Agile" approach which is currently the popular way to develop any 
software.  The goal is to break the project into "deliverables" (working 
components) that can be shown "product owners" ASAP.  This way, the 
decision makers can give feedback ASAP to better steer future features 
hopefully toward the success of the software.

So in the case of the website, features may look like (after having a 
minimal working example):

1. Setup basic navigation + home, about, contact pages (pure client side 
work?)
2. Setup user accounts (client side: basic login + profile page, server 
side: routes + handlers + models for authentication and sessions, db: 
profile storage?)
3. Some task related to the intial setup of the site's content (i.e. 
whatever the purpose of the site is)
4. ...

Of course, in each situation you should do a little planning so you can 
break up a task into smaller ones, and make sure the design is flexible 
enough to be improved.  For example, in (2) you may need to plan for user 
"roles" (admin, user, priveleged, etc.) later on even though you won't need 
to do anything role specific for a while.

In general, finding the "right" way to break-up a feature and prioritizing 
them is not a simple thing (especially at first when so much is needed). 
 But if you start doing by doing this you should see a more useful website 
more quickly.

On Monday, September 18, 2017 at 9:39:41 AM UTC-4, Nagesh Kumar wrote:
>
> For example, do you start with the user interface 
> <https://mindmajix.com/node-js-training> and then begin adding function? 
> Do you focus on a single resource and code everything around it before 
> moving on to the next? Or do you go layer by layer, starting with the 
> model/DB layer and building up?
>
>
> Thanks in advance for Useful comments 
> Nagesh Kumar
>

-- 
Job board: http://jobs.nodejs.org/
New group rules: 
https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/nodejs/18973234-bce2-4758-9bab-bcb8f54e6de1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to