When starting a project from scratch, do you build back-end or front-end first?

@tio407 Personally I think that’s like asking if should someone start from writing tests at start. It’s not like that only TDD is good way and same goes to your question. You can even think about front-end like a real tests for back-end and it would work similarly to TDD.

If there is more than one good way then it of course depends and you need to think why it depends i.e. what are the cons and pros. The only one who knows it (at least first) is you. Even if you can see exactly one good way then maybe think if you did not missed any other. Computers at end understand only 0 and 1, but it’s not working same for developer. You need to ask questions … lots of questions …

Even projects with similar budget and functionality can be developed differently. For example in one company you could be asked to create front-end first (only CSS and HTML) to visualize how your product would work in order to discuss with client all project details and provide estimates for each part and whole project. In other company back-end may have priority as front-end is changing often. In such case you would need a really generic and stable back-end in order to introduce enhancements (not new features) really quickly in order to focus on front-end look and like with client. Finally last company would work on both sides at once as it may be the fastest way to introduce new features quickly.

At start I’m not working on any of them. First what I’m doing is as said ask questions. I’m creating md files with a detailed plan. With a plan I’m able to create a simple forms in order to visualize how project would work, if I did not missed anything, how to split work in parts and what I need to achieve for each part (for example slack integration). Finally I would slowly work on each part in both backend and frontned, so in my case I would firstly plan and then work on both at the same time.

It’s also a bit similar to question: What is a good way to learn Elixir?. Basically you learn in your own way and answers are probably boring, but always to the point i.e. practice. Here it looks exactly same, but instead typical tip would be something like ask yourself. Well … at end everything goes into practice, so even if you would follow not the best way then by simply practicing you would slowly see what you can improve. Once you notice them you just need to ask how to improve and finally again at end you would have practice again. :smile:

You may be confused and ask why, but the answer is simple … Every human is learning to the end of life and learning means … PRACTICE - it’s ours Rome :077:

3 Likes