Search this blog


Monday, April 11, 2011

Tools that I use

I've listed some of them in the past here, but this is a more complete and up-to-date list. Update: I've dropped the "2011" from the title, as I've kept this list more or less up-to-date every time I change a computer.

For iOS/Android and Web Apps, look at this second list

Other than Visual Studio, Photoshop (with NVidia dxt plugin), Office/Outlook (or OpenOffice), 3dsMax and Perforce (or whatever else your studio uses) these are the tools that I always have installed on my development computer. 

I don't use OSX for development at all, but I use it almost exclusively at home for photography and general computer stuff... so I included a few OSX tools too, even if you won't find as much programming stuff.

A good way of reinstalling software that I've found is to use Ninite, it's GREAT (OSX: ZeroInstall or GetMacApps)
  • File tools
  • Coding
    • For VS2010, the Enhanced Scrollbar from the Productivity Power Tools, if you're still on 2008 then MetalScroll. VS2013 has the same functionality "built in". Indent guides is not bad as well and I like Continuous formatting as I found autoformatting to be great but hard to apply in existing codebases.
    • Visual Assist X (plus I disable Intellisense especially if I'm not on VS2010+)
    • NotePad++ for almost everything (with this HLSL syntax add-on by Pettineo). OSX Alternatives: TextWrangler, NotationalVelocity
      • Sublime Text is very nifty but I don't love that it's slower on load, I guess because it parses the entire file (good editor for OSX though, where NotePad++ is not available). Also sublime is a "serious" text editor, like VIM and the like, to really enjoy it you have to learn it, configure it... All things I don't care for...
      • Markdown editors - I still write a lot of plain .txt files, and using markdown gets you some formatting for free (one day I'll experiment to see if LaTeX is doable too). Texts is my choise (OSX too, also on osx Mou is an alternative)
    • IDEs. Of course, Visual Studio, but you might need stuff for other languages.
      • Lua
        • Decoda is a great (now opensource!) IDE if you need one for Lua (which you probably shouldn't).
        • ZeroBrane Studio is good too and integrates a number of game engines (mostly 2d and indie-ish, like Love, Moai, Corona) with a limited "livecoding" support (change of constant parameters)
      • Python
        • I'm still new to this, and python comes in a thousand of different distributions... 
        • The best today seems to be Python tools for Visual Studio
        • I like interactive environments like Spyder, which is included in many "scientific" python distributions. On windows, WinPython is such one, also "portable" which I always prefer. Alternatives that works also on OSX: Anaconda, Canopy, ActiveState (which is the leanest of these)
        • Also good options: Ninja Ide (OSX too), PyCharm (OSX too), PyScripter (often included in windows python distributions)
      • C#
        • I often install also SharpDevelop especially if the VS version the company bought using does not support the latest C#
        • ILSpy is great too, as it is NDepend but I use them rarely as I'm not dealing usually with large C# projects.
      • For most other things (and for OSX...), JetBrains has an IDE. ObjectiveC, JavaScript, Python, Ruby.
      • ActiveState maintains free Komodo Edit (a version of the Komodo IDE without debugging and some other important features) which is also good for JS, Phyton, Ruby and such.
      • I use Eclipse togehter with the Processing library to livecode processing sketches (Eclipse supports java hotswapping)
    • Everybody is on P4, but the outside world likes GIT too. TortoiseGIT is good but young, SourceTree is better, also works on OSX
    • Other development tools I've used/use:
  • Graphics and rendering
    • IrfanView, also Picturenaut, HDRShop and Luminance HDR for HDR images.
      • OSX Alternatives: Xee
    • FXComposer 2.5 AND 1.8, as 2.5 sometimes has some bugs you can't work around... 
    • OpenCL studio
    • Nvidia toolkits:
      • CUDA, DirectX11 Graphics, OptiX.
      • Parallel NSight debugger
      • Sometimes I still download the "GPU computing toolkit", the version before it was "merged" inside the CUDA one, because it had some decent DirectX11 Compute demos that are missing from the other two now...
    • I still find Pix to be usable (the external one, not the VS12 graphic debugger horror) but nowadays Intel's GPA is the top of the crop when it comes to PC graphics debugging.
    • Crytek's RenderDoc is great!
    • VideoLan
      • Also for screen captures! I just use the desktop capture device and encode a mp4.
      • For smaller things GifCam and Giffing are neat too, all other video capture programs I've found either are insane crapware or depend on proprietary codecs that you have to distribute...
    • Prototyping
      • Processing (also on OSX). I also usually have VVVV but I don't really end up using it :) LibCinder, Pocode and Polycode are decent if you want a Processing alternative for C++.
      • SlimDX (or SharpDX which is very similar, by design).
    • Other stuff
      • Sketchup if I happen to really hate the DCC app the studio uses. I also sometimes find handy to have a copy of TopMod and MeshLab. Nowadays, Autodesk 123D stuff can also be useful.
      • Sometimes, for no real good reason, I prototype some filters in or Pixel Bender...
  • Desktop
    • I guess anyone working on Win8 is using ClassicShell... Interestingly, no one sent me a message about this fundamental tool, so I guess no one (as of 4/2/2013) is using win 8 among my videogame developer friends :) Another alternative is to not care about the start menu at all and just use Launchy (see below) which is probably best anyways.
    • I pin down the Win7 Snipping Tool (and configure it not to prompt when closed), or go with Greenshot which is even better. Very useful to copy'n'paste pieces of the screen into emails.
    • SysTools Desktops is a tiny free utility for virtual desktops
    • AutoIt is NIFTY! I use it to craft quick GUIs around command-line tools or to automate GUI tools... It's really nice when you have to do a given thing over and over, and its basic-inspired language makes me nostalgic too. Also, is "portable", which I always prefer. AutoHotKey uses AutoIt scripting, but I didn't use it yet
    • Launchy (when I'm not on Win7 - which nowadays means never). Really nowadays I use Everything (see above, file tools) even
      • OSX Alternatives: Alfred or Quicksilver (which was the "inspiration for Launchy really, and works way way better) and a few others these days.
    • Acrobat Reader (even if I should probably prefer the less bloated SumatraPDF, that does not annoy the user with endless updates)
    • ProcrastiTracker... Also for "productivity" I like sometimes to use the "pomodoro technique", I have a kitchen timer on my work desk that seems to work best (I like it being physical and ringing), but ChronoSlider on OSX doesn't see to suck as well (you'd be surprised how bloated or bad most timer apps are...)
    • Unlocker (you can avoid this using the Sysinternals tools, that you should get installed anyways, but it's nifty to have Unlocker as it's faster)
    • SharpKeys if I need to remap some of my keyboard keys. Some keyboards emit "weird" scancodes (e.g. my wired Apple Italian keyboard) the only program which I've found to be flexible enough to recognize them is KeyTweak.
      • Speaking of using Apple hardware, if you have a laptop and you like your natural scrolling direction on the touchpad, WizMouse can enable that. By the way, Win 8.1/bootcamp on my MBPr2013 does dragging horribly, but it seems better if you enable the (unrelated!) "tap to click" and "dragging" options in bootcamp. Trackpad++ is also related but I haven't tried it yet.
    • Synergy for keyboard/mouse sharing across computers.
    • CCleaner (now also on OSX, albeit limited)
    • VirtualBox can be useful and it's free, even if I usually prefer VmWare. On OSX, Parallels is really good too
    • Window management
      • 1Up industries stuff is really good: Fences, Bins (7Stacks is somewhat similar, and free, emulates OSX stacks)
      • My own bugfixed version of AnAppADay Jedi Concentrate (a Windows clone of the OSX Think Isolator, Spirited Away is a nice complement to these too, there are clones as well). WindowFX 4 does the same too (and much more)
      • On OSX some people/setups seem to need SmoothMouse to avoid mouse lag
      • F.Lux (even if recently I had to disable it, as it does not work well with my monitor calibration software)
      • There are a lot of other tools that look nifty but I didn't end up using them often... Displayfusion looks neat but I didn't try it yet, the most interesting feature for me is placing a second taskbar with only the applications used on the second monitor there, MultiMon does it for free. A tiling window manager is good if you have a lot of screen space, like WinSplit (OSX alternative: SizeUP)
  • Internet
    • Firefox and/or Chrome (most often the latter actually, remember to install a session manager to not swear if things crash, and I also use the morphine extension at work)
    • DropBox
    • Google Calendar Sync, if the company doesn't have decent intranet VPN access
    • Microsoft Live Messenger (well, Skype now...)
    • For home at least I use a free LogMeIn account ( is nifty), which I find many times easier/better than setting up UltraVNC. Splashtop looks promising.
  • Math
    • PowerToy Calculator (patched to install on Win7/Vista)
    • Mathematica if the studio has a license for it (or I make them buy one!)
      • Maxima or Sage if not (and that usually is bad as my MatLab days are long over and I've never really learned any other CAS than Mathematica and a bit of Maple)
      • Mathics is an upcoming free Mathematica compatible system
    • GeoGabra can be useful when tinkering with geometrical constructions, it's quite powerful (currently the beta of v5 supports 3d too, and it's available "portable" as well) but slightly more focused on contraints than I'd like (I'd love something very interactive with optional constrained stuff, like a parametric CAD)
      • Some people swear by TikZ (examples), looks extremely cool but it's not interactive...
      • On the simpler side, and 2d only, DrGeo (portable as well) is great to tinker
    • SciLab
    • A SciPy distribution (see the IDE section above)


numb3r23 said...

Thanks for the links - esp. to processing. I should have found that years ago:D

nova77 said...

Wow, this is really close to the settings that I had a while ago (before migrating to osx for work), with the exception of visual assist which I found to be a real life saver once properly configured.

Anonymous said...

use linux and shit like unlocker you will not need.

DEADC0DE said...

Anon: Agreed, in Linux I won't need unlocker.

I would just need a replacement for visual studio, photoshop, 3dsmax, directX, the console SDKs and everything needed to make videogames...

So basically I would have no job, but yes, I would need no unlocker.

Thanks for the tip!