skysight-inc/HackerNews huggingface dataset:
The article links to this piece, which dicusses how even the BBC can toe the line here. Apparently the "making-of" at the end isn't always the whole story and they say you must go to the internet to get all of the details.

http://www.telegraph.co.uk/culture/tvandradio/bbc/8963053/BB...
Doesn't the IDL approach require that the declarations/intermediate language be written manually though? Most C++ libraries out there don't have any IDL files (looks at QT)
> with a vast reduction in complexity

That is very optimistic looking at the current state of client side development with it's ever changing Javascript, Babel, Typescript, whatever script, Webpack, with HMR?, React or Vue? Angular? Flux? Redux? Isomorphic? Linters? Testing? CI? CSS/???SS or inline?, some NPM modules maybe?, and so on.. Sorry for me being a bit more pessimistic here.
That video gets about 100x funnier if you watch it at half speed.
I don't know, things like 1/2 are pretty conventional fraction syntax.

But if you really wanted to, you could always do the same thing in Python, since newlines are basically just ignored inside parentheses:

(numerator /
denominator)

Or even place / on its own line if so desired.
I ran an ISP (then Chicago's most popular) in the mid-1990s, and even then, the whole enterprise mostly relied on infrastructure provided by telcos, who were required to lease us POPs under fair and reasonable terms.
Excuse me, NASA ran the COTS program for commercial resupply contract to the ISS, and they also ran another program for commercial space vehicle.

After all, NASA help made what SpaceX is today.

Of course, there's probably a faction within the NASA and aerospace contractor community that don't like SpaceX, but it is inaccurate to say that it run contrary to the interest of NASA as a whole.
Nothing like a daily BART ride to scare you off of working in the Bay Area. Especially one deep enough into the East Bay (with a long enough bus ride to the station) to cut the rent in half.

An hour each way (20 minutes for first and last mile, 40 minute train ride) will save you maybe 30%.
I thought I was the only person to do this. Glad to know others had the same idea.
Those links appear to warn of fishing around Sydney harbour and Oyster Bay. I still would bet almost anywhere along the proper beach is at least an order of magnitude safer than in comparable regions of the states. Many beaches I consistently saw heaps of guys surf casting.
What's ironic is that the "safe" politics of the Bay Area are deeply offensive in workplaces only 50 miles inland (and vice versa).

I agree, politics at the workplace is inappropriate, except concerning issues of importance to that company or industry, e.g. Exxon being critical of drilling restrictions or Google evincing opinions about the continued legality of enumerating people's home wifi access points.
Show HN: Reproduction of one of Malevich's Paintings with Particles
C++ is an extremely challenging language to write a wrapper generator for. I did a C++ to Common Lisp generator about a decade ago for my GSoC project, based on GCC-XML (with the goal of being able to wrap QT). The two challenges you run into are that the GCC C+ ABI is extremely complicated and requires a runtime on top of whatever low-level C FFI you're working with.

The second is that many semantics just don't map very easily. I imagine the latter problem has only gotten worse with heavier use of templated types in APIs. It looks like CLIF doesn't expose the template per se (at least in the Python examples) but requires explicit instantiation of each specialization as a distinct Python class. Templates mess with the very concept of an FFI generator, which tends to assume a reasonably clear separation between compile time and run time (so you don't need to run a C++ compiler as a pre-pass on any code that uses a binding).

All that is a roundabout way of saying: for god's sake write your system APIs in C.
Now I'm not too experienced, so correct me if I'm wrong, but isn't a signal strength reading part of the wireless protocol? If your signal strength takes a consistent dive over a small period of time (as you walk out of the building) you could engage the cellular connection to at least supplement the pope wireless connection.

Or how about if some x% of packets were lost/failed checksum you revert to cellular?

Both of these would likely require changes to the wireless drivers but they don't seem too unachievable.
I did a blog post last year that compared DigitalOcean, Vultr, and my 7 year old laptop for my Git indexing engine. Vultr performed better than DigitalOcean in all my tests.

You can find the numbers at https://gitsense.com/blog/benchmarking-march-14-2016.html

I probably should run the tests again to see how things have changed though.
If a website doesn't fit my preferred browser size, I leave the website. If you're expecting people to resize their browser window, you're in for some disappointment.
Heh, then I think I read you as saying something more interesting than you'd intended :-P
Can someone who understands the problem summarize why switching over to another channel dynamically is so difficult?

My naive intuition would just say that if the wifi connection suddenly degrades, the networking stack should just automatically switch over and try cellular -- are there complications?
I would love to see that day. Maybe do away with most of the over engineered concepts as well.
Ask HN: Do you collect sales tax for SAAS?
We sell SAAS software. Our customers can sign up on our website and use software that we host or they can download a copy of our software and install on their own computer. We don't ship any software in CD or any other physical means. We only have offices in CA.

Do we need to collect sales tax?
He's a nice guy. But his book is way past its sell-date - time to stop milking it so much & get on to the next gig/book/whatever.

https://news.ycombinator.com/user?id=antongm
In my experience, most cases of overloading are trying to achieve one of two things:

* An argument with a default value: foo(string bar), foo(string bar, string baz)

* An argument which can be of two or more types: foo(string bar), foo(byte[] bar)

I believe the first problem is better solved by an optional/default argument language feature (or in a pinch, a sentinel value).

I believe the second problem is better solved by either using a dynamic language, or an expressive type system that lets you say what you mean, either via polymorphism or union types.

For the remaining cases it's probably acceptable to have a second function with a slightly different name.

While we're on the subject: Keyword-specified arguments are a major quality-of-life improvement, especially once you have large signatures with many defaults. I see no reason why all languages shouldn't adopt python-style foo(x, y, abc=123, xyz=456). DoThing(myflag=False) is generally much clearer than DoThing(False).
Franchise agreements can't be exclusive anymore. Officials at any level can still play favorites, of course.
I'm cautiously excited. The problem with C++ is there's just so many good frameworks but you can't use them without creating more C++.

SWIG should be called WIG. And anyway, I can't see it surviving modern C++.

As long as I'm ranting, what is modern C++ but a bunch of new languages that are incompatible with C++, each other, and everything else? Forgive me if I'm wrong but this seems like a terrible idea.
Stock price is about expectations for the future. The last quarter only matters insofar as it offers insight into the future development of a business. And that 30% drop is also not necessarily about a single issue like Uber leaving.

TWLO guided lower for Q2, coming in below expectations on both profit and sales. Furthermore, Uber may be 12% of their business now, but that company is growing, and this means the market expected TWLO to make even more money with them in the future, which is not happening anymore. This also highlights how concentrated TWLO's business is, and how quickly they can lose a meaningful chunk of their revenue. Lack of diversification means more risk, and maybe the market had not fully priced that in.
Except it has indexed it. It just hasn't crawled it. But content or not, the aim you were trying to achieve (namely your content not being indexed) has failed. Thus you are then once again dependant on other countermeasures that render the robots.txt irrelevant.
Still it doesn't come close to the price of brand laptops, even non-Apple/non-Microsoft/non-Dell, but with the build quality to match or surpass those. I also don't care about Windows or whatever since I use Linux. It's the perfect machine for me, fits my use case like a charm. I'm sure there's plenty of people with similar needs that would also be satisfied with it.
Yeah, you know what else I'm realizing? All the different kinds of punctuation let my eyes skim over different parts of code so easily, and lisp doesn't give me that.

You know how, when you're reading natural language, you don't actually read individual letters, not once you have any reading fluency? That's how I read code, too, I'm realizing. When I see the parentheses in C#, my brain just goes "oh that's a method/function call" and I can either skip over the contents of the parens or read them if I need to. Reading comprehension is pretty quick.

Looking at all the parens of even that simple lisp factorial, and I realize that I'm feeling a lot of cognitive load that would simply never go away, because the punctuation doesn't let me filter any of it out. I'd have to read everything more carefully.
Could I run Haskell in the Chromebook? I mean, the real Haskell compiled to the platform.
Yes, academics who (generally) started their careers in the 1990s and are used to listserv-style communication. They kept wanting to interact with Discourse through email, but it wasn't the experience they were looking for.
These guys have been making some pretty neat controllers for a while now: http://xkeys.com/XkeysKeyboards/
Faithlife | Software Developer, Payments | Bellingham, WA | Onsite, full-time, https://faithlife.com/jobs/PaymentsSoftwareDeveloper

Faithlife is seeking an experienced payments engineer to join our engineering team, helping build out our payments platform. As an engineer on the payments team, you will be responsible for designing, building, and maintaining the services and infrastructure that move funds for Faithlife. The ideal candidate has experience with payment systems or FinTech startups.

This is a full-time position at our office in Bellingham, WA.

Please email your résumé, GitHub profile, StackOverflow profile, or other contact information to devjobs@faithlife.com.

Find out more about getting hired at Faithlife: http://faithlife.codes/blog/2017/02/getting_hired_at_faithli...

Please note that Faithlife will not sponsor applicants for work visas.
i have no idea what is reddit-AMA style proof is... sorry i didn't get around to making HN account before today.
This is little more than an opinion piece. AFAICT, the only "vulnerability" is that with JS on, it can detect the Operating System.

At some point it claims it can also detect screen size

> However, there are not too many people using the same OS and same screen size and visiting the same sites at around the same time. You will likely stand out.

but both my tests and themselves contradict that:

> On a normal desktop browser, the Window Size is smaller than the Screen Size. (Mobile devices may show a Windows Size that is larger than the Screen Size.) To prevent screen profiling, the TOR-Browser sets them to be the same size.

Note that detecting Tor Browser is doable from the User-Agent, so there's no point in setting Window Size = Screen Size.

Definitely not "exploiting", and I suspect that's why it couldn't get a reply from security MLs, which see a lot of these. Flagged.
Do you have any tools to automate that process?
Nope -- American.
(I have dyslexia, and originally read different companies.) Dont do it. It would be a risky, short-term strat. NVIDIA is the future, not AMD/ATI, at least right now. The move seems like an emotional market move as a reaction to institutional-investor liquidity event in-touch with future value. AI is going to be a trillion dollar business and will consume a huge swath of Tesla GPUs, and will need zillions of them to deliver pervasive value at scale. That is, before specialized AI accelerator ASIC and FPGA (combined with improved energy efficiency across the stack (ram, compute, networking and storage) and many, many cores) solutions are optimized to the various problem domains... then exit NVIDIA before that happens. AMD/ATI would be wise to pivot into going all in on AI acceleration, and that would be possibly GPU-killing for that market if GPU product evolution doesn't keep up (doubtful it would happen but at least AMD would have a stronger chance of survival.)
So, make a browser extension that gives you a different fingerprint every time you use it.
It is a country-specific convention. What's written as e.g. ½ in US would be more commonly written with a horizontal dividing line in many other places, or simply as 0.5. Similarly, 2.5 instead of 2½ etc.
"revenue would fall between $356 and $362 million for the year."

There's a sentence that should be written more carefully.
You mentioned in one of your talks about a small loophole in the early days of the App Store where apps were showcased under "new and noteworthy" if one made an update to the app - Q1: is this true?

And Q2: when you say "took off on its own" does it mean folks learned about WhatsApp only from word of mouth with no effort from the WhatsApp team?

Q3: what impact did charging for the app have on the company finances and growth rate?
HammerSpoon already does a great job at this on Mac.

http://www.hammerspoon.org/
The reason companies move away from SMS is because they are using it wrong. SMS is for two-way communication and not notifications.

I have a small company that is having great success with a niche product that uses SMS as a two-way customer communication platform. SMS is perfect for customer service (universal, no app to install), but it hasn't caught on yet.

SMS notifications are like noreply@ email addresses.
Customer concentration risk is a real thing.
I don't find most SQL too bad at all... where it gets weird is when you're dealing with more exotic data types and the database vendor's specific details in interacting with them. XML/JSON interaction in SQL databases tends to be particularly mind bending.

I do prefer the more fluent-like interfaces though... MongoDB and RethinkDB in node for example, or using the LINQ extension methods with Entity Framework (not LINQ syntax itself, which I find much more difficult). Though with LINQ, it's often interesting how twisted what gets queried from the data source can be vs. what you actually need... but that's a problem with most ORMs.

I do find that SQL queries with Node/JS adapters is pretty damned natural compared to any ORM for Java or C# imo...
Fun little article, but I find the overall premise a bit weird. I always thought of water filters as something that you use to remove harmful things in the water, not improve the taste. Filtered water may taste different, possibly even better, but that's not the goal when I use one.
The conversion problem on mobile does seem like an issue, but speaking as a former customer of Etsy what drove me away was the selection. Not that it's too small - rather, Etsy is now flooded with thousands of storefronts selling "artisan" pieces that are actually bought on AliExpress or similar and marked up. If they're trying to apply ML to managing customer recommendations, they should figure out how to identify who's actually selling legitimate wares.

I stopped buying from Etsy a couple years ago - I purchased my SO what I thought was a unique, interesting "handcrafted" necklace. I thought it looked a little factory-made when it arrived, but it wasn't anything too expensive so I didn't sweat it...then she found it on AliExpress for $5. I then realized the six week lead time for "hand crafting" was actually the time for international shipping and domestic re-packaging.
The way it works is that following: to check if wifi is in range, the only thing you can do is ping 'arthur you there?' to the router and wait for a response.

That wait time, unfortunately, is long on human timescales. Also, there's the chance your ping was lost, so your phone tries at least a few times before giving up.
Maybe they did?
Have you worked with AArch64? It's a nice improvement over 32-bit ARM.

I'd be more than happy for RISC-V to take over, but it does no good to pretend it isn't a risky endeavor. And I'd rather have an AArch64 world than an x86-64 one.
This is cool stuff, I enjoyed reading about it very much!
What plans do you have for for the robot and system after the painting contest is over?
I'm one of those who prefer decaf diet sodas. I have sleep issues so I don't like taking any amount of caffeine after a certain time, and once you get used to diet sodas, regular ones don't taste as good (on top of the ridiculous amounts of sugar that each one has).
Sure, but that's assuming you can detect the weak signal, boot up the cellular antenna, negotiate a new connection to the nearest towers (after discovering them) and connect to the internet.

I'm making a bit of an assumption here, but I think if Apple or Google could detect spotty wifi quickly enough to boot up the cellular antenna, they would be. I think the issue is more that by the time the phone can tell there is a problem there isn't enough time to bring up the cellular antenna and connect before service is interrupted.

I can't say I know much about cellular networks either, but in my opinion having the cellular antenna connected to the network at all times would greatly simplify the handoff when wifi gets spotty. The ability to use both to download/upload is just icing on the proverbial cake.
The magnetic Milanese loop is perfect for taking the sting out of a watch that you need to take off regularly to charge. I can take it off or put it on in around 2 seconds. I've never owned a watch so easy to put on or remove. It's up there with the magsafe (RIP) and detachable cover for the iPad with ease of use. I <3 magnets.
The part I find interesting is the 100% success rate between bottled and tap, which is something bottled water drinkers insist is true (being able to taste the difference, that is), but are often told is just in their heads.
Consult your accountant or lawyer instead of internet. Only then you will be sure.
India's ISRO develops a Solar potential measurement app
Moz| Software Engineer, Index Team| Seattle, WA| Onsite, Fulltime, https://boards.greenhouse.io/moz/jobs/603984?gh_jid=603984#....

As Moz's web indexing team, we deal with petabytes of data and trillions of records. We're a small team that believes in punching above our weight. As the team's fourth engineer, you'll build novel approaches to big data in a low-process environment. Technologies used includes C++, AWS, and Linux. Company is profitable, well capitalized, and well positioned to make effective use of your efforts. Generous pay and benefits.
Sorry! Was just repeating a number further up the thread, should have checked myself. Worse still, you'd already corrected him and I didn't notice :(
It's definitely interesting. Where everyone expected a new ARM SKU, Microsoft delivered a new x86 SKU, with an easy upgrade path. Through the lens of Windows 10 S as an "educational" SKU, it's particularly interesting in that idea that you could start the device locked down with S and eventually (plus $50 one time charge) "graduate" the device to "real" Windows 10 as the people themselves age into device ownership or out of locked down education environments or the devices get repurposed for different parts of a learning environment, etc.

(This seems to be a clear case where Microsoft is trying to separate itself from the iOS/Chromebook pack. For now you can't graduate and turn an iOS device into a macOS device. With a lot of work you might be able to graduate a Chromebook to Linux or Windows, but certainly not the ease of a $50 purchase from the Windows Store, or a free button click with an existing education site license for Windows 10 Pro.)

(Meanwhile, some of us are still hoping for that next ARM SKU, too.)
Does the other way really scale though?

I mean, the "state of the art" is to have readable code everywhere. What readable really means is "have each component defined in terms of the standard library". This involves a lot of repetition and a lot more code, with the advantage that any part of the program can be understood by a new programmer.

The Lispy/Bottom Up way is to write a language, then solve your problem in terms of the language you just wrote. Only at the very low levels are you really dealing with standard library stuff. The advantages are obvious, but the disadvantage of this is you have to learn the DSL as well.

Have you experienced both approaches?
Folks, and how do you record the user actions that happened in the past? Is it even possible?
lol seriously thomas what haven't you done? always finding new ways to impress me...
(IANAL)

Most likely not since you don't distribute a tangible medium.

It may be different if you distribute through an App Store. Apparently Google Play vs Apple address it differently.

https://www.quora.com/Does-sales-tax-apply-to-downloadable-s...
I actually made something similar using a small program called "luamacros" to intercept keys from a Planck ortholinear keyboard, then I printed out labels to put on the blank keycaps.

I think I've finally settled on a good layout, so I'll be printing up some custom keycaps to permanently print the legends on the keys.

It's surprisingly useful! I've got some buttons to open websites, some to do git-things, some to open terminals to various places on my PC, some to open folders, and a few to open programs.
Sorta true, but most of these bigger companies give you housing in addition to these salaries for their internships
It should be illegal to advertise to kids.
Your BASIC example doesn't have any local variables to close over. It just references a global. That defeats the whole point of closures.

Passing or returning first-class functions aren't a problem. First-class closures (function pointer + state) are.
> You know who else hates chameleons? Everyone on my team.

> Actually, every person on my team rolls their eyes [...]

Are you sure they're not just mimicking you?
Ah the joys of unlimited data. If it really is an issue though try llama which will turn WiFi on or off as you arrive or leave home.
>>it's a good that a demographic buys.

Oxygen and carbon monoxide are both gases. One of them is poisonous to humans.
Steelseries keyboads offer the same functionality with numerous easily programmable keys. I use heavily with Sublime Text. Steelseries engine software is flacky on mac though, since sierra update often freezes, fine on Windows.
Ideally keys should have programmable LCD icons aswell, I would happily pay $200 for such. I used to use Actions app on ipad, but a bit slow compared to steelseries, so stopped using.
I mean IDL-like, as in valid c++ that is almost as easy to read as an IDL (to me at least) but without losing the ability to dive in to the binding if necessary. If you're trying to produce a binding that feels idiomatic in the target language, I'd say this is important, and this is where Swig-like approaches show their weakness.

I think the author of Swig shares this sentiment: (http://code.activestate.com/lists/python-dev/109281/).
Get llama
How much of Twilio's revenue comes from unprofitable VC-funded companies?
On the note of "I really think that Twillio is first to market because of the inept management of telcos, but how do you compete when they figure it out?", the time for them "figuring it out" has come and passed imo.

All the big players tried to create their own offerings to compete with Twilio years ago, but they didn't catch on because they weren't developer-friendly. At this point, they prefer to remain the platform that companies like Twilio build upon from what I can tell.

(disclaimer: former Twilio engineer)