skysight-inc/HackerNews huggingface dataset:
Does that mean that ∫f(x)dx is f.(dx, dx, …) = f(x_0)·dx + f(x_1)·dx + f(x_2)·dx + … for all x in the domain?

No, though it is true that the integral with respect to x, as an operation, is the limit of that summation as dx approaches 0. But the point wasn't about any particular numerical or symbolic manipulation we could do (this was a graduate-level calculus class, after all; we all knew how to actually integrate things).

Generally, when you learn inner products of functions, you learn the definition

f·g = ∫(f(x)g(x))dx where the concatenation there of f(x) and g(x) represents scalar multiplication. We all know how integration works, so this becomes how we define inner products.

My professor's point was to reverse the primacy there. We have a sense from vector operations of what inner products are; that can inform our intuition of what an integral is. That is, rather than saying "I know how to do an integral so I can now take an inner product of two functions", say "I have an intuition of what an inner product is, that is, the projection of one vector onto another to form a scalar, and that should inform my intuition of what an integral is".

The larger motivation for the whole talk was introducing Clifford algebras and the symmetry between dot product generalized to inner product opposed by outer product on the one hand, and cross product generalized to wedge product opposed by interior product on the other hand.

And, just to finish the mathjerking, the whole point of the course was to get to:

(δΩ)∫ω = (Ω)∫dω

ie, the most general case of Stokes' theorem. But that takes a lot of sussing out of what the differential operator d actually is.
The excellence of uniform build and test infrastructure
Even if it is an illusion, so what? It doesn't stop me experiencing it, which is really what consciousness is all about.

I think, therefore I am
I had the same issue. IN my case I had https everywhere addon installed. That forces https.
Searching for Advanced Alien Engineering
From this acquisition, I just hope that Path won't turn into Kakao/LINE-like application, where they offer useless stickers, and try to look 'cute'.
Let's do this together
Benefits are already known and experienced.
I wonder if this shouldn't be on the "rust" side, rather than on the "crates.io"-side. Considering[1], I think I'd prefer either/or:

extern unsafe crate phrases; // It's all UNSAFE!

Or:
extern crate phrases; // It's mostly safe

use unsafe phrases::english; // But not English

The idea being, that either phrases wouldn't be imported/give an error -- or everything in phrases except "english" would be imported -- and english would only be imported if qualified with "unsafe".

Either way... I can see this going the way of try/catch/throws in java -- where the usefulness diminishes as lazy programmers (we're all lazy) end up polluting everything with unsafe (just like "throws Exception e..").

[1] https://doc.rust-lang.org/book/crates-and-modules.html
I like how the animation in the header of the website requires two of my CPU cores at full speed.

Also offering piping to bash as first alternative for installing something.
In that case you should be able to get an E-2 treaty investor visa fairly easily.
I really thought Dylan was a wonderful language back in the day... and I see no reason that with some effort this couldn't be a fine OS for maker/hardware hacker mobile devices.
I expect these will be probably hard mounted to moving surfaces during sporting events.

The event that comes to mind is obviously motor racing, specifically Nascar. I think being able to experience crashes in 3D stereoscopic would be a big selling point for people.
I'm French. I've lived in France, the UK, Sweden and a bunch of other places in Europe.

English is dead easy to learn; people just don't care, it's in the culture. Nobody can speak English back in france. It's pathetic. Often when I go through Paris' airports, I speak english just to see how badly people still speak it, and just how much effort they'll go through to still speak french despite having someone who has shown no sign of speaking your language in front of you.

For some, it's pride. For most, it's lack of education. For all, it's a sad, sad situation. And the degree to which it happens is absolutely unique to France - I have never seen such dislike of foreign languages in any other country - and my full time job is in localization engineering.

I've been in Stockholm for about a year now and I've had trouble finding swedes that do not speak English. The turkish immigrant at the local pizzeria? Even his English is better than a majority of french people's skills in any foreign language, and he's the worst speaker I've met so far here. On top of fluent Swedish and Turkish.

Greece? Spain? Romania? Even Germany! Most people speak English, and often a third language. This is unique to France and it's not something we can be proud of.
No, only structs with no invariants. As soon as you have invariants, there are illegal bit patterns. Of course, these illegal bit pattern may not necessarily result in memory unsafety, but there's no way for the compiler to know this automatically^.

This functionality could be implemented something like

fn from_bytes<T: JustBits>(bytes: &[u8]) -> Option<&T> {
if bytes.len() >= std::mem::size_of::<T>() {
unsafe {
Some(&*(bytes.as_ptr() as *const T))
}
} else {
None
}
}
/// Values for which any bit pattern is valid.
pub unsafe trait JustBits {}

unsafe impl JustBits for u8 {}
unsafe impl JustBits for i8 {}
unsafe impl JustBits for u16 {}
unsafe impl JustBits for i16 {}
// ...

Some custom struct that can be any bit pattern can then do:

struct CustomStruct { ... }

unsafe impl JustBits for CustomStruct {}

Of course, there's `unsafe` there, but there has to be: it's asserting that "yes, I'm sure that anything works".

^Notably, there's been proposals for `unsafe` fields which will make expressing "invariants exist" more focused, and adjust the trade-offs here.

(I'll note that a TCP header has 3 reserved bits (100, 101, 102) which, I believe, should be set to zero, making some bit patterns theoretically illegal.)
'big screen TV' is just about the worst economic indicator there is, yet it's constantly used to insult poor people and imply that their problems are simply due to being wastrels.

I was once wandering through the swampy Mekong delta, and there were huts there that didn't close fully against the weather, with dirt floors, surrounded by mosquito-laden stagnant pods... and they had big screen TVs. They weren't this year's models, and more than a few of them were CRTs, but they were still in these dirt-poor houses.

Back here in Australia, the retail market is so tight for 'big screen TVs' that it's pretty common for retailers to give four-year interest free terms. That's only $10/week for a $2k screen over 4 years, less than one hour's minimum wage, after tax. And, as you say, a big screen TV is a pretty small part of the cost of living, overall.

The sooner we abandon 'big screen tv' as a proxy for measuring wealth, the better.
On this form it's less relevant, but that's very handy a lot of the time. I get frustrated when some outsourced app seems to believe that just sending mail to my username would not work, and refuses to let me do it.
Is Your Stairs in the North Direction?
A technical problem has not been checked yet, but when there are no problems, We want to support Sketch early version.
"When VMs take tens of seconds to boot, Hyper is able to launch instances in sub-second"

tens of a second would be +- same as sub second ;)
Also, check out WebSDR.org to listen to HF receivers around the globe. (My Raspberry Pi-based receiver here in Texas should be back online Sunday night.)
It's not out of the question, but it's back to distribution by physical media and the only unequivocal technical advantage is in the rendering of reflections and refractions.
>curl -sSL https://hyper.sh/install | bash

Seriously? Developers need to stop sprouting this crap as an install method. Nobody in their sane mine should curl a script into bash to install a product.
In general mallocs allocate small blocks a lot faster than they allocate large blocks, because small blocks qualify for free list binning and the OS kernel doesn't need to serve you as many pages. (It wasn't obvious to me either that this was the case, but try it and see for yourself!) :)
Maybe they would given some basic incentive. Free internet, some discount, gift card?

I wouldn't underestimate what some people will do for a little spiff.

Maybe they won't do it again, but they might do it once, or on occasion. If one could manage churn reasonably? Who knows?

That said, not on your life. Not doing it.
What's the use case for deploying a database in a container instead of a VM? If I want dedicated resources for my database (anything else would be undesirable in a live production environment), that implies running it on a dedicated host.
Addy Osmani's Commit History
I agree with you on both counts, but still find your comment gratuitously negative.

This looks like a very cool thing, and an important missing piece.
Yes, the service is called PrimeNow and it does 2-hour delivery for items commonly found in supermarkets and stores around your area.
Anyone know how he did it? I can see dummy commits like this, automated somehow: https://github.com/IonicaBizau/addy-graph-hack/commits?autho...
The Data Sleuths of San José
I don't feel this is correct. rkt can run docker images[1] and once the clear containers patches[2] land you will be able to run a docker image or an appc image inside of a VM under rkt.

[1] https://github.com/coreos/rkt/blob/master/Documentation/comm...

[2] https://github.com/coreos/rkt/pull/946
That can be fixed in 30 seconds.

The product is impressive, and it would be respectful to communicate your valid message respectfully.
Github respects the dates attached to the commits, not the time they were actually committed.
Check out the repo for that commit: https://github.com/IonicaBizau/addy-graph-hack

Specifically, this tool: https://github.com/IonicaBizau/github-contributions
I think it would've been cooler if the url were https://install.hyper.sh

;)
I've used Instacart in Seattle and Chicago and they've been fantastic. Although, I somewhat preferred Amazon Fresh in Seattle for the pre-6am delivery.
it seems very similar to clearcontainer that was announced a few days ago, i.e. interesting since both are much nicer than "traditional container" solutions.

Now for the interesting stuff.. init process (C): https://github.com/hyperhq/hyperstart

Daemon (Go): https://github.com/hyperhq/hyper/tree/master/hyperdaemon

Stuff to replace with overlayfs ;) https://github.com/hyperhq/hyper/tree/master/storage/aufs
Thanks for the recommendation. I will have to check out Telegram.
Agree, and I'm a huge fan and user of both.

But separation enforced at the hardware level is a different, unambiguously better, thing.

I am a non-fan of Docker, but this elevates it to a level of strong contention. And brings Linux along for the ride.
That was one of the "toy" implementations I mentioned. The algorithm they described is going to be nowhere near the performance of a modern multithreaded allocator like jemalloc (which is correspondingly far more complex). Which is not to say things like that are not encouraging, only that I was hoping someone would have proven something people actually use correct.
Legitimate question - do they pay their employees a living wage? What is the executive:average employee wage? Even if Costco were more expensive, I like to believe I'm helping our country out just by supporting a company that doesn't pay such a shit wage everyone collects welfare just to get by.
There is no difference to running an executable. In fact, this is the BEST way to offer installation to users. He is literally showing you the source code so you can decide whether you actually want to run it or not.
This stupid meme of not wanting to run scripts is just that: a meme.
Probably should have just listed to the repo with the software he used to make that.

https://github.com/IonicaBizau/github-contributions
Alternatively, the date they were actually committed, not the time they were pushed.
Does anyone support source routing? Like on the actual Internet?

SIP has it,too, one of their many mistakes that has to be dealt with by sysadmins in production.
I hope I don't ruin the joke by asking, is this a joke?
Here's another:
https://github.com/gelstudios/gitfiti
Great line of enquiry.

I suspect it matters because we assume those with attributes such as greater IQ would utilise the education better then a random group of lottery winners. We then assume that that would result in greater communal good.

We also live under the illusion of attempts at fairness rather than perpetuating privilege.
to be honest, without a one liner install method you don't reach people. most will blindly click this even thus its quite terrible.

certainly a better method is needed, but none of the alternatives provide "1 click install" like curl | bash, and as long as it's the case we'll see that..
It's "gratuitously negative" to ask me to pipe a script I download from the Internet into bash directly.

They really should, for security reasons, spend the 5 seconds it'd take to separate those into two commands, or come up with a better way to do things (which would probably take more than 5 or 30 seconds).

Reminds me of pip (python packaging manager), who will, almost narcissistically, remind you about how important it is to use secure connections for python repos, and in fact will refuse to run without a bevy of flags set explicitly allowing any kind of insecure or unverified package, but first ask you to download and run a python script with an embedded binary, because that's the only way they could think of to get bootstrapping working.
"Nobody in their sane mine should curl a script into bash to install a product"

This, so much this.

I was actually extremely excited over a similar product "flynn"... but they have also lost their mind when it comes to installation: https://flynn.io/docs/installation

> sudo bash < <(curl -fsSL https://dl.flynn.io/install-flynn)

Seriously?

How is that any easier than just providing a package for any given distro?

I mean, for fucks sake, just give me the URL to a tarball with a fucking Makefile in it. I can handle the rest, thank you very much.

The security concerns alone should force any sane system engineer to never pipe curl to sudo'ed bash process.
We had a similar problem to solve for iOS and OS X and settled on the using FIFOs in that manner as well. A colleague wrote up a blog post about the various alternatives that were evaluated before settling on that approach: https://realm.io/news/thomas-goyne-fast-inter-process-commun...
Oh, I agree 100%. I was just as confused as he was when I first started using Go, and I'm very excited that this change might finally happen.

However, I think calling my response "technically true" is selling Go's concurrency primitives a little short. They enable a really great programming model, which makes it much easier to express certain ideas in code. And I/O-bound programs benefit even if GOMAXPROCS=1.

I didn't understand that subtlety when I first started with Go, and it seems like GP commenter (and probably other HN readers) didn't either. "Concurrency is not parallelism" is very helpful in explaining that, which is why I linked to it.
Well, in many instances the primary source material we have for initial Western contacts with ethnic groups in Africa, the Americas, and the Pacific refer to them as "primitive savages" or "unthinking brutes," and historically, such peoples were generally regarded as sub-human by many of the Westerners most familiar with them. So if a lack of consciousness on the part of those not previously contacted by Westerners is something that seems possible to you, then these might be the sources of evidence you were looking for.
Classic signals are tricky... but you can send a signal to all members of a "process group".

see: man killpg, man setpgid

also, "zeromq" has a pubsub mode, though I've never used it and I'm not sure about its limitations
At RethinkDB we managed our own free lists for stacks for this reason. One funny problem with the first implementation was that a stack could be born on one posix thread and die on another -- and certain threads would accumulate all the stacks, while the others would keep allocating them fresh.
Is there a general reason why, to an outsider, most South American currencies seem very unstable and periodically afflicted by very high inflation?
When I was at Google the machines where typically oversubscribed and the workload varied quite a bit. Google has done a lot of work to allow you to ignore the other processes on the machine and just specify the resources your process required. Then Borg which they recently published a paper about would take care of scheduling it on an appropriate machine.

As a consequence, answering the question of what other processes where on the same machine was not as easy as on an EC2 instance. We didn't mind though because Borg was so good at scheduling we pretty much didn't have to care about the machine level. Instead we thought at the datacenter level.
That's a serious bash script. That's the craziest bash script I've ever seen. It's like a full program. It is terrifying.
Oh it may peak as a buzz word, but I think we'll be using them for a long time.
The Federal Reserve Board Is Much More Likely to Take Your Job Than a Robot
As I understand it, the minimum effective (federal) tax rate is 10%, so it'd be less than 16 hours - not 15?
If drops are fine, TIPC is probably overkill. I would probably just wrap something generic using UNIX domain sockets up into a library and re-use that as needed.

Depending on your permissions requirements[1], and if you really only need a signaling flag, have you considered the filesystem? Just touch a file in a well-defined directory named after the event that happened, and poll it periodically. Removing the file clears the flag. Signals can coalesce, but you should never drop any. You can poll a directory (that will normally be empty) without much CPU load (the directory inode will be cached most of the time). You could setup a multiple listeners by giving them their own "inbox" directory, like. e.g.:

# send a notification
touch "${HOME}/.${app_name}rc/messages/${destination}/${signal_flag_name}"

Using the filesystem opens up the possibility of a message sender being anything that can generate - even indirectly - an open(O_CREAT). Your signals also persist across programs shutdowns and crashes - you can send and receive even when the other side isn't running - and your state can persist across reboots. Also, you can leverage some of the guarantees provided by the kenel's vfs layer. For example, rename(2) is atomic, so you can send small data payloads by writing to a different name first.

FLAG_PATH="${HOME}/.${app_name}rc/messages/${destination}/${signal_flag_name}"
# using the PID ($$) to not collide with other message senders
TEMP_PATH="${FLAG_PATH}-new-$$"
echo -e "foo=bar\nbaz=quux\ncount=42" > "${TEMP_PATH}"
mv "${TEMP_PATH}" "${FLAG_PATH}"

As an optional linux-specific feature, you can extend that technique to be event-driven (no polling loop) by telling the kernel to notify you about file-create events by listening to the directory (NOT the file) with inotify(7) for the IN_CREATE messages. Those events can be received either in a simple blocking style by letting poll(2) wake-up your process. Alternatively, you can receive events in in a non-blocking style with poll(2) if you give inotify_init1(2) the IN_NONBLOCK flag. The man oage inotify(7) should have an example.

[1] this can get annoyingly complicated - but certainly not impossible - if you have to care about user/group permissions, esp. on the directory. Making a group specific to the message sending can help.
Doesn't the market just build in the tax deductions into the prices?
There was a crowd-sourcing campaign to re-write 2.0 in Ruby:

https://www.bountysource.com/teams/rvm/fundraiser

However, I haven't heard anything of it in a while.
If we remove the snark and keep the reality:

Those problems do exist on all platforms and the tooling elsewhere is usually not as good.
Yes, I get it. Being a Mechanical Engineer and used to balancing energy in heat engines, I just (incorrectly) assumed that SOME kind of work was being done by the computer to perform its main function, which is obviously not the case (at least not to non-negligible amounts). Thanks for clarifying.
I haven't tried it, but you should be able to have multiple processes listen on the same UDP port bound to localhost using SO_REUSEPORT. Send broadcast UDP packets (using SO_BROADCAST) so they all get it.

From here: http://www.kohala.com/start/mcast.api.txt

"More than one process may bind to the same SOCK_DGRAM UDP port if the bind()
is preceded by:

int one = 1;
setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &one, sizeof(one))

"In this case, every incoming multicast or broadcast UDP datagram destined to
the shared port is delivered to all sockets bound to the port. For backwards
compatibility reasons, THIS DOES NOT APPLY TO INCOMING UNICAST DATAGRAMS --
unicast datagrams are never delivered to more than one socket, regardless of
how many sockets are bound to the datagram's destination port."
There are various important use cases. One of them is that people want to use the same workflow when deploying their databases that they get when deploying their apps. It is possible to use our Tags system to force your database containers to live on systems with a special hardware configuration. Additionally you could configure the database application in ContainerShip to utilize all of the available resources on a given follower host or hosts, forcing them to run single tenant.
Show HN: I've released HOURS of free programming tutorials Would love feedback
How does the site find where the words are spoken?
After reading parts of a free book (or several), one might be much better qualified for buying one 100 dollar book. It's not like expensive books are good and free/cheap ones are bad - as a general rule.
Wake me up when there's a Docker-independent hypervisor engine.
- Used a background thread with a single slot queue to make sure our response was returned to the user before we emitted the event log message, but always emit the message before moving to the next request

The crosstown_traffic API in hendrix does exactly this.

https://github.com/hangarunderground/hendrix
How many production servers have you been responsible for in your lifetime?

"There is no difference to running an executable. "

... There are these following differences.

1. That url, assuming no malicious 3rd-party/nation-state is spoofing the response, could return any different version of the installer resource at any given time.

2. That url might not always be available, for any number of reasons, and how is someone who wants to "discover" this software when they are looking through their available package list?

3. Who knows what that url is "suppose to do" ... there is no signing process, peer review process, nothing, you get whatever the apache server on the other side of that HTTP request wants to give you, and your gonna send that right into your root shell...

4. Unlike a package, sitting in my personal safe, self host, audited, self-verified debian package repository mirror ... this URL might not work tomorrow, it might not work at 3:35am when my primary server took a shit and i need to rebuild the whole stack... who knows what this URL will do in between subsequent runs... it could return 2 different things when I am trying to build a cluster of this product.
The idea behind hyper is to propose something slightly different, answering the security issues you can have with containers.
Software Commons vs. Product
Google I/O 2015 – The next generation mobile web