0xDBE: JetBrains IDE for DBAs and SQL developers
jetbrains.com
jetbrains.com
The one that really killed me was that you can CTRL-Click on a foreign key in the data explorer and it will go to the row in the foreign table with that PK. Jetbrains has gone to such incredible effort so that the same gesture will perform the same action (or a reasonable analogy) in every context.
I still prefer the lightweight Sublime Text to having to install all these monolithic Java-based IDEs, but I agree that the SQL/DBA tools have sucked for a long time -- especially a good cross-platform tool. Valentina Studio was the best I've found http://www.valentina-db.com/en/valentina-studio-overview -- has support for PostgreSQL, MySQL, SQLite, and their own proprietary db.
One catch is that IntellijIDEA license costs about 2x the price of specialized IDE for your favourite platform.
The other catch is that JetBrains has individual teams for individual IDEs and thus IndellijIDEA plugins lag a bit behind the specialized solutions.
No need to get all worked up.
The same is true with WebStorm, the UI and features found in WebStorm are not the same as in the JavaScript plugin. You cannot buy IntelliJ IDEA Ultimate and get all the features of all the other IDEs, you need to have separate licenses.
I wonder if it's worth trying to crowd fund a JavaScript IDE based on atom.
+1, it's ridiculous. My colleague switches between PhpStorm and IDEA depending upon which language she is writing in, so it's two licenses for us to absorb. I only use IDEA because doing Java without an IDE is painful, for everything else I use Sublime.
* edit for grammer
Now, I just use IntelliJ for the occasional Clojure and Java. If I need RubyMine or PyCharm, I just use the old versions I am licensed for.
If I was actively using Python and Ruby then I would keep the licenses up to date - well worth it.
We actually buy a license for each of these editors. We test our Floobits plugin for IntelliJ in each of these editors and they are significantly different enough that you should really have a copy of each. They also have different build numbers and different jar libraries included. This means there are differences in the code base and that could affect a plugin you might be building.
For example PyCharm ships with apache java libraries we also ship, and we used to have conflicts when PyCharm had a really old version. The different build numbers indicate different points of history in the IntelliJ code base. Some crucial plugin API may be in one build but not another.
Thankfully Jetbrains gave us a steep discount for the licenses to help us out. But even if I were not editing a plugin for Floobits I would still have to buy a license for PyCharm, WebStorm and IntelliJ separately because the Python and JavaScript plugins for IntelliJ do not have all the features the separate IDEs have.
I took a long time to setup Django and virtualenvs correctly so I can run and debug Floobits.com in PyCharm, I don't see any easy way to translate that work from PyCharm to IntelliJ with the Python plugin. Same with WebStorm. Many of our services are written in node.js and translating my setup from WebStorm to the IntelliJ plugin with JavaScript doesn't seem easy to do or even possible. It might just be I have no idea what I'm doing.
Can you note some specific features that are missing? I understand if one application requires a different way of doing something, but that doesn't necessary mean that functionality is missing or different.
You can actually get some of the Vagrant features with a separate Vagrant plugin in IntelliJ, but PyCharm lets you set up the Python interpreter with Vagrant via a really nice UI.
So that falls under "hidden under a different area" in the IntelliJ project, not missing functionality.
The concept of modules in IntelliJ is not in PyCharm, I believe. Though, I could be wrong.
Along those same lines, why would a DBA want to pop for everything that IDEA supports when their primary goal is writing SQL?
It seems incredibly ironic that software developers have hangups around software pricing. With the amount of money you can make writing software, and the amount of time good tooling like this can save, it should be an absolute no-brainer. They even offer personal licenses and free versions for OSS developers.
The best justification I can think of is the non-free aspect. Any text editor requires a lot of up-front investment to master. As the centerpiece of a developer's workflow, developers could be justified in favoring an open-source editor to embrace. But if that's your reason, $1 is just as unpalatable as $1000.
Part of that investment is knowing how much it will cost. How can you know your time is worth more than X when X is undetermined?
It shouldn't be the "main question" is all I'm saying.
For every other IDE made by Jetbrains, the cost is eclipsed by the cost of a developer's daily salary.
So if the IDE would save your developer one accumulative day in a year, it's paid for itself.
Yes. Both are simple bugs (I reported one of them, the other would be very difficult to reduce the test case for), but if I need a tool that's more advanced than plain psql, then it's for the big and complicated queries which this tool apparently isn't made for.
It's fine if it's a plugin for an otherwise mostly unrelated IDE (like in the case of PhpStorm, RubyMine or IDEA), but it's not at all acceptable if it's the main feature of a product.
As such we'll see which one happens: Either they make their database support arbitrary queries or their tool will just fail in its biggest use case (being a tool for the complicated queries where the text editor/native tool combo isn't sufficient.
JetBrains makes good products; it'd be a shame to avoid a useful tool just based on what one guy said.
I don't think I've ever seen a better advertisement for a product.
Think about it: we're carpenters but we really don't want to pay for our hammers and saws! Paying for tools is fine, if they are good quality and give you a competitive advantage.
Open ticket (1+ year): http://youtrack.jetbrains.com/issue/IDEA-107627
My request, which has been closed: https://intellij-support.jetbrains.com/requests/29892
At work we're trying to integrate [http://www.red-gate.com/]'s SQL Source Control plugin, which is a huge pain. They prefer too much autodiscovery, which is just too finicky.
Proper database management tools were long due.
Check the "Databases" under View -> Tool Windows
The issue is located this way: http://youtrack.jetbrains.com/issue/IDEABKL-5938