HNHacker News
TopNewBestAskShowJobs

hosay123

2,382 karma · joined November 17, 2012

submissionscomments
hosay123··on Business Insider CTO Forced to Resign Following Twitter Firestorm
This generalizes further than just antifeminism. Christians and atheists are usually in positions to hire people. I guess we should just fire everybody who ever believed in anything, and then we'd have a perfect world, right?
hosay123··on Business Insider CTO Forced to Resign Following Twitter Firestorm
For all the value of political correctness in the workplace, someone just lost their job for their honest views, because some found them too ugly to bear. If you're still thirsty for more ugly truth, check out a Twitter search for @paxdickinson just now. Apparently to many, honesty is objectively worse than endless vengeful hate.

I don't support anything this guy said, but clearly some of it was sarcasm, and as for the rest of it, differences of opinion are entropy, and every time we suppress them, the universe gets that little bit colder and humanity dies that little bit quicker..

There are no winners here. I find everything about this episode a disgrace on both sides.

hosay123··on Quark: A secure Web Browser with a Formally Verified Kernel
You should probably ask the people who've been promoting these ideas since at least the 70s :) "No time soon" is my best bet

As I understand it, creating a proof becomes increasingly more complex in proportion to program size. You'll notice in this project, their proof only covers a few hundred lines of code. That's not because their program just happened to be a few hundred lines of code, but because they designed it to allow a practical proof.

hosay123··on Linode SSD Beta
From the description it sounds like they're just using bcache for the storage layer, or one its equivalents (IIRC Facebook came out with a very similar patch). Still pretty cool
hosay123··on Date parsing performance on iOS (NSDateformatter vs sqlite)
If you've ever moved country, and imported some data from the old country and mixed it with data from your new country, it quickly becomes obvious why preserving source timezone is a deeply useful attribute ("It's a beautifully sunny day! -- me, 04:17hrs").

Or at the very least, preserving the time offset.

hosay123··on YC Will Now Fund Nonprofits Too
I'd love to apply to this, but most people around me are off having stable jobs, wives, mortgages, children and other such craziness. Is there much hope for accepting a solo founder with a non-profit idea?
hosay123··on A new breed of Chrome Apps
Firefox OS is working on the same feature (google 'WebUSB')
hosay123··on Ask HN: Freelancer? Seeking freelancer? (September 2013)
Yes, the point of the thread is to match work seekers with providers. Clearly nobody is at work today, and the only people posting are seekers. There's only 3 "seeking freelancer" replies out of 61 posts
hosay123··on Ask HN: Freelancer? Seeking freelancer? (September 2013)
As is pretty obvious from the responses, bot needs tweaked not to post on a Sunday.
hosay123··on China’s Tencent is giving away 10TB worth of free cloud storage
There are many reasons why you might see a disproportionate number of requests from that part of the world. At the very least China is most populous country in the world, and Asia is absolutely flooded with cheap hardware. SSH worms have been commonplace for almost decades now, suggesting SSH attempts from a Chinese IP address are obviously the work of an evil government is a little bit unfounded crazy talk.
hosay123··on SQLite 3.8.0 Release with next-generation query planner
Back in the sands in the time Sun also did this with Java. IIRC the associated license was a great cause of pain for open implementations of the JVM, since without passing the suite you couldn't call yourself Java, and with passing the suite (insert some horrible restriction here I forget)
hosay123··on Don't use bcrypt (2012)
It's #5 on go-ogle
hosay123··on Linux 3.9 introduced a new way of writing socket servers
Sadly it doesn't work like that.. if 2 processes have the same port number bound, then approximately 50% of clients will hash onto the second receive queue. If the debug process only accepts a few connections every so often, then nearly 50% of traffic will essentially be dropped on the floor

It's also not possible to occasionally listen and unlisten.. that causes the hash modulus to change, sending traffic to the wrong sockets and (most likely) resetting all existing connections

hosay123··on Node.js incorrectly parses HTTP methods
The level of bikeshedded micro-optimization going on in that file is hilarious. The whole thing could be swapped out with a Ragel parser and nobody would notice a thing
hosay123··on Callbacks are Pretty Okay
https://ifttt.com/

"Computer, create a rule for my car."

"OK. Which car? Do you mean Red Toyota Purchased 1997?"

"Yes."

"OK."

"Computer, when car is at location House, then boil kettle."

"Do you mean Kettle in Kitchen of 48 My Road?"

"Yes."

"OK. Is that all?"

"No. Computer, this rule is only valid on weekdays."

"OK. So when car Red Toyota Purchased 1997 is at location 48 My Road on Monday, Tuesday, Wednesday, Thursday, Friday, boil Kettle in Kitchen of 48 My Road?"

"Yes, but only if my iPhone was not inside the car."

"Do you mean Jemima's Apple iPhone 4Gs?"

"Yes."

"OK."

...

hosay123··on Callbacks are Pretty Okay
This recent 'callbacks as goto' discussion is so utterly mundane that I've all but failed to convince my wrists to so much as twitch sufficiently to click on any of the links, just the title is enough to drive me to drink.

Callbacks are in no way "this generation's goto", they do not in any way inhibit the ability to analyse or prove correct a program, and all alternatives to callbacks amount to incredibly fancy syntax sugar for hiding what is really happening behind the scenes anyway.

A callback is a function call, or put another way, a specification of an exact set of arguments grouped in a formal specification that is sent to a deterministic little machine (the function) to execute immediately. On completion the machine will provably produce the result it promised to return in its owner's manual (i.e. the declared return code).

None of this is "goto" in any way. In goto land, without knowing the exact set of inputs a program receives and whole-system simulation, it is utterly impossible to make assumptions about even the most minimal pieces of state in the program at any given moment.

Contrast to a function call. A function call is a fixed guarantee about the state of the system at the point a machine begins executing. Furthermore a function call has a vastly restricted set of valid behaviours: at some point it must terminate, and prior to termination, update the system state (stack) to include its return value. And upon termination, result in the calling machine to resume operation.

All this syntax sugar shit is whack. Great, you typed 24 characters instead of 3 lines to declare a lambda. Hyper productive, go you. How does this progress toward the point where I can say "computer, make me a coffee!"?

If you're genuinely interested in what this generation's Goto might look like, take 30 minutes to watch http://vimeo.com/71278954 .. our UIs are utterly trapped in pre-1970s thinking, our communication networks are so utterly idiotic that we STILL have to write custom code to link disparate chunks of data and logic together, we're STILL writing goddamned function calls in a freaking text editor (something that was solved LONG ago). All the things like this.

I can't ask my computer to make me a cup of coffee, and it responds. I can't describe in restricted English a simple query problem and have the millions of idle machines around the world coordinate meaningfully to answer my question (and our best chances of this.. freebase.com.. got bought up by Google and left to rot as some vestigial appendage of their antispam dept no doubt).

Computing is in a sad state today, but not because of fucking callbacks. It's in a sad state today because we're still thinking about problems on this level at all.

Node.js wasn't an innovation. It was shit that was solved 60 years ago. I wish more people would understand this. Nothing improves if we all start typing 'await' instead of defining callbacks.

Innovation in our industry has been glacial since at least the early 90s.

Edit: and as a final note, I wholeheartedly welcome you to nitpick the hell out my rant, wax verbose on the definitions of provability, the concept of a stack, the use of English versus American language, why Vim is awesome, and in the process once more demonstrate the amoeba-like mentality 90% of our industry is trapped in.

Go and build a programming language your Mom can use. Preferably by talking to her computer. Please, just don't waste it on any more of this insanity.

hosay123··on Samsung's exFAT Linux driver officially released as GPL
Heard it on IRC, but I guess it's trivially verifiable by comparing the code

Edit: it wasn't IRC, it was the comments here: http://lwn.net/Articles/560424/

hosay123··on Samsung's exFAT Linux driver officially released as GPL
They produced the driver under license, somehow someone got a hold of the code and "guerilla relicensed" it, which they did not have authority to do, and uploaded the result to Github.

Sometime later when this repository was noticed on Github, someone noticed the source was a derivation of one of the existing Linux FAT filesystem drivers. In other words, under the terms of the GPL it is derived code. The fact it was only previously distributed in binary form does not excuse this: Samsung were distributing GPL derived code in violation of the license.

So this clears things up a little bit. What I don't understand now is the usefulness of this code. For example, could it potentially be merged upstream? If not, then why not? If it can be distributed under the GPL independently, I don't understand why it couldn't get shipped with Linux.

The fact this driver exists "legitimately open source" now, yet is still covered by patents, confuses me a bit.

hosay123··on Practical threaded programming with Python
This should at the top. A CPython extension author need do no more than Py_BEGIN_ALLOW_THREADS before some native work, and Py_END_ALLOW_THREADS on completion, literally just 2 macros. In between the interpreter can run freely on another thread.

Consider a network server running a Twisted main loop, serving static files from cold mechanical disk. In this case, you could have 80 or more disk IO worker threads running without feeling any contention, assuming they're asleep for a minimum of 12ms/request, which would be an ideal seek time assuming the disks weren't under any load.

Assuming one disk, those 80 sleeping threads do something particularly useful that's difficult to accomplish without threads: they let the kernel IO scheduler reorder the requests to minimize seeks, and in a much more general way than the large variety of crappy AIO APIs available on UNIX.

There's a trillion uses like this for threads in Python.

hosay123··on Vulnerability in ICMPv6 could allow Denial of Service
I guess you may have just woken up from a coma that started in the late 90s.. in any case, Windows security is vastly improved in recent years, and even if it weren't, remote DoS against a hugely deployed OS in a kernel driver in the default install is still very noteworthy.
hosay123··on My account's Facebook applications have been disabled with no explanation
For a while there I'd forgotten there was such a thing as a Facebook app
hosay123··on Git commit allegedly from Satoshi embedded inside a Bitcoin transaction
You should a little more time reading about it. Among other features, transactions are described by what is essentially a mini scripting language
hosay123··on Documents shed light on U.S. surveillance programs
If they had any clue they'd just watch traffic to Google Analytics and instantly have something like 75% coverage. Or maybe they already do that.
hosay123··on Torsploit takedown: analysis, reverse engineering, forensic
I hear a "shooting star" was seen the night of the Tunguska event. The fact this shooting star showed up just prior to an enormously powerful explosion suggests the allies had nuclear weapons in 1908, and that they were supplied by aliens from another world.

For any given series of boring events, the most fantastical explanation that ties them all together must obviously be true.

hosay123··on Torsploit takedown: analysis, reverse engineering, forensic
As much as I love drama, the notion that the NSA would hardcode a registered IP address of their own into some malware and use that to attack some very publicized network affecting thousands of users.. well..

As another comment points out, why bother when you already coordinate a massive sniffing effort affecting large chunks of the globe?

hosay123··on Strict Posix Nonconformance
Cute, it doesn't even try to use the race-free O_CLOEXEC variant, which was introduced "only" 6 years ago. http://www.eglibc.org/cgi-bin/viewvc.cgi/trunk/libc/sysdeps/... is the trunk version. Seems glibc trunk is the same
hosay123··on CoreOS Vagrant Images
I'm not sure how else to respond to "let's reinvent a complete Linux distribution because we've written a 20 line auto-updater".

This would have made sense to me a decade ago, but back then I just wouldn't have understood the amount of work involved. You simply cannot produce a fully generalized container OS without producing a fully generalized OS.

That aside, I actually like the central idea of a better approach to managing/updating a large group of host machines. I just don't think it warrants yet another bikeshedded support/security/certifiability nightmare (and lets face it, this is bikeshedding, there's absolutely no value in the core claim of "it's just Linux", but it gives unfettered license to reinvent the same old wheels all over yet again).

hosay123··on CoreOS Vagrant Images
Yes, and ideally Microsoft Windows should be open source and IBM OS/360 would have a build supporting Firefox running on my Nexus One, but that's not how the world operates..
hosay123··on CoreOS Vagrant Images
Try telling your SAN vendor that you're running "just Linux" and can you have a driver and support package for that please, and let us know how you get on.

When you're done there, now try plugging your nice new machine into the corporate DC. Oh it seems it needs to support VLAN tagging. No problem, better just write some new code for that.

Time to migrate a bunch of performance sensitive services. Uh oh, no support for FusionIO PCI SSDs! Better write some more code.

Time to migrate your remote sites, only policy dictates certain services must be physically encrypted. No problem, better just cutpaste Debian's cryptsetup scripts and be done with it.

Oops, turns out we deployed 1000 machines with a duff BIOS setting. No problem, I'm sure the server vendor has a support package for CoreOS..

We could come up with examples until we've basically reinvented a modern Redhat/Debian initramdisk and boot environment.

hosay123··on CoreOS Vagrant Images
I don't want to sound overly negative, but attempting to support every useful combination of hardware and drivers, particularly in any kind of supported, certified configuration, ultimately leads back to the same result: just running a real OS.

You can look at CoreOS the same way as the Xen hypervisor and VMWare ESX: the more flexible these became (new hardware drivers, supported configurations, etc. etc) the more they began to look like general purpose operating systems. At which point, why not start with one? (Kvm followed the same logic)

I'd much rather see the guts of CoreOS available as e.g. a RHEL or Debian package. As it stands, throwing away 20 years of distribution experience just to avoid installing a few files on my server seems far from worth it.

← PreviousPage 5 of 13Next →