skysight-inc/HackerNews huggingface dataset:
Huh? My interpretation is, it's harder to write shitty code (e.g. hard-coding the database server IP) if you write unittests (where you'll need to abstract the database interface to be able to mock it). In this manner, unittests promote clean, separated interfaces and work against tight coupling.
(not directly related to the topic)

Firefox (on Mac) lacks three things which I hope they fix them ASAP:

1. Compared to Chrome, FF just makes the Mac insanely hot. Sometimes if a website is stuck at loading, the CPU usage goes seriously high, resulting in temperatures around 80˚ Celsius, and MBP fan rounds at ~5000 rpm.

2. FF doesn't support page scrolling with keyboard shortcuts like Chrome does. On a Mac, you can [big] scroll up/down using alt + arrow keys. "Home" and "End" could also be achieved by Command + arrow keys. On FF however, I haven't found the same shortcuts.

Update: It has a weak form of this feature (but still requires your MBP to have "Home" and "End" buttons on it!):
https://support.mozilla.org/en-US/kb/keyboard-shortcuts-perf...

3. FF used to be faster than Chrome at startup, but now on FF 57-58, when you type in the omni-bar, it takes quite a long time for FF to figure out where it has seen this before. In other words, it can't quickly tab-complete what you're typing among bookmarks, history, etc.

I switched from Chrome to FF a while ago, mostly because of the Quantum and the new slick modern UI. But due to these annoying problems, I switched back to Chrome.
Ask HN: Is there no place for people, who are average at something?
For applying to a company or college or anything, everyone need best people from the crowd. And that's logical. But what happens to people who are average at something?
Do they have no chance in anything?
or Do they just have to get better at what they are doing?
> a new exciting opportunity

You mean a salary or title increase? Yeah, that's in the GP's comment.
Also it isn't in Safari and neither is apples new image format.
What was the TLS overhead in practice? On most architectures it's just indirecting through one register isn't it?
Once you pressed the button on the right for random beer page, this button doesnt work anymore. Love the layout
> If you we're to measure it directly you would just get one of the outputs chosen at random.

The point is that not all the outputs are equally probable and (in the interesing cases) you will get the “right” answer with high probability.
In major western cities (EG Amsterdam) there are places you can rent a workspace. It is like a café, but charged by the hour.
6 Guidelines for Successful Dating App Development
>...and has less seating than the old one

Is that a problem though? From my experience, at the library I frequent, while being well visited at all times has at most 20% of their seating occupied.

Don't live in northern europe though, so YMMV (maybe it's too cold outside to justify going to the library only for a short visit :D)

EDIT: The library I'm talking about is also a great social development. It's been built (about 10 years ago now) in the most densely-populated part of town, which was and still is considered by too many people as 'problematic' and it really lifts up the whole area.
Very interesting, here's the full article: http://sci-hub.tw/https:/www.sciencedirect.com/science/artic...
Subscribed. Thanks.
"The other ones I can understand in SOME way"

Not me, "OOP class hierarchys" still incomprehensible gibberish here.
everyone is entitled to an opinion, even if that opinion is quite clearly wrong. Phaser is a tiny team of very dedicated individuals and they have successfully produced one of the best JS/TS game frameworks. If you want better documentation, why not produce some? Want to help the team grow so they can afford to employ someone to write docs? Buy the books, pledge to the Patreon. Basically: help in some way. That's much more productive than suggesting they did all this work simply to sell some books.
re 2. Have you tried the space bar in FF? I think it does what you want. Can also be reversed with Shift-Space.
New Models for Utility Tokens
> I'm about as "senior" as it gets

Senior developers make sure to question their assumptions on a regular basis, FYI
Nokia Android smartphones making a global comeback
But Tor won't protect you against hardware backdoors either. If you disable javascript and open an incognito chrome session, I don't think browser fingerprinting can do much harm. If all you are doing is submitting a form on a whistle blower hotline, I'd expect it to be reasonably secure.
I must be missing something. From the article:

> the allocation rate goes down at least 5x, and time to execute goes up 10x! And this is not even starting to touch what a collector has to do when multiple threads are asking for memory (probably contended atomics)

...

> For Epsilon, the allocation path in GC is a single compare-and-set - because it issues the memory blocks by pointer-bumps itself.

So both the TLABs and the Epsilon GC are doing pointer-bumps, right? Why does TLAB outperform no-TLAB even in the single-thread case? Just because the pointer-bump instructions are inlined?
Nice. Hopefully the av1 photo format supports transparency.
> I listened in awe as this homeless-looking guy described porting Linux to the Ultrasparc, and then described how he then proceeded to beat Solaris on every single lmbench microbenchmark.[2]

This was the same guy who, after writing a comprehensive detailed post about Solaris performance, was trolled by a Sun employee who was in charge of performance - with a post that consisted, in it's entirety, of

> 'have you ever kissed a girl?'

This kind of arrogance is what killed Sun (and Joyent).
Implementation of XKCD 543 – Sierpinski Valentine
I failed my first 2 tech interviews and Google and Snapchat leaving me feeling cheated by the dumbass whiteboard. Whiteboard tests are tailor-made for the inside the book thinkers. The ones that stop learning when the chapter ends and soon forget when the next subject begins. Computers are the thing that gets you to the thing. You want people who can see that the software they are working has a broader impact beyond 1s and 0s.

PS. 5 Years later, I'm now the CT0 of my company managing 50 people. So srs, not srs Googs you missed out =P
Neural networks everywhere
My open source game is Electron+PhaserCE+Typescript+Webpack.

I tried to avoid webpack since I knew compile time would be an issue for my other team members and it turned it out it was. As a web-dev I'm use to its workflow but onboarding game devs hate it. I have to hear everyday lets move to Godot, Unity, Unreal Engine because waiting 4 seconds for compiling is a headache.

Switching to Typescript is great for larger teams because it makes properties explicit. I personally like coffee-script and find it more productive if I'm the only dev but I swallowed the medicine on this one and it was worth it.

VSScode is powerful with Typescript but its not as productive as VIM. I think of code completion and seeing errors right away as crutches that atrophies a developers own skills to find code and errors but they can make it much easier for juniors and lower the bar, pair this with wallabyjs and you have a controlled environment that catches everything for you.

I found no resources on testing Phaser but figured out my own way of mocking Phaser objects, and came up with my own way to write acceptance-like tests for my game without electron.

I really wanted to contribute to Phaser3 and had put great effort to join but Richard was useless in responding. He said he was porting their tickets from Trello to Github and then I could contribute which never happened, I asked month over month. I really wanted to use Phaser 3 to future proof my game and I would have contributed significantly. I could have forked PhaserCE but its a mess which makes sense for the rewrite but working blindly on Phaser 3 would be futile. I am quite bitter about bitter about this because I 20 hours a week for 6 months I could have contribute and now I don't

I think I will likely just write my own lightweight game framework to map only what I need and gut Phaser. Even looking at Phaser 3 codebase with their big rewrite from scratch its still clunky and I think this is because they don't build games at a large scale with a team to have a good feeling to fine tune an engine.

https://github.com/omenking/swap-n-pop
I would bet heavily on 5. Not exactly on the hiring being irrational, but on companies doing crazy things that destroy the productivity of their senior people.

Just look at how many people are complaining here about open plan offices, agile time slots, heavyweight meetings, and inability to do what they do best.
While I personally believe in BDD and unit testing, I'm interested in some commentary here from down-voters - always keen to learn from examples
Even though the case raises a good point about googles power the problem is foundem was a very low quality ecommerce intermediary that objectively added no value to the searcher.

Foundem also was set up by people with very rich friends in British society :-)
On #2, Fn-up and Fn-down are respectively equivalent to page up and page down on the Mac (at an OS level).
But in this case it was lack of original content, which is, pretty much, not a secret.
False dichotomy. Understandings aren't completely wordless or wordable. They fall along a scale.

> Anything could have helped.

If something helped a person, and they want to pass it along, even if it's difficult to communicate in a tangible fashion, I'm not going to stand in their way.
Agreed. Quantum is still very slow on macOS. My least favorite part is the "whoosh to catch up" highlights following the mouse cursor in about:config on my mid-2015 MacBook Pro.
Circumcision?
WebP never caught on outside of Google's stack:

https://caniuse.com/#search=WebP

When Facebook tried to use WebP a while back their users didn't like it:

https://www.cnet.com/news/facebook-tries-googles-webp-image-...

But these days if you really want to use WebP you can use a WebAssembly build of the library to support it in browsers which don't support it natively:

https://webmproject.github.io/libwebp-demo/webp_wasm/index.h...
I’m not sure gmail meets the legal definition of a monopoly, but 3 months ago, gmail started to randomly mark some of my emails “spam”, and it has caused me non trivial financial damage, as it turns out about 90% of the people I correspond with are using google’s mail servers, whether @gmail.com or through g-suite.

Feels as monopolish as any other monopoly i’ve seen in technology.
[2014] Description of virus that circulated after the 1994 Winter Olympics
My experience was pretty much the same. My parents had no problem with me owning toy guns, but if I pointed one even in the general direction of another person, I got a stern lecture.

My mother, who was a police officer (now retired) brought her gun home on a few occasions, and by that time all the stern toy-gun-lectures had sunken in so deep I found myself reluctant to even go near the thing, e.g. to pick up something lying next to it. Later, I found out that the gun had never been loaded while inside our house. Did not even matter really, I would not have touched it even if I had known that.
It’s structure seems to make it particularly resistant to bribery — commissioners tend to be popular but no-longer-elected politicians
WebP does give better image compression in our experience: https://blog.cloudflare.com/a-very-webp-new-year-from-cloudf...
A JavaScript API for drawing unconventional text effects on the web.
Yes, in the "Update" section I addressed that. But still Home and End aren't available.

Edit: The comment below mentions another way to achieve Home/End features in FF.
D&D Gentleman Class – Courtesy of Old Spice
Where is best to place a beginner? Too easy and they get bored. Too hard and they get demoralised when somebody else has to step in. Give them side projects and the work load for the team goes up with code review etc for unnecessary work.
True. But the team as a whole would probably still achieve much more if you were mostly guiding other (less experienced) devs.
As a non-developer who works directly with devs, I've always thought this:

I've heard that being a dev is 90% thinking about code and 10% writing it.

In my experience you hire senior devs to do the thinking part and junior devs to do the writing part while learning how to do the thinking part.
Are they not? I use Cmd+Up and Cmd+Down to scroll to the top and bottom of a page, respectively, on Firefox.
*) Google ads cannot be flagged as disruptive. Other conditions apply.
Photo Format from Google and Mozilla Could Outdo Apple and JPEG
The real question is actually... who will lose?
Google tests robot to chat with friends for you
> If you are a small company not focused on handling private data

I'll repeat myself a little bit: IP addresses and user names are also private data.

Please provide me with an example of an IT business that doesn't deal with private data. No real names, no user names, no IP addresses.

I haven't looked in to this example, but I suspect even the name of a client on a bill would be subject to the GDPR.

> continuously work on compliance

That's the big part of the headache. Even if you're a one man shop, you have to spend time and effort to get informed and deal with it. Multiplied by all regulations that might effect your business.
This hypothesis is often put forth to in the US. The strongest studies of the lead hypothesis, however, compare data across multiple countries, which regulated lead-containing paint and gasoline at different times. These studies demonstrate that crime drops in each country at a similar period after the decrease in lead exposure, and at a rate that corresponds to the rate of decrease in lead exposure.
We've been working on a GraphQL IDE that sits on top of GraphiQL but provides many additional features: https://github.com/graphcool/graphql-playground

It has a more user-friendly documentation than GraphiQL as well as tabs and a history of previous operations. It also supports realtime GraphQL subscriptions and conforms to the industry-standard graphql-config format. Further, it allows to easily share your Playground and has support for query performance tracing :) Definitely check it out if you haven't seen it before
https://en.wikipedia.org/wiki/Indentured_servitude#Legal_sta...

also:

> Until the late 18th century, indentured servitude was very common in British North America. It was often a way for poor Europeans to immigrate to the American colonies: they signed an indenture in return for a costly passage. After their indenture expired, the immigrants were free to work for themselves or another employer.

Internships would be more akin to working for those companies in Europe, with the prospect of maybe getting a costly passage to greener pastures so to speak, and maybe not.
..if all you plan for is short-term, it will only work short-term..

My point exactly, only in reverse. In industries (eg, merchant banking, corporate law, industrial engineering) where the plans are longer term, the thinking is longer term. Here you see highly involved onboarding programs with mentorship, in depth training and such.

Uber, FB, snapchat, netflix or whatnot never had plans that really looked past 2-3 years into the future. Ambitions, possibly. That's different to plans. These are on the young/ADD end of the spectrum, but they have cultural influence industry-wide.

I disagree about MVP. First, I don't think short horizon is bad, it's choice with advantages and disadvantages. Second, I do think MVP is part of a wider, shorter horizon planning mentality. That has certainly been my experience. The idea (IMO) is that instead of planning, you evolve. Evolution and planning are at odds with eachother, to an extent. You can make decisions early, and you get a longer term plan to work with. You can make decisions just-in-time (eg after launching an MVP), this gets you more informed decisions. That's not necessarily related to HR. You're hiring and onboarding could be unrelated to your product and engineering plans (or lack thereof). But (again, in practice), I think that mentality is influenced by these things.

^That's like, your opinion, man. ...always ;)

"I've yet to see that work" ... Uber. Netflix' streaming service.... for large, famous examples. Call those lotteries if you want. They're definitely risky. You may not like high risk strategies but they are a big part of the software industry, especially on the culturally influential wing.
I did say "they still need raises" :) But I get what you are saying.

As a junior dev, I have received at least one double digit percentage raise. This was a while ago, and perhaps I worked for an enlightened boss, or maybe I was just really really undermarket. But it can and should happen.

The long term approach would be to give the juniors raises and challenge them and keep them within the org. Unfortunately the short term perspective doesn't value that and so jumping ship is the best way to get more money, causing the org to lose all the training and the institutional memory.
We have a morning restriction on school days because it's nigh on impossible to get the kids to school if they start playing games! (We also have an evening restriction so doesn't interfere with bedtime or disrupt sleep but are otherwise easy-going. Still not sure if we are doing the right thing or not)
> it can make a lot of sense to sacrifice one's own happiness to gain more happiness for others.

If what you're doing would potentially create more "happiness," or "positive outcome" for others.

But most of what most of anyone does has no significant or lasting impact. "Merely satisfactory" gets the truck to the dock on time, the Uber customer picked up and delivered, or the HN post replied to.

Aiming at excellence is great, but in most cases pushing toward excellence at all personal cost, successful or not, doesn't really move the needle.

Take care of yourself first, unless you're an extraordinary individual in extraordinary circumstances.

Most of "this" just doesn't matter.
I would rather they did something about the Scrollbar in firefox, after all that is a thing people have wanted for 17 years
"Amazon is reportedly following Apple and Google by designing custom AI chips for Alexa"

https://www.theverge.com/2018/2/12/17004734/amazon-custom-al...
Google should be split up. It's wrong to have a company that controls search, one of the major browsers, and one of the two major operating systems for phones.

And then of course it should be made to pay tax where the search results are shown. An ad shown in the EU should be taxed with an indirect EU tax on the ad (30 percent of what is paid for the ad plus an EU VAT). That would once for all make the large advertising companies such as Facebook and Google pay tax in Europe. Every ad should include an ID number with information on the money paid on the ad, who paid it and to whom. Then, consumers and EU tax authorities could easily check if tax had been paid on the ad and who paid what for the ad.
> I have heard, for instance, that's it's actually very difficult in rust to write a linked list without dropping to unsafe code.

It is also hard in C to write a linked list without dropping to unsafe code. In fact, it is hard in C to add frigging signed integers without dropping to unsafe code.
After looking at Foundem I can see why this should not be displayed to searchers. I feel like I'm back in the early days of the web!

And only the rich get richer in these cases. ;)
Tests that couple to database connection code and mock or stub it out are more tightly coupled to the code than tests that just couple to, say, REST end points.

I'm not denying that the pain of having one form of tight coupling interact with another can be used to "guide" the design of the code. It can be. I've done it.

I'm simply pointing out that you're using tight couplings (between unit test and code) to highlight other tight couplings (between code and code).

I use my eyes to detect tight couplings in code that deserve a refactor because that's cheaper than writing 10,000 lines of unit test code to "guide design". Each to their own, though. I know my view isn't a popular one:
https://news.ycombinator.com/item?id=16374624
When over a thousand people work on a single project and tens to hundreds on a single submodule, there can be no real "personal taste" entering the equation or there will be trouble.
Interesting use case for WASM. That really opens the door for more experimental image formats.
Toronto firefighter who went missing in Lake Placid,NY found safe in California
Agreed on regional advice variations. My understanding is if you see a snake, you stop, and wait - it'll likely go away (if it's noticed you) or keep going the way it was going (if it hasn't).

We've unknowingly stepped over death adders before, and only noticed when we went back the same way. They're the fastest striking snake on the planet, and do themselves no favours by staying very still (they're ambush predators) despite large humans stomping around near them -- but I gather strikes are relatively rare.

Never actually seen a Tiger snake - my neighbour saw it near their pool, but it's very late summer, and while they're poikilothermic, I doubt they feel especially energetic or antagonistic in 40C heat. Anyway, apparently it hid in the grass, then wandered off when the humans got too close (they thought they'd seen something there while gardening, but weren't sure -- they were not looking for the snake).
Most people are average, thats kind of the meaning of average. I consider myself an average programmer advancing on an average career path and had plenty of recruiters contact me with interesting opportunities recently. Sure its not Google or Facebook, but so what, I wouln't like to work for a mega coorporation like that anyway. If you doubt yourself because you consider yourself average, consider that the constant talk of excellence, highest skilled people and so forth is mostly HR PR bullshit. Sure, there are extremeley talented people out there, but they are pretty rare.

Interesting video, that touches the issue: "The myth of the genius programmer"[0].

[0]: https://www.youtube.com/watch?v=0SARbwvhupQ
> because I would never trust the other drivers to behave correctly. But in Germany the drivers are very well trained.

This is the true value of proper education. [1] [2]

And this holds in general for all aspects of education, not just school or driver's license.

I never got the "freedom to be stupid" attitude of certain countries.

You can't explain that to somebody who never experienced it, but once you are used to it, you'll miss it immediately once there is a lack of it.

To put a perhaps bad analogy, this is like having no running water, but having the "freedom" to buy 10 different sorts of bottled water to use for showering.

[1] I'm not saying that the German educational system is perfect, or even remotely the best in Europe. But it is so much better than in most other countries.

[2] And "proper" education of course includes critical thinking and rudimentary evaluation of information sources. And also I don't mean narrow-minded pseodo-critical thinking, but being able to see through those as well.
> When Facebook tried to use WebP a while back their users didn't like it

That's just a "Google sucks at UX" issue. Apple recently adopted HEIF in iOS wholesale, but nobody is complaining because they made the correct UX call to convert to JPEG as soon as there's the slightest chance the recipient doesn't support the format.