HNHacker News
TopNewBestAskShowJobs

_ak

1,392 karma · joined February 14, 2011

submissionscomments
_ak··on Universally Unique Lexicographically Sortable Identifier in Go
You just compared UUIDs with ULIDs.
_ak··on Wells Fargo says customers gave up right to sue by having signatures forged
Them going bust is actually a pillar of capitalism. This whole "too big to fail" bullshit coming from business-friendly politicians was just skewing the free market.
_ak··on Sub-millisecond GC pauses in Go 1.8
There was no repurposing, as the context was exactly explained. Only later, the detractors decontextualized the Go team's original statements.
_ak··on Sub-millisecond GC pauses in Go 1.8
The Go developers provided their definition, which is something people conveniently ignore whenever they try to be clever about Go not being a systems programming language.
_ak··on Sub-millisecond GC pauses in Go 1.8
What the Go developers consider a "systems programming language" was exactly explained in the very first announcement/presentation of Go. They clearly outlined that it's for building systems like Google's, not operating systems.
_ak··on Revenge porn: More than 200 prosecuted under new law
What redefinition? Just look at modern definitions of violence, for example that of the World Health Organization. That definition has been around for ages, and is rather uncontroversial, unlike you seem to suggest.

And even if you want to a total nitpicker, from an etymological standpoint there's nothing that suggests that violence only describes physical acts of violence.

_ak··on What Golang Is and Is Not
Fun fact: one of the Oberon-2 developers is also one of the principal developers of Go. Learn your PL history.
_ak··on What Golang Is and Is Not
And where is Algol now? It's dead. Theoretical superiority on paper is worth absolutely nothing when there is no usable implementation for modern computing environments out there.

This article was written to make Go look bad and unoriginal, but it inadvertently proves that Go is Algol's legitimate successor exactly _because_ it has all these features _and_ a working implementation that is available for wide variety of architectures and operating systems.

_ak··on What Golang Is and Is Not
Go has only been published in November 2009. Less than 7 years is now what I would call "nearly a decade".
_ak··on What Golang Is and Is Not
And I teach them Go in a week, or even less. I had programmers going from absolute no Go experience to deploying working, idiomatic Go code to production in 2 days.
_ak··on Reasons not to use Apple
"I'm glad he's gone" is a clear statement about an effect of his death.
_ak··on Reasons not to use Apple
Or maybe they just talked to no-nonsense lawyers that don't just have an agenda of pushing forward the GPL.
_ak··on Crystal: Fast as C, Slick as Ruby
Go's GC has a single setting that can be tuned: https://golang.org/pkg/runtime/debug/#SetGCPercent

And yet, it performs great, including predictable STW latencies, all with a relatively simple and straightforward algorithm. With that in mind, the Java GC's manifold ways of tuning the GC in all its aspects for minimal performance improvements sound more like something that was purposely built as something people can build their livelihood upon by providing consulting services, rather than something that was built for the best performance possible for everyone.

_ak··on I Love Go; I Hate Go
The authoritative source is the Go source code. Read it, it's relatively easy to understand, and fairly obvious that the STW mark termination phase goroutine (like any other goroutine) will be preempted after forcePreemptNS (which is 10ms), and if that happens even though it hasn't finished its work, it transitions to a concurrent task, and resumes later.

If you're interested in the finer details, I'm sure the GC talk at golangUK later this month will discuss them all, and the slides and/or videos will eventually land here on Hacker News.

_ak··on I Love Go; I Hate Go
Well, the latency is capped at 10 ms, the STW phases will stop at that limit. So that guarantee can be kept as long as your memory allocation throughput is low enough so as not to trigger a GC run more than 20 times a second. Which is pretty good. There aren't that many GC implementations in production that will give you a guarantee of the same or similar quality.
_ak··on I Love Go; I Hate Go
40 ms mutator time per 50 ms time window. That means that your program will never be interrupted for longer than 10 ms within 50 ms.

In practice, the STW mark and sweep phases are in the sub-millisecond range, and the GC runs not nearly as often as 20 times a second, so 10 ms of interruptions per 50 ms is the absolute worst case.

_ak··on I Love Go; I Hate Go
> The most frustrating thing for me, by far, is that Go won't let you import unused packages.

If you want to explicitly import unused packages, you just prefix it with `_`, like this: https://play.golang.org/p/ltfQgco22t

Remove the `_` in the import of `crypto/rand`, and the program won't compile anymore.

_ak··on I Love Go; I Hate Go
Do you even know Go's GC guarantees?
_ak··on Proposed New Go GC: Transaction-Oriented Collector
Have you tested it with the GC improvements in 1.6 and the 1.7 beta? If so, did they have any impact on your program's performance?
_ak··on The Sad Story of Heisenberg's Doctoral Oral Exam (1998)
One of the reasons why the German atomic project was so much behind because there was no concerted effort, but instead several competing organizations (Wehrmacht, SS, Post ministry, possibly others) that didn't have nearly enough fissible material in the first place.
_ak··on Fraudulent Advertising on Facebook
Ha, that reminds me of the cas where one of our advertiser's creatives kept getting disapproved by Google's creative approval process. The ad was for a family hotel somewhere in Germany. It took a while to find out why the creative got disapproved. After quite a bit of back and forth with our technical account manager, they finally told us because the landing page contained the word "casino". Except it's a German-language website, and in German, that word can have different meanings than just being gambling-related. And that family hotel most certainly did not provide any gambling facilities.
_ak··on Prison phones are a predatory monopoly – One family fought back and won
It's real-world capitalism thought through to the end. You can monetize any service to anyone, even more so when there is a lack of a proper free market in certain niches.
_ak··on The German reference letter system
This also goes the other way around: my boss mentioned an HR system in our company where he can grade employees and the system automatically generates reference letters using that particular formulated reference letter jargon.
_ak··on WhatsApp is back online in Brazil
Facebook refuses to cooperate with German authorities when it comes to investigating and prosecuting death threats through their platform, while at the same time, they want to do advertising business in Germany. They'd simply like to have all the money and none of the responsibility and accountability.
_ak··on New Evidence on When Bible Was Written
That's not the point here. The point is whether the Hebrew bible is simply a transcript of tradition and religious beliefs that were previously transmitted orally, or whether some people wrote it Hubbard-style, with the express intention to scam and defraud people. Since stylometry has shown us that it is a document written by many authors over a longer period of time, and since Judaism was very much a tribal religion then, the former is much more likely. Then, there's no point in deriding the Hebrew bible as "just a made-up thing", since it served an important socio-cultural function, so strong in fact that Judaism managed to survive as a religion and culture to this very day, while most other cultures and religions of the bronze and iron age have long been forgotten, or have been assimilated or superseded by others.
_ak··on Apply HN: Wanderlust – Travel recommendations based on your budget and interests
> The majority of traditional online travel websites (e.g. Booking, SkyScanner) work under the assumption that you know where you’re going. But what if you don’t know this?

Actually, lots of online travel agencies and aggregators have a "discovery/inspiration" phase in their overall booking flow. At most you can say that they're not doing it that well because you didn't recognize it as what it is. Or maybe they are doing it well because the user is just led through their flow and gets interested in certain destinations without realizing he's being influenced.

How much research have you done what existing travel websites have done in these regards?

_ak··on Wire of Death
"To the German authorities it was officially known as the Grenzhochspannungshindernis ("High Voltage Frontier Barrier")."

How German. And by that I don't just mean that it's a long word per se, but also the bureaucratic, almost euphemistic, but also overly precise wording. Informally, people would simply call this an "Elektrozaun" (electric fence).

_ak··on How good is your French accent?
Télécopieur is one of my favourites, it's the fax machine. The fax, i.e. the piece of paper coming out, is the télécopie. Tele-copy, that's something I can get wrap my head around, it actually is a better derivation than from Latin facsimile.
_ak··on The Way of the Gopher: Making the Switch from Node.js to Golang
If you didn't want your comment to be misread, you should have been more specific after the "another".
_ak··on The Way of the Gopher: Making the Switch from Node.js to Golang
...what? The point is that when any function in Go is blocking, it will obviously block the current flow of your own program until it returns. But it only ever blocks the flow of the current goroutine. Other goroutines will continue running just fine, and the runtime will schedule all the ready-to-run goroutines over the OS threads it has available, and that's nothing you need to take care of in your Go program. It essentially abstracts away what Node.js does in its event loop and the programmer does by manually splitting up the program into a series of function callbacks. Just use that knowledge to structure your program accordingly, and don't tried to badly reinvent futures.
← PreviousPage 2 of 14Next →