Ask HN: How does JetBrains protect their IDE Java source code?
23 points by yi_xuan 2 days ago | 22 comments
On linux, after I installed goland, I could see a lot of .jar file and .class file inside. I don't know, I can see all of the source code ?
23 points by yi_xuan 2 days ago | 22 comments
On linux, after I installed goland, I could see a lot of .jar file and .class file inside. I don't know, I can see all of the source code ?
IshKebab 2 days ago | prev | next |
They probably use an obfuscator. Standard practice for Java which is otherwise relatively easy to decompile.
Or they may not bother, because what are you going to do with that source code anyway? You don't need it to pirate the IDE, there's no secret sauce in there, and you obviously can't use it to make a competitor. There would be very little value in obtaining the code.
thesuperbigfrog 2 days ago | prev | next |
.jar files are just specially packaged .zip files for distributing Java programs and libraries.
.class files are Java bytecode.
What source code files are you seeing?
What are the filenames, etc.?
JetBrains's IDE source code would likely be Kotlin (.kt, .kts file extension) or Java (.java file extension) source code files.
cocoa19 2 days ago | root | parent |
You can decompile class files into java files, so OP’s question makes sense. Same with C#.
popoxdev 9 hours ago | prev | next |
I don't think they see this as a problem. If people really want to decompile the code they could. Most of it is open source already and the codebase is very large to make any competing product out of it.
rickette 2 days ago | prev | next |
They protect their source code by releasing awesome products that developers happily pay for (I do).
dansult a day ago | root | parent | next |
Accurate. JetBrains IDEs are the only ones I'll use. Webstorm, PyCharm, GoLand - all wonderful.
hahn-kev a day ago | root | parent | prev |
Yeah the company asset is not source code. It's the relationships with devs and trust built up over years of delivering.
not_your_vase 2 days ago | prev | next |
You mean that you have opened the class file, and saw the actual source code? Class file is supposed to be object-code (or whatever java calls that) - which can be decompiled (and sometimes even in a meaningful way), but generally it is not supposed to be the source itself...
(I just downloaded goland, and extracted a random jar file, and at least with that, the above paragraph seems to stand)
Tomte 2 days ago | prev | next |
Most of it is Open Source and on GitHub, anyway. So you shouldn‘t be surprised to see source code.
The Community edition lacks certain features, though.
yi_xuan 2 days ago | root | parent |
Goland has no community version :)
Tmpod 2 days ago | root | parent | next |
As far as I'm aware, all their IDEs are based on IDEA, almost acting as IDEA+special plugin, so a lot of code will still be the same. Of course, the language-specific stuff is not open, but as others have said, Java bytecode is fairly easily decompiled anyway.
Tomte 2 days ago | root | parent | prev |
Oh right, I always assume that JetBrains has the same strategy across its tools. Happened not for the first time. Thanks for reminding me!
softwaredoug a day ago | prev | next |
People overvalue source code and undervalue the institutional knowledge it represents.
uncomplexity_ 2 days ago | prev | next |
it's a lost cause. the people who want to pirate it will always find a way to circumvent efforts against it. better to spend efforts for people who pay than people who dont pay. better features for those who pay, instead of obfuscation for those who cant pay.
this is also good for those who cant pay, some of them are students or professionals who just simply dont have the budget yet.
razakel a day ago | root | parent |
It's $40 a month for every product. That's affordable for anyone.
romperstomper a day ago | root | parent |
you can also just pay for 12 months (sometimes it comes with some discount) or just pay month by month during last 12 months and you will have the perpetual fallback license after that which lasts forever (though you won't get updates until you start monthly payments again)
razakel 9 hours ago | root | parent |
Yeah, exactly. It's cheaper than an iPhone, whereas something like Visual Studio is more like the price of a used car.
aaron695 2 days ago | prev |
[dead]
nulld3v 2 days ago | next |
Nothing. No obfuscation either really. Heavy obfuscation could hurt performance, and light obfuscation can break reflection that might be used by plugins.
There isn't much value in trying to protect their source code. IDEs are evolving rapidly in response to languages, any decompilation you prepare would be outdated immediately. And nearly all JVM programs can be trivially cracked anyways, even if heavily obfuscated/guarded.