I am a professional java developer with 9 years of experience. Never worked with Python but, I do not have any restraints learning it.
Still I need clarity on a couple of aspects. I hope if anyone can help, it will clear the cobwebs in my mind. I am looking to develop a machine learning project :
- With a web interface to present interactive analytical graphs and views.
- Employing a web crawler collecting data, both structured and unstructured.
- A backend crunching the data collected using machine learning and artificial intelligence and natural language processing algorithms.
While exploring options available, I found both Python and Java have extensive support and frameworks/libraries/modules available to leverage machine learning implementations.
However, working with Java gives me a sense of strongly typed programming and it can leverage the underlying CPU cores via its robust multi-threading APIs. Python on the other hand is scripted language and on the face value looks to lesser efficient when working on complex logic crunching a huge amount of data pertaining to Natural Language Processing.
I might be utterly wrong as I am not very acquainted with Python ecosystem.
Can anyone help me understand on the choice between Java and Python if I keep in mind execution speed, maintainability and community support targeted toward development of a large, scalable and robust machine learning/artificially intelligent application ?