skysight-inc/HackerNews huggingface dataset:
If there were GOOD language then all other languages will be dropped. Every language has its own disadvantage, but it doesn't mean its not good, thats just trade-off.

For me main selling point of golang is small lightweight threads with event loop. You write sequential blocking code and you get concurrency built in.
" I've never seen someone going "cough cough urgh" at a fog machine at an event or disco - and it's the same damned stuff."

That's precisely why I don't go to discos or theaters that say they are using fog machines.
im seening a lot of variants such as .io and .co around, what do people think about these, and others like them.

or is this all just to push up the price of .com, when in fact, there are a lot of new top-level domains appearing.
Also in web dev, Apple products. Because that is the one platform where you can make something for every other platform, i.e linux and windows.
5 vital things every entrepreneur must know
Yeah, I suspected it was old when the Rust version used was 0.11...
I guess I misspoke. I was thinking more of looking beyond/away from Facebook rather than looking for a Facebook replacement.
Did she? Maybe I'm a bit more sceptical, but what did she actually achieve?

1. She failed at putting Yahoo back on the map. She spent billions on acquiring businesses that bring in close to no revenue. Maybe it's a great place to work, but if there's no money coming in, it won't stay great long.

2. She failed at financial engineering; she couldn't even get a tax free spinoff through.

I would've been happy to cut her some slack if she did one of these things right, and messed up the other one. Some people aren't meant to be product people and others just aren't financial engineers. But this is basically throwing in the towel.

Don't forget, this idea of a reverse spinoff didn't come from Marissa. It came from an activist investor, who are basically, master financial engineers.
I was worried about this part of Lewton's comment:

> And when I smelled it I thought "Someone's really hitting that BBQ!"

This implies that there is some serious crap in the vapor, so that you can smell it from the distance (and it smells like BBQ).
I've used Go for a few projects and I think that people who point out all of the things that Go doesn't have and Go doesn't support misunderstand the language.

The problem is that most big languages today are hammers, and they can are used to hit all sorts of nails to fasten all sorts of unholy planks together. Go is a screwdriver. Still good for construction, but you need to be using it in the correct way and you can't wail away at the problem the same way you're used to. Hammer people try to pound the screw in and get frustrated at the resistance they encounter. Perhaps they should instead ask themselves why the choices have been made, what possible benefits come from using a different tool. And you know what, maybe they just prefer hammers. Nothing wrong with that.
How Stockholm Became a 'Unicorn Factory'
I understand that people who have not upgraded risk being cut off from the web, but I can't help but wonder if this action compromises the safety of everyone else just to save those people. If there's a state which can forge a SHA-1 certificate for MITM, how hard is it for them to abuse this fallback feature to compromise modern clients?
And you're suggesting that nowhere in what used to be called the C++ Standard Template Library is there a place where they didn't have to come up with a naming convention for functions?

I think you may have the causality swapped here; I think <algorithm> looks the way it does because they limited themselves to things that could be easily expressed with operators --- for a long time, to the detriment of the language; see: STL associative containers, operator<, and the longstanding lack of a standard hash table.
Please let's not make personal attacks.
The Oberon and LISP machine people would disagree given they wrote whole OS's and platforms in GC languages. The trick is to support manual control & unsafe where necessary. I know it can work for Go with small changes because it worked for Wirth languages that Go was based on.
Not really. Already hosted packages like Boost, Zlib, OpenSSL, ZMQ, Protobuf are packaged and hosted without changing a single line of their respective build, and with just a single conanfile.py to define the packaging. The build systems of those libraries are heterogenous: Cmake, B2, perl+nmake... The build system is just wrapped by the conanfile.py. Those conanfiles can be also in a separate repository and retrieve sources from any origin as github, so not intrusive at all.
Orchestrating ALL the Things Watch the Video of My Talk at #VelocityConf
> Any critique of Go seems to be met with angry pitchforks in this place.

You can say that about any language. The people that like the language will always defend it. e.g. PHP, C, Ruby. They all have flaws and yet when one talks about their shortcomings, the people get defensive.
Looking at the "what links here" page, the "quantum computer" is probably there as a stop-gap definition because the term is used at "Quantum compressed archive".[1]

Any successful wiki will have a problem of demarcation; the initial signs being that people add whatever they want, including ramblings like Two cows. [2]

If the project goes along, taking Wikipedia as precedent there will develop two "inclusionist" and "deletionist" cultures that will fight over the definition of what the project should cover, but which would get rid of these extreme cases.

[1] http://fileformats.archiveteam.org/wiki/Quantum_compressed_a...

[2] http://fileformats.archiveteam.org/wiki/Two_cows
How is that not backwards compatibility?
Year one: progress in the fight against Unwanted Software
I don't think every language needs to be rigid - something like TypeScript's gradual, unsound typing can be very valuable, and I certainly think there's a place for a language where casting is easy and idiomatic. But you can do that and still enable generics, covariance and the like - as TypeScript in fact does.

What's incredibly infuriating to see a language that clearly has everything it needs to offer generics - indeed it clearly has a generics implementation already written, since the builtin types are generic - but it won't let me use them.
​Container powers reach technical governance agreement
The Navy’s new, futuristic destroyer Zumwalt is finally at sea
I also forgot about this one. Good too recall. Especially now that algorithms dictate more and more our lives, are still not (usually) public.
MicroSoft made a major bid for Yahoo several years ago, but Yang want more money. MicroSoft hoped there would be synergy between combining MSN and Yahoo.
carlob meant to write a single * there, which became italics instead. Point is that Times is the actual 'FullForm' for multiplication, the and * is syntax sugar for it.
Used Yahoo paid email for several years in the 00s. I've not used Yahoo for anything else. Never did understand what is their business model.
Wow, I did not know about this. Thank you for the link.

As sibling poster points out though, there still ought to be an error in the numbers as written, as the second is smaller than the first, but the context of the text implies that it should be larger.
Thinking of the negative space generated by the space-filling algorithm rather than the individual shapes might help see the fractality. This link uses a similar algorithm and discusses measuring fractality of the output http://paulbourke.net/texture_colour/randomtile/
It's still an issue, because as far as the type system is concerned, every reference type can still be null.

Optional gives you a way to avoid using nulls, but null is still in the language and libraries still use it.
You should give emacsclient a try. I start emacs once when my computer starts up, after that, emacs is instantaneous. I use projectile and neo-tree to customize my workflow, so I rarely need to leave my editor to switch projects, etc.
Then good that it stopped years ago:

https://golang.org/doc/

>>>
The Go programming language is an open source project to make programmers more productive.

Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
<<<
Rethinking the Role of the GRE in Astronomy Graduate Admissions
The balance of people on HK shifted from entrepreneurs to wageslaves, so the content shifted accordingly. No offense to anybody, currently a wageslave myself.
Why it’s so hard to afford a rental even if you make a decent salary
FWIW, I've been married 12 years with no kids and your response to this comment was absolutely spot-on and the response I wanted to make when I first read it. You said it much more eloquently than I would have.
Good point! Some reasons:
1) large and international community of players meeting and playing all the time, both in person and online

2) its a game you can play at every age, so your investment in the game pays off over your lifetime

3) all your games can be easily recorded for future analysis

4) fun for hackers: there's lots of software to analyze and manage your game history

5) also fun for hackers: there are massive databases of games at every level

6) hundreds of years of published analysis that will become interesting as you get good

7) playing well requires you develop and exercise a wide range of cognitive skills

I'm going to a tournament tonight at my local club. I'm terrible (USCF 1224) but playing is a rush.
Any large organic molecule you burn will be carcinogenic. That includes nicotine, any plant, and any paper you wrap it in.
The name was from a much more optimistic time in the history of the Internet, when everything was shiny and brand new and less slick and calculated.
Agreed...

Exhibit A (https://bitcoin.org/bitcoin.pdf)

This paper, and the technology it proposes, are as eloquent and ingenious as they come.

Exhibit B (from one of Wright's blog posts in the Wired exposé)
"Well.. e-gold is down the toilet."

The telltale 2 dot ellipsis... Imagining this semi-literate blowhard writing that paper is a real stretch.
Can we get over "it doesn't have feature XYZ"? Everybody knows it doesn't have generics and that it would be convenient. Doesn't make the language intrinsically bad.

There should be a point where a problem has been talked about ad-nauseum. I think people saying this will fall on deaf ears misunderstand that the Go community has been there, done that. We all know it, we'd like to have it and the Go team knows about that, and they stated why it's not there yet (because the tradeoffs available to them aren't interesting enough to make a decision with either implementation).

Until this changes, I think we can all just get over it.
The author says that "all the problems listed here have already been solved" by Rust and Haskell. Great, so let's stop complaining about Go and use those languages instead.

Go has specifically rejected the complexity that these features introduce, both in the implementation of the language and the writing of programs in it. If you want those features, just use a language that has them. Some other people might not care about those features, and prefer the simplicity of Go, and that's fine too.
The Smithsonian is 3-D scanning Apollo 11 to share with the digital generation
I think 4ela was talking about a technical problem, not a philosophical objection.
Oh, come on. Seriously? Just google "e-cigarette smoke harmful" and click on any of the results.

Here's a random sample:

"Second-hand smoke from electronic cigarettes may be less harmful than their tobacco-laden cousins, but they still release toxins into the air, according to a new study.

For the study, published in the Journal of Environmental Science, Processes and Impacts, researchers at the University of Southern California analyzed second-hand smoke from e-cigarettes and found an overall 10-fold decrease in exposure to harmful particles compared to traditional cigarette smoke. However, they did find a significant increase in exposure to some harmful metals coming from e-cigarette smoke.

Second-hand smoke from e-cigarettes also yielded exposure to almost no polycyclic aromatic hydrocarbons — cancer-causing compounds known as organic carcinogens — that are released into the air as tobacco cigarettes burn. But despite having less harmful organic compounds and an overall decrease in toxic metal emissions, e-cigarette smoke did contain chromium and nickel at levels four times higher than tobacco cigarettes. Lead and zinc were also found in the smoke, but they occurred at levels lower than regular cigarettes."
Streaming Video Is 70 Percent of Broadband Use
+1 on this. Clojure's core.async[0] is the perfect example of an implementation of CSP as a library.

Even JS can be used to implement such concepts via the use of generators[1].

[0] https://github.com/clojure/core.async

[1] https://github.com/ubolonton/js-csp
Argument "that language was not designed for that!" is valid almost anytime anyone tries to criticize a programming language. Go was designed within Google for Google. Where your system has millions of lines of code and thousands of developers work on them constantly. So they thought about three things: compilation speed, memory management and concurrency. Go compiles fast, so you can iterate quickly. This requires giving up most of the compilation safety checks. They can be done by static analysis tools in parallel. Explicit memory management means, you can sometimes optimize this 0.05% memory on your program. This means a lot, when you run your code on million machines. Concurrency isn't hard in Go, but explicit memory management makes it harder than in Erlang for example (in Erlang, you have "share nothing" policy). Go is also very simple, so one developer won't be surprised by other developer using some obscure feature.

That being said. I wouldn't recommend using Go outside of Google, Facebook or Microsoft. It solves problems, that companies and developers usually don't have. If you need always running and quickly evolving software - there is Erlang and Elixir. If you need guarantees on correctness, use static typing from Haskell. If you can resign from some guarantees to have grater control on memory, there is Rust. If you are writing in browser, there is Elm. If you want to easily transition from OO to functional programming - try Scala. If you need to prototype app for your startup quickly - there is Ruby.

Every popular language has its purpose and its trade-offs. Rust isn't strictly better than Go, but with high probability, it is better than Go for your problem.
> Now, implement a function 'average' that can work on any of these three types.

I'm not convinced this is such a large problem that its solution is worth the myriad downsides that operator overloading is chained to. There's lots of schoolbook examples like this, but I've almost never seen operator overloading used well in practice. There's a few examples, like boost shared pointers are somewhat easier to read, but they're few and far between
At this point, operator overloading would simply be another convention, would it not? Your type would not work with mine if I used .add instead. You did not solve the problem of having to get everyone to agree on a convention.
> Operator overloading is consistently one of the worst ideas I see in programming languages

Except when not having it is the worst. Working with BigDecimal in Java is hell because it does not have operative overloading, meaning while you avoid

boostfs::path path("/some/path");
path /= "yourfile.txt";

you get saddled with bullshit like

x.add(x.add(ONE).pow(2).subtract(x))
Ah, I see what you mean. You can see this issue in action in Go's math package, where "Min" is defined on only float64.

I was lumping this in under the general category of the "Go has no generics" issue; without generics, Go can't do this anyway (and the closest solution you would have would be to define an interface Algebraic that specifies functions algebraic types need to support, then implement operations like min and average atop those interfaces). I'm still of the personal opinion that (as other commenters noted) what you gain in being able to define operator+ you lose in boost developers getting clever and implementing operator/= on paths; even if we had generics, I'd personally find a Go-like solution of declaring the function package an algebraic type had to support (via an Interface) preferable.
TeamWave’s Product Hunt Experience: 600+ Registered Companies
Doge-Node
Is this a harbinger for darker times to come? Or is it simply Yahoo's time finally? I think there is still value in Yahoo it's just expectations vs market reality to me are at odds. I don't know what I'll set my grandma's homepage to now.
I never was homeless but I hate christmas. Since I have a good career now I always travel to some warm place during christmas.
Writing in the 21st Century
Sounds like "Monopoly: Regulatory Capture Edition".
Personally I think bitcoin is the move. The long term deflationary nature, the hivemind of sage engineers swarming around scalability, with the end-goal being tiny machine-to machine-payments, and the precision of value that you can achieve make it perfect.
Is Final Fantasy VII Remake really too big to fit on a disc?
I wonder why you're downvoted, but I fearlessly agree: comments about "it is harmful, as this study can reveal" are often grossly exaggerating risks that are extremely minimal and not relevant at all for the typical use case.

Of course, everything can be taken to extremes. Even drinking water can kill you, after all, and the dose is probably easier to get than in e-cigs.
operator overloading is just overriding a base class (interface), plus a special and aribtrary limited syntax, plus compiler optimizations.
Without operator overloading, it's hard to make generic numeric algorithms palatable.

Compare (fake Go-with-Swift-generics syntax):

func Distance<N>(x N, y N) N where N Number {
return x.Mul(x).Add(y.Mul(y)).Sqrt()
}

Versus:

func Distance<N>(x N, y N) N where N Number {
return Sqrt(x * x + y * y)
}

If your reaction is "well, Distance doesn't look too bad like that", I can replace it with matrix multiplication or point-inside-triangle testing. Not having overloading quickly fails to scale.
They may be going private equity then. PE often does more drastic reorganizations than public companies, not having the burden of shareholders and boards. The danger of PE is that sometimes they just use companies as a vehicle to create large debt and convert it into dividends. The remaining company is too broke to continue then.
Did the goalposts not move first with the implied argument that "we ingest this all the time, ergo these things are safe?". They aren't containing just those chemicals.

I'm saying I don't want to breathe any of it I don't have to second hand, and the argument that I breathe liquid smoke at concerts or Christmas festivals is beside the point.

Forget addiction in users who decide to smoke it, nictotine a neurotoxin and exhaling it to people who don't want it in public places is inconsiderate.
Yes, you are right. Without any evidences, our doubts about any claims is total. I was just transposing my belief that people are generally honest and good. Though, I don't have any proof for that matter.
Eh, there's already no language symbols for exponentiation (unless you're really going to overload XOR in which case you're already part of the problem).
Cargo cult, copying what? Go is the evolution of a design that was started before any of those other languages were dreamed up.
Any reason I shouldn't see this as a complicated tax dodge? Simply more multinational pilfering from public coffers? Why shouldn't the Alibaba capital gains be taxed?
On my case I've just installed the 'News Feed Eradicator' extension which deletes all the news feed and replaces it with inspirational quotes. So I have the best of both worlds, I still use Facebook to contact people but I don't see all the bad stuff, I essentially use Facebook as MSN.
The Good: Goroutines, the tools, the standard library, YAGNI to the bone, less testing needed compared with Ruby, Python et c, if you'd otherwise be using one of those.

The Bad: Hard to keep DRY, writing testable code can require a bit more planning that one may be used to, frustrating newbie experience[1]

[1] go command errors if run after installing if you don't configure it (set proper env vars) first, tools that are basically essential to having a good experience with the language aren't packaged with it and have to be tracked down individually (probably someone's written a nice shell script that takes care of that, but it's silly that that was necessary)
They should replace it with a penis.
Scaremongering by who? The tobacco industry? I've not (yet) seen any evidence that they are meddling with the reporting. Who else would benefit from discouraging e-cigs?
http://news.stanford.edu/news/2015/november/tricorder-device...
A huge variety of other languages have successfully implemented generics. The Go team seems to be looking for some mythical ideal solution with no tradeoffs, and will therefore never do it.
> I think the way Go addresses concurrency is simple and straight-forward. It's trivial to write concurrent applications.

Yes, CSP[0] is a very interesting concept. But it's not something unique to the go language.

[0] https://en.wikipedia.org/wiki/Communicating_sequential_proce...
Useful tools and resources for developers
Ever wrote a big program in python? Then you know it works at runtime. Not at compile time. Go comes with more typesafety while being a bit more verbose. Its a tradeoff.
I had a different interpretation of OP's post. Phrases like "put the success of the marriage above their individual successes" and the like are more of a sentiment than a prescribed behavior. It's like telling your spouse "you're more important to me than my job". On the one hand, in my case it's true - my wife is more important to me than my career in a general sense - but on the other hand it's not like she's making me abandon my career to, like, wait at home and fawn over her or anything. But if that prioritization actually caused me to make sacrifices where I'm no longer happy, then that's more of the "path to misery" IMO.

You can have a feeling of love strong enough to believe your spouse is the most important thing in your life, without being codependent. The codependency comes from the outcome: does this feeling cause you to abandon your own needs? To abandon your own pursuit of happiness? If not, maybe you do actually love the person deeply and you don't need to go worrying that you're in some dangerous, codependent relationship.

Full disclosure, happily married 9 years now.
Go is good enough when you're switching from Ruby to Go and all you do is build web-applications.

* Its forced syntax stops syntax wars.
* Compiling down to one binary makes deployment easy.
* Its has concurrency out of the box.
* Its insanely fast.
* A strong community to hire developers easily enough.

Does Haskel/Rust have the same criteria? Shurgs
> Everyone knows the risks

No, they probably don't. People don't know that smoking is the leading cause of erectile dysfunction; or that smoking is linked to penile cancer; or what the actual risks of lung cancer are.

People just know that smoking is harmful, but they laugh that off with "I might get hit by a bus tomorrow".

> Or do you think we, citizens of third world countries are all illiterate know nothings who got tricked by tobacco companies?

It's not about citizens of developing world being illiterate know-nothings, it's about tobacco companies being abusive manipulative arseholes who lie and who have millions of dollars to fund those lies.
Cortana available on iOS and Android