Avatar of Ezra Fayet

Ezra Fayet

FullStack Dev
FullStack Dev ·
Recommends
on
Node.jsNode.jsPHPPHP

First thoughts: * As a beginner you need to understand concepts first, all languages out there are great, each has it's own philosophy, each is better suited for a specific situation. Learn concepts first, do something, then you will understand the differences between them and why one should be chose over another for a task * As a project manager you want your project to come to an end. You will get lost in all the different solutions out there (and it's good), but don't get lost too far. Very often I see people getting lost in those debates and never achieving things, like someone writing a book that would still be choosing the font 6 months after (we've all done that it's ok, but we have to realise it)

Chances are your project can be equally good on any different stacks. I heard an interview of someone from Uber who said something like they started with python, went to node, went back to python and went to go, and with micro-services now they can have all of them all-together.

Last remark: from what I know Laravel is a framework for PHP, so it IS PHP. Just like Symphony for PHP, Express for Node.js, Koa for Node.js, Flask for Python ...

Now to answer your question :

  • PHP has a big community, it is great and easy to start with, and you will definitely will learn real object oriented structure
  • Node.js has a big community too, don't worry finding help will be as easy. It is less easy to start with but in my point of view it is a lot easier to keep on going with it on a long run. Why ? Because it's very easy to run a new project, and it executes javascript. How is it good ? Because chances are that your front will also be using javascript (React.js / View.js are crazy good). Thanks to that you will be able to master the language better because you will use it all day (and at first mastering one language is more valuable than barely knowing two) and you won't have to switch languages in your head when you code. And communication between front and back will be in json ... Which is crazy close to javascript.

Alexander is right, if you go with PHP take your time first to do things by yourself like building your own MVC, the benefit is huge and the risk is to never really be able to understand what's happening on a deeper level. (at some point you can switch to a framework though). He's also right on choosing a strongly typed language, problem is javascript is not. This is why, if you choose node, when you start being confident, add typesccript.

Hope it helps, good luck

READ MORE
11 upvotes·1 comment·336.6K views
Apostolis Dimitriou
Apostolis Dimitriou
·
August 23rd 2020 at 8:07PM

Thank you for your response, you really help me but I have some thoughts for the PHP. For example, I will make a single-page application and I read it is better to node.js for this style of application. After that, I think the speed is really important ( maybe I am wrong) because the app will use a lot of data and this data will be images and text. Maybe I thought in the wrong way but I was between node.js and PHP only for this reason. And I want to add something that I don't say in my question (maybe it is important) I know c ( I am not the best programmer but I have a little experience ).

·
Reply
FullStack Dev ·
Recommends
on
ReactReact

Hi ! That's great I just finished publishing a small article on medium to compare all the solutions you have. Basically you can use Python for the backend, but if you are up to Node.js I warmly recomand it because it executes JavaScript (just like the front), so you can code it all in one language only. You have to pick a database (basically you should choose from SQL or NOSQL batabases. To store files online you can either store them in base64 in the database (bad idea, you will have big documents/entries), or store them on your server instance (bad idea, you risk is to loose them all if you don't manage it well), or you can use AWS buckets (there are an equivalents in Azure, Google Cloud, Digital Ocean and there must be extensions for it in Heroku). You will also need to learn a front-end library to build the client. They all are in JavaScript. For that you need to choose between React.js, Vue.js and Angular 2. Here is my article, don't hesitate if you have questions about it: https://adzaria.medium.com/a-full-picture-of-languages-for-web-development-6228efa77150

READ MORE
A full picture of languages for web-development | by Adzaria | Mar, 2021 | Medium (adzaria.medium.com)
10 upvotes·2 comments·43.9K views
MAhemoud shaLaby
MAhemoud shaLaby
·
June 3rd 2021 at 9:45AM

Good evening guys, I studied a full Python course and applied my work to it on my laptop, but after I finished this course, I didn't upload a program.

·
Reply
ROD DUBITSKY
ROD DUBITSKY
·
June 12th 2021 at 2:31PM

Hi - I'm building a suite of calculators in python/flask which are served to a React/Material UI front end. For the full back end should I use Node or Flask? In other words can I use Flask for the narrow task of running calculators and Node for the heavy lifting on the backend? Or better to use flask for everything? I am new to coding over the past few years, so whatever I choose I want it to be simple enough for me to troubleshoot. I've been coding in React/JS/Python/HTML, etc. The calculators and webscraping/API dashboards are much easier to develop in python.

·
Reply
FullStack Dev ·
Recommends
on
Node.jsNode.js

If you go with react / react native I advice you to go with node. Why ? I first didn't believe coding in javaScript everywhere (back, front and db queries) was making life SO much more easy. I still followed the advice, in the end this is a huge relief. For a small startup project with 1/2/3 devs, using only one langage increases efficiency a lot. You can switch very fast from a topic to another.

READ MORE
8 upvotes·10.6K views