Python for Software Development or Full-Stack Development

Python is just perfect or maybe the only one best for data science, machine learning, and deep learning.
How it is for Software Development or Full-Stack Development?
What are the pros and cons of Python if used for Software Development?

Best Regards,
Karamjot Kaur.

That is a difficult question and needs to be analysed on a case by case situation. Not every hosting platform meets every requirement and there may be cases where different tools are a better option.

2 Likes

Thanks a lot for your kind response. Could you please explain it a bit more?

  • How Python is for Secure Software Development?
  • How it is if the developed website, app, or desktop-based application may be integrated with the machine learning model in future?

For such a situation is software needs to be developed using Python or JavaScript is the better choice.

Best Regards,
Karamjot Kaur.

well python would serve well as an API service and there are python frameworks available to serve html with it’s data. Python runs server side

When you use javascript your client downloads all the code to the browser which leaves a potential vulnerability if not handled properly.

1 Like

Oh! it means Python is better for Software Development when the security is the main concern. Is I understand right?

I wouldn’t say better is the right wording as anytime you accept user input you expose a possible vulnerability

Sorry, I’m not sure I understand. Would you mind explaining it in more detail?

typically attacks are some form of code injection where a post method doesn’t properly escapse characters and break out of your code and cause bad results to services your application uses.

This is not quite correct, in that the browser runs on JavaScript. So, any code you write in will have to be transpiled/compiled to JavaScript. If your backend is written in Python, the client will run on JS. If your backend is written in Node, your client will run on JS.

One is not more secure than another - just do not give access to your server from your client.

Security is defined by you (the developer). So, it does not matter which language you use, your application can be made secure or not.

If you are working in the browser, JavaScript is the better choice (for the frontend), as it is the language of the browser. There is nothing stopping you from developing the frontend in Python, but, at some point, you need to compile the Python into JavaScript for it to be used.

Hope this clarifies

1 Like

javascript executes client side meaning it has to download your code. It is the reason why minification is such an important topic with javascript being more heavily used. The “Client” ie the person viewing the site downloads the javascript to be executed. a compiler could possibly minify the code but the browser still downloads it and it’s reverse engineerable.

1 Like

Thanks a lot. It’s a lot clearer to me now.

and try to think of javascript as a tool not as a front end because lots of components make up a front end. CSS, HTML, Javascrip

Yes… my point exactly. All client-side code is JavaScript. All client side code is “reverse engineerable”… this is the crux of the web. That does not make it more or less secure depending on the language. That just means you (as a dev) should not expose your secrets and secure routes, unless needed - language agnostic.

2 Likes

And how is JavaScript for Software development related to Machine Learning, Deep Learning, Natural Language Processing, Speech Recognition, Writing assistants etc.

I can proxy my api calls through a cloud function and you would never know where they are coming from so there are ways to circumvent the security flaws of javascript.

generally the rule is don’t expose your business logic

1 Like

Thanks a lot. Its very helpful to me

There are no security flaws in JS. There are human security flaws.

Any code you write in JavaScript can be just as secure as any code you write in any other language.

If you use Python on your backend, it will need to speak to the clientside JS, in the same way if you use JS on your backend, it will need to speak to the clientside JS.

All security issues in clientside code is a developers lack of implementing security - not a flaw in a language.

You can do this in any language. Even JavaScript. At the end of the day, this all boils down to bytecode.

1 Like

im not a javascript engineer however stating that something has absolutely no security flaws is a naieve approach and afterall humans engineer code which leaves it open to flaws does it now?

My point.

This is the case for every language. JavaScript is no different. So, there are no “security flaws of javascript” - just poorly (for security) coded software. I think we agree on this.

1 Like

The point being there is never a case where there is no vulnerability.