HNHacker News
TopNewBestAskShowJobs

to3m

4,399 karma · joined March 25, 2011

(account dormant as of 21/3/18)
submissionscomments
to3m··on Ex-Google recruiter: I was fired because I resisted “illegal” diversity efforts
Yep. I posted a link in that one too, so, fingers crossed, the people interested in discussing this will be able to find one another.
to3m··on Ex-Google recruiter: I was fired because I resisted “illegal” diversity efforts
Previously: https://news.ycombinator.com/item?id=16497551
to3m··on YouTube sued for limiting white, Asian male hires for diversity purposes
Previously: https://news.ycombinator.com/item?id=16497551
to3m··on YouTube Hiring for Some Positions Excluded White and Asian Males, Lawsuit Says
The horror! Who can say what unspeakable acts people will perform in the interests of potentially securing a better life for their children. I for one am reassured that there is at least one voice speaking out against this atrocity.
to3m··on Nobody's just reading your code
Assuming I've understood correctly, if you want the easy workflow then you just have to have the 3rd party code in its own repo and add that repo as a submodule. Best if that repo is one you look after, so that you can commit local changes to it if you like.

If you've not done this from day one, and you've got changes made to the 3rd party code, that's a bit of a pain, but provided you tracked (or can figure out) the version you were working from you can solve this manually. It's a bit of donkey work though.

(You have to decide from the start whether you're going to just put each dependency in the repo, or whether you're going to keep each dependency as its own submodule. I do think git works a lot better if you keep each 3rd party dependency as its own submodule: easier to patch your repo's copy, easy to make PR from your patches, easier to keep your patches merged in on top of later updates, and so on. But you have to plan for this a bit, and I won't deny that the submodule UX is pretty awful.)

to3m··on The Makefile I use with JavaScript projects
No, not really - I have no particular opinion about what POSIX chooses to support or not.

But I'm going to go back to my original point. What I do have an opinion about is how reasonable it is for tools not to support a character that is valid in file names, when that character is straightforward to support with everyday, well known syntax.

And when that character is ' ', the standard English word separator, as straightforwardly supported by approximately ever kind of quoting or escaping syntax ever, my opinion about a lack of support is: it's crap.

to3m··on The Makefile I use with JavaScript projects
I expect you mean NUL (ASCII 0) - but that's typically not a good choice, because POSIX decrees it invalid, along with '/'. But anything else is fair game, sure. Handling every Unicode char might be a pain, but that's the filing system's job, not yours!

Most programming languages manage to get this right. You have a quoting syntax with an escape character that lets you express the quotes, the escape character, and any arbitrary character (as a byte sequence, as a Unicode codepoint in some encoding, etc.) as well. Now you can do everything. Why not do this?

I'm not going to say this won't be a pain if you decide to write out every file name possible, because it will be, inevitably. But you can supply alternative syntaxes by way of more convenient (if limiting) shorthand - Python has its r"""...""" notation, for example, allowing you to express the majority of interesting strings without needing to escape anything.

You might argue that I've just punted the problem on to the text editor and the filing system. You'd be quite right.

to3m··on The Makefile I use with JavaScript projects
Who on earth insists that? Only Windows programmers, I expect! But it's easy: make sure they're expressible in your syntax, then pass them through as part of the file name. Just like spaces. If there's a problem, you'll get an error back from the OS.
to3m··on The Makefile I use with JavaScript projects
That's a worthwhile clarification - thank you. While that's certainly true in the strict sense, I remain bemused.
to3m··on The Makefile I use with JavaScript projects
I'm bemused by this repeated insistence that supporting spaces in file names is somehow difficult.
to3m··on Nobody's just reading your code
Use git submodules. git submodules interact tolerably neatly with GitHub's PR functionality; if you make changes to your submodule, then it's straightforward to turn that into a PR that you can submit to the upstream repo. And since your updates are a git branch like any other, if the upstream repo won't accept your changes then you can just keep doing fetch+merge/rebase to keep on top of the changes at their end.

Of course, this is git, so the UX is a total disaster, and it's very easy to get yourself in a pickle. But Stockholm syndrome will set in after a while and you'll begin to find it tolerable.

to3m··on Diesel cars can be banned from German cities, court rules
Ignoring the question of whether there's even a morally correct action here, why not keep the worthless car you already have instead of replacing it with a newer one? That £10,000 will pay for a lot of petrol, car tax and repairs.
to3m··on When to bring in the heavy hitters (2017)
Possibly relevant: http://blog.gardeviance.org/2015/03/on-pioneers-settlers-tow...
to3m··on Kactus: Design version control without changing tools
I think Perforce does this too... it's not a problem as such, but since you can't silently rewrite history in Git it's somewhat hard to get rid of the old versions when they start taking up space. Perforce on the other hand lets you configure the history depth on a per-type or per-file basis. I think you can purge deleted files if you'd like, too? - you'd probably use this if you were keeping old builds in version control, or some other useful type of asset that's in principle possible to recreate.

This doesn't help in combination with its insistence on storing the entire repo locally - though it's possible Git LFS (which I haven't tried) would be able to help with this.

Lack of file locking is a genuine problem.

And I really don't think you can handwave away Git's terrible usability with a "besides"...

to3m··on Taiwan ban single-use plastic straws, plastic bags, disposable utensils by 2030
I noticed that the photo at the top of the article shows somebody washing under a running tap, so maybe that's how they got to 120L.

I'm not myself concerned all that much about conserving water, but I am a normal person, so I don't wash my dishes under running water. I fill the sink up with water, stick in some washing-up liquid as it fills, then once it's mostly full (12-15L of water?) I use that. Total use per wash is then 12-15L. Maybe a bit more if I give something a rinse. (Very much optional in my view for most items - but some things do need it.)

You can wash a lot of stuff in that much water! So that's why I am a bit surprised at people using 120L to wash twelve places'-worth. That's eight times the amount I'd use for washing 3-4 people's-worth of stuff and all the items used to prepare the food in the first place.

Poor scalability!

(I think my dishwasher uses 17L per wash so I don't worry too much about using that instead. I am quite lazy.)

to3m··on Taiwan ban single-use plastic straws, plastic bags, disposable utensils by 2030
It must surely include rinsing under a fast-flowing tap (something I rarely bother with personally), and/or maybe doing the washing under a running tap too. I don't see how you could get to 120L otherwise.

120L = 7 very full sinkfuls of my fairly standard size kitchen sink. 7! For 12 people's-worth of stuff!

to3m··on Do not use NPM 5.7
It seems not to be entirely without problems, or at least hassle: https://stackoverflow.com/questions/41840479/how-to-use-home...
to3m··on New FreeBSD Code of Conduct
OK then, what does it mean?
to3m··on Zombie Processes Are Eating Your Memory
Sure they would. If zombie processes were everywhere, they'd put the effort in. How much space do you need to store info about a zombie process? It's probably 4 bytes: the exit code. I think that's all the info you get on Windows. That's the sort of thing they could do. Pack a bunch of them into one page or something perhaps? Or maybe just have 1 page each - and then it's still taking up 4KBytes rather than 64KBytes.

But zombie processes aren't everywhere. Typically they exist briefly and then get cleaned up. So even if they could take up 4 bytes, nobody's bothered writing the code to make them do that, because what's the point? If they take up 64KBytes it's just not a very pressing problem.

to3m··on Zombie Processes Are Eating Your Memory
I think the logic makes sense. Presumably the thinking is that zombie processes take up 64KBytes apiece because there aren't enough of them, in general, to make it worth doing the work to make them take up less.
to3m··on Nuklear: A single-header ANSI C GUI library
They added some useful stuff in subsequent versions... my recollection (though this is going back a while now) is that even only 3.81 was a worthwhile upgrade over 3.80!

However I have better things to do than try to figure out how to build GNUstuff myself on Windows.

to3m··on Nuklear: A single-header ANSI C GUI library
Good idea! Let me know when you’ve done it... I could do with an updated copy.
to3m··on Nuklear: A single-header ANSI C GUI library
https://github.com/tom-seddon/b2/blob/master/snmake.exe - standalone build of GNU Make 3.80. Has a couple of hacks in it to better support Windows-style paths with colons in it. I think this came from the SN Systems Playstation2 SDK. Thanks to the GPL, you can have it too.

(I have no idea whether this will successfully run a C compiler for you on Windows, though. I mostly use it to run Makefiles with phony targets as a cross-platform replacement for shell scripts.)

to3m··on Nuklear: A single-header ANSI C GUI library
Perhaps the musl author is referring to Sean Barrett's comments about strict aliasing on his web page: http://nothings.org/

Fun rant by the owner of the company Sean Barrett works for: http://web.archive.org/web/20160309163927/http://robertoconc... (and while we're on the subject, additional UB links: https://news.ycombinator.com/item?id=14170585)

As for how you navigate these files, you use a text editor that understands that you're working with code and not just a list of chars. Example post about this from last time Nuklear was discussed: https://news.ycombinator.com/item?id=11532001

Personally, for Visual Studio I use DPack (http://www.usysware.com/dpack/CodeBrowser.aspx); in Xcode, I use its methods dropdown (Ctrl+6); in VSCode, I use its methods dropdown (Ctrl+2); and in Emacs I use a thing I wrote ages ago that grabs the imenu names list and presents it in an ido menu in the minibuffer. And there are other options for other editors. The key thing is just to unshackle yourself from PgUp/PgDn/Find/mouse wheel.

to3m··on Is developer compensation becoming bimodal?
What about original sin?
to3m··on Chrome 68 will mark all HTTP sites as “not secure”
Is there a good reason to require https for localhost?
to3m··on Designing Windows 95’s User Interface
Same in 10.12.
to3m··on Ask HN: How to understand the large codebase of an open-source project?
This isn’t abuse... it’s exactly how you’re supposed to use a debugger.
to3m··on “You're on the verge of losing everything but you don’t understand why”
A personal bugbear for me too. The writer's story is theirs, and I wish they'd stop trying to tell me it's mine too. I typically assume that they're right, that I know what's going to happen, and stop reading.

I don't know which is worse, though: this, or history programmes narrated in the present tense.

to3m··on ARM immediate value encoding (2014)
I did some off-the-cuff analysis of some random code a couple of years ago and found the traditional ARM constant encoding to be not as good - for that code, at least - as the MIPS-/POWER-style load low/or high business. So if my code is at all representative I'm not surprised they went for MOVW+MOVT in the end: https://news.ycombinator.com/item?id=11607119#11608650

Regarding the 00XY00XY and XY00XY00 forms: I'm going to have to sleep on this, but this is a bit of mystery to me so far. I'm going to have to keep an eye out for those sorts of constants now! Maybe they're actually quite common?? - I suppose this will certainly let you form many kinds of mask useful for SIMD operations.

← PreviousPage 2 of 34Next →