skysight-inc/HackerNews huggingface dataset:
I am waiting to see what becomes of Arthur Whitney's Desktop and Server OS based upon his language K5/K6.
KDB+/Q (database and language) is a small download, but is very powerful.

I had heard of Inferno and Plan9, but aside from some YouTube videos and links, I never really looked it over or took it for a drive. I'll have to check this out; after all, it's amazing what nuggets are buried in the recent past of CS.

Here's some timing tests done in various languages (C, Java, Perl, Tcl, and others) in 1998 compared with Inferno [3]. Brian W. Kernighan of K&R fame was one of the author's at Bell Labs!

And here's a comparison to Arthur Whitney's K language, I believe not too long after using the same code to compare with K on a 100MHz Pentium [4]. K is significantly faster and shorter in LOC.

The tests were mainly loops, text and stdio. APL derived languages like A+, K, J, or Q don't usually do loops, they are better with binary, and memory-mapped files, but K did very well in the benchmarks despite those factors.

[1] http://kparc.com/

[2] https://kx.com/

[3] https://9p.io/cm/cs/who/bwk/interps/pap.html

[4] http://kparc.com/z/bell.k
"Firewalled off" meaning what?

Is it an easily discoverable crime if they breach that firewall?

This sort of thing brings LIBOR to mind for me ...

/naive scepticism
Yeah. Don't worry about whether or not you should learn javascript. It will be forced upon you sooner or later.
Plus the cases in many states are framed in such a way that the cash itself is the defendant and the person it was taken from has no standing in the case. They make it essentially procedurally impossible to contest the seizure.
>, if you ever find yourself thinking, "I know, I'll use a design pattern" before writing any code, you're doing it wrong.

Unless I'm misunderstanding him, I would disagree with this. When you're doing it wrong is when you use a design pattern without understanding what problem its solving, and whether you have that specific problem.

To use his tool analogy - if you're a joiner who turns up to a job thinking "we always need to use a hammer" and start randomly hitting everything, then you've gone wrong. But equally, if you're halfway through knocking a nail in with your shoe and think "Oh look, I'm using the hammer pattern now", you're doing it just as wrong.

If you're looking at two things you need to attach together and you've considered whether glue, a screw, a nail or something else is the most appropriate for this specific job, decide it's the nail and then think - "I need to use my hammer now", then you're doing it right.
We could do this all day.

I like the idea of vouchers, a basic income, and slow slope / no income guidelines.

On the topic of food, I can legally shop for food where the poor shop. Around here it is Aldi. If Aldi ever said, "due to federal subsidies and local laws we can't allow you to shop here because of your income" then I would have a problem.

My county social services are the best I've seen so far. I can get some types of medical care for free and have access to the food pantry. They do ask for income, but don't deny free access based on your answers. It is the closest social programs I've seen that align with my ideology of equal access for all.
Functional Programming, Abstraction, and Names
"read everything you sign"

Yes. Read everything with "what if" in mind.

I was dealing with a small venture capital company that wanted to invest a smaller sum into my company. I read the contract and found 10 things I did not like. I started with the main point: You make the contract with my company, not with me, as a person. (Part of my companies possible Cashflow would have been used to pay back the investment).

They said: "Okay, that is not possible. Anything else you don't like?"

Tu their big surprise I did not bother negotiating with them any further bust just told them I am not interested anymore. Later I showed the contract that was offered to me to a friend who works as a lawyer in PE. He just laughed.

READ a contract. Assume the counter party consists of major league assholes. They say they won't interpret a certain paragraph in that way? Then why not change it to clarify that? They promise you things? Why not put that in writing INTO the contract.
I've watched through probably a dozen times, and yes I can definitely see that. My comment was probably letting my rust belt roots in Minnesota shining through. That and seeing and reading a lot of what David Simon has said outside of The Wire.
> But if you just started a new project and you are still in a constant state of change then a large test suite will slow you down because you have to adapt all your tests all the time.

I have been in a new project where progress was slowed by all the tests. But the issue I have with "I will write tests later, after things have stabilized" is that, in my experience, that day never comes.

There is always a feature that would add value, or some fire to be put out.

Of course, you could arbitrarily pick a date or time to start testing, but as some one who was responsible for a smallish code base (30k lines, maybe 2-3 man years) with no tests, I can tell you that it is hsrd to start that. You have to either start testing when building a new piece of software (which is easy, but you really want to have assurances about the working of your existing code), or try to apply tests to previously untested code, in which case you are unraveling quite a bit of complexity and possible untestable/difficult to test constructs.
Next step: chemically analysing your kitchen fumes and flavors in nearly real time to profile your gastronomic habits.
That's ridiculous. The difference between a strong sherry finish and a weak one is unmistakeable. It's like saying my brain is playing tricks on me when I say I can tell the difference between Coke and Pepsi.

Put the A'bunadh and the 16 Sherry in front of me blindfolded. I'll identify them every time.

People who make this wine comparison presumably don't drink much whiskey.
Absolutely. Using source control is like using an editor.
With a properly setup TORbrowser it will use a different tor circuit for every host. Using a [single] VPN "centralizes" your exit connections. For HTTPS enabled sites TOR is perhaps a better choice, just have to be careful of sslstrip.
Wanting an E2E chat that stays on my device when I'm done should be fine.

Only if all other participants in that chat are fine with it. So you'd end up with an implementation that only allows saving to disk if all parties allow saving. That's a lot more complexity than simply a separate checkbox.

I still agree with you, there is value in allowing the features to be controlled separately.
"Get this person to the hospital ASAP!"

"We can't, he's still stuck to the car so we'll have to wait another half an hour."

Yeah, that really sounds like an excellent idea.
"Software Design Patterns Are Not Goals, They Are Tools" - I do not understand why this needs to be said in the first place.
Easy things can be vastly complicated. This means that such complicated easy things are hard to maintain.

Simple is always easy to maintain.

Remember, as software developers, complexity is the enemy. It is the beast we want to slay.
+100 open jobs in Denmark within gaming, sound technology, robotics fintech,
Open Food Facts turns 4 ! 3776 contributors, 83K products
Instant Apps on Android are the most fascinating thing Google announced today
Chrome removes Backspace to go back
Who Invented School?
fa9c5885a129a3dd5faf1b55bfdaf2d3e3a3de442bf6c817724febaa2b01bc71

Nadim has enough information to know what that hash corresponds to. Maybe he'll tell you. I won't. Not until I'm ready.
Programming the ENIAC: an example of why computer history is hard
With http 2.0 everything is piped in single request.
Where's that? How productive/marginal was the farmland?
Singing to my light bulbs
Feeding the cat automatically is pretty cool, but why not use a timer for that?
Probably a controversial topic, as this touches on holy grails. My personal take on this, given my own experience so far:

1) You don't strictly need to know Big O notation in order to not introduce performance bottlenecks, or mitigate them when they arise; but you should be able to use common sense resource wise, when developing things in any problem area. In other words: you should conceptually understand how computer systems work (which often implies you'll sooner or later run into Big O notation). Knowing Big O notation can also help you communicate with your peers about problems, if they know it too.
2) For a large number of problem areas, this is knowledge that is near useless I think. Know that they exist, and that they might ever help you. But for your average problem domain, you don't really need concrete knowledge there. It bothers me how much emphasis is put on this in so many job interviews, while it's hardly ever relevant in many of those cases.
3) I'm not sure how that knowledge will really help you.
4) I think this is actually the most important thing of all four. Knowledge of the kernel's main system calls will help you tremendously when your process (or any process in your stack) "just hangs" sometimes and you need to resort to systems such as strace, dtrace, sysdig and what not. That time will come, sooner or later.
Why? I could always screenshot it, there's never a guarantee when you send information that it won't be retained by others with access. Letting me keep it without screenshotting is just a local convenience feature.
I love HighCharts and use it for my open-source project at http://solarpi.tafkas.net

If you have a commercial product you have to pay for the license though.
I'm not a massive fan, but it's a risk-reward calculation. What could new hardware do or offer that is compelling enough to spend millions of [currency] and run the risk of putting in place a new platform?
Streaming Website blocked by Reddit
Right, and I didn't learn TDD formally. Sorry for using it freely. I write tests in tandem with the implementation and do not write tests and only then the implementation.
Inferno runs strait off Linux (you start the emu program).
Plan9 also has 9vx or so.
Plus with plan9, all you need to start a workstation is 9pcf (the multiboot PC kernel) and a plan9.ini. You can literally just hand those two things to qemu and mount the rootfs from a file server with almost no setup.
I worked in a college neuro research lab in 1991 that had received samples of MPTP for research purposes. The project had ended before my time, but the drug was a frequent topic of conversation. We were studying various dopaminergic conditions using leeches. I still have a copy of a book documenting the various research "MPTP: A Neurotoxin Producing a Parkinsonian-like Response".

One detail of the story that I still remember: the dealers of the MPTP heroin realized they had a bad batch and cut the price to get rid of it.
That's a very good point. I would argue that insurance is a long-term relationship, it's a very mature industry, I don't expect there will be great savings in changing providers, and finding the best provider means doing due diligence and reading through dozens of small print — not something I would relish anyway. They're offering a 33% annual ROI. If they can guarantee an option to re-up for at least four years, we're good.

You should adjust the car alarm's settings. If you don't, and you happen to live in my neighbourhood, I have a stack of bricks in my back yard, one of which will just about fit through that hole in your windshield.
funky !
I think it's established that exposure to certain pesticides seems to up the risk of Parkinson.
10 Rules to Follow Before Going for a Business Meeting
We're talking about a fully automated laundry that goes a step beyond a washing machine. It's funny, but one of the hardest unsolved problems is actually folding laundry. Everything else is very easy.
Sadly, giving up on the washing machine is giving up one on of the great labour saving inventions, and going back towards the time when washing took at least one woman-day per week.

http://johnquiggin.com/2012/05/03/housework-in-utopia/

http://www.ted.com/talks/hans_rosling_and_the_magic_washing_...
Walgreen ownership has been bad for Boots and bad for the NHS: http://www.theguardian.com/news/2016/apr/13/how-boots-went-r...
Cool. I think it is the same person.
> yells at the dog if he goes into his office

This is my favorite one
I suggest the german "Geist" which means spirit or ghost (as in Poltergeist). It sounds a bit like "Guest" and Ghostery uses this metaphor already. Plus, german is cool.
The first example memcpy() code is semi-broken since it uses an int-type iterator variable which is compared against a size_t-type length. This would generate warnings from most compilers (signed vs unsigned) and is generally a bad idea, the iterator should of course have been size_t too.

Also there could have been more const, but that's almost always true. :)
Headline is a Winograd scheme with Parkinson's replaced with almost any other name.
Fulby – Find missing football players
Paper Planes
I agree. It should be obvious. I don't know anyone who believes design patterns are the goals.
I remember having a bug once in (I think) IE8 where I had a comma after the last element an an array (like the 'greatarray' shown in this article.

The browser didn't accept a comma after the last element in an array and IIRC the compiler breaks so badly that it puts the reported error at line 1 character 1, possibly for a different file entirely.

Spent a LONG time on that.

I kind of reject his assertion that JavaScript without semi colons is "better code"

The logic, flow, maintainability, understandability, performance and, actually doing the right thing all make for better code.

Semicolons? Not so much.
Can you really put "normal humans" and "lick their cat" in the same sentence?
My point is that this will become the new social norm, much like now it is the norm to write short cryptic messages that readers may or may not understand.
Use a bucket and a washing stool (wooden agitator)?
> think about whether you'd rather have your bank statement made public or a large, visualizable data set representing most of your browsing history.

If someone got access to my banking details, they could do far more damage than just make my bank statements public.

Now I've dealt with identity theft and credit card fraud, and I work in digital marketing, so I know which one I'd choose: Nobody is going to visualise my individual browsing history, and even if they did (for what reason I can't imagine), I can't imagine what they'd do with it! I can imagine someone might try to build a demographic profile about me to sell me stuff that I'd like, but that's good because it would be stuff that I would like.
I suppose you haven't seen much of the world of Enterprise Java Applications?

https://docs.spring.io/spring/docs/2.5.x/javadoc-api/org/spr...

Many years ago, I briefly worked in that industry and thoroughly hated the rigid, dogmatic, extreme overengineering culture and the resulting code it produced. I'm glad to be away from it all.
>the only thing I believe he does with it is tells Cortana to play Van Halan first thing when he wakes up

This is pretty much my usage at the moment with the Google Assistant. I tried it this morning for the first time. I sleep with my tablet on the bed next to me (I have a very big bed and a very small room, so I use half of my bed as a makeshift shelf). I woke up and went "Ok Google, play me some music, please" and then I gently woke up with the sound of whatever I had in my library.

Then I went to take a shower and realized that voice commands are really super useful for that situation. I used them to change songs or tell Google to play me different songs.

The only annoying thing at the moment is that the microphone input seems to be calibrated to a much higher volume than conversational voice so I end up shouting "OK GOOGLE" multiple times to get it to register and I'm pretty sure my flatmates aren't thrilled at that idea.
We need more open data on birthday cakes!
Food Fact: the more birthday cakes you eat, the longer you live!
They likely use half precision (i.e. 16 bit) floats in some of the computing stages. They've also discussed using even fewer bits of precision in some of their research output. When training and following an error gradient you kind of need lots of precision, but when running a learned model you often don't need much at all, 8 or even 4 bit numbers are sufficient in some calcs where rounding error propagation isn't an issue.
https://www.youtube.com/watch?v=FGBhQbmPwH8
You assume that Google will continue supporting Google+. My gut says that they will extract services out of Google + and then discard the empty corpse that will remain of G+. They took Photos and Hangouts out of G+, similarly they will take out the streams through Spaces and chats through Allo/Duo. Will be an interesting development to follow.
Has anyone had any luck with Orient and large database?

I tried to use it with a 80,000,000 product database with about 60,000,000 updates a day (edges between sellers and products labeled by price) and it was unusable with the same sizing as a mySQL database that handled it easily.

It seemed great though. Especially since neo4j open source is quite restrictive (clustering is a commercial only feature not available in the OSS version).
"Going Clear"?
The experiment is interesting, but the press coverage is awful. The original article is a little too technical (linked in the OP): http://advances.sciencemag.org/content/2/4/e1501748.full

It's not a new form of light. The idea is that they use a weird quantum mechanic state of light to create a beam with only half of the expected angular momentum.

It's not easy, it's weird, it's strange, perhaps it will have some applications in the future, but it's not necessary to rewrite all the light and quantum mechanic books.
Top Explainer Videos – You Should Watch Before You Order One
To stay competitive (or perceived so).
Udacity and DiDi Research Partner for $100K Machine Learning Competition
Don't forget the scaling text and emojis!
The problem though is that the company able to push their product to win the market and the company with the best product probably won't be the same.
I even vaguely remember that in one of Snowdens released documents, the NSA wrote in a powerpoint presentation that this setup causes head aches. Will try to find it again.
I must say that the more I read articles of this character, the more I feel that it would make sense to distinct between different types of "engineers".

A lot of the proposed advices are applicable only in certain fields, and not so much (or not at all) in different fields, whereas every field can go very deep (so it's a waste of time gaining knowledge you'll never use there). While a number of these advices are fairly generic, others definitely are not. A front end (client side) web developer won't benefit from having deep knowledge of data structures or the kernel, but he will benefit from knowing about Big O notation. Additionally, he will benefit lots from knowing how browsers work, and having deep knowledge of HTTP. Someone working on ETL processes all day will not benefit much from knowing about interpreters and compilers, but will benefit from knowing a lot about UTF-8. But also, he will benefit lots from knowing a large number of layer 7 transport protocols. A systems programmer (defined as "someone who programs close to the hardware") won't typically benefit much from knowing javascript or how browsers work, but will benefit lots from Big O notation, data structures and algorithms, and C. And so on.

I'm seeing a future in which we will be able to more distinctly treat separate specialisms within the field that we now call "software engineering" (or countless variations on it).
>Later down the road, when you've gotten into the habit of developing with no, or barely any automation, it will be much more difficult to learn to fit this tool into your coding routine.

Don't agree, imo a good automation service is abstract enough that it can be hooked into your cycle or at least appended to it. Automated tests and CI is a prime example.

I'm ready for the down votes, but the most important aspect of TDD is job interviews (or blog posts), telling others you do it even at home on your pet project is a big plus somehow. My guess it is the best way to communicate you care about quality, even if equating the two is obviously a half truth. Again Norvig vs. Jeffries tells me practices go a shorter way than actual practicing and ability.
This has always been the case across centuries. Information is power and grabbing or keeping it is a generational challenge.

So, you can't just put your arms down and say it is hopeless.

The Free Software Foundation fight was also hopeless when they started, look at what happened since that time and behold how software with available code dominates the market for third-party components.

It is in our hands the responsibility to act and make the new technology to respect privacy and people as much as possible.
Most of the time you have to pre-heat the oven before you start baking stuff. And for the dishwasher, a lot of energy-saving plans make electricity cheaper in the evening/night so plenty of people load the dishwasher during the day and then turn it on at night. This is what my family has been doing for decades and it's what I'd also do if I had a dishwasher at home.
Microservices  Spotify • Kevin Goldsmith
Maybe you can forgive C for the stupid header compilation model (why let the compiler do what you can make the programmer do by hand?).

This model enables binary-only distribution of libraries, you get the code as a .a (or lib, .so, .dll or whatever) and the API declaration as a header file.

You can write code against a library without having the library, using only the header. You can't do the final linking of course, but you can write the code.

The alternative, I guess, would be to embed this information in the library itself, and have the compiler extract it, which sounds as if it would have been scary from a performance point of view 40 years ago (and also somewhat hard).
Nice use of an in house microgrid. To me the striking thing was how the LED bulbs designed to be plugged into 220VAC 'just work' when plugged into 12VDC; I know this is because of their switchmode power supplies, it's still surprising.

You could consider doing this with "19.5V" (popular with laptops), although many will work just fine from 12V, or power-over-ethernet's 48V.
This Lady Narrated How She  Slept with Over 400 Men in  Less Than 5 Months
Non-humanoid maybe?
It looks like the lower bound for commercial whole genome sequencing is about 250 nanograms. To put this in perspective, you can get 4000 nanograms of DNA from a 2 microlitre blood draw.

Your mental model of sequencing needs an update. :) Prior to sequencing, DNA is amplified via PCR. This dramatically increases the amount of DNA you have (2^30, iirc.)
Free crash course for Beginner C++ programmers