2,046 karma · joined August 14, 2007
https://www.forbes.com/sites/erikaandersen/2012/03/23/true-f...
* Vim or VSCode - essentially zero plugins in both cases - format on save using google-java-format - syntax highlighting turned off in Vim, minimized in VSCode - code folding disabled - quickfix mode in vim and error display/navigatin in VSCode set up * maven, gradle, or ant to build * browser open to JavaDocs for stdlib and any library I happen to be using (though I work very hard to minimize dependencies) * JMC, VisualVM, JitWatch, async-profiler, etc. for profiling
I do occasionally still fire up IDEA to use the debugger or other tools, but rarely.
As for renaming methods/variables, for the latter, scope will almost always be small, so rename is usually trivial. For methods, it's almost always easy enough to rename, rebuild, then fix the errors.
I also typically use Vim for C programing, though there I often use cscope and/or ctags to somewhat smooth out navigation.
Again, I do not have a problem with good IDEs, and still occasionally use them. I just don't feel a need for them, and often prefer working in a plain editor.
/me raising hand
I've used all the major IDEs on real projects for years at a time each, and so done years (often on the same projects) with just a quality editor and a set of external tools, and I honestly slightly prefer the latter.
I'm effective both ways, but my observation is that my work is of better quality when working in a non-IDE environment.
I fully understand that, as with most such things, says as much or more about me than about IDEs.
I think a large element is that, not having auto-complete, I find myself reading more docs (increasing system familiarity) and noticing unergonomic interfaces sooner.
The one feature I do miss is language aware navigation, but that loss is somewhat balanced by the lack of disruption when said navigation inevitably breaks, due to non-compiling code or working with new language features not yet supported by the tools.
While the first draft was released in 1983, the first ratified C standard was in 1989.
The first edition of "The C Programming Language" (from which I first learned the language) was published in 1978, over a decade before the language was standardized.
You are correct that C89 added function prototypes. However, contrary to your implication, C borrowed the concept and syntax from C++.
Your portability point mostly stands, though.
Oh, FFS. Pre-GPS, I would look up my destination on a map or street atlas and learn the route. If a portion was especially tricky, I might jot down a few reminders, or pull over before that leg and review the map.
Is GPS a wonderful convenience, especially with traffic monitoring & such?
Hell yeah, I love it and wouldn't want to go back to maps without a damn good reason.
But don't pretend it's somehow vital.
> So you are saying having a high def video call with my brother living across the world, for free, is just like calling him in the 60s?
The vast majority don't use video calling.
Still, constantly available communication is, IMO, a huge net positive.
> Do you physically develop all your photos?
That was obviously how it worked before ubiquitous digital cameras.
Photo situation is better today, though I might argue that the low marginal cost of each photo leads to people robbing themselves of vivid memories of what they're seen. There's some research that supports that idea, though I don't have a reference immediately on hand.
> Come on now. Try learning C++ in a library, good luck with that.
That's exactly what I did. Checked the ARM out of the library. Eventually bought my own copy when I decided it was worth it.
As much as I love the wealth of information available on the net, I sometimes miss how good libraries used to be.
Because it's a unique, historically significant artefact?
Because you can afford to, it hurts literally no one, and it will make you happy?
I used to prefer dual 24" monitors. I felt the physical separation let me better organize my tools.
Now I prefer my 34" widescreen. More flexible, less distracting.
The vaccines are not 100% effective at preventing spread (nor for preventing serious illness, for that matter).
That is not even remotely the same as "not effective".
In practice, the vaccines (with the possible partial exception of the J&J single dose) provide significant reduction in both spread and serious illness.
The former as a corrective action to help unwind any advantage gained in the market due to the illegal activity. This means, though, that fines need to actually claw back the ill gotten gains, not the small fraction they represent today. Right now, the fines are just another expense, assuming the company even gets caught.
Prosecuting the company properly might also ensure some measure of justice in cases where specific individuals' guilt is obscured by corporate structure and systems (intentionally or otherwise).
Prosecuting individuals who break the law in service of their employer (executive or not) isn't much different than prosecuting soldiers who commit war crimes -- obviously different in degree, but not in kind.
"I was just following orders" shouldn't be an acceptable defense in either case, though coercion and fear of reprisal should certainly be taken into account.
Oracle (Brian Goetz in particular) regularly gives talks and interviews and publishes updates.
There was even a link on this site a couple weeks ago: https://news.ycombinator.com/item?id=28364500
Exactly. Experience is key.
> Meanwhile, management applies pressure to ship new features.
This quantity over quality mindset, combined with the industry's rampant ageism and veneration of newness over all else, is making things worse at an alarming rate.
OpenJDK (which is built from functionally the same source code) has been free under GPL v2.1 + Classpath Exception for a while now.
Still, it is pretty lame, since they've been advocating bundling of the JDK since they deprecated the WebStart.
OTOH, since Oracle JDK and OpenJDK are identical save for branding and licensing, not sure why you wouldn't just bundle an OpenJDK build in that case.
This new license seems to be targeted to two main groups: those who depend upon a "system" install of Oracle Java for running third party apps, and those who are for some reason unwilling to use OpenJDK.
However, with the exception of some communication missteps around the licensing changes (which actually ended up in fully open source JDK, as opposed to the mostly open source JDK in Sun's time), Java has actually done great under Oracle.
Amazing what having resources can do for a project, eh?
I mean, I'm not thrilled with the licensing model around GraalVM (since it's another "mostly" open source situation), but business is business, I guess. I'd personally prefer that they treat it the same as Java proper, and fund it via support contracts/subscriptions.
Worth remembering, though, that there are groups of people who cannot get vaccinated yet, either because it hasn't been proven safe and effective yet (kids 0-11), or because, for specific reasons, it isn't safe for them to get the vaccine (those severely allergic to components of the vaccines, some immuno-comprimized people).
Not in the United States it can't. Nor can making repairs or modifications, unless the manufacturer can provide proof that your actions were what caused the issue you're asking to be corrected under warranty.
I've personally gone back and forth over the years between IDEs and decent editors for programming in C, C++, and Java.
I started programming before there were IDEs, so perhaps that has some influence, but you did say "...stopped using IDEs once they started".
I like some functionality of IDEs, but most are barely "nice to have", not "must have" -- the thing I find that I miss the most is language aware navigation.
The thing that keeps bringing me back to just using a reasonably powerful editor (for me, that means either Vim or VSCode, both with zero or very, very few extensions) is the lag between new features coming to existing languages (and new languages emerging) and IDEs supporting them in a non-disruptive manner (never mind fully).
With a decent editor, web or manpage based docs, and a command line based build (which I want anyway for releases and/or CI), I'm all good, thanks.
I mean, if I were to be working someplace that required or depended upon an IDE, I'm not necessarily averse to using one again, but that might be a red flag for me regarding that workplace.
I certainly get the appeal of IDEs, and understand that some find more value in a powerful IDE than in using the latest language features.
Both ways of working are reasonable, depending upon your situation, goals and preferences -- I wish more folks would understand that.
That seems crazy to me. What bizarre excuse does your organization have for that policy?
To me, part of the point of a staging environment is to provide something as close as practical to prod in which to test, reproduce, evaluate, and investigate issues, be they performance, correctness, or what have you.
Getting back into playing after stepping away back in the late 80s has been a primary factor in keeping me sane and alive over the last couple years.
The whole "Warranty void if sticker removed" on a sticker over a screw or "Warranty void if panel removed" ... all of those things are scare tactics, and, in fact, not even legal in many places.
It is certainly true that there are more informational resources available, but honestly, there was plenty of good info available at most decent libraries, and the manuals that came with computers were typically troves of information back in the 8-bit days.
They're selling support for the JDK to companies that value that service.
I'm guessing they're doing OK on that front, since the sorts of enterprises that typically buy support are their bread and butter.
The individual price for Ultimate Edition is $149 the first year, $119 the second consecutive year, and $89 a year from then on.