News for hackers. Stuff that matters.
Re:JupyterLab is ready for users by qubex on Tuesday February 20, 2018 @09:04AM (#16420340)
Mathematica is wonderful in terms of sheer computational power, but the notebook interface it presents is hopelessly outclassed nowadays by initiatives such as these. I keep hoping Wolfram will spring some impressive new interface on us that will enhance usability for power users (rather than their weird attempts at bringing ‘computation’ to random casual users), but... I'm giving up hope.

This looks very impressive.

Re:JupyterLab is ready for users by pmart123 on Tuesday February 20, 2018 @09:14AM (#16420403)
As someone who used Matlab and Mathematica in college, I'm not sure I'd want to have a closed source solution really take off again at this point. While they provided great products and documentation, they also made it much more difficult to share code/visualizations due to restrictive and expensive licensing. Ultimately, I think the ability to share information easily should help spur scientific advancement.
Re:JupyterLab is ready for users by nerdponx on Tuesday February 20, 2018 @09:24AM (#16420468)
As a single piece of anecdata, this is exactly what prevented me from using the free licenses I had through my university to learn these programs. After my experiences with Stata, seeing the non-affiliated prices and having to do my work in a computer lab instead of on my own laptop, I didn't want to be tied to software that I might not have access to in the future, and that I couldn't share with other people.

The one time I made a handsome demo in Mathematica, I realized that there was no straightforward way to share it, so I gave up and redid it in R.

I'm grateful I never spent time learning those programs. I still miss Mathematica now and then, but free software is the only way to go for me nowadays.

Re:JupyterLab is ready for users by aj7 on Tuesday February 20, 2018 @01:44PM (#16422770)
Dumping SolidWorks for the less elegant but much cheaper Fusion360 for the same reason. You can’t build a community at corporate license prices.
Re:JupyterLab is ready for users by tsaoyu on Tuesday February 20, 2018 @11:11AM (#16421366)
Mathematica/Python/MATLAB user. Mathematica and MATLAB do both have great documentation and intuitive examples shipped with their product, however, document your own code using their system is surprisingly hard (compared to Sphinx). Jupyter learnt the idea of the notebook from Mathematica (and some other notebook based math software) but the killer point is that it extends itself to more and more general purpose programming language with Python, R, Julia and even C/C++ kernels. MATLAB still popular in the field of control engineering, communication partly because of its SIMULINK simulation environment. I have been looking for a Python alternative but the closest I have found so far is Modelica. In my workflow, Mathematica is used to derive the mathematical formula, Matlab for simulation and finally software is written and distributed as Python package.
Re:JupyterLab is ready for users by hsjoberg on Tuesday February 20, 2018 @02:36PM (#16423394)
You could try the SciPy Simulink look-a-like https://www.scilab.org/scilab/gallery/xcos
Re:JupyterLab is ready for users by neuromantik8086 on Tuesday February 20, 2018 @05:19PM (#16424777)
SciLab != SciPy
Re:JupyterLab is ready for users by tsaoyu on Wednesday February 21, 2018 @07:05AM (#16428810)
Same curious, it has Python extension but not really close to it.
Re:JupyterLab is ready for users by esmi on Tuesday February 20, 2018 @01:50PM (#16422848)
My workflow is very similar. But I am often forced to use matlab for simulation because the vendors I work with only deliver matlab libraries. They choose matlab because many engineers know how to use it and have licenses for it but also it gives mechanisms to protect IP which is a big deal to many firms.

https://www.mathworks.com/help/matlab/matlab_prog/protect-yo...

Re:JupyterLab is ready for users by tsaoyu on Wednesday February 21, 2018 @07:04AM (#16428805)
I assume this situation also holds true for those using LabView to build their virtual instruments. IP wasn't really an issue for us since we have decided to open-source our project to broaden the knowledge of the public: https://github.com/Maritime-Robotics-Student-Society/sailing...

As a note, in Python, there is pyconcrete for code encryption. https://github.com/Falldog/pyconcrete

Re:JupyterLab is ready for users by pletnes on Tuesday February 20, 2018 @02:16PM (#16423143)
You might want to try sympy or sage as a mathematica replacement.
Re:JupyterLab is ready for users by qubex on Tuesday February 20, 2018 @09:31AM (#16420520)
I share your sentiment, but in truth, Mathematica's symbolic algebra capabilities are above and beyond what everything else offers by a wide margin.
Re:JupyterLab is ready for users by goerz on Tuesday February 20, 2018 @12:38PM (#16422154)
For now
Re:JupyterLab is ready for users by f137 on Tuesday February 20, 2018 @02:44PM (#16423478)
For last 20 years at the least, and the gap widens if anything
Re:JupyterLab is ready for users by goerz on Tuesday February 20, 2018 @03:12PM (#16423742)
Sure, Mathematica has had a long head start. I don't see the gap widening at all, though. For me, e.g. SymPy (and more specialized algebra systems for e.g. quantum mechanics I've built on top of it) now match and sometimes surpass what I could do with Mathematica. More importantly though, Mathematica's closed nature makes it quite hard to integrate with other systems and workflows (as others have pointed out in this thread). The benefits of the open scientific ecosystem around Jupyter far outweighs the few areas were Mathematica still leads in functionality. This is a subjective assessment, of course.
Re:JupyterLab is ready for users by fwilliams on Tuesday February 20, 2018 @09:26PM (#16426362)
Sympy is great (especially the ability to automatically codegen numerical expressions from symbolic ones), but I've found it to be orders of magnitude slower than Mathematica for some relatively simple problems. I also find the sympy documentation to be somewhat sparse and hard to navigate.
Re:JupyterLab is ready for users by acdha on Tuesday February 20, 2018 @11:19PM (#16426813)
A number of years ago I knew a postdoc who bought a student copy of Mathematica at the university bookstore so he could use it as part of a short-term collaboration without dropping a non-trivial chunk of his grants on a full license. Shortly after he installed it, the department chair got a personal email from Stephen Wolfram asking what someone who wasn't a graduate student was doing with a student license.

This supported the upward trend of interest in open source and especially ipython around the labs.

Re:JupyterLab is ready for users by qubex on Wednesday February 21, 2018 @03:29PM (#16432682)
That’s pretty horrifying.
Re:JupyterLab is ready for users by bitL on Tuesday February 20, 2018 @09:53AM (#16420709)
That's all nice but you go to real-world space/robotics/drones etc. shops and they all use Matlab or similar for their scientific computation and validation and treat Jupyter stack as a toy. Similar to telling a photographer to use Linux because there is GIMP and that should be enough for them.
Re:JupyterLab is ready for users by neuromantik8086 on Tuesday February 20, 2018 @12:27PM (#16422065)
I think a better analogy would be how large swathes of the population use Windows for everyday computation and treat Linux as a toy, whereas individuals with more domain knowledge take Linux seriously and use it in production in a variety of environments (e.g., high frequency trading, web hosts, commerce sites, etc). Engineers may prefer MATLAB as a "serious" development environment, but most software developers find it to be seriously lacking. Most general purpose programming languages are far more powerful than MATLAB, but simply lack the toolboxes/convenience. Both of these points are nothing new and have been observed since the creation of MATLAB (indeed, the latter is the reason why MATLAB was created, since MATLAB is basically supposed to be a pretty face for FORTRAN).
Re:JupyterLab is ready for users by _coveredInBees on Tuesday February 20, 2018 @12:25PM (#16422039)
Yeah, I work at a startup where we specialize in signal processing + ML. We have a robust set of infrastructure in MATLAB (use our own ML libraries rather than MATLAB's libs) and try as we might, we haven't been able to switch altogether to Python (despite a number of us being fans of Python).

MATLAB has a TON of things that you don't get with Python + Numpy + Scipy. Complicated plots/graphics with interactivity are a pain point in Python compared to MATLAB. Similarly, the debugging capabilities in MATLAB are truly magical compared to a pretty terrible experience on the Python side of things. Even though we deploy software in Python, we are much faster prototyping in MATLAB and deploying finalized algorithms/software to Python than trying to do everything in Python from the get go. MATLAB's JIT is also pretty great and while Numba is pretty great, it still requires more work and can be brittle at times.

Re:JupyterLab is ready for users by simonw on Wednesday February 21, 2018 @07:53AM (#16429056)
Have you tried bokeh for interactive visualizations? https://bokeh.pydata.org/en/latest/
Re:JupyterLab is ready for users by angelsl on Tuesday February 20, 2018 @10:07AM (#16420845)
You can really do photography on Linux nowadays though. Darktable and rawtherapee are shaping up nicely.
Re:JupyterLab is ready for users by bitL on Tuesday February 20, 2018 @10:12AM (#16420889)
I am a pro photographer and still have to use Lightroom for proper color adjustments. I even had competitions with Darktable pros to see who can get a better picture and unfortunately Lightroom was outclassing them (and I hate Adobe's forced subscriptions). It still needs a lot of work to be cutting edge.
Re:JupyterLab is ready for users by mkl on Tuesday February 20, 2018 @04:40PM (#16424467)
Can you share some specific weaknesses Darktable has? (I've never used either.)
Re:JupyterLab is ready for users by Cyph0n on Tuesday February 20, 2018 @10:07AM (#16420843)
But Matlab has much less restrictive terms when it comes to code, right?

And then there's LabView, used widely for lab and process automation, which really has no open-source or free alternative.

Re:JupyterLab is ready for users by mschuetz on Tuesday February 20, 2018 @09:37AM (#16420569)
Last time I've tried Jupyter, about a year or two ago, the user experience wasn't even close to that of Mathematica. I guess I'll give it another chance, but can you tell me in what way Mathematicas notebook interface is outclassed, in your opinion? The only major beef I have with Mathematica are its default stylesheets. They suck, every single one of them. There is no good distinction between input and output fields. Whenever I install Mathematica, the first thing I do is to make the "Natural Color" stylesheet [1] the default but unfortunately, it isn't even present in the options anymore since a few versions ago.

[1] https://imgur.com/a/83ZyF

Re:JupyterLab is ready for users by ChrisRackauckas on Tuesday February 20, 2018 @11:22AM (#16421459)
I agree here. Being able to write code in the mathematical rendering is such a beautiful feature of Mathematica that Jupyter is missing. I am not sure how it's outclassed as a notebook because of this. As an IDE? Sure, Mathematica's notebook isn't a good IDE at all. But as a notebook for writing mathematical statements, it's fantastic. It's the one thing I need in order to go to an only Julia workflow.
Re:JupyterLab is ready for users by wenc on Tuesday February 20, 2018 @10:35PM (#16426635)
> Being able to write code in the mathematical rendering

I wonder, what do you mean by this? You mean it's possible to write code in the Out[] cells in Mathematica? (is that possible?)

Or do you mean writing math in the notebook?

Re:JupyterLab is ready for users by RunningToMars on Wednesday February 21, 2018 @10:10AM (#16429953)
People often overlook the eclipse IDE for Mathematica...

https://www.wolfram.com/workbench/

Re:JupyterLab is ready for users by qubex on Tuesday February 20, 2018 @10:28AM (#16421020)
Yours is a good question, and I can't really provide a good answer. Firstly, I suppose I wish for something more akin to an IDE with a proper list of variables, functions, classes, & cetera; tabs; and as the screenshots of this JupyterLab beta release show, a capability for displaying different data types in different self-contained windows that are not in-lines to the notebook document.

I probably expressed myself very poorly.

Re:JupyterLab is ready for users by ktpsns on Tuesday February 20, 2018 @05:34PM (#16424890)
Nowadays, the Mathematica Notebook is probably Mathematica's biggest brake. For me the GUI feels slow on any computer. However, as already mentioned in the other posts, under the hood Mathematica has not yet been beaten for it's LISP attemp of computer algebra. The biggest contrahent in the Julia/SciPy environment is probably the SAGEmath computer algebra system, however it follows more the route of Maple which is more natural to the employed Python host/meta/binding language but (for me) does not feel as powerful as Mathematica when it comes to symbolic computing.

I think the big advantage of Julia against Mathematica is the modern software stack and the bleeding edge technology they can embed very quickly, such as d3js, WebGL, etc.. The web world is moving quickly and the scientific python community can keep up while Mathematica moves only very slowly -- note they started their web interface (cloud version) only a few years ago.

Re:JupyterLab is ready for users by gh02t on Tuesday February 20, 2018 @10:08AM (#16420851)
Mathematica still has some parts that are nice though. Especially interactive plots (which you can do in IPython but not as simply) and some of the neat metaprogramming stuff. A big thing is that Mathematica (the language) is homoiconic, which I think works really well for their interface.

But I prefer IPython as well. Mathematica is awesome, but Wolfram is pretty heavy handed with the proprietary stuff.

Edit: one thing that I'd really like to have is some of Mathematica's tools for managing scope, like Module and similar. You can kinda do this, but it's clunky. And on top of that, some way to limit declarations to a section (group of cells). It's kinda awkward to have multiple separate sections in an IPython notebook because your declarations start to overlap. Unless someone here knows how already?

Re:JupyterLab is ready for users by goerz on Tuesday February 20, 2018 @12:42PM (#16422191)
That's more a restriction of Python, though. It's important to remember that the Jypter Notebook (and now, JupyterLab) is language agnostic. The Julia language, for example, is very well integrated into Jupyter (which, in fact, is a backronym for Julia-Python-R), and Julia is homoiconic.
Re:JupyterLab is ready for users by eggy on Tuesday February 20, 2018 @12:32PM (#16422104)
I also like Mathematica, and I think the curated data is amazing for impromptu explorations. I guess there are more and more sources of data available online for Jupyter to query, however, the Mathematica API and access to this curated data is effortless.
Re:JupyterLab is ready for users by jcims on Tuesday February 20, 2018 @11:02AM (#16421296)
I first used Mathematica in 1992 in a NeXT lab at Ohio State. It seemed like magic. If I recall correctly it had a notebook interface way back then, it was so cool doing 3D plots and tinkering with values to get a better intuition of the math.
Re:JupyterLab is ready for users by eesmith on Tuesday February 20, 2018 @03:40PM (#16423982)
At http://www.mathematica25.com/ you can see that the notebook front-end was in Mathematica in its first release in 1988.

One of the images from 1987 says "The Mathematica front end begins to take shape…" and "(Theo Gray invents cells and groups … and other things still seen today…)".

Re:JupyterLab is ready for users by jcims on Tuesday February 20, 2018 @05:20PM (#16424789)
Did a legit Owen Wilson woooow on that one. What a flashback, thank you...