skysight-inc/HackerNews huggingface dataset:
I memorize a certain algorithm/code snippet and recall it while driving. My favorite is Paul Graham's ANSI Common Lisp[0]. From the code snippet, I choose a certain function to recall. It would be hard at first (I suppose that only few that can) but once you've repeatedly recall those functions everyday then you'll be amazed on the benefits when you've got into the flow. I got this idea from reading about Richard Feynman[1] that cause this to divorce with his wife since he is doing calculus in his head while driving: the appointee's wife was granted a divorce from him because of appointee's constantly working calculus problems in his head as soon as awake, while driving car, sitting in living room, and so forth, and that his one hobby was playing his African drums.

[0] - https://sep.yimg.com/ty/cdn/paulgraham/acl2.lisp

[1] - http://gizmodo.com/5916502/richard-feynmans-fbi-files-make-f...
How to make your software 5x faster

Step 1: Have it be 5x slower than necessary

Step 2: Fix it
> They're stupid

That's literally just your opinion, users find them useful and convenient.

> don't add any value

1. they provide user value, that's why they were integrated in smartphones in the first place

2. they provided significant technical value in forcing developers to correctly handle astral codepoints, which they previously had no incentive to. Case in point, MySQL only added support for astral characters (at all, not even correct handling just storing them) in 5.5.3 in 2010, the same year emoji were added to Unicode and about 2 years after emoji were added to iOS

The new crop of "variable" emoji is doing the same thing with composite grapheme clusters (aka that codepoints don't map 1:1 to user-visible "characters")

> waste unicode space

Utter bullshit.

As of Unicode 9 there are 1085 "emoji" (including back-specified dingbats and the like going back to Unicode 1.0, according to current specifications Unicode had 139 emoji in 5.2, before japanese emoji were formally added in 6.0) in a codespace of 1114112 with 128237 allocations as of 9.0.

By comparison, the Tangut block added in Unicode 9.0 contains 6125 codepoints, and the separate Tangut Components block contains an additional 755. There are no extant Tangut users and we have no knowledge of the script having been used after 1502.

> developers' time.

Tough shit?
Eclipse Che
Or the walls 1m taller, or build it underground, or not build it at all. But it does not make sense to build a nuclear plant saying "yes, well, maybe it will be ok"!
The Ignorance Behind Islamophobia
There are messy edges like installing a git repo not in PyPi.
> That's probably a temporary glitch in the Apple matrix however ...

No, it's endemic to Apple products in the past five+ years, starting with Thunderbolt so people needed to carry converters to connect DVI and VGA monitors and beamers, wired networks, etc - which are common in most workplaces still. Apple could've alleviated that by providing a universal converter with the MBP, but they decided against that.

They're repeating that step with the new Macbooks using only USB-C, although this time it's a bit more standardized.

They screwed up with the iPhone, again making their own proprietary connector instead of USB-C (which probably wasn't around at the time), and by removing the 3.5mm jack making it incompatible with all existing headphones / earplugs.

Apple could've fixed it with the iphone 7, but they didn't, sticking to their connector in which they probably invested a lot of monies. They could've fixed it with the new MBP by adding a universal converter / docking station, or even supplying an USB-C to Lightning cable, but they didn't.

It's not a glitch in the Apple matrix, because they're not making any efforts in fixing it.
sigh.

Yep.

Somebody needs to implement this. If not for the practicality, just to irritate Stallman.
It is certainly possible, but adding a manual step for something that has no reason not to be automatic doesn't make sense. Yes, you can certainly choose to do more manual work for no reason, but why would you?

And if you don't want that (for example if you distribute a library), you can still distribute the project without the lockfile, and then have the users distribute the lockfile back to you to get a repeatable error.
Since you can't tab or you lose focus of the editor box, I am pressing the "add indent" button but to no avail

Edit: Someone beat me to it, but being 2/6 of the early comments shows that they are important!
No, not the same thing. Apple never claimed to have opposite principles.
Every couple of months, I think to myself that I ought to buckle down and make an effort at really learning Haskell. And I go through some books and some toy projects, and then I hit the wall. The problem is, I can't actually use Haskell in anything production, because nobody else that I work with is going to be able to figure out how it works, and if I move on to some other job, my employer is never going to find somebody with Haskell experience in this area - at least for what they'd be willing to pay.

F# looks like a more pragmatic choice, and I've been looking hard for a good place to bite off to use it going forward. But again, it'll be bad for the bus factor.

So the best option I've found is to just start using more functional concepts and patterns in Java/C#. C# in particular seems to be leaning in this direction with the features added in the latest language versions.
It would need a more complex solution than that. For example, this is the website of a local bus company where I live:

http://åbus.fi

The characters are from the Latin character set, but non-ASCII. Highlighting the Å in red would look pretty confusing. And in many countries you want the entire domain name written in non-ASCII characters, depending on the language. E.g. websites in Russia, China, India, etc...
Ask HN: How would you build a Hacker News Summarizer?
I love reading the comments in Hacker News probably even more than the articles themselves, but these days they can be really unwieldy: hundreds of comments, many layers deep, often digressing wildly from the original subject.

It would be great to have some kind of NLP system which could read the comments and produce an interactive digest, so that you could dive down into the bits that were interesting.

Anyone have any idea whether something like this exists, or how achievable it would be to build?
If they were though, they could've made wireless charging a thing five years ago. (although that conflicts with their aluminium devices)
(define 2nd-largest
(lambda args
(let ((2large
(car (car (sort-list args)))))
2large)))

What does functional languages struggle with there? Lack of mutation makes that neither harder nor easier.

I do understand that newcomers struggle with logic. That's clear. But a function is just something that takes input and produces output. There is no need to try to say that the functional paradigm is ill-suited because it doesn't have primitives.

car, cdr and cons are ancient primitives that have equivalents in most modern functional languages.

Python is used by a school near me, and students still end up with similar results.

def scnd_largest(*args):
args = sort(args)
args.pop()
return args.pop()

There is nothing inherently wrong with the paradigm.

Students need to learn the logic of problem solving, and it isn't very far removed from the contrived Pythagoras problems they solve, and if older, a background in lambda calculus can do wonders in learning to express oneself.

If functional is truly too hard to grasp, then maybe Prolog might make a good starting point.
> Good code is readable code, but not when the gap is too huge. For instances, they didn't know what is the difference between inheritance and composition.

Seems a standard problem when people talk about methodologies, they need to work in the real world not with what's expected of programmers.

Probably 4th time to me means OP needs to adapt to how things actually work.

Lots of working code earning $$$ doesn't use inheritance or composition. It gets the job done, is made redundant and new code is written for the next task.
I best way this was explained to me was to keep your unversioned dependencies in setup.py and keep developing and testing against latest. Then when you release, requirements.txt should be a result of the build (not an input) which says "these versions work, this is how you install this release". It makes more sense for an application than for a library, but I think making that the primary distinction only adds confusion.

All that said, I have no clue what Pipfile is adding. The rationale appears to be that people sometimes don't use requirements.txt properly? Can one of the very enthusiastic commentators explain their enthusiasm?
Well he seems to have re-enabled colour bitmap fonts at some point on his fork. I'm running his latest emacs-mac 25.1.1 @ head and it supports native emoji.
That's exactly how I feel too.

The worst part is that the old Macbook Pro was my go-to model previously, but the new one just feels like a more expensive step in the wrong direction.

I don't really want a touch bar (I use an external keyboard 75% of the time), and I do actually like to have the earphone jack, SD card, Magsafe, and traditional USB ports.

... So despite the messy list of models, there isn't really one that I want anymore.

Oh, well. Maybe it will make sense in a year or two.
If one writes code that is "too smart" ("intelligently decoupled", as the
original poster in the thread quoted a colleague), it's a sign that his skills
are actually low with a large spike on some small area.
That’s a Wrap on the Google Partner Summit
Doesn't seem to be working on mobile. iOS 10
> It's the third time I have come across this situation; when you produce really good code, and you get fired without any reason.

I suspect there's more to this than just producing code that is "too good".
This has been true for a while now. I remember being equally surprised when this worked on Ubuntu in (I think) 2013.
Omnisearch Index Formats
Considering this, I wonder why the /usr would be kept at all, assuming we keep /home. Why not just have /bin etc. since we can generally fit everything there these days?
As I understand it's already third time he is been fired. This makes me believe that there something else at play. Either he is self-delusional and can't see the actual reason(cowboy programming,arrogance etc) or companies in France don't like talented people.
It's probably worth noting that email you sign up to receive is not spam.

If you don't think that receiving four emails in exchange for a free month of a $60/month SaaS product is a fair deal, your options include clicking the "Unsubscribe" link on that mail or not signing up for those mails in the first place.

Penalizing the company by marking the emails you asked them to send you as spam seems like a mean thing to do.
It's usually called overqualified right? In my opinion if you are about to take a new job except money you need to consider a possibility to learn something, which means there should be a more experienced people in your area. Ie it's a bad idea to be hired to work in a team full of newbies.
Google Play to drop support for Android Gingerbread and Honeycomb in early 2017
Tips on how to conduct a retro
I suspect that it's very deeply ingrained in their company culture that they need to maintain focus in order to continue to be successful. Apple was also very financially successful in the early 90s, which led to the massive product fragmentation which Jobs needed to be brought in to sort out.
OCBC Singapore Trials Blockchain for Interbank Payments
Since I cannot edit my parent comment...

The bill is in Rajya Sabha (Upper House). It will likely take longer. But still it has support from Center.
Ironic that a website proposing a cleaned-up version of the linux filesystem has 'garbage' in the URL

index.php?page=at_a_glance
index.php?page=doc/articles/clueless
The ASP.NET Web API 2 HTTP Message Lifecycle in 43 Easy Steps
Typefaces are not part of Unicode, coloured or not.
Speaking of Epstein and human garbage, I wonder why The_Donald, /pol/, never talk about what Trump has to say about Epstein :

http://nymag.com/nymetro/news/people/n_7912/ :

Epstein likes to tell people that he's a loner, a man who's never touched alcohol or drugs, and one whose nightlife is far from energetic. And yet if you talk to Donald Trump, a different Epstein emerges. "I've known Jeff for fifteen years. Terrific guy,'' Trump booms from a speakerphone. "He's a lot of fun to be with. It is even said that he likes beautiful women as much as I do, and many of them are on the younger side. No doubt about it -- Jeffrey enjoys his social life."
Not this again! If you publish your opinion online you have to bear the critics / downvotes. Just get over it!
I use Linux (ubuntu gnome) on my main computer since many years. IMHO, changing the FHS should be the lowest priority. The priority should be "hardware support" and "education".

By education, I think mainly about the different way to use Linux compare to Windows.

Imagine you are traveling and need a file that is at home on your desktop PC. With your phone, you can wake up your PC, connect using ssh, convert the document to pdf and copy it to your phone.

Imagine you are visiting a friend and want to show something running on your PC, you wake up your PC, launch putty and a VNC client (portable applications) and you are at home.

Imagine you want to keep your machine lean and clean. With docker you can switch between images of preinstalled independent development environments. With sshfs, you access your remote website without a local copy.

Imagine you want to change the hard drive. I copy very quickly the very few files in my home directory that are not on NFS to a NFS backup directory. I change the disk, reinstall Linux then uses the small installation diary I keep on google drive to configure disk montages and to reinstall non default applications.
Walking lifts your mood, even when you don’t expect it to
I experimented with this for std::sort in g++. It turns out it's really annoying when your sort function produces different output on different runs.

While quick sort doesn't guarantee the ordering of equal elements, you at least want it to be the same each time you run a particular compile of your program.
I think you answered your own question! I'm already at a breaking point of "mess" just by virtue of living in this (relatively speaking, pretty decent) apartment. The less mess I'm adding to it, the better.
The Evolution of the Web
You just have to trust them. I mean have they ever been wrong about anything?
As one of the commenters on SO said, good code is a question of your environment. The fact that he can produce very advanced code doesn't mean that it's good code where he works. It's crucial to write code that others will be able to understand and maintain. If he's hired into a company where most employees have little knowledge of the domain, he needs to be extra careful to structure the code as simply as possible.

If you start somewhere and disagree with the programming languages or techniques they use, the answer is not to use what you think it's best. The answer is to either go with the company policy, or to try and change it. But not just producing what you think is great code, even though no one else can understand it.
My initial reaction to reading this was "finally". Coming from a ruby background I found the package manager of Python to be seriously lacking in ease of use respects. Kudos to the pypa team!
This snippet from the gist provided in the article says it all about any "optimizations" they might have done:

path: production
? path.resolve(appRoot, 'public', 'webpack')
: path.resolve(appRoot, 'public', 'webpack')
I can vouch for Netlify. We use them for all our stuff at Graphcool and it is awesome. Going from S3+CF to netlify provides a step improvement similar to going from EC2 instances to a managed docker cluster.
Here's a wild guess: train a model to predict average comment karma and replies given a comment's depth in a given thread.

The select the top 3 comments, plus any sub-comment with a combination of karma and replies higher than 1 or 2 standard deviations.

You could do some fancy text analysis, but seeing as you already have humans doing that (which is where karma comes from), I doubt you could improve that much.
/usr can be made read-only. It is more convenient to have everything in /usr than to have /bin, /sbin, /lib, etc.
Hacker News Quote Machine
Great idea. You could generate a DailyWTF-esque website with all the conversations.
The question is can such licenses alone (without radical copyleft GNU) can sustain the free software movement's spirit.

I side with camp which thinks copyleft is major way to push towards free software.

It comes down to wether you ideologically support idea that software should essentially be distributed with the source code always. (RMS's view).
"It's the third time I have come across this situation; when you produce really good code, and you get fired without any reason"

I doubt it has anything to do with his coding skills. You can be good at programming but still be an arrogant asshole (not saying that an author actually is, just one of possibilities). Working with a group of other people, soft skills are no less important than technical ones. Nobody let go good programmers just because they are too good, that just doesn't make sense.
The solid state memory in phones is a far cry from anything in your computer though and we regularly see devices with storage that's noticably slower than even mechanical HDDs.

Think about flash storage on phones to be more in class of a fast SD card, not the SATA3 SSD in your laptop.
A Brief Tour of FLP Impossibility
I bet some of the advocates have messy desks too but that doesn't make it any more ironic and your URL point.
Vray 2.0 for Sketchup 2016 Crack and Activation Key Full Free
TIL: .NET doesn't expose bitscan instructions.
Microsoft Reboots War on Sleep
Uh, I don't see how the blockchain could be considered single-entry accounting. Every system I've seen proposed still has transactions that credit one account and debit another.
This will benefit us all through weather prediction/alert apps. They're already somewhat useful, but this could really drive pinpoint accuracy for outdoor events and recreation.
I did this as the first intermediate project at freecodecamp.com (where I'm learning to code). I found it rather interesting to keep reading the stand alone comments so I decided to share it here. Someone else might enjoy it.
But isn't that mainly because the tools they use (Office etc.) are bloated and slow as hell?
Small addition to the existing threads about Chinese Rooms and materialism:

You probably need some sort of sensor to be self-aware. Not a huge issue, but could be challenging with cardboard and marbles.
Or sometimes you end up in situations where common "antipatterns" are at least locally optimal.

E.g. if you are working on projects with people making low quality changes & bad automated test coverage it can be better to have a bunch of duplicate/near duplicate code if it lets you decouple things.
> People and organizations are free to make their own considerations and choose their tools.

Not true. If enough FUD is spread about Haskell, for example it being a failure at CS, then it becomes difficult to convince management.

> If I don't have information, choosing Haskell would be far less rational than not choosing it

No one is suggesting choices be made blindly. Managers should hire good people and then delegate those decisions to those people. If they want to use Haskell, don't stop them due to lack of case studies.

> For the sake of argument, suppose Haskell has a 5% improvement in maintenance cost over Python but a 10% higher cost of adoption, then it's not worth it.

I don't subscribe to nineteenth-century management science. My point was that software development is more about people than technologies. You will never be able to compare Haskell and Python like that, without comparing the people behind the code. What we can say for sure, is that many good developers are asking to develop in Haskell. The best way for other developers to understand why, is to try it.

> That's great, but doesn't have much to do with Haskell.

You were implying that Haskell had failed somehow because SC had stopped using it. Decisions within large organisations are rarely made on purely technical grounds. I can assure you there are many Haskell advocates still there.
To-do list animations
Be aware of “free” API when building any kind of your mash-up or startup
Dead? I get either site not found or a domain parking page.
Indeed, the order of the story is interesting: Starts with the trees that are all the same age in a given place at an 8-months precision, continues with Indian stories related to an event at 50-year precision, and confirmed by Japanese record tracking at a few minutes precision... And the story continues with the primary earthquake, followed by all secondary events, each increasing in exponential damage. It's a great, relatable report of the state of knowledge.

But I can't represent myself the map or extent of this damage. Do we expect 5m people to die in Seatle and Vancouver, or are we expecting rather 100m people to die from Los Angeles to Alaska, and another 1m in Japan?
Adam actually consulted with Caldwell so he had quite a lot of prior knowledge but still, he's only really studied it for a month. Source: http://www.nationalgeographic.com/adventure/2016/climber-ada...
Nice work :) Did you post the code somewhere?

Does it always start with this quote?

"You can stand on the shoulders of giants or a big enough pile of dwarfs, works either way."
HNLondon November Meetup
Perhaps the Node.JS world just isn't waiting for smarty pants patterns but prefers callback pyramids of doom? It's sometimes even hard in C# or Java to figure out what some smart guy did to the code, making it hard to navigate it and find out what comes from where and how it's wired together.

Also a lot of smart ideas rely on reflection and cause runtime instead of compiler exceptions.
Setting Up Visual Studio Code for Cross Platform F# Development
True. But still I really love your book. Read it, and still reading to speed up many things. Are you planning another version?
Introducing online video learning for UX Designers
#todo is shorthand for [ tag: 'todo' ]. A record can have multiple tags.
Agreed that there should be a full-form for database, not just @.
Yeah that's awful. In Ruby it'd be like:

all_checked = todo.select(&:completed?)
none_checked = todo.reject(&:completed?)
todo_count = todo.count(&:completed?)
FTFY: How we made our React-Rails app COMPILE 5x faster

This kind of article is just a click bait. No data to support his claim.
It is not the point of markdown, in fact any html tag is valid in markdown if you read the original description [1].

Github does strip some tags for security reasons like <script>. Some of the parsers I have seen offer this feature.

1: https://daringfireball.net/projects/markdown/syntax#html
Post-Election College Paper Grading Rubric
The real problem could be lost in translation of "skills were too far above."

I've found that a lot of coders over-engineer simple components in a way that gets in the way. An example would be writing an entire module for wrapping regular expression methods that already have a clean implementation.
> a really rigorous language

Is it rigorous in theory or in practice?

An academic veteran might want to better express his ideas in code while a professional veteran might want more readable code with better test coverage. And that's just 1 axis where the two viewpoints might diverge or even come in conflict.
Here is yet another person who doesn't understand that he is first and foremost hired to solve business problems, not to write software. It so happens that he writes software to solve these problems.

If it turns out that he actually creates further business problems (and by the content of the post, it certainly looks like it), then no matter how "elegant" or "brilliant" his code is, it's rational to let him go!