HNHacker News
TopNewBestAskShowJobs

Sindisil

2,045 karma · joined August 14, 2007

submissionscomments
Sindisil··on Rust extension traits, greppability and IDEs
Nothing fancy.

* 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.

Sindisil··on Rust extension traits, greppability and IDEs
> Who in their right mind has the courage to tackle a Java project without an IDE?

/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.

Sindisil··on A simple defer feature for C
Oy. Your history is ... confused.

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++.

Sindisil··on C Is Not a Low-level Language (2018)
The most prevalent JVM is written mostly in C++, not C.

Your portability point mostly stands, though.

Sindisil··on Worker pay isn’t keeping up with inflation
> You basically need another passenger with you otherwise you'll have to do a lot of stops. I'd even say its a bit risky to drive like that.

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.

Sindisil··on Design evolution of the Windows control panel
They were (and are) and, to an increasing degree, you are not.
Sindisil··on GC progress from JDK 8 to JDK 17
Shenandoah isn't an Oracle maintained feature, so they'll never allow it to become the OpenJDK default (though another vendor make it so in their distribution).
Sindisil··on An original Apple-1 computer sells for $400k
Because a thing may have value beyond its utility?

Because it's a unique, historically significant artefact?

Because you can afford to, it hurts literally no one, and it will make you happy?

Sindisil··on Write thin to write fast
It's almost as if people have different preferences in working environment, isn't it?

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.

Sindisil··on Pfizer's oral Covid-19 antiviral cuts hospitalization, death by 85%
No.

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.

Sindisil··on The Magnavox Odyssey was the first commercial home video game console
A friend of mine had an Odyssey 2. It was a blast. Even had a primitive programming cartridge
Sindisil··on Wacom drawing tablets track the name of every application that you open
Most Linux distributions have a similar mechanism.
Sindisil··on 'Dieselgate' trial opens in Germany without ex-VW boss
The proper response would be to prosecute both the corporation and specific individuals who acted illegally.

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.

Sindisil··on How much faster is Java 17?
> there doesn't seem to be any updates since then

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

Sindisil··on Microsoft Azure silently install management agents with vulns on your Linux VMs
> Nobody I met came with any of those skills out of college.

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.

Sindisil··on Java 17 / JDK 17: General Availability
Of the Oracle branded JDK releases, only version 17 (so far) is free.

OpenJDK (which is built from functionally the same source code) has been free under GPL v2.1 + Classpath Exception for a while now.

Sindisil··on Java 17 / JDK 17: General Availability
They are, however, making a commitment to scripting friendly URLs for the JDK downloads, making it feasible to automate the install.

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.

Sindisil··on I refuse to let Amazon define Rust
I was ... let's say "apprehensive" ... when I heard Oracle had purchased Sun, and thus control of Java.

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.

Sindisil··on Charles Barkley: ‘The only people who are not vaccinated are just a–holes’
Eh, I agree that those who could get vaccinated, but don't are indeed assholes.

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).

Sindisil··on I've got a broken combine harvester – manufacturer won't give me software key
> Using parts of services that aren't "genuine" can void your warranty.

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.

Sindisil··on The Return of Fancy Tools
<waves>

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.

Sindisil··on Ampere switching to in-house CPU designs
> I'm not allowed to hook a debugger up to anything in the staging environment

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.

Sindisil··on Ask HN: Favorite purchases of last two years?
Fender Player Series Strat & a little Orange Crush 35rt amp.

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.

Sindisil··on Bob Cassette Rewinder: Hacking Detergent DRM
Side note, but, depending upon where you live your warranty status should have no impact on whether you can safely take your device apart (unless you are unable to properly reassemble it, of course).

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.

Sindisil··on Starting a TypeScript Project in 2021
Not sure how that's easier than: Turn computer (which boots close to instantly), print "hello world".

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.

Sindisil··on Preview of Microsoft Build of OpenJDK
Not sure what exactly you mean, but they've open sourced the entire JDK, including Flight Recorder and Java mission control.

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.

Sindisil··on Google’s copying of the Java SE API was fair use [pdf]
Also from the first page of the dissent: "A different company, Sun, created the library. But because Oracle later purchased Sun, for simplicity I refer to both companies as Oracle."
Sindisil··on Eclipse IDE 2021-03
That is the institutional pricing.

The individual price for Ultimate Edition is $149 the first year, $119 the second consecutive year, and $89 a year from then on.

Sindisil··on The KimKlone Microcomputer
I built an Elf when I was a teen. Would have been much harder if it weren't for a school friend who was also interested and who's dad was an EE -- got us the HP hex LEDs which were pretty expensive at the time. I had planned to go ahead with two banks of discreet LEDs, but having the HEX displays beat the heck out of having to translate binary on the fly.

I really had a blast with that thing. Programing the interesting ISA was fun. It almost felt like it had 16 words of RAM and several K of registers, since all memory I/O had to go through the D register. The best part was that you could use any of the 16 GP regs as the PC, so you could do primitive task switching.

The simple circuit made it just as fun to expand its hardware capability (bump to 2K of RAM, eventually 8K CMOS battery backed RAM, KC tape interface, Hex keypad, a 20ma. loop interface to a barely working Model 33, and finally I scored an 1861 to add video out)

I later got a Timex/Sinclair 1000 as a gift. Not nearly as fun from a hardware perspective (though I eventually upgraded the the external 8K RAM cartridge to 16k by piggybacking additional chips, connecting the chip select pins to the the board with flying leads). However, the Z80 was another fun CPU to program for. Much more advanced memory addressing and the shadow register bank made for some fun hacks.

Never did own anything 6502 based, which kind of bums me out since the first computer I ever programmed was 6502 based (CBM PET 2001), but I was a ways off from figuring out assembly at the time.

I wanted a C64 or a VIC, but couldn't afford one. Oh well -- once I saved up enough to buy a used CoCo I was spoiled for anything else for years to come -- the 6809 was the peak of 8-bit CPU design, IMHO.

Sindisil··on A guide to Windows application development using w64devkit
One option would be to use Visual Studio Build Tools (https://visualstudio.microsoft.com/thank-you-downloading-vis...).

You could stick with makefiles by using nmake. It's not nearly as full featured as gnu make, and both cmd and PowerShell are much different (and less powerful in the case of cmd) to bash. Still and all, I've made it work quite well in the past for the Windows build of a library I was responsible for in my former day job.

Another option would be to use cmake as your build tool and let it generate ninja, msbuild, or nmake scripts for you. It's not nearly as bad as it was in the past (nor as bad as some might lead to to believe). Worth a try, anyway.

← PreviousPage 4 of 9Next →