skysight-inc/HackerNews huggingface dataset:
I've been using vim + ensime for a while.

- EnType is slow and only works when obvious

- EnImport ... never worked for me, but I'd _love_ it! Perhaps there's something I'm missing. How do you add imports?

- The automatic typechecker sometimes works sometimes doesn't. Shows unused imports which is somewhat neat.

However, ensime's killer feature for me is fully contextual completion with <C-x><C-o> - works great and is supremely useful.
LuaTeX Comes of Age
Unless they were making credible threats, I don't really care. If they were making credible threats, that's a matter for the courts - and shouldn't (in my opinion) be a matter for Google to decide. Not with domain names, no. They took property, without judicial oversight. They can get their domain back after sixty days, if they can find a new registrar.

I don't like what they had to say, and I'm not white so they pretty much hate me, but the freedom of expression extends to even stupid people. Freedom of speech shouldn't be about just the absolute barest considerations of legal protections, it should be a social ideal.

Yeah, the Nazis hate me. Yeah, they pretty much suck in every way. I kinda like being able to say they suck and I really don't care that they think the same about me. I care when it becomes a credible threat. Well, slander is not acceptable so long as truth is an assertive defense.

We are probably not going to agree about this. That's okay, I know I hold a very strong view. It doesn't bother me that they speak. It just makes them easier to identify.
>It seems like the python maintainers always try to complicate things for themselves to cater for some obscure use case that nobody use. I mean really, when was the last time you ever accessed a namedtuple by index??

I do things like

for x, y in iterable_of_ntuples:
#process

all the time
Hints at infrared face detection to me.
> We considered trying to fight it legally, but after meeting with a lawyer and realizing the reality of the situation I left feeling completely defeated and jaded.

if you didn't get a second opinion, you should have found a new lawyer
The risks of putting your money into initial coin offerings
The main ones are that innovation has rotted and quality has slipped after Steve Jobs.
Looks like the kind of experience Pivotal likes. For what it's worth there's a Labs office in the Merchandise Mart. You can always try to apply and explain what you're looking for. I know they've hired a few people who work from home most of the time.

You won't be able to do 100% remote though.
Add one or two zeroes at the end and i'd guess we'll be more in the ballpark..
Your Point3D class is _not_ functionally equivalent to a NamedTuple. The class is so minimal that I wouldn't bother calling it a class as much as I would call it a glorified dictionary.

I do like the concept of Structs. I first used them in Ruby, so I figured that all "very high" languages had the concept. Python, however "struct" has a very different meaning in Python. sigh It's intended for encoding/decoding binary data from strings/bytes.

https://docs.python.org/3.6/library/struct.html

There is a lesser known use case for the type(...) function. Normally, one would use it to find out an object's type.

>>> type(42)
<type 'int'>
>>> type("foo")
<type 'str'>
>>> type(type)
<type 'type'>

But, it can also be used to create new class types.
https://docs.python.org/3.6/library/functions.html#type

>>> Point3D = type("Point3D", (object,), dict(x=0,y=0,z=0))
>>> my_point = Point3D()
>>> my_point.x
0
>>> my_point.y = 42
>>> my_point.y
42
>>> my_point.a
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'Point3D' object has no attribute 'a'

Which is, essentially, what Ruby's Struct class provides. And, Python objects don't have privacy, so it's more comparable to the OpenStruct class.

Edit: Just wanted to tack on a shout out to Attrs which is really nice improvement to "Struct" concept. http://www.attrs.org/en/stable/ h/t hynek
Nobody likes to download and install stuff. Just imagine the state of the web if you had to install a app for every website you visit ? Oh...you need to add iOS and Android to the list of platforms. That makes it 5 platforms. 5x the work.
Fair enough, it's only Monday through Friday.
An announcement of an announcement, the most off-topic kind of offtopicness.

https://hn.algolia.com/?query=%22announcement%20of%20an%20an...
yeah, the hole business model would be very hard to salvage.
>performance is usually priority #1.

Not usually. Stalling for time in every allowed way to get more bids is something usual
Sure, deleting unused or bad code is a good thing, or refactoring or rewriting something more tightly. But you can't implement a new feature just by deleting code. I've never been in a codebase that did more and more by getting smaller.

People also take offense because a management weenie can misread the metric and penalize people who delete code, or write concise code, or solved a super tricky critical bug after a month of debugging with a one-line change.

But I still claim, these all normalize in the end. If a developer on my team has committed only 30 lines in three months, sorry but I'm gonna be skeptical of their actual productivity.
"lol jk it's actually just a 12 foot long Touch Bar"
It's not bragging, it's just what we do. Lunch is 12:30 to 1:30 every day. Some people may not like, that's totally fine. Also, we only work Monday through Friday. It's not a prison camp for heaven's sake.
A higher order function is a function that takes one or more functions as arguments, or returns functions, or does both.

The 1960 Lisp manual already describes a LAMBDA operator and functions that take functions, such as APPLY.

This papering about FP by Backus seems to have occurred in the mid to late 1970's.

"Higher order function" is a name given to something that some programmers had already been taking for granted.

(And I don't think Backus was trying to take credit for inventing anything. Of course he knew all that.)
Yep, lunch is 12:30 to 1:30 every day.
Why most startups die at 40+ people and what to do about it
It's worth noting that while GPG's financial situation is better now, GPG is still looking for funds. Here[1] is a post from June about their current donation campaign.

[1] https://gnupg.org/blog/20170606-campaign-launch.html
Theodor Adorno and Max Horkheimer's The Dialectic of Enlightenment (written in 1947 - when Nazism, Stalinism, Fat Boy & Little Man, and the advent of popular culture were still in short-term memory) devotes a good amount of analysis to how - in spite of society's tendency to espouse 'progress eliminates regression' - society is not monotonically increasing.

> "The self, entirely encompassed by civilization, is dissolved in an element composed of the very inhumanity which civilization has sought from the first to escape.”
If we're ignoring the law, why aren't you ignoring race?
A really interesting read and imho it's quite relevant to our current times. This is the current political climate in a nutshell:

> Dualists in a relativistic environment tend to see themselves as surrounded; they become increasingly lonely and alienated. This attitude “requires an equally absolutistic rejection of any ‘establishment’” and “can call forth in its defense hate, projection, and denial of all distinctions but one,” Perry wrote. “The tendency … is toward paranoia.”

Reading parts of the manifesto, rambling on about "leftists/collectivists/socialists", also reminded me about rather recent "alt-right" arguments. I guess we humans just prefer our realities to be neatly dualistic or else we might be wasting too much energy actually "thinking" about stuff, what a hassle that would be!
Considering all the bad logos in the world that humans make, use and like - I wouldn't bet on it.
The automated restaurant is a chain called Kula Sushi. They have several branches in the US, there's about a half-dozen in southern california.
Pivotal targets a 40-hour work week. If you have to work beyond that you get comp.
Probably. I used to do formal proof of correctness work and headed a project to build a verifier.[1] That stuff is very hard.

The partially initialized array thing is an issue of expressive power. You can't talk about that in Rust yet. This is a classic issue. The three big headaches in C around memory safety are "how big is it", "who owns it", and "who locks it". The language lacks the syntax to even talk about those issues. Rust can talk about those, which is a huge step forward.

Before you can even consider verifying something, you have to be able to talk about it in some formal language. Preferably the one you're programming in. Having to do formal specifications in a separate language is a huge headache. Been there, done that.

There are a few standard trouble spots. I've listed two of them. Most other unsafe code comes from

1) Foreign functions, which can be expected to decline over time as more libraries are implemented in Rust. (How's SSL/TLS in Rust coming along?)

2) "Optimization", which may be premature. This usually consists of bypassing subscript checks. I'd rather have the subscript checks on all the time, and see effort put into hoisting subscript checks out inner loops. (Subscript checks that aren't in inner loops usually aren't significant overhead items.)

3) replicating C/C++ code in Rust. (An early attempt was a transliteration of Doom into Rust, with lots of pointer arithmetic.)

Remember, it can blow at any seam. It only takes one buffer overflow to allow an exploit.

[1] https://github.com/John-Nagle/pasv
It's news.
Tarte Make Believe in Yourself Tartiest Lip Paint 11.00
Tanzania becomes the latest country to use Zipline drones for medical deliveries
At the time I copied games for ZX-80 on a tape recorder. One 90 min cassette had 260KB of storage. And now IBM make a 330TB one.
Namedtuple is used a lot in the standard library to return struct-like results which used to be returned as an actual tuple, so making them non-indexable would break a lot of code, some of which was written before namedtuple even existed.
I think you missed the point of the parent. The idea of an atom bomb did not enter Truman's mind out of the blue sky. People create technology, and that in turn influences decisions. The types of technology we surround ourselves will in turn shape us, and the further decisions we make. It's more intertwined than a simple "force multiplier", it's also a force director in a way.
I've seen jquery code that looked like spaghetti, it was very hard to read or change even if you knew jquery. This is the problem that most libraries and frameworks tries to fix. I think react has succeeded.
Packed with stuff maybe, but utterly boring and conventional.

I'd trade all these announcements for just one that's actually innovative and a sign that Apple is back to being about innovating rather than milking ten year old franchises.

Here's to hoping that the highlight will not be a new iPad, iPhone or a laptop.
An aggregate service would probably have to service those transactions as credit card usually have $0.30 fee's per transaction so you'd probably need to aggregate all fees to mitigate the minimum charges.
Exactly - releasing is the easiest part of the process.

A lot of orgs don't have continuous deployment because of reasons such as:

- they don't have a good enough automated testing suite (or at least don't trust it fully), and thus rely on "sign offs" to have people commit to saying it's quality

- they don't measure in production properly (no real error alerts, no way to measure release success), and often deal with things in a "go or no-go" type way

- they don't canary test. To me this one is critical - the only way to get real production use is to have real production users actually using the site/platform/app, just a sample of them, to see what could go wrong, especially with new features

A lot of managers I've worked with are shocked whenever I pull out the "continuous deployment is easy. doing it well is hard" line.
Ford and Chevy both build limited run, very reliable 600ish HP cars. It's just that the exotic builders don't produce at scale and can brute Force problems due to their margins.
In functional programming one should model change over time as a stream of immutable values, there is no "conceptual mutability" and no need for mutable variables.
I use Google Assistant through my Google Home daily. For simple fact lookups, setting timers, playing music, asking for a video from YouTube or Netflix, and most recently making outgoing phone calls when my phone is elsewhere.

For everything else my phone is easier. It's very good at the above list though.

Oddly I don't use the assistant much on my phone. Usually when I have a screen in front of me I want to be more detailed than the assistants currently allow.
Laws are like coupons: you can redeem them, but no coupon redeems itself without a redeemer.
The point is easier to see with things like the printing press, the personal computer, cell phones, or even facebook...

> As long as we agree that our will as human beings exceeds that of technology, then it is people doing the changing, whether thru build of tech or use thereof.

The collective will of human beings is helpless in the face of such technologies. To act as if we have control over the changes they produce deeply misunderstands the situation.
Scale and velocity can create entirely different qualities. Change has always been with us, just not quite like this.
Search for the author's home page, which has a link to his Ph.D. dissertation. The thesis provides a lot more background material and examples.
Yep. But two wrongs don't make a right.
>To maximize their yield, they resend ad requests in a loop to multiple parties every few seconds until an ad clears, leading to this massive network load.

They are stalling for time in every allowed way to get more bids.

A standard tactic for company like theirs is to send duplicate lots for a single impression, and reload the ad few times per second once they get overriding bids even if one of lots was already sold.
Ugh, typo
(and I can't edit it anymore). I meant "separate domain". Subdomains actually don't protect against cookie attacks.
If T is a reference type, doesn't Rust do an optimization where <Option<T>>> is implemented by using null pointers?
> Where do you draw this line?

Well, if it were up to me? I'd stop it entirely. Pare Govt. back to 'core business': courts, embassies, Police, Defense (actual defense, not invading foreign countries on a whim), that sort of thing.

There's a grey area around public funding of defense-related technologies; it's hard for several reasons, especially the tendency towards such systems becoming incredibly corrupt.
this is silicon valley. Every investor you meet tries to give you advice on how to run your company and live your life, even if 99% aren't going to invest in you.
Throwing Code Away Frequently
let cycle = "cycle " ++ cycle
Story points vary wildly between teams. I'd argue that they're a worse metric than LOC
Haha, yes it did. But it had little traffic and what little useful information it contained is mostly out of date.
Being pessimistic isn't the problem in and of itself...at least not if you're willing to have a reasonable discussion around the topic and back up your views in some respectable manner. There are entirely valid reasons why you may not like Apple's ethos, Apple's products, or even just specific decisions Apple has made in the past.

It's the blind rage and almost meme-like pessimism that always seems to surround big Apple events that I'm talking about though. It's in part because people just love being angry, in part because people like the "wars" and taking sides, and in part because the media absolutely loves to get clicks by perpetuating the outrage. It's almost the perfect tsunami of emotions when you consider that Apple is immensely popular and has been on top for a long time which in and of itself amplifies everything.

I mean you can go back and look at the MacRumors forum threads for every single Apple keynote in the past two decades - no joke - and you'll find hilariously consistent discussion patterns. It's to the point where you can make a very accurate bingo game about the topic of people's outrage without even knowing what the announcements are.

You just gotta ride it out and wait for things to settle to have any real discussion.
And waitstaff.
Per usual on ISP topics popping into hacker news, I implore anyone considering starting an ISP to jump into the ISPSchool Slack channel. PM me or send an email to staff@tsi.io and we will add you.

TL;DNR Montana probably has faster internet than you. http://tsi.io
>Python, however "struct" has a very different meaning in Python. sigh It's intended for encoding/decoding binary data from strings/bytes.

That's because the struct module is for dealing with structs, in the C/C++ sense. Like actual structs.

That aside, attrs is a great library!
Third-party script loading is as old as the <script> tag and predates any applicable standards. That is, browsers added <script> before standards did, and allowed cross-site loading of scripts, just like cross-site loading of everything was allowed at that point.

Simpler days, 25 years ago...
What all these dots above 100% mean, besides moving the average up? And I'd be worried about the owners of all these dots below the line
I understand the sentiment. But if you had a low score due to poor financial management, you'd be better off getting some education with your loan than not getting a loan at all.

That said, these are small business loans, which is an area where advise would presumably be a lot more welcome than on a mortgage.
No new Mac minis? [1] With the lacklustre performance of the Late 2014 models [2] it has effectively been 1774 days (4 years, 10 months, 9 days) since they were last updated.

[1] https://buyersguide.macrumors.com/#Mac_Mini

[2] http://www.everymac.com/systems/apple/mac_mini/mac-mini-alum...

Compared to the "Late 2012" Mac mini models, the "Late 2014" Mac mini models are between 1% and 9% faster in single core tasks but between 5% and 43% slower in multicore tasks
3 years old, and he smoked four packs a day
The first amendment does only apply to government which is why it's not effective in controlling corporate abuses of power.
You are spot on as I have been developing in node for the past 2 months. Coming from doing python and c# in the past, I picked up the asynchronous nature + promises and their "gotchas" within a few days of writing and rewriting an activemq module. All of our other requirements/stories have been developed at such a high speed relative to my past projects. Combined with docker and a QA team that writes automated tests with postman and protractor, our continuous integration is at a high maturity level.
> As long as I am able to block any element I want using my browser (and god help us if we reach a state where we can't)

Render content & ads on a single canvas?
It's not about poking holes, is about showing the ones that exist. It's only one data point (with unusual circumstances, like paying $0 for charging all the time).
A Serf on Google’s Farm
Awesome, switching over from OneTab.

Some things that would make it more awesome:

- detect duplicates
- ability to sync with a cloud service, e.g. Google bookmarks
There's really no limit to VCs.
It is directly related. Temperature extremes drive weather events, such as hurricanes and therefore flooding.

Less extremes = less flooding = less death
This is the tableau they're talking about: https://en.wikipedia.org/wiki/Method_of_analytic_tableaux
Why would they have to stop working for Microsoft?

Microsoft is a large, multi-national corporation. What better way to say "We still support these people" than, where possible, helping to relocate them to an office in their country of origin? Not every country, or city, has a Microsoft office, but Microsoft isn't exclusively in Redmond, either.

This issue should not be simplified to "You have to go back." Even if it were, that would still leave a lot of creative solutions for how Microsoft (and other large, wealthy corporations) could take care of the employees they claim to care so much about, regardless of where they live.
If you have a MagSafe connector, cover the middle pin with electrical tape.
Stopped reading right here:

> The second error, “Type mismatch”, appeared 1771 times in the logs. That’s good news. It means the type system is working well: it catches type errors pretty often. Cool! I can finally honestly claim that I use Scala for a good practical reason.

That’s good news? Why? How? "Pretty often"? Comparing to what? Maybe it is, maybe it isn't. I don't know. 1771. Ok then.
Except innovation doesn't work like you're suggesting it does. Real innovation takes an insanely long time to manifest and it comes in waves. It often builds on top of stuff that's incredibly familiar to us and doesn't look like innovation except in retrospect.

Even the iPhone falls into this category.

I like to contextualize the concept of innovation with the "S" curve: https://osmoticinnovation.files.wordpress.com/2012/02/tech-c...
It really depends on how the infrastructure is built. For instance at our WISP we limit tower radius distance to 1 Mile. This allows us to push higher speeds and have lower latency. I do agree; many traditional WISPs try to maximize tower distance to CPE's in an effort to maximize their ROI, however it comes at the cost of a decreased customer experience (though in some areas this is unavoidable).

We use Cambium ePMP hardware (the Motorola team split into UBNT and Cambium) in 1 mi radius' and see ~40-90 Mbps down and 10-40 Mbps up.
Los Angeles and Orange County end up in different states? That's an odd place to draw the line.

Also weird that progressive SF ends up with the more conservative far-north counties.
Or that San Diego gets roped in with all the farming communities.

Id say Orange County is more like San Diego than it is like LA. Clearly no matter how you draw these lines people’s commutes will be crossing states (which also happens elsewhere, for example NH and MA).
Is there a book on Programming Data Structures in Rust. Like from scratch. Trees, Graphs etc. I would expect the first 2 to 3 chapters to be on Rust pointer system and the rest of the book to be on implementing Data Structures using the pointer system.

Similar to like Tanenbaum's book for Data Structures in C or Kruse, Leung and Tondo's book for Data Structures in C.
I thought "calexit" meant California leaving the USA. This is a similar but different bad idea.
The paper linked in the blog was actually published back in June. And as the sibling comment says, people have been trying to use attention mechanisms to augment recurrent networks for some time. The novel idea here seems to be sorting the recurrent network, and just keeping the attention mechanism.
Focal lengths slimming the face / tilting the scales towards heavier women (pun intended) is an interesting theory.

But natural T increase? This sets off my quack-o-meter.
He has said something to more or less the same effect:

it was firmly implanted in people’s minds that computing science is about machines and their peripheral equipment. Quod non [Latin: "Which is not true"]. We now know that electronic technology has no more to contribute to computing than the physical equipment. We now know that programmable computer is no more and no less than an extremely handy device for realizing any conceivable mechanism without changing a single wire, and that the core challenge for computing science is hence a conceptual one, viz., what (abstract) mechanisms we can conceive without getting lost in the complexities of our own making.
Don Knuth has a dragon curve in the entrance hall to his house: https://www.youtube.com/watch?v=v678Em6qyzk
Ha. Thanks.

I should have read the paper, not just jumped to the Github link.