Also good tools are worth paying for, I have been a subscription user of their tools now for years.
I think it's like $199 for a subscription to the whole suite. If you are a dev (or work for someone who expects you to do dev work for pay) it's worthy spending a few of your coins on good tools.
I stare at these tools all darn day, and they rarely if ever crash. I don't regret moving away from Eclipse almost a decade ago, which used to devour all my system resources and crash and fail constantly.
That's 2/3 of a minimal monthly salary in Bulgaria. While developers sure make much more than that (unless they are in public sector), it's still nowhere near the $100k/year starting salary you get in the Valley. And that's still EU, you can go further East...
When saying something is not expensive (few of your coins), consider that it might be just your situation where it's not expensive.
There are tons of tools in the open source world that are incredible and free. The assumption that you have to spend money on tools does not apply to software at all unless you are working in a proprietary ecosystem.
What is the paid version of grep/ripgrep that works better?
Their all product pricing is pretty good value. If you need more than 2 of their tools (while using IntelliJ which covers half of their offerings), then you should switch to all products and quickly get to third year discount.
I use IntelliJ, AppCode and that already means I should be using all products pack which I'm subscribed to.
Developers are hands down one of the cheapest group of customers to deal with.
I've been shelling out for IntelliJ Ultimate for years because I want to support JetBrains. At this point I think I could actually get away with just the open source Community Edition, but it's worth paying them for the effort in my mind.
Is it common to buy your own tools in other skilled trades (when you aren't a freelancer)?
I don't mind buying good software, but it feels weird for me to pay in order to make my employer more money. It's not like the productivity boost I get from buying Datagrip is going to get me a raise or a better job.
That said, for software I use in my personal life I can and do pay, and I think we should all be more in the habit of either buying non-trial versions (Sublime, PyCharm) or making small monthly donations (Neovim, iTerm, regex101, QMK, et al).
Mechanics are often required to buy their own tools.
Higher end chefs are expected buy their own knives.
Machinists are expected to buy many of their own instruments.
If the cost of the tool is within the budget of the tradesman or professional, it's more common to buy it out of personal preference for a type or brand of tool.
If no part of your toolset is within your budget, then you're in the working class, since you cannot ever own your own means of production.
That's not what working class means. If you earn money by working, then you are working class. If you earn money investing capital, then you're a capitalist. The working class can be further divided up, but those are all subcategories. A professional or a manager (petit bourgeois) are still working class. If you're a one-man company, then you're still working class.
You only transition once your investment returns surpass your income. Which is why truly rich people don't give a shit about income tax - they don't have income!
If you don't want to make yourself more productive to make yourself worth more and try to stay at what you're being paid for, that's your option.
I don't understand why you don't to become a more productive person then you may get a better job offer or start your own company where you and your customers will be the one to evaluate your worth instead of a single boss of yours.
I love JetBrains, ever since I discovered ReSharper when I was still active in C# some 10 years go. Now I use PyCharm, DataGrip and GoLand on a daily basis and am happy to throw my money at them.
Not everyone makes a six figure salary and not everyone lives in a country where software developers are paid well. I do, but it’s a very ignorant view to justify expenses.
Average annual salaries _before taxes_ in Western Europe starts between 30k EUR (Junior dev without a formal degree) and 40k EUR (Junior dev with a MS/engineering degree). I guess most people who started at 40k EUR finish their career between 60k EUR (as senior dev) and 80k EUR (as manager).
Then remove 25% as social charges + ~1 month of net salary as income tax + other various types of taxes.
Yes, for some $200 is still a very non-trivial amount of money to spend on something. If your situation makes this a no-brainer for you, you're in a better spot than many that make 6 figures.
Tell that to mechanics, carpenters, or any other number of professions that are expected to buy their own tools or do so for security outside of an employer. Still a bargain.
I don't think what you're saying changes what I said at all. $200 is still a large amount of money for people, even if other trades force their employees to buy their tools. I don't see how that changes anything.
Sure. Tools are still difficult to maintain and develop. I love VS code which is free (as in Microsoft). It has replaced JetBrains Pycharm for me.
That said, I have a JetBrains subscription because their suite has a lot of value if you deal with multiple types of databases (or Java/.Net). Their business model is refreshingly straightforward, the coding is solid and I don’t mind giving them money.
It's about $8 a month and even lower on subsequent years.
But the real power of DataGrip comes by using it in one of their IDE that auto completes table and column names inside code and allows you to shift-click it to get to see the definition and show warning when you specify an unknown field.
The software is great but I would never buy it purely because of their business model.
There is absolutely no reason DataGrip needs to be a subscription service. There aren't any ongoing costs for customers to use it.
It should be a one-off purchase with optional support subscription, maybe requiring re-purchase at major version increments, not this bullshit where you need to maintain a subscription for a license on a binary program you already paid for and installed.
Feels as dodgy as Adobe turning Photoshop into a subscription service
Fuck these business models and the sales idiots who try to apply them to every single product
I used to think like this too, but I've since changed my mind and understand why they do this -- and it can even be beneficial for users. There's a few big problems with the old model:
First, you have to define the difference between "major" and "minor" version. Users expect major versions to have some significant improvements or new features. What this means is as a developer, you have incentive not to release minor features regularly, but instead batch them together so you can do a "major" release.
Second, the sales team now dictates the release cycle. More major releases means more money, but do it too frequently and the user base revolts. In many companies sales dictates the releases, but now if development is late it's messing with the company's cash flow and ability to continue to exist.
Third, the software can never be "done", because that means no more major releases. As a result, unless there is a sustainable stream of new users, you get feature and scope creep.
Subscriptions mean predictable revenue, and make the developer's incentive align with users: keeping users happy. This means keeping the product stable, making incremental improvements, and evolving with features that make sense.
Of course the beauty of the market is you should be able to find products sold both ways, and you can choose.
I absolutely agree, subscriptions are the way to go for making your software business sustainable and better scalable R&D investments to maintain growth. Gitlab is an example of this in the dev tooling space.
I've bought Mailplane v3 for my Mac a few years back. The app did not get new features, only patches. New features came out with v4, which required another purchase. I didn't buy it because v3 is good enough, buying again is a psychological wall. If it was a subscription I'd be happily paying them and happily using the latest version.
Except if they decide they don't have any updates to release for a month you just paid them for a month of nothing.
The issue with a subscription for self-hosted or locally ran software is that you are obligated to pay an ongoing fee, without the provider being obligated to provide any service in return. Their terms do not require them to adhere to any release schedule or anything showing that by paying a subscription you're getting X. It's basically a recurring donation in hopes the software you already paid for gets an update.
Imagine if your OS required a subscription for your computer to be usable, even when the developer of your OS doesn't release any updates that benefit or affect you for months, if you don't keep paying your subscription you get locked out of all of your work for no reason other than some marketing douche thought it'd be a good way to squeeze a more regular revenue stream out of their existing customers?
I don't disagree with your points, but you can still sell software in the buy once model and just keep it live. No need for major versions unless they are needed.
So the only point remaining is "we get more money this way", and that's something one could not want to participate in.
This. The JetBrains licensing model is great. Subscribe to get updates, with a perpetual fallback license for the last version when your subscription lapsed. Their old versions also continue to work across OS upgrades, etc. If you subscribe, the annual fee decreases substantially for the first few years. This is nothing like Adobe's Creative Cloud.
I thought their fallback perpetual license is actually for the version you had when you purchased it, not for the version that was available when your subscription lapsed?
Not sure if they changed this recently - I stopped following them when they switched to subscription with fairly onerous terms (which they rectified after backlash to ‘mediocre’, but never to ‘fair value’).
You're correct in that the current terms are a result of community backlash, or at least that's how I remember it. What would you consider "fair value" for such a tool? And does that include any period of updates and enhancements?
I would personally be okay with a perpetual license plus one year of updates, and keeping the last version at the end of the paid-for update period. Pretty much what they have, but you get to keep the updates you get, not just the initial version you purchased.
The reason this is more fair is that I am paying for the version and one year of updates. Jetbrains has no right to say at the end of the period that since I did not renew, they are taking back the updates they gave me, as if it was by their grace I had been given the updates. I paid for the updates, I get to keep them.
That said, they have every contractual right to enforce whatever they think is fair, and I have every right to recommend against their products and/or prevent the bulk purchase if I am in a decision-making position about it.
All jetbrains products have a licence witch grants you the right to use the tools you buy forever(Without updates). If you buy a tool in 2019 you get a licence for 2019.1 and updates for a year. So if you never update you only have to pay once.
Except you only get the version that was released at the beginning of the cycle. In other words, when your subscription is over, you have to downgrade to a version that's a year old. Bugs and all.
With most software, this would not really be a huge deal. Photoshop? Who cares. Excel? Meh.
But with Jetbrains products you've got to consider whether the old version is going to be 100% compatible with your existing project files, plugins, keybindings, settings and configurations.
Except if they decide they don't have any updates to release for a month you just paid them for a month of nothing.
The issue with a subscription for self-hosted or locally ran software is that you are obligated to pay an ongoing fee, without the provider being obligated to provide the service you're paying for. Their terms do not require them to adhere to any release schedule or anything showing that by paying a subscription you're getting X. It's basically a recurring donation in hopes the software you paid for gets an update.
Our team just bought a bunch of licenses of DBeaver and I think this is only correct if you mean 'relational' databases. We have a MongoDB and Eleastic and I don't believe that DataGrip supports either of these, which was a real drag.
We're fully on Jetbrains tools otherwise (R#, dotTrace and dotMemory, TeamCity as build server) so it was a no brainer for me to want to continue that trend but it didn't check all the boxes for us, despite its clear polish.
I tend to hate any IDE built on Eclipse (which I think DBeaver is), but I've been very pleasantly surprised with how well it works.
1. It's got very nice ER modeling where other tools (Like Oracle SQL Developer) make you jump through a dozen screens and a wizard to make a simple diagram.
2. It's got nice export tools to get your data to business partners in a more convenient way. Sure you can copy tables in pretty much every tool but there's just an 'excel' button that can pop open your current query in a new sheet.
3. It does have a weird delay when opening up databases sometimes where it 'reads metadata' about the table and it can sometimes take a long time to return even the most basic query. But once it's cached that data I've not noticed problems after that.
4. It does seem like the document database tooling isn't as baked as the relation tooling. I routinely get hangs when querying my Mongo collections, which is sometimes a drag. But it hasn't been a huge issue.
Overall, I'd highly recommend the paid version of this tool as it's helped me consolidate: Robo3T, Sql Server Mgmt Studio, SQL Developer, and MySQL Workbench into a single tool.
My previous workplace used to be locked into the Microsoft ecosystem and the core legacy product was backed onto a Microsoft SQL Server DB.
Over the years we pushed the business to move away from the MS/Windows ecosystem. When this happened, like many others, I looked for a UNIX compatible DB client that supported SQL Server.
First, I tried SQuirreL[1] and it was horrible. I just had to uninstall it and keep looking. I settled on DBeaver for a while as it has some nice features and it did most of the things I needed it to, but it was not particularly polished.
Eventually the business decided to pay for Jetbrain's All Products package which includes DataGrip and from my experience you could say: Eclipse is to IntelliJ IDEA what DBeaver is to DataGrip.
The other product I was looking closely at was Navicat for SQL Server[2], which looks pretty damn good and those who use it seem to swear by it. However, I am not a DBA and for that reason I can't justify the USD$699 personal licence price tag of Navicat.
DataGrip is not perfect, but it's pretty damn close and I think its price tag is well justified.
I've never personally used it, but I'm fairly sure you can use Azure Data Studio[0] for plain MSSQL databases, despite Azure being in the name. I'd be in interested in what people think of it, since I've never seen anyone talk about this in the wild.
I haven't! But I was reading about it on this day as well and it looks well received, so I definitely want to give it a shot when I need to regularly use a DB tool again.
I tried to like it and used it for a few months but eventually got back to SequelPro and it just feels breeze to use when every operation is so snappy not to mention an instant launch.
The embedded DataGrip can be a good tool inside one of their IDE though.
For many people, including me perhaps, something like DBeaver is good enough since it's free.