Can't run npm-installed packages as user

Earlier this afternoon I installed Node.js on Fedora 16.

user@$ sudo yum localinstall --nogpgcheck http://nodejs.tchol.org/repocfg/fedora/nodejs-stable-release.noarch.rpm

user@$ sudo yum install nodejs-compat-symlinks npm

Then I installed a package with npm. Every package I've installed with npm on Fedora (this isn't my first time) has involved something like the following process. Read it and weep. Clearly, this is hackish and wrong, but when I decide to install less or any other npm package, I have to go through the same procedure. Why? What is broken about my environment or approach?

user@$ sudo npm install -g jslint
[... this works ... kind of]

user@$ jslint
bash: jslint: command not found

user@$ sudo su

root@$ jslint
No files specified.
Usage: /bin/jslint ... [works]

root@$ which jslint
/bin/jslint

root@$ ls -l jslint
lrwxrwxrwx. 1 root root 38 Jul 15 14:58 /bin/jslint -> /lib/node_modules/jslint/bin/jslint.js

root@$ cd /lib/node_modules; ls -l
...
drwxr-xr-x. 2 root   root     4096 Jul 15 14:22 inherits
drwxr-xr-x. 2 root   root     4096 Jul 15 14:22 ini
drwx------. 6 nobody usergroup 4096 Jul 15 14:58 jshint
drwxr-xr-x. 3 root   root     4096 Jul 15 14:22 lru-cache
...

root@$ find . -type d -print0 | xargs -0 chmod 755

root@$ ls -l
...
drwxr-xr-x. 2 root   root     4096 Jul 15 14:22 inherits
drwxr-xr-x. 2 root   root     4096 Jul 15 14:22 ini
drwxr-xr-x. 5 nobody usergroup 4096 Jul 15 15:32 jslint
drwxr-xr-x. 3 root   root     4096 Jul 15 14:22 lru-cache
...

root@$ su user

user@$ jslint
o files specified.
Usage: /bin/jslint [now it finally works]

Recent versions of npm switch to user "nobody" as a security measure if it's being run with sudo privileges. Try doing global installs while logged in as root, rather than using sudo.