My friend is about to launch a startup based on his bioinformatics Ph.d thesis. The idea is basically to run his model as a web service.<p>The problem is it's written in Matlab. I don't know much about startup business and I have zero experience in deploying Matlab code to the web so my major concern is the license cost and developers available to hire.<p>I can come up with three ways after a quick look at Matlab's portfolio:<p>1. Run Matlab Production Server on AWS as a microservice. But the licensing cost of Matlab Production Server is "contact us". Scary.<p>2. Use Matlab Compiler to convert it to another language. I worry about runtime dependencies of the compiled output and there might be a hidden pitfall when deploying it.<p>3. Rewrite it in Python/numpy. We are fine with rewriting it and it might be easier to get developers, but we might run into a reproducibility problem.<p>Does anyone have a similar path? What is the best practice to deploy a matlab research on the web?<p>Thank you in advance.
As someone whos has written a very large and complex toolbox in Matlab [1], and now rewriting in Python I would not recommend locking yourself in to Matlab/Mathworks. However, if you don't use any GUI functionality you might get away with it, and you might be able to use Octave which can run must Matlab code unmodified (also see Octave online for deployment).<p>[1]: <a href="https://www.featool.com" rel="nofollow">https://www.featool.com</a>
MATLAB has "export to C" capability:<p><a href="https://www.mathworks.com/help/dsp/ug/generate-c-code-from-matlab-code-1.html" rel="nofollow">https://www.mathworks.com/help/dsp/ug/generate-c-code-from-m...</a><p>Build your website however you wish, then call the C code (e.g. C# P/Invoke interop if you use .NET, Python CFFI, FastCGI, etc.)
> Run Matlab Production Server on AWS as a microservice. But the licensing cost of Matlab Production Server is "contact us". Scary.<p>Starting a business is scary. Contact them, figure out the cost, and figure out if it's worth it to rewrite it in a freely licensed language.
Contact them and see if it really is as bad as you think :)<p>You can also go self-hosted while you are in customer acquisition mode?<p>If the cost of a software license is scary, then I can assure you labor costs are much worse. You can rewrite now or rewrite later, but hiring devs is a ways away :)