Just two little remarks, from my own experience:
1. It can be rather unproductive, coming from one
programming environment and just viewing the new
environment through the spectacles of the old
environment --- on the contrary, one needs to
forget for some time the old stuff, otherwise
one doesn't understand the possibilities of the new.
2. Adding redundant functions to Maxima will likely
impair the conditions for other users --- just more
confusion, more possible errors.
10 years ago I made some mathematica-experience, and I
found it a horrible language --- all kludged together
(though a lot).
Unfortunately there are no namespaces in Lisp/Maxima, and
so any mathematica-related stuff will pollute the general
namespace.
I would guess that good documentation, perhaps something
especially written for mathematica-users, might be most
useful here.
Just some thoughts.
Oliver