Excellent free alternatives to Maple and Mathematica

I was in office the other day and we do not have a license for Maple nor Mathematica so I decided to try the free alternatives, and I found two excellent ones.

1. Euler Math Toolbox (71MB) is the best option. It provides excellent numerical algorithms like remez to find the minimax polynomial approximation of a function for example. And it is also capable of symbolic calculations like calculating integrals, derivatives, dealing with linear algebra problems. The plotting and multiline commands are not as slick as what you can do in Maple or Mathematica but it is still an excellent software. I found the minimax algorithm to be more robust and easier to use than the Mathematica one for example, and basically as good as the one implemented in Maple

Example to plot a function:

plot2d(“sin(x)”,-Pi,Pi,>insimg)

Example to define and multiply a matrix:

A:=[1,1;0,1]; A.A

Example to use Maxima for polynomial expansion:

&expand((x-1)*(x-2)*(x-3))

Example to get the degree 2 minimax polynomial approximating sin(x) between 0 and Pi:

x=equispace(0,Pi,50); {t,d}=remez(x,sin(x),2); P=polytrans(t,d)

2. WxMaxima (32MB) is part of the default Maxima installation and proved to me the closest and best alternative to Maple in terms of symbolic and matrix calculations. At the same time it lacks some important numerical algorithms, which is why I prefer Euler Math Toolbox overall. But since its multiline handling is closer to Maple I still end-up using it for anything requiring flow controls and loops.

Example to integrate/differentiate a function:

integrate(sin(x),x); diff(sin(x),x);

Example to plot two functions:

wxplot2d([sin(x),cos(x)], [x,-5,5]);

Example to define and multiply a matrix:

a:matrix([1,1],[0,1]); a.a;

Example of polynomial expansion:

expand((x-1)*(x-2)*(x-3));

Example of solving for polynomial roots:

solve(x^3-6*x^2+11*x-6,x);

Example of simple computation loop:

array(res,8)$
z:7$
for i:1 thru 8 do ( res[i]:mod(z^i,8) )$
listarray(res);

Simple way to backup folders on a local drive

I found a while ago that GoodSync was the best solution, however it is not really free with a very low limit of 100 files. I do not believe that software is worth $30, so I used AlternativeTo, and I was proven right with the quality of the free options available.

My requirements were the following:

  1. Free
  2. Ability to do offline backup on an external drive.
  3. Smart one way mirror with comparison of destination
  4. Configurable filters to not copy .svn folders for example
  5. Support of multiple sources and destinations

Seems like a pretty low bar, but I was surprised not to find a lot of genuine candidates. I am listing below only the ones worth talking about, most solutions were online only, and the ones I do not mention in general had terrible UI.

FileMenu Tools ended up being my pick. I had the software already installed, but never noticed that feature before. The interface is simple and functional, it provides an editable diff of the two folders before operating, and filtering was as easy as you would expect. You can save presets for different couples of folders. The only option it lacks is a saved list of folders for batches, but it was good enough for me.

PureSync emerged as one of the best at first, unfortunately it felt like written in VisualBasic with a terrible interface, poor stability, and ineffective auto-update.

WinDataReflector did not give enough insight into what was done in the backup and synchronization processes.

Toucan was also promising but lacked clarity about the basic options, and handling multiple folders as separate projects was cumbersome, and the filtering was again not well integrated in the workflow.

GFI Backup allows to backup and sync folder, however the backup would work for mirroring but it does not compare what was already done the previous time, and the sync option is not flexible enough to be configured one way.

Switching from Photoshop to GIMP. Yes really!

I own a copy of Photoshop CS3 purchased a while back. At the time Photoshop was the only real credible software, and GIMP was kind of a joke.

Things have changed, and GIMP since 2.8 has a robust single window mode, a pretty impressive set of filters, and even allows me to run my favorite Photoshop plugins inside Gimp.

So I decided to give the software a chance, evaluated it with the real kind of work I would do in Photoshop, as well as simpler fast random daily tasks. I have been impressed enough to adopt the software, and to put my copy of Photoshop on sale.

I recommend evaluating it, and making your own mind. If you do here is what I recommend trying.

  1. Download and install GIMP 2.8.1 from Partha’s websitehttp://www.partha.com/downloads/Gimp-2.8.1-32bit.exe
  2. Download and install the useful plugins from the same site: http://www.partha.com/downloads/Gimp-2.8.1-Plugins-32bit.exe
  3. Try HQ Rescale to get high quality upsized images
  4. Try LayerFX to emulate the photoshop layer effects
  5. Try Liquid Rescale to get smarter resizing respecting image details
  6. Try Upsize as another option to HQ Rescale
  7. Try Refocus to get the best out of blurry shots
  8. Try Save for Web to optimize images as you can in Photoshop
  9. Try all the others included in the default install:  Gmic, Refocus it, Resynthesizer, Saturation Equalizer, Wavelet Denoise
  10. Try some Photoshop plugins with PSPI. For example I recommend the awesome and free XiDenoiser and XiQuantizer