skysight-inc/HackerNews huggingface dataset:
If I understand it correctly one does not write code in a data structure, which makes it not 'homoiconic'. Second macros are limited:

Robert Virding says

> What I mean here is that elixir has a predefined syntax. It has a number of predefined syntactic constructs, operators and function calls. And while I can with macros change the meaning of the constructs I cannot add new constructs or operators as the handling of macros is done after parsing. So if I want to add something completely new it ends up syntactically being a function call. Now elixir has many ways of disguising function calls at the end of the day they are syntactically still function calls. For example parentheses around arguments are optional, there is special syntax for property lists where the keys are all atoms, special syntax for using these property lists as function arguments, special handling of do ... end when it is a function argument, etc. Elixir's uniform abstract syntax makes it easier to work with these but I am still limited by only having the existing syntax.

> For example assume I work a lot with property lists where the keys are integers, or I would like to have keys with are either atoms or integers, then there is no way for me to create a special syntax for this at all. Even if I have macros.
Twitter must make money, because it is unprofitable. Adding more users or even keeping existing users doesn't necessarily translate to that. They probably need to more fundamentally rethink what they're doing rather than just make more people willing to install the app.
The Story of Tilt: How It Veered Off Course
brown trombone? is that a thing?
I have read a lot of articles about learning functional programming to make you a better programmer with conventional OO or imperative languages - but this does not make sense to me.

The argument is "learn these concepts that are not available in other languages to make you better at those languages". Can anyone explain?
Ask HN: Anyone interested in creating board game AI?
I've been working on a new company (http://bostonboardgame.com/) and I'm looking for someone to help write or consult on creating board game AI. I can give you the pitch if you are interested, I have game publishers lined up for what we are creating, I'd be willing to pay cash straight up or equity if you want. Email in profile
If you forced the AI to work with a substantial input lag, it could be quite complex yet still possible to defeat.
So far the only real instance of a big company abandoning Scala has been Yammer, so this is a mistaken impression. LinkedIn and Twitter are heavily invested in Scala.
> Why is this a service instead of just a library I can link and use however?

Because every language will be implementing and providing their own, often per compiler-release, and if you need to link up to get support, your editor will be limited to support only those who was built in.

It's a protocol. If your editor speaks it, it can speak it to all the servers (all of which are local daemons).
Could they presumably write it as a non-native app?
Would there be any issues with that?
Presumably the "chrome" around a webpage isn't particularly intensive?
Personally I think they're great for development, but less great for learning. The advantage with something like Haskell is that it forces you do to things the 'right way' every single time and puts all the functional concepts right at the forefront. Once you've internalized the concepts then you can easily go onto other languages and bring those concepts with you.

While I haven't really written anything in Haskell since leaving school, learning Haskell has informed (and in my opinion improved) the way I program in every language more than basically anything else I've done.
It's not really free.

It's free in the sense, that you can browse around, but if you wanted to do some analysis on it, you would need access to the raw bulk data, and this is very expensive.

There is free aerial imagery data available (e.g. ESA's Sentinel-2), but it has lower resolution (10m/Pixel). If you want to do the 3D building thing, I estimate you need data with something like 1m/Pixel and from different perspectives. This data volume is rather big (Exabyte-scale) and it is non-trivial to host and access it, so currently only the big players have it.
> AI-vs-AI street fighter competitions

http://www.saltybet.com/ does just that.
Oh yeah OllyDbg, such a versatile RE tool at the time. SoftICE was nice and all, but OllyDbg was definitely an evolution when it comes to user-mode debugging.
I'm still flabbergasted by how we (all) could let Intel ME happen. It's, imo, one of the real Damocles' swords above our heads.

This in itself proves one of my previous points, Intel has no serious competition, even the big industrial players can't bend Intel.
Core disabling and under clocking are what's known as "product binning" and it's why you have 4, 6, 8, and 12 core CPUs. Tesla GPUs are probably the cream of the crop but they're still cut from the same cloth.
All the EU27 get a veto on the deal. Spain just got a sentence inserted in the official reply.
>Interview processes and resume writing are more important to them than actual knowledge.

No surprise there! Look how much content on these forums is about, implicitly or explicitly, gaming coding interviews.
They're probably all gouging each other where in the end the retail patient with no insurance suffers bankruptcy.
, as a senior manager.
I believe they try. I don't believe they always succeed.
It seems like it would be a good idea to have some kind of sub-patent, time-limited exclusivity granularity. For purposes of saying "I recognize that you are providing value to me as the patent holder by doing something with the patent that may not merit its own patent, but should nonetheless be encouraged (for my own gain and yours)".

Like a sub-piggyback patent that automatically includes licensing of the parent.
Snapchat introduces its biggest feature into augmented reality
[Illinoi's 4th congressional district][1] was called the "earmuff" district because of its usual shape. It joined two predominately latino communities with a narrow strip of the I-294.

But not all weirdly shaped districts are bad. Between the two latino communities in that area, there is a predominately African-American community. By joining two latino communities together into a single district, it ensured that they had a representative serving their interests. This district in particular was featured in [a recent LastWeekTonight episode][2].

[1]: https://en.wikipedia.org/wiki/Illinois%27s_4th_congressional...
[2]: https://youtu.be/A-4dIImaodQ?t=684
not a bad point, but I think web standards and open web apply to most content. if you're pushing the envelope in what a browser can do for a flagship product, that becomes exponentially hard to support.
I wish someone would one day write a more objective article, such as "Why some aspects of functional programming are useful while some other aspects are an inconvenience to produce good code".
Neither of these things were done the first week of his presidency.. He started in January, it's now April, which is when these events happened...
I just attempted to open a 2MB file in gedit and it took about 25 seconds to load enough to click into some text. Attempting to edit it did not go well and the process effectively hung.

I opened the file in intellij and it's performing admirably but there is noticeable lag when entering input. Keep in mind that features were disabled automatically due to the file size.

2MB may not be very representative for all files, but when having to jump into generated protobuf class files I've certainly wished my IDE could handle the load. I can't tell you what data structures these IDEs are using internally though.

And, again, the fact that features had to be disabled in intellij really says a lot. With more power, you can have more features, you can get feedback faster in your IDE, you can have more linters, more plugins, etc. That's a huge benefit to having fast software. Performance is enabling.
With Uber the driver can sit in his middle-of-nowhere house (or work on his garage, yard, etc.) for those 40 minutes with his driver app on, and get in his car only when the app alerts him that he has a fare. This will take the driver to a central location where there are short waits and frequent fares.
Missing genes point to targets for drug development
> Workers cooperatives were a big thing back in the heady days of the early 1800s. Most died out fairly quickly but a few caught on and lasted for a good while. The story was the same throughout, the cooperative eventually ossified and could not retain the magic in the face of broader economic change.

Ossification and failure to remain vital in the face of changing market conditions is a pervasive problem for businesses that become established, not something special affecting labor coops.

OTOH, Mondragon still seems to be going strong.
When it comes to publicly-traded companies, it probably would be because they're required to make specific, comprehensive disclosures about their income and spending on a regular basis. Governments, especially local governments are much less consistent about such disclosures.

It's also reasonable to expect that a government that is elected by the public and funded by taxation provide an accounting to voters and taxpayers.
That's less of a conspiracy and more of an obvious observation.
You're more of an insider than I am, so thanks for the perspective. Stuff like "segments" and help when things go wrong certainly sound compelling.
$!0M relative to the size of the federal budget is infinitesimal.
Angular Mobile Development – Order Mobile Developing AngularJS
"Username checks out" - London's a bubble.
I know it's just anecdata, but from my experience, Haskell forces me (due to strict control over side effects) to write really short functions. And while that can be harder to do when you're writing the code, it seems to really help readability, testability and reusability.

It's not like you cannot write short functions in other languages - you can - but it's often too easy not to do it.

It would be nice to have some empirical evidence for this, unfortunately I am not aware of any.
Check out the Communications Museum sometime - no phreaking exhibit per se, but much more in that direction. It's closely to Living Computers, in Georgetown. http://museumofcommunications.org
The ability to show photo hotspots on the map and look at the photos was really handy for planning trips to unfamiliar places (or even familiar ones, really), but AFAI can tell it's gone now. Seems it was part of some service they bought, integrated, then killed.
"The real question, she said: “Can you attract the future stars into this line of work?”"

Yes, but perhaps only the next, and not this, generation of future stars, after supply and demand forces have worked themselves out.
RubyGemsAndroidApp: It always feels great to do something for the community :)
> I swear Electron is incredibly fast in every instance I've used it

That's really surprising to me, I've had completely the opposite experience. Just resizing a window shows how slow it is to repaint and scrolling is often pretty poor too, and this is on a moderately powerful desktop machine. I really hate to think how it'd cope on an embedded device with an ARM processor. There's a marked difference to me between Atom and e.g. Sublime Text.

> I'm currently working on a Mail application and my benchmark test case is an email account with 20,000 emails to be displayed.

Is this benchmark open source? I'd be really interested to try it compared to something similar build in Qt or Gtk+.

> Even if you need to do complex algorithms, just write that particular part in C and use it in the rest of your JS code like normal.

This might speed up complex background processing, but the fact remains that the UI is built on the DOM with interactions handled by JS. It's just not ideal for a desktop application.

With all that said, I totally understand why a lot of applications are built with these sort of technologies. It's much easier to build a cross-platform application than anything else. The price you pay is that the UX is poor.
Like fingerprints face recog is riddled with unknown and known weaknesses. Placing such a low bar in such a place where the highest standard of protocol should be used, seems like folly to me
Chrome-only and that's if there's no bug. I have the latest version of Chrome on Ubuntu but my GPU (GTX 960m, latest drivers) is blocked and the --ignore-gpu-blacklist flag doesn't work.
Has anyone got the invitations for summer 2017 batch?
Theranos gets wrist-slap fine, agrees to do no clinical lab work for two years
Thanks for your amazing contribution to the discussion.
It's 7 am PT and I haven't got it yet
If this was going to happen, it would have happened during the peak of "Grexit" talk about Greece. Greece were doing incredibly badly out of the EU at that point, far worse than the UK could ever be said to be experiencing, and decided not to leave. That's why I don't think further fragmentation is likely, and the banking system has been shored up.

French exit would kill the EU, but I think we'll see another narrow defeat for Le Pen. But I could be wrong there, it's volatile.
> Maybe this has been said already, but one major problem with Twitter is that by default, the average person will publish and share content on it that's a complete waste of time and of no value to anybody.

The same can be said about most social networks.

> The average unit of content shared by a user on Instagram or Snapchat is vastly more entertaining and relevant, and I think they achieve that by being more visual. Those platforms are image- and video-first, and they have all kinds of image and video filters. If we gave those tools to a monkey, it would produce something worth sharing.

I would disagree and also call this "a complete waste of time and of no value to anybody".
Kind of the same thing everyone's saying here isn't it ? Not being driven guarantees failure, but there's just no way to guarantee success - although to a certain extent being driven does guarantee success. It just won't necessarily make you CEO or president or some such.
I think the most apparent example is that people recognize patterns like `fold` and `map` everywhere once they've seen functional programming.

This can be implemented in any language I guess. Most often you'll see explicit & imperative loops being refactored to shorter, descriptive code with anonymous functions, folds, filters and maps
Bravo Mr. Ballmer. Now lets get all government financial transactions on the block chain...
I've seen an number of papers focusing on the mathematical side of things. While I'm not a PL researcher, it does seem to me that math is the universal language and it seems reasonable to focus on that rather than non-sense concepts like objects.
I don't understand. If you discover that a restaurant that you patronized (as a paying customer) gave away some food, would that outrage you?
Nice read.

It is interesting to speculate (I wasn't an active programmer then) that this is what the world looked like before TDD.

There may not have been unit tests. Your automated test coverage might have been 0%. So when it came to knowing whether your program worked - you went in and broke it.
Apple TV has this as a screensaver option: http://benjaminmayo.co.uk/watch-all-the-apple-tv-aerial-vide...
Designing a flexible data warehouse for mobile games based on Hadoop
What you say is true, but the flip side is that scientific research on programming language effectiveness is a very small field, and it's unlikely the academia will be able to do the large scale studies that are necessary to establish meaningful results. (For example, no sizeable project is going to be built in two different languages just to gather evidence for a research study.)

Without rigorous evidence we're left to argue from theoretical models / principles and anecdotal data. This is still useful. It would certainly be more useful to have rigorous empirical results to back up the claims and validate the models but we, as practitioners, have to make decisions on language choice now using the available resources.
> Does article contain references to any enpirical evidence that particular language features or programming idioms have a benefit?

The kind of empirical evidence you are asking for is extremely expensive to provide. Even if you conduct a massive controlled trial, experiment will have several biases which will invalidate any conclusion. As an exercise try looking for scientific evidence that programming in Java is more efficient than programming in assembly. No scientific evidence for this exists. Yet most of us would never choose to write a web service in assembly! The only evidence that can be provided are discussions and benefits of particular features and anecdotes.
It's basically the C++ of the 21st century.

Designed to replace and address flaws of an older language but ends up being huge and unmaintainable, with very questionable design decisions and a tool chain that's simply not up to standards in the 21st century (slow compiler, poor IDE integration that keeps breaking version after version, etc...).

In C++, some of these design decisions were driven by legacy pressure but in Scala, a lot of design decisions were driven by the pressure on the team to write research papers. Either way, both languages end up being monsters that implement all known programming language features known on Earth.
Better Key-Value Coding for Swift Accepted
This is really dumb. You're asking a bunch of simulations whether or not they believe in some fact which is essentially pure metaphysics. Doing statistics with metaphysics is very close to Nazi-level abstraction of human beings. Pretending that you are going to get sympathy for your Nazi wet dream...not likely.

I'm going to make sure you know why "Nazi wet dream" is an appropriate name for this work. You have decided to slice and dice human beings a la Phoenix Program. Cut them up and make numbers and watch them try to put their lives back together.

Absolute pure evil. Keep in mind this fact: the most evil civilians on planet earth look at spreadsheets full of numbers all day every day. Those numbers are used to rip the lives of other people apart, and this evil psychopath justifies this on the grounds that his society lets him get away with a heinous act of abstraction.

Huxley said this about abstractions: "All war propaganda consists, in the last resort, in substituting diabolical abstractions for human beings. Similarly, those who defend war have invented a pleasant sounding vocabulary of abstractions in which to describe the process of mass murder."

This is war propaganda suitable for justifying mass murder.
Funny you mention Hack! It is written in OCaml ;)
Google sure spends an incredible amount of money making their UIs worse (and usually increasing memory use by a large multiplier at the same time).
I will skip the tech stuff and go with a top hobby:

Advanced Marathoning, 2nd Edition - Pete Pfitzinger, Scott Douglas

It's heavier on the biology and human kinetics in a way that I don't need a bachelors in a hard science to understand and is quite well known now to serious runners. I read it every year as a motivator and to reinforce the importance of training smart.
Sorry-- our servers are getting hammered right now. Team is working on a fix.
Ask Jessica Livingston: If Founders at Work were written today, who'd be in it?
First of all, sorry for the medium, but I think it is fair enough for YC community to take part in this conversation.

I've just packed the book to my upcoming 24 hours flights (2 connection stops) and looked at the list...

As we observed so many successful startups in the last 12 years or so, let alone YC companies, I wonder who are the founders you would have find inspiring to interview for the book.

Being at there, I wonder, is there a chance we will get a "second edition" in the foreseeable future?

And you guys and gals, HN readers, do you have your own list?

(The title was rephrased many times to fit into the 80 char. limit)
This has got to be the best looking website our government has managed to create.
> I think people that follow a lot of accounts must use lists or something else.

What I have done is use Twitter as a real time newsfeed, and do not read all the tweets I missed. I open twitter and look at the current tweets, possibly scrolling back a few hours. If I missed something, who cares. If it was important it will likely show up here or some other aggregating new site I frequent.

Twitter is also great for real-time reactions when watching an event on TV. It's akin to people watching the Super Bowl for the commercials. For some shows, the tweets are better than the show and offer an additional level of entertainment.
Do you have any empirical evidence that any particular language feature or idiom have a benefit?
Why Quality Content in Digital Marketing Is Crucial in 2017
Curated list of awesome games made (quite) entirely by one person
Hi community,

I have been working on a comprehensive list of games made by one person. So far, I have something ready you can find on Github :

https://github.com/Yonaba/awesome-one-person-games

Comments and contributions are welcome to make it an awesome list.

Thanks!
Erlang has pretty much zero features usually associated with OO, which is not surprising since Erlang's creator once wrote "Why OO sucks"[1].

[1] http://harmful.cat-v.org/software/OO_programming/why_oo_suck...
As someone who loves typed functional programming and has used both Scala and Java, I oddly prefer Java; it's much easier to reason about. I find Scala almost impossible to make sense of due to the language's complexity.
Use Kotlin with npm, webpack and react
In a literary sense, there is probably not a Java equivalent to The C Programming Language because it was written at a time when the primary way of telling people about new programming languages was dead tree books and the primary way of distributing new programming languages was magnetic tape. By the time Java was created, network connections and CDROM's were standard. Also Java was a commercial product backed by for profit training and workshops and support.

Anyway, the formal introduction to Java is the specification produced via Java's consensus process. It's all there. Everything. If it isn't there, it's a bug.

https://docs.oracle.com/javase/specs/jls/se8/html/index.html

Good luck.
Also just tried it on my Mac as well just a couple of days ago, and was pleasantly surprise. I am using it to do python and Javascript tom foolery at the moment and found its support for these two language to be quite good.

There are some quirks that I need to get use to, ie when searching, I had to click on the left and right arrows to go to the next found items. Intuitively, it should be the up and down arrow, unless the found item is literally on the left or right of current position of your cursor.
Read the book, _type_ out all the examples, work the extra credit. Left right left right, there are no short cuts, march on through it
Facebook/WhatsApp is using erlang for their messaging backend. Erlang itself was invented at ericsson labs, they are one of the biggest suppliers of telco backend equipment.
Even mining is in the process of reducing the number of people needed at the mining site by moving to autonomous control from a central office.

For example, http://www.abc.net.au/news/2015-10-18/rio-tinto-opens-worlds...
I can't put my finger on it, but this phenomenon makes me profoundly sad for reasons I cannot fully elucidate. Maybe the notion of documenting the experince in place of actually having the experince. Maybe the feeling of all these lost people, posing with all their money and might, for the acceptance of others, all based on a snapshot. Sure, it becomes a self-sustaining lifestyle if you do it "good enough", but where is the fun in that? I want to live a life I enjoy, not just project that image.