4 ms·
I hope they improve their software development practises. Packaging SageMath for Debian has been impossible; they use about 100 dependencies and have re-invente
by infinity0 10y ago
I hope they improve their software development practises. Packaging SageMath for Debian has been impossible; they use about 100 dependencies and have re-invented their own internal package manager to build all of these with sage-specific patches.
- goldenkey 10y agoI just tried to get a binary to install it on Windows. Instead they are handing out only OVM files (VirtualBox images.) As much as they might despise closed-source, there are simple things that businesses necessitate - like not being hostile to your audience. I am a fucking programmer, I don't have a problem using VirtualBox. At the same time, it infuriates me that they did not bundle up an MSI or EXE for their windows audience. Now I feel less inclined to even try it, because I already use Mathematica. This basic understanding of "energy to demo something" is the ethos of HN. I am super surprised after reading that PDF to find these simple energy laws of consumerism violated. Aye...I digress...
- williamstein 10y agoI'm sorry. The point of my talk is that Sage is not a viable alternative to Mathematica, etc., for many reasons, e.g., not having a native Windows version. Porting a huge amount of deep technical software from Linux to Windows is the sort of difficult and thankless work that will not get somebody tenure in academia. I tried hard to get funding to get help on a Windows port, and Microsoft donated $30K for this effort back in 2008. However, $30K is not enough to fund such a huge project. In fact, I once met with a bunch of the revolution analytics devs, and learned they were getting millions from Microsoft just to port R to run natively on Windows. This was disturbing, because R is just one of the 100 components of Sage. In my talk, I mentioned the new grant in Europe that is funding the first ever fulltime Sage employee, and it turns out his main job so far is working on a native Windows port of Sage. Unfortunately, though he is incredibly good, he'll probably discover how daunting this project really is. (It's not a one guy for a few months sort of project... And yes, I tried very hard once to port Sage to Windows and failed.)
- pmarin 10y agoSage should run fine in the new Microsoft's Bash on Windows https://msdn.microsoft.com/commandline/wsl/about https://msdn.microsoft.com/commandline/wsl/about
- williamstein 10y agoIt doesn't quite work so easily because of some parts of sage use pseudotty's.
- deleted 10y ago[deleted]
- iguananaut 10y agoThe good news on that front is most of the problem is not Sage itself but some of its dependencies. Of course some of the problem children are core dependencies and can't just be made optional. But fast progress is being made. I have most of Sage running on Windows, currently with an unfortunate Cygwin dependency. However I have hopes to work on native Windows ports of some of the trickier dependencies, notably GAP and Cysignals.
- goldenkey 10y agoThanks for your reply William. I was just frustrated, sorry that I disrespected the work, effort, and time you have put into Sage to get it to where it is today. I will be giving the web version of Sage a try and perhaps contribute to it on an open-source basis eventually. Cheers.
- williamstein 10y agoIn 2007, Tim Abbott (before founding ksplice and zulip) beautifully and properly packaged Sage for Debian, and in fact Sage was included in Debian standard! Unfortunately, he stopped working on the project (when he started those projects), and of course we had no money to hire somebody else to maintain what he did. If I had money, it would be a total no brainer to spend it on supporting packaging SageMath for Debian. Your remarks about it being impossible because of our package manager and dependencies aren't correct, because things we the same in 2007.
- infinity0 10y agoOK, more accurately I should have said "much much more cost than is necessary", instead of "impossible". The point is that, it should not cost significant continual effort to package SageMath for Debian: if SageMath was following good engineering practises, then Tim Abbott's work would still function today, even taking into account necessarily but normal and minimal maintenance costs that Debian volunteers (including myself) would be happy to do for Sage.
- tabbott 10y agoTim Abbott here :) The challenge of packaging Sage was primarily around packaging its dozens of dependencies (some of which I had to talk to the authors to fix their licensing terms) and making sure that an up-to-date version of those dependencies was available in Debian. It took about a month of my time to package Sage well for Debian (at the time I maintained over 100 Debian packages for MIT, so I was quite efficient at this). What killed my Debian packaging effort was that Sage was very large and my package was submitted to the NEW queue (where Debian does copyright review) when all the reviewers were busy with managing a release freeze. So it took more than 6 months for Debian's FTP masters to fully review it, and by the time they did, I had moved from being a grad student to the CTO of Ksplice. It probably would have been just week or two's work for me to update Sage across those 6 months, but running a startup is a lot of work, and I never found the time to do that work :(. Overall, my opinion is that Sage is well-engineered and not difficult to package given its scale (it has a fantastic test suite, so it was very easy to check if the package worked, and it was easy to get them to merge changes to improve the tooling). The problem is that it's a large project, with a large number of diverse dependencies, new versions of which aren't always backwards-compatible upgrades. If you talk to the folks who package other large projects for Debian, I'd be surprised if you find any that don't involve significant maintenance work.