You can write code using any text editor, but for programmers there are specific set of tools to keep ones sanity when building stuffs. Sure, you can write code in Notepad, but I'd assume that person is doing a simple app or just masochist. No kinkshaming, okay?
Disclaimer, this post isn't sponsored by JetBrains in any way, but I'd like to share my personal choice why I'm using their tools for my daily weapon. But hey, if there's JetBrains person read this, I'm more than welcome to accept your gifts *wink*.
I had several IDE that I've used to create Unity games. I've used MonoDevelop, Visual Studio, and VSCode (Visual Studio Code). They did pretty good and just fine.
Some times ago MonoDevelop was included with Unity's installer. It has syntax completion, code formatting, and even debugger. Then I used Visual Studio because my friend showed me about it and it felt so professionally crafted to alleviate programmer's problems. Then some times later I changed my workplace and back again to macOS. At that moment I parted with Visual Studio because it wasn't available for Mac. Then I used VSCode for my daily code Editor.
VSCode was pretty popular for about anything. It's free and have thousands of plugins, including for Unity! It got syntax highlighting, code completion, and GitLens! I love this plugin a lot because we can see who wrote what (and finding the culprit who wrote nonsensical jokes in comment lines 😏 ). But unfortunately, more often than not, the code completion would stop working and even unable to find variable usage. I tried everything I could to fix this. It did fixed but sometime later it became error once more.
I don't really know what causing the problem. It could be the project that we're working on was too complex or the project was badly formatted. Had to deal that instead of creating stuffs.. man, I'm so tired of that shit. Then I began to ponder, "Is there any solution that just works?"
And that, my friend, when I tried JetBrains Rider.
Hop On Rider
I've got my eyes on Rider for some times ago. Some Unity tutorial creators such as Infallible Code and Jason Weimann mentioned about this IDE on several occasions. Also its ads popping up everywhere for me, especially in Reddit. So, I took the 30-day trial. Phew, that 30 day trial surely effective and convinced me to extend my license further more. Why? Welp, Rider has many great features, but for me I have several points why it fits me so well:
The project I'm working on at my office is simply opened without any issues. Yes, it took a while to open the project to do indexing, but after that it just ran. I'm no longer have to deal with IDE troubleshooting and can focus on squashing bugs and coding features to deal with.
Finding Usage in Scenes
Finding variable usage is easy, but finding what GameObject being referenced by public variable into inspector was a headache. You should know which scene hold the script to find out the target reference, then find the GameObject hold the script on the scene to inspect its usage. With Rider it's so easy! Rider can directly open the Unity to show what Scene and what GameObject being used for that particular variable. It already helped us for several debugging problems!
Targetting Debugger When Two Unity Project Opened At The Same Time
Sometimes I have to open two projects at the same time. One for mobile project, and one for the desktop project. When I used VSCode, somehow I couldn't debug two different projects at the same time. With Rider I can do it with ease.
What Are the Downsides?
Of course nothing is perfect. For me, sometimes Rider would freeze or show a popup and told me there's fatal error and should be restarted. It also eat a large chunk of RAM. And lastly, it cost hefty price tag to use!
JetBrains Rider is not on sell per-se but being licensed. For first time user it costs $139 a year, $111 for the second year, and $83 onwards. That's quite a lot! But again, the features are humongous and easily worth more than the price tag. If you divide it by months, $139/12, JetBrains Rider would costs about $11.6 a month. For me that is a reasonable price for the benefits it offers.
Should you use JetBrains Rider? Depends. Maybe, if I haven't change my development tools to macOS, I'll stick with Visual Studio. But now I have tasted how delicious Rider is, hm... that something to reconsider. If you are using Unity for hobby or fun side project, I can't recommend Rider for your primary IDE because maybe the feature it offers are specifically for niche users.
If you are still wondering how it feels like, just try 30-days trial it offers!