skysight-inc/HackerNews huggingface dataset:
China has export controls on money transfer, but they leak. They're not intended to be airtight; anyone in China can take about $50K in yuan to Hong Kong once a month and exchange it for euros or dollars. (Sending all your relatives to Hong Kong once a month to do this is a thing.) A big question for the last year was whether the PBOC was going to loosen or tighten exchange controls. Around the end of November, the decision came out: tighten.[1] Too much money is fleeing China. China flight capital drove the London and Vancover real estate booms, among other things. The PBOC wants to slow down the money drain.

Bitcoin is one of the leaks. It looks like the PBOC is taking a harder look at Bitcoin exchanges. It's a way to convert yuan to dollars or euros. Buy Bitcoin in China with yuan, sell elsewhere for dollars and euros. This is currently the main use case for Bitcoin. (Face it, retail use of Bitcoin went nowhere.)

[1] https://www.nytimes.com/2016/11/29/business/economy/china-ti...
If your talking about ec2 instances, its really the hardware and physical networking you don't have to worry about. You manage the virtual networking, hosts, etc.
Wait, there's actually a position called "Head of Diversity"?
Now that is disingenuous. There's no casino there. Not all land is sacred, but some is. Casinos aren't built on land that might face internal opposition within a tribe.
In fact I sign all of YC visa recommendation letters so just want to give a +1 on this comment :)
Show HN: Hello – repo that prints hello onto GitHub contributions graph
Is there a reason the oniguruma syntax can't be translated into other regexes? It'd require a fairly feature-rich engine since oniguruma supports practically everything, but is Chrome missing something fundamental that can't be mimicked? E.g. [::alpha::] could be converted to [a-zA-Z] or the UTF equivalent (though I doubt this particular one is a problem).
I use cmder to host cmd.exe processes. Definitely worth a try if you are looking for console emulators on Windows.

http://cmder.net/
Yes I believe Gogs is a single binary and fairly easy to deploy as a result. Gitlab is nice, but is a lot to setup and maintain unless you like that sort of thing, as I do.
Cool! Any idea what model or method is used here (or is it heuristic)?
If your company has a head of diversity, your company is bloated and this person isn't going to fix diversity. I view these strictly as PR positions because I have yet to see anything useful come out of them.
The Chairman of the Joint Chiefs' Professional Reading List
The Intel CEO announced the factory from the Oval Office this morning. This went way beyond some tweets.
The other issue I have with web page bloat: memory-constrained mobile devices are able to cache far fewer pages than a desktop computer, and navigating among multiple tabs, etc. gets slowed down to internet connection speed.
The latter is perfectly reasonable in some (many?) circumstances.

Break-fix work needing to be done on-call/24x7 while requiring in-office presence for design and new feature development (a fundamentally different type of work, typically requiring a higher level of collaboration) seems perfectly reasonable to me.
I'd like to know more about your experience - feel free to email me at michael@ycombinator.com
I understand that, but I'm using an endpoint in the same physical area my actual internet connection is (NoVA).
This is very cool. One thing that I think could be improved: It looks like the model is treating the white background as if it is also paint. This leads to some weird results when painting over existing strokes.

Really awesome work though.
Socratic | Android Lead + Head of Design | New York ONSITE | Full Time

Socratic is hiring for 2 awesome roles! Join our small team as we build a world-class (ranked #1 in Free Ed apps!) digital tutor and homework helper for students all over the world.

We're looking for an experienced Android Developer. This person will make all the critical technology and architecture choices that we'll work with for years. They will have built Android apps from scratch and shipped them to users via the Play store.

Also hiring for Head of Design. This person will have full ownership of design at Socratic: first as the sole designer, then as design manager as the company grows. They will work with our CEO to define product strategy (plan roadmaps, define product requirements, prioritizing tasks).

Learn more at socratic.org/jobs or say hey at jobs at socratic dot org!
yes lot of these web pages are the size of mp3 files. it's just fucked up.

we decided static html webpages are sooo 1999. Yet it remains the most secure and user friendly medium to deliver value.

bring back the 1999 frame side bar. what was wrong with that?
Not quite. To be a first-class data object you not only need to be able to pass and return them, but you also need to be able to create new ones at run time (i.e. you need to be able to make closures). C can't quite do that. (You can roll your own closures, but it's awkward.) But yes, C is closer to being functional than most people realize.
We still QA, but since we have a pretty sturdy code review process where we check out changes and double check them, alongside requiring debts to write test plans and then using Flowtype to limit side effecty changes.
Two approaches that could get you very far without O(N) effort:

• a Matrix gateway server

• a libpurple plugin
If you're running a purely domestic web store, maybe, but people in developing nations are not that different from people in developed nations, they can be just as interested in a a wide variety of topics, that's what makes the internet so appealing and wonderful.
It's harder than it sounds if you want to support many languages. The Sublime syntaxes repo I use has 34,000 lines of grammars whereas my engine is only 3000 lines of code. If you count all the tmLanguage files for nice languages available online it's probably hundreds of thousands of lines, and that's in a pretty dense format. The whole point of using tmLanguage files is that people don't care about how fast other languages are if there is no highlighting for their language.

I could get way better performance by rewriting all those grammars using compiled parsers in Rust (like Xi has as an option https://github.com/google/xi-editor/blob/master/rust/lang/Ca...) but it would take an absurd amount of effort.

The speed of highlighting tmLanguage files is limited mostly by the regex library. My code spends 50% of its time in Oniguruma. You can improve that a bit by using a fancy regex engine, which is how Sublime is faster than my engine, but this evening I'm going to try to port my library to a faster engine based on Rust's regex crate. But that library (https://github.com/google/fancy-regex) is brand new and almost untested. It's the only open source library that is faster than Oniguruma while supporting all the right features. In the future VSCode may be able to gain some speed by switching to it, but they have much more overhead over the regex library to eat away first than I do.
I visited their fab in Israel. Amazing place and they are Israel's top high tech employee.

This is highly technical, high R&D stuff. Only their fabs in the US and a few other places (Israel, Ireland) can do that. But, in Israel they get preferential tax treatment (because otherwise they will leave and go to Ireland or the US).

So I wonder what would have happened had Trump not been president, or alternatively, what tax breaks he promised.
Funny you say that given I discovered ECL looking up ways to do fast CPU's on human-verifiable nodes. Might try to make some of them in the future.
As someone who had fiber internet then had to spend a year and a half on 1.5MBPS DSL ... (hell) ... I can say I agree that it sucks...

I can also say that at no point did I feel entitled for it to work better for me. I don't understand this level of entitlement (i dont like your ads, i dont like your layout, i dont like your visual effect ...) ... just leave the site.

The modern web isn't simple static pages... its not going to revert to that, either. We're developing actual applications in the browser now... those aren't easily translated to static, simple pages...

This is today's "grumpy old engineer" argument...
20 seconds of drawing with default parameters and laptop temperature went from 40 to 70 °C. Not bad :D.

Nice work though, very beautiful and realistic.
I think that's because the majority of folks using ML care only about discriminative ML, not generative. A black box ML technique that delivers low predictive errors is good enough. To those ends, parsimony is largely irrelevant.

I suspect that others using ML, who are inclined to test hypotheses, induce cause, and discover unknowns (via generative ML), are far fewer.

So it's hardly surprising that the eye of discriminative MLers dominates in defining 'sexiness'.
Linux "containers" didn't take off before Docker either, despite existing for many years (first in the form of OpenVZ, then as LXC).
But we're talking encrypted streams here. No algorithm, real or imagined, can dedupe or compress random noise.
Sounds good! Although it says: "This setting should be considered experimental, and is disabled by default"

I assume all the repos involved have to be managed by the same Gerrit instance too. In that case it's not clear to me what you actually gain from multiple repos (besides working around Git's scaling issues).
re2 is not only about exponential time: matching of regexes like a|b|c is O(N) in backtracking engines and O(1) in DFA-based engines like re2. It can make a big difference in practice for generated regexes - e.g. if you want to check if an URL has one of the thousand substrings in it (think adblock-like use cases). With backtracking regex or with a loop it'd be O(N) regarding the number of options, but with DFA it is O(1) regarding the number of options. I've seen 1000x speedups for similar use cases with re2 vs re from Python stdlib.
Thirty bees the opensource fork of PrestaShop has hit their second beta release
Lisp is fun.
Keep a separate sparse iCloud account if you don't think you have the soft skills to work around that unlikely scenario.
Saw this yesterday in the app, tried to use it and it failed.

Works like a charm today.

This should be very nice for ad-hoc secret exchange.
The zoom feels kind of laggy on web.
You obviously have to be in a field like software engineering where there's a shortage of employees and employers can't get too picky about things like that.

I did it myself for years modulo the health insurance part (we have universal healthcare in my country).
Developing Digital Solutions That Improve Brick and Mortar Store Experiences
Holy moly! Awesome work. It looks very realistic. Congrats!
Is this because you don't believe that employees have a problem with monocultures? Or because the initiatives they undertake don't address the problem?
The Art of Software Testing by Glenford Myers is great.

https://en.wikipedia.org/wiki/Glenford_Myers [1]

The anecdote in the beginning of the book, where he poses a simple question - how many test cases can you write for this simple program? about the geometry of a triangle - is mind-blowing, and sticks in my mind many years after reading it.

He says most people he gave it to, even experienced devs, did somewhat poorly or just average on it. I gave it as a test to a team (of juniors) on a project I was leading, once, and it made them see some light. We subsequently went on to deliver a pretty well-tested project.

[1] Excerpts:

[ Glenford Myers (born December 12, 1946) is an American computer scientist, entrepreneur, and author. He founded two successful high-tech companies (RadiSys and IP Fabrics), authored eight textbooks in the computer sciences, and made important contributions in microprocessor architecture. He holds a number of patents, including the original patent on "register scoreboarding" in microprocessor chips.[1] He has a BS in electrical engineering from Clarkson University, an MS in computer science from Syracuse University, and a PhD in computer science from the Polytechnic Institute of New York University. ]

[ During this period, Myers also authored his first four books, including The Art of Software Testing, a book that became a classic and a best-seller in the computer science field, staying in print for 26 years before it was replaced by a second edition in 2004.[3] Myers also served as a lecturer in computer science at the Polytechnic Institute of New York University, where he taught graduate-level courses in computer science. Years later, he was the 1988 recipient of the J.-D. Warnier Prize for his contributions to the field of software engineering. ]
Agreed. It's not just "third world countries" that have slow connections. Low powered devices have slow connections. Places where there are lots of people with portable devices have slow connections. This is now not a long time ago, nor far far away. The more wearables and IoT becomes a "thing" you're going to find that attempting to get more interactions by saving on transmission and client CPU load is worth the investment.
How would you improve daily stats in git?
Something like irssi-otr? https://github.com/cryptodotis/irssi-otr
This Robot Barista Makes a Dang Good Latte
pcwalton is not framing the problem in a particularly useful way.

This is a question of risk management and his argument is basically that one should always reduce the risk of memory management errors to zero. Others say that they can tolerate some risk, as long as it's in acceptable margins, since it's expensive to totally eliminate it.

I don't think that lecturing everyone "No, you really want to have 0 risk, you fools" is a successful programming language advocacy strategy.
Thank you for this. In your note on tools, I notice this line:

"I have chosen an obscure toolchain which lulled me with its elegance and iteration speed, while the actual runtime performance and capabilities suffered."

This always seems to be the faustian bargain, when going into the deep deep world of graphics programming and generative art. Not that these tradeoffs are unique, far from it, but it is exquisitely obvious and painful in this discipline. I commend the effort.
This is exactly wrong. We bid for land in the main as most jobs require living in an area where demand exceeds supply (especially as demand is inflated by our land speculation system).

If we get more productive and wages rise we have more disposable income so rents / renting money from the bank (mortgage) rises.

If we cut back on consumption we have more disposable income so rent rises.

Productivity gains are captured by land prices.
> The main table in this post is almost 50kB of HTML

Just for fun, I just took a screenshot of that table and made a PNG with indexed colors: 21243 bytes.
Maybe you're right that it's wrong to think that modern C++17 (unique_ptr, shared_ptr) written by experts is free of memory safety issues.

But in this specific case, it looks like old code from 2002[1]. No modern techniques such as std:unique_ptr. Just 1970s C style raw pointer manipulation. I suppose the contemporaneous compiler used by John Maddock would have been C++98?!?

[1] one example of a source file mentioned by the bug report: http://www.boost.org/doc/libs/1_63_0/boost/regex/v4/perl_mat...
29 percent is a lot and definitely proves you don't need to be from the US. many would argue it should be lower.
This would have been brilliant 10 years ago. If BBM was open to non-blackberries, it could have killed WhatsApp before it began. It's weird to think of how popular Blackberries & BBM was back in the day. I was in high school in 2007, and it was cool to have a Blackberry. BBM was how people communicated with their crushes. If Blackberry had the vision, they could have preempted much of the current craze for social messaging.

Of course, hindsight is 20/20, and it's entirely possible that opening BBM up would have radically cannibalized Blackberry sales.

The article's comparison to Twilio is interesting. Twilio's market cap is 2.64B [1], while Blackberry's is 3.84B [2]. I'd bet heavily that Twilio overtakes Blackberry soon.

[1]: https://ycharts.com/companies/TWLO/market_cap

[2]: https://ycharts.com/companies/BBRY/market_cap
His other work is cool too: http://david.li/
I've yet to see anything come out of the PR-driven "diversity" push anyway. Call me back when those above the age of 55 can get jobs in Silicon Valley.
"Diversity" is not a problem that needs a fix in a tech company. Hire the best people for the job, end of story.
Perhaps all new policies should have to be applied first to legislators.

Want a password requirement? Fine, submit yours first, Congressman; we won't abuse it, "promise".

Want inane questions and forms with high fees? Fine, Congressman, first you must fill out every last form yourself (don't forget to have a new picture taken, and thumbprints!). If you still think it's reasonable after all that, we can talk.
I think I would thoroughly enjoy job shadowing this person. I'm very curious as to what their day to day activities would be!
Lightbend buys monitoring startup Opsclarity
What I don't understand is why do we still use TextMate grammars.

Can anyone explain why this is the case? It's not only in VSCode, I remember seeing something about TextMate grammars also in other editors.
If you install the client there is an "i" info button in the upper right of chat that allows you to add participants.
You were a TA though, so you didn't have a lot of experience with these things. Perhaps after a few years, you would have been able to spot those who didn't seem to be catching on.
I hate slowness and inefficiency too, that's why I try to make the editor as fast as possible :), but at least in this case, it is not the dynamic nature of JS to blame, but rather the nature of TM grammars. TM grammars consist of rules that have regular expressions, which need to be constantly evaluated; and in order to implement a correct TM grammar interpreter, you must evaluate them.

I've looked in the past for optimization opportunities in the C land (mostly through better caching), which yielded quite nice results [1][2]. I would love if you'd want to take a look too.

At this point, in tokenization, 90% of the time is spent in C, matching regular expressions in oniguruma. More precisely, regular expressions are executed 3,933,859 times to tokenize checker.ts -- the 1.18MB file. That is with some very good caching in node-oniguruma and it just speaks to the inefficiency of the TM grammars regex based design, more than anything else.

It is definitely possible to write faster tokenizers, especially when writing them by hand (even in JS), see for example the Monaco Editor[3] where we use the TypeScript compiler's lexer as a tokenizer.

At least in this case, inefficiencies are not caused by our runtime.

[1] https://github.com/atom/node-oniguruma/pull/40

[2] https://github.com/atom/node-oniguruma/pull/46

[3] https://microsoft.github.io/monaco-editor/
Amazing how well it handles painting on top of previous strokes.
Cameras catch BART janitor who makes $270K a year spending hours in a closet
Target kills prototype robot-assisted store project
I kinda liked the raccoon...
Yep. I agree on this. Also, that's how you can possibly solve this chicken and egg problem.
lol I typed that on an IOS device correctly but it autocompleted it since "regex" isn't a real word apparently.
> if we just look at the three top 35 sites tested in this post, two send uncompressed javascript over the wire, two redirect the bare domain to the www subdomain, and two send a lot of extraneous information by not compressing images

So uncompressed javascript and images are bad, but I thought apex domain to www subdomain redirection was an optimisation as the apex domain can often only point to a single server but the subdomain can point to a range of geographically well distributed CDNs. So rather than going to North America for every request, the browser only needs to do it once than the rest can come from a regional CDN. Am i misunderstanding something, does this also break down on a slow connection?
Rethink Robotics releases massive software upgrade for Sawyer robots
Copy-pasted from a comment I made elsewhere:

It's harder than it sounds if you want to support many languages. The Sublime syntaxes repo I use has 34,000 lines of grammars whereas my engine is only 3000 lines of code. If you count all the tmLanguage files for nice languages available online it's probably hundreds of thousands of lines, and that's in a pretty dense format. The whole point of using tmLanguage files is that people don't care about how fast other languages are if there is no highlighting for their language.
I could get way better performance by rewriting all those grammars using compiled parsers in Rust (like Xi has as an option https://github.com/google/xi-editor) but it would take an absurd amount of effort.
> While the headers have existed, they have historically been underutilized and thus poorly maintained.

They are human-readable, so even if no tool used them, they still have an effect. Someone might read the header and incorrectly move the service in their sequential boot order, for example.

Would you recommend that the person reading the header also "fix themselves" instead of fixing the header or filing a bug against whomever owns the incorrect file?

> Thus a newcomer can't just walk in and suddenly make them massively important while claiming the breakages that come out of it is not their problem.

Someone decided to put the two things together, right? Someone combined this "newcomer" and these old files with the bad headers? The onus should be on that person to make things right, not the tool which is using the headers correctly. It could be a distribution, for example, but it isn't the tool.

Update them or remove them if they are wrong. Why campaign to leave them intact and incorrect?
Uhhh... I'm not sure how to proceed here. I don't intend to upset anyone. My point was that R's will vote for R's. If that weren't the intention of the electorate, they would have elected a D. (Isn't the "two-party system" fun!) I don't why we'd need to invoke a conspiracy theory, even one offered up by the R in question, to understand why an R would vote for an R. That is, don't believe everything that politicians tell you, even (especially?) about their motivations for the actions they take.

Perhaps mistakenly, I anticipated an objection to this simple scenario along the lines of "this person is really extra super bad, so normal Congress-critters even from the same party would never have voted for her without being fooled by evil memes, and that's why we should believe that this Congress-critter really does believe in the evil meme of the Soros Army". If you wouldn't have objected thus, I apologize for making an uncharitable assumption.
Ok, but if that's what you're trying to solve, how about the full anonymized dataset available for everyone to crunch instead of letting marketing produce a few cherry-picked stats?

Might be just me, but I've met my own fair share of deluded founders and very bright ones. It would be a public service for everyone out there if they could see a VC's deal flow exposed as it is, and be able to crunch a few numbers before they apply.

Might you get less deal flow if you did that? Maybe. Might the deal flow be more interesting? Might also be...

Either way, though, you'd be a very interesting source of data for anyone trying to figure out "Do I tick most of the boxes to get funding or am I just wasting my time?" Raising funds takes lots of enery. Even Paul Graham says so here:

http://paulgraham.com/fr.html
How does this compare to for example Lagom (http://www.lagomframework.com) ?
That's the one. That's good for a laugh.
as referenced in another comment: https://twitter.com/sama/status/821538708943880193
reply
I highly recommend these youtube videos by 3Blue1Brown
https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2x....

Each short lecture had a 'Why didn't they tell me that in college!' kind of insight.
Transformations, determinants, dot products, cross products everything made sense
in a visual way.