AngularJS vs Python: What are the differences?
"Quick to develop", "Great mvc" and "Powerful" are the key factors why developers consider AngularJS; whereas "Great libraries", "Readable code" and "Beautiful code" are the primary reasons why Python is favored.
AngularJS and Python are both open source tools. AngularJS with 59.6K GitHub stars and 28.9K forks on GitHub appears to be more popular than Python with 25.3K GitHub stars and 10.5K GitHub forks.
According to the StackShare community, Python has a broader approval, being mentioned in 2827 company stacks & 3633 developers stacks; compared to AngularJS, which is listed in 2799 company stacks and 1860 developer stacks.
Since I am new to this, I'm not sure what I like more. I have also been self-teaching before this course but have not gotten deep into a particular language's fundamentals. I want to decide on a language and stick to it before I move to a new one after the first language is learned, but it is difficult deciding which language to start with. I want to develop medical software and medical mobile apps.
Sticking to a language before moving on is a common goal. However, in reality you are going to transition as you find languages that better suit you or your organization's requirements. Start with Java, not because it is optimal for your end goals, but because it will teach you what you like and dislike about programming and because your instructor is more familiar with it. That will give you a valuable perspective and allow you to make a more informed decision later.
There are many ways to solve problems in different languages, but the "best" language pragmatically is the one that you feel most comfortable using. In that respect, programming is like woodworking- you want to let the tool do the work. If there is another language that is "better" objectively but more difficult or confusing to you, you will counteract the anticipated benefits by having to struggle to write code.
The only way to solve this problem while avoiding opinions and tastes is to objectively look at what you are trying to build.
Thus the most efficient part of your question is your last sentence: you want to build medical software and medical mobile apps.
In that case, the answer is definitely Java, as is for all "real" software projects.
Python is good for data science, in other words for statistics. Its other competitive advantage is that it is easy to learn for beginners, but that would be a bad reason to use it for a "real" software project.
Since you're already taking a CS course which involves Java, I would recommend you to keep learning it. Java's statically typed & OO nature forces you to learn a lot of important yet common programming fundamentles. C++, C# and Java type languages also force you write code more carefully (you have to think about the data types on your own and even allocate/de-allocate memories [C++ pointers]). That's why colleges prefer it as go to language for teaching CS concepts.
On the other hand, JS, Python and other such languages are dynamic in nature and hence, easy to learn. But you can't learn certain concepts (polymorphism, abstract classes, diamond problem etc) using these languages. So it makes sense to stick with Java in your case.
try with python because easy ... its good for u when u are learning basic's and they have many library that help's u with mobile app and desktop application but it is not the best ... when u are learn programming will with python then start with js basic's and then (react native) or flutter and also u can use java for mobile development bur i recommend first choices ..and for Desktop application java is have an amazing library (java fx ) for this type of application's and C# is one of most powerful language's for software development . good luck
While I've seen many people recommend Java (and I agree with them), I think you can learn both. But it depends on how much time you got. I recommend you first learn Java. Then python will be easy to learn, and focus mainly on modules for graphs. The reason why I recommend to learn both is because python is much better and easier to code about statistical analysis. But again do this only if you have time to just learn them.
My advice to anyone learning to program is to not obsess on the language.. You SHOULD learn all languages.. Same as learning human spoken languages - the more you learn, the more ways your mind can interpret a new problem set. Learning them at the same time isn't a big deal (just like growing up in a bilingual home). Your language and your software stack are guaranteed to change 3 times in your career. Don't assume you're going to choose the "right one". And you wont waste any time learning one you never wind up using.
As a person who works on linux and OSX desktops, I have a personal bias against working for companies and software stacks that require C# or Visual Studio. But this is not due to their technical merits, but instead the OS as a platform condusive to efficient CLI toolchains and container management. But aside from that, I can use vi/IntelliJ-suite to write most languages, so language isn't a real concern. If you're windows bound, pretty much everything is available to you (through VMs and docker).
Any AI (which is a hot employment topic for the forseeable future) would like python skillz.
I personally love Java (and Android's Kotlin varient) for it's very very well designed multi-threaded libraries. go and rust are newer and thus do a slightly better job at this, but due to the open-source nature of java and editors that auto-reveal function call source code, it's very easy to learn how vendors implemented MT code and various other algorithms. Python should be equally "open" to 3rd party library review (and thus again how they solve complex problems), though a lot of times, I see python resorting to compiled C-libraries (and thus the cost to crack open the code and or trace through the code becomes too burdensome to bother).
Ever posted an image on Instagram, watched a video on Youtube, or uploaded a file to Dropbox? You ran Python code each time you did any of those.
When starting out, you really can't go wrong with any language. What matters is to learn, try, repeat. You want to be able to build complete small project, not hello world in every language possible. By building small, but complete projects, you're learning to solve problems, not programming languages.
Although java seems to be a good fit for you. It is a cumbersome language to get started out. It will be far easier for you to learn Python and stick with it long term. This is due to the fact you will be easily able to google things for python and you will spend less time learning the language, and more time using it to do what you want.
Making mobile apps is easier with Java due to the fact that google does not directly support app building with python. If this is your biggest priority stick with Java.
Each language has its use. If I were In your situation, I would choose the language that's easy to start with.
I currently work helpdesk and have been for about 6 years. I am looking to become more valuable, and I can't decide what route to take? Python is of interest, and so is PowerShell. What are some recommendations? Maybe something that would benefit a helpdesk position or even get into a network administrator.
I think that if you plan on sticking around enterprise systems and Microsoft, you should definitely get into some PowerShell. Basically anything you do via Active Directory, you should try mirroring it in PowerShell. It’s an easy one to learn, and it’s easy to follow that into Azure CLI. I was in the same boat as you — Did Helpdesk/System Administration for 10 years. PowerShell got me out.
I would also recommend PowerShell! Since I started learning PowerShell, a lot of possibilities opened up for me, I even became a PowerShell MVP. Since PowerShell Core/6/7 it has gotten a lot of interest in the Linux community and I love it for it's flexibility and possibilities only limited by your imagination ;) Check out the community dashboard to see the current usage https://aka.ms/PSGitHubBI, check out the PowerShell docs at https://docs.microsoft.com/en-us/powershell/scripting/overview?view=powershell-7, especially the "Learning PowerShell" section and feel free to contact me for further questions!
PS: Just to be complete on this, I also use Python, but in a very different scope. Python in my opinion is the best for data analytics related tasks or even whole production (web) applications (e.g. with Django). PowerShell is great for automation, orchestration and all the little tasks that makes your everyday life easier.
Definitely PowerShell. While you can do network related stuff with python, powershell gives you an in-depth understanding of various parts of the internet. This is because you manually execute each and every step, while in high end languages, you just use 1 or 2 commands. While powershell might take a bit more time, it will be really useful to understand networking and will give you a considerably high boost in terms of your career too.
I would recommend learning to use both python & power shell (plus Linux/WSL) by using them to do aspects of your current work better/faster/easier. You will definitely benefit from reading https://docs.microsoft.com/en-us/windows/python/scripting.
I would suggest taking a look at https://automatetheboringstuff.com/ - with a little thought I am sure that there are aspects of your current role that you can simplify or enhance by following the suggestions & doing so will give you valuable experience and may result in offers of more interesting roles growing from your current one.
Hi, I have a project on my mind, and I need some help. First of all, I know it is all about personal preference, but I am a beginner in the back-end part. So, I am trying to figure out which language is better, for example, for user authentication and interaction between the users. Also, I don't know which framework is better for this work. My first thought was to use PHP, but after some research on the internet, I'm leaning towards Laravel. I will be grateful if you have some advice for me.
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
Hope it helps, good luck
Short answer, if it's a web project (and I guess it is) go with PHP and you can integrate NodeJs services later.
@adzaria (Ezra Fayet) gave a great answer and I'd like to emphasize the first part:
As a beginner you need to understand concepts first. For me that means to understand the web, how servers and requests work, APIs and few others.
Now, I'd like to add few things so, this is the long answer:
- Everyone knows about the community - PHP is way older so you will find lots of resources and I am not only talking about learning - also lots of helpful tools and packages
Why not Python? Python got popular because of AI - don't use PHP for AI and don't use Python for web applications. I can elaborate a lot here but I guess you get the point.
Why not NodeJs?
- NodeJs got popular because of sockets - and it works great, but as a service
- Try to find a good and affordable hosting for NodeJs. How about for Python?
- I would not ignore the security issues that it had and could appear. PHP is older and, therefore, wiser :)
Now, about a framework... is this a learning project or something that you need to do fast? My advice is to start a small project and not use any framework. However, you can use packages and inspire from a framework's architecture - Laravel is a good role model.
Why not start a big project? You will get distracted, get into details and product design stuff and get scared or border and abandon it. For your project you need an MVP - list of minimum required features that you put on paper - that you will complete. After that you can improve.
you can choose Node.js Here are my points
Node.js is build over chrome’s v8 and its works on non blocking io. Node.js have huge community and great packages (npm) to help you out in most cases and makes development faster Node.js has been adopted by many multi dollar company Hope this helps😊
You cannot choose between Python | PHP | NodeJS Since they are entirely for Different purpose.
In Bird view
Python - Large Scale Projects and if you want a job in big IT company.
Node.JS - Huge computing projects and if you want job in Silicon valley startup.
PHP - Cost Effective and If you want start a business in near future.
Python, PHP and Node.js all are capable of being used to create good complex software. There are many examples of similar applications built on all of them. If I have to pick one, I would say consider Python and Django. It is fairly easy to develop web applications on top of this stack. Scaling and maintaining the application should also not be a problem given a lot of resources are available online.
The reason why i chose PHP is the amount of content you can find on the internet easily. As you quoted being a beginner, i think a more mature language would be better. And that's also another reason for following with PHP.
Python is simple and "mature", but it can be a bit hard to understand if you are a beginner. Python relies on heavy abstraction, and that's the reason behind it's simplicity. Python is an "easy to play, hard to master" language, i never recommend it to beginners. Also, one [maybe personal] reason why i don't like to use Python as back-end is: Python is very data-focused. So if your app has focus on business logic, Python wouldn't fit very well. And with that becomes an advantage, if your app has statistical focus, being data-focused or something like that, Python has huge advantage among all other languages due to many great tools the community has built.
About Node, it's like PHP, but less mature. It's as easy as PHP to find tools that can help you, for example, to abstract the database-connection's logic. But to find architectural-focused content, more advanced concepts, it's a lot harder. While that, Laravel's community, for example, has a lot of materials that involves those concepts.
Still, if you are really a beginner, i don't recommend using Laravel with PHP. Do things on plain PHP first, understand the reason behind using frameworks and Laravel's motivation.
Also, consider a strong-typed language first, those are considered more didatic, but less flexible.
As for why we didn't pick the other languages, most of it comes down to "personal preference" and historically grown code bases, but let's do some post-hoc deduction:
Go is a practical choice, reasonably easy to learn, but until we find performance issues with our NodeJS stack, there is simply no reason to switch. The benefits of using NodeJS so far outweigh those of picking Go. This might change in the future.
PHP is a language we're still using in big parts of our system, and are still sometimes writing new code in. Modern PHP has fixed some of its issues, and probably has the fastest development cycle time, but it suffers around modelling complex asynchronous tasks, and (on a personal note) lack of support for writing in a functional style.
We don't use Python, Elixir or Ruby, mostly because of personal preference and for historic reasons.
Rust, though I personally love and use it in my projects, would require us to specifically hire for that, as the learning curve is quite steep. Its web ecosystem is OK by now (see https://www.arewewebyet.org/), but in my opinion, it is still no where near that of the other web languages. In other words, we are not willing to pay the price for playing this innovation card.
Haskell, as with Rust, I personally adore, but is simply too esoteric for us. There are problem domains where it shines, ours is not one of them.
With Python + Django it was so much faster to create a typical website like this. Using Go would take to long to launch the initial version. For example, Python could handle complex data type with less line of code. Django also has many built-in libraries and a huge ecosystem of libraries that can be easily used to build a feature.
We changed to Python instead of Java to have the back-end processing in the same language as our data analysis module. In addition, Python has a lot of libraries for data-processing. We intend to use Flask for our back-end web development. Flask is a simple, straight-forward framework for our purposes. Flask also has a large community which is beneficial to the development process.
Sign up to add or upvote prosMake informed product decisions
Sign up to add or upvote consMake informed product decisions
What is AngularJS?
What is Python?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
Red Hat, Inc.
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than right now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
AngularJS is a structural framework for dynamic web apps. With AngularJS, designers can use HTML as the template language and it allows for the extension of HTML's syntax to convey the application's components effortlessly. Angular makes much of the code you would otherwise have to write completely redundant. We can use Angular to build any kind of app, taking advantage of features like: Two-way binding, templating, RESTful api handling, modularization, AJAX handling, dependency injection, etc
To me, this is by far the best programming language. Why? Because it’s the only language that really got me going after trying to get into programming with Java for a while. Python is powerful, easy to learn, and gets you to unsderstand other languages more once you understand it. Did I state I love the python language? Well, I do..
Backend server for analysis of image samples from iPhone microscope lens. Chose this because of familiarity. The number one thing that I've learned at hackathons is that work exclusively with what you're 100% comfortable with. I use Python extensively at my day job at Wit.ai, so it was the obvious choice for the bulk of my coding.
been a pythoner for around 7 years, maybe longer. quite adept at it, and love using the higher constructs like decorators. was my goto scripting language until i fell in love with clojure. python's also the goto for most vfx studios and great for the machine learning. numpy and pyqt for the win.
All of our frontend code is on AngularJS. Directives, controllers, and services really help in organizing code in order to keep things maintainable, and two-way binding makes data input easy. The large ecosystem of modules for directives is fantastic, too.
When ever I need heavy user client side apps this is my tool of choice. There are a ton of JS frameworks out there, picked this one because of philosophy they are trying to put out there and great community. Two way data binding FTW!
The front end was built on an Angular template supplied by the client. We leveraged Angular's flexibility and speed to delivered complex matrices of data quickly and with great finesse.
We use Angular.js to build our front-end framework known as Frontkit, so our apps can get started faster with reliable, interactive components.