Swap? It depends on the use of the system, and the user's expectations. Without swap, if you run out of RAM, something crashes. Usually an application, but often that de-facto means the machine is useless and has to be rebooted. This is particularly true if you run a GUI (which uses a lot more memory), or if you run buggy software that leaks memory (which is sadly not uncommon). If you have swap, the machine will stay up longer, but it will get slower when swapping is needed.
One scenario: Your intended usage's "working set" (the amount of memory it needs to operate) is a little bigger than the RAM you have. In that case, swap allows you to work productively, although not at top speed. Another scenario: Your working set is smaller than RAM; in that case, swap is at best useless. At worst, it will delay and slow down finding out that some program is leaking RAM, by making the inevitable crash take longer. There are many other possible scenarios.
I run my servers with some swap (about 1/4 of RAM); like that the slowdown when running out of memory gives me advance warning that something is breaking.