1

I'm in a quandry - I have a Masters project (bioinformatics) next year and I have to choose a framework for developing a website/processing centre/general allround functionality. Open Source is an absolute must.

Criteria:

  • look reasonably good (not a huge priority)

  • capable of heavy-duty processing - i.e. performing phylogenetic analyses/drawing trees - this is extremely computationally intensive.

  • be able to perform ad-hoc queries against a PostgreSQL database and/or databases on the web using REST interfaces.

  • be able to perform multi-server work eventually

I'm thinking the Java ecosphere or node.js

I'd be interested in ideas/opinions/references/URLS/whatever on the pros and cons of both frameworks for a general purpose web-development environment, capable of heavy-hitting when necessary! I know that Java can be used for processing intensive work - but I have read that Javascript is not suited for this - good for presentation but not heavy-lifting. Does node.js change this?

If I have to learn something, I would prefer to use the same language both server- and client-side, but the processing capabilities take priority!

  • "capable of heavy-duty processing": The kind of processing that runs for weeks on a distributed cluster? If so, you would be better off first choosing a heavy-duty processing tool with a integration-friendly web UI, and then choosing a web framework that can show it, for instance as an IFrame portlet in Liferay. – Nicolas Raoul May 14 '18 at 8:25
  • Could you please edit the title? It is far too generic, and does not reflect the gist of the question. Thanks! :-) – Nicolas Raoul May 14 '18 at 8:26
  • Please also replace "general allround functionality" with more specific examples. – Nicolas Raoul May 14 '18 at 8:27
  • @NicolasRaoul - have edited my question. I hope this clarifies matters? – Vérace May 14 '18 at 9:30
  • Do you want the extremely computationally intensive tasks to be performed on several computers? Or only on the same computer that is also being used as a web server? All web servers have a "time out" of a few minutes. This timeout can be configured, but configuring it to hours is often not a supported use case. – Nicolas Raoul May 14 '18 at 12:16
1

I would suggest taking a close look at the Django or Flask - both are:

  • python based,
  • Free, Gratis & Open Source
  • Rapid prototyping and development
  • Cross platform
  • Have very helpful & active communites
  • Can produce very good looking web sites take a look at Public Broadcasting Service, Instagram, Mozilla, The Washington Times, Disqus, Bitbucket, and Nextdoor all Django based or Pinterest Flask.
  • Being python based you can use and interface with the rest of the python ecosystem with tools such as SciPy, Pandas, Jupyter, Biopython
  • There is a wealth of tools & literature for bioinformatics & geographic information systems in Python.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.