Science & Engineering

Disclaimer : I'm not a great scientist or engineer but i'd like to share a few things which i like and recollect at this time.

Softwares

Matlab, Mathematica and Maple is quite good mathematical softwares, but i wouldn't recommend them to you unless your institution has a network license for it or you yourself have bought a license.

There are many softwares which do a lot of stuff. The ones i've tried and found useful are

Scilab

"Scilab is a scientific software package for numerical computations providing a powerful open computing environment for engineering and scientific applications."

Verbatim from the scilab site.

As you can see scilab is a powerful open source scientific computing environment. It comes in the same league as matlab, though there are a few differences (it doesn't have such an extensive range of toolboxes, you are welcome to contribute). If you have tried an older version of scilab before the you should definitely checkout the latest version (5+). It has been completely revamped and seems much better than ever before. Its a necessary tool in every engineer's computer.

Octave

Octave is basically a matlab clone which allows you to run a large number of matlab files available on the internet without any change, since it uses mostly compatible syntax and function names. Use this if you are too familiar with matlab.

Sage

Sage is a CAS in python. It actulayy integrated a lot of projects and also provides some new functionality of symbolic maths, graphing and numerics. One of the unique features of sage is it web interface, which provides good notebook interface with latex math fonts using jsmath.

Maxima

Maxima is a really good symbolic math software. Sage uses it for most of the symbolic operation. I also use it quite often.

Texmacs

GNU TeXmacs is a graphical editing platform (for latex-like files) with special features for scientists. It provides a unified and user friendly framework for editing structured documents with different types of content (text, graphics, mathematics, interactive content, etc.). TeXmacs can be used as an interface for many external systems for computer algebra, numerical analysis, statistics, etc such as sage and maxima. One special feature is embedding of maxima into its interface, so example for writing some paper you dont need to separately calculate eigenvector of a matrix (symbolically) and then copy-paste, you can do it directly in TeXmacs with proper typesetting

And of course my most used

Python with the following modules :

Scipy/Numpy

Matplotlib

Enthought ETS (Mayavi, chaco, traits, n many more) Scientific + general