skysight-inc/HackerNews huggingface dataset:
Learn Python the Hard Way https://learnpythonthehardway.org/

Don't let the title put you off, it's very accessible and you'll learn a lot.
Why do you think game studios will support vulkan when they can just target dx12 and get pc and xbox support?
fnj is also a longtime community member of Slashdot, and well regarded.
Maybe it's just me, but after 15 years of guitar, I find 15 minutes to be only enough for the barest of skill maintenance. I've definitely hit a plateau in the last few years, and I think a major factor is the relative scarcity of available time to practice, drill, and learn new stuff.

It was much easier to make progress when I was a feckless teenager.
For a long time I did not comment on these types of stories. However, I have since been able to formalize one specific way in which posts that include some of the information that this post includes make the world a worse place in certain specific cases. You can read a formal deductive analysis here:

https://news.ycombinator.com/item?id=14967445

It is mathematical and hard to follow. It's very formal.

If you follow the program of study outlined in the above comment you will have an extra tool to decide which articles make the world a worse place. (I realize that not everyone will be able to follow my comment.)
In this particular case I think it was used to a particular effect.

The irony here is tptacek (a man) is out to explain why this woman is wrong - in order to help women.
I always figured that was part of some implicit contract.

"You'll hire me for a job I can't immediately do, and I'll treat growing into my job as the number one priority".

With the job market as it is, it's unrealistic to expect people to hire candidates who can't help lighten the load within a week or two of their start date.

I wish there was a less-risky way to 'try out' candidates. Someone I know works in boutique finance and whenever they bring on someone at a junior level, they're on a 60 day probation and the partners decide whether or not to retain them.

I think it's easier for them to do it because their applicant pool / candidates are predominantly young, white/asian, male, and high-achieving. They've never been sued by a candidate they've let go and they've found some real 'diamonds in the rough'.

I can't imagine that they could say the same if they let go of 40 mothers with children. But it does highlight a solution path - make it less risky for companies to evaluate candidates although I don't know how to do that without eroding worker protections.
How A.I. Is Creating Building Blocks to Reshape Music and Art
This is, hilariously, mansplaining actually working on diversity. And in general I think 'mansplaining' is a toxic pointless term.

This person has far more credibility than you do, having worked on the hiring pipeline directly. Don't lecture outside your field of expertise.
1984 is now!
I keep thinking about orchestras, where simply auditioning performers behind a curtain completely fixes the bias problem.

Of course the trick is that you don't need to see the candidates or talk to them, just listen to their playing. In software, we would need to find some similarly effective way to measure anonymized performance.

In fact, completely aside from fixing gender and racial biases, that's something we could really use just to make good hiring decisions! I don't believe anyone really knows how to make consistently great hires in software.

For a start, the hiring decision could be based on gender-anonymized feedback from the interviewer(s), although that obviously wouldn't fix any underlying biases in the feedback itself.
I'm almost 100% sure that isn't the case. Maybe you're told it is, but Google liked to tell its employees the same thing.

If all your firm wanted to do was ensure its employee pool matched the demographic of the qualified worker pool, it wouldn't have to do anything at all except test for competency. Matching demographics then happens naturally.

When your company says "the goal is to match the pipeline" yet still has an "aggressive diversity programme", what they mean is, "we know what we have to say to avoid legal trouble but we want to hire as many women as possible, and will find as many ways to bend the rules to do that as possible".
No, you're relying on a false dichotomy here. The logic in your post suggests that if I believe it's unreasonable to expect gender parity at Google, I must also believe that the current gender distribution at Google is OK. That doesn't follow logically.
Who's your target audience, and what will that description be used for?

That single sentence of description is fine for a general audience, and as a lead-in to a more in-depth discussion but it's a single sentence and not an in-depth analysis. There are books more that could be said about the differences and similarities between being multilingual for programming languages verses spoken languages but a dissertation on why the comparison (likely) not what's being asked of you.

The follow-on ramifications of something being in a different language than one you speak, rather than a comparison of multilinguality itself might be useful to highlight. It's one thing for you as a person to speak two programming languages, but if one language runs server-side, and the other is client side, it's good to illustrate that teaching Chrome to "speak" a different language is going to be harder than for your company to provide translations. Similarly, if the company is trying to move to and canonicalized on a second programming language, it needs to be illustrated (in lines of code) as to how much currently exists at in the first language, and must be translated to the second.

Programming languages are not like spoken languages because people there can be discussions about syntax and parsing, but then a new version of the compiler comes out and the system is rolled and every"one" speaks the new version (and the old, for that matter). Meanwhile we're still working on being able to do that for humans.
I'd challenge the idea that Scratch is a “visual” programming language. It has you put together blocks to write code, but those blocks contain text and behave like statements in any vanilla programming language. The advantage of the block system is that it's discoverable (all available blocks are shown in and can be picked from the menu) and it mostly avoids syntax pitfalls (either a block fits into another or it doesn't).

But it's also coupled with a sort of… game engine/scene graph kind of thing that your code affects and which you can interact with visually, which probably makes your code seem more tangible?
Letterpress Commons
It doesn't matter. At the end of the day, all you care about is the exchange rate (e) for the number of tokens you send (x) and the number of tokens you get (y). i.e (x/y = e)

The way the exchange determines this rate is entirely upto them. If it's too high, go somewhere else.. but no exchange is required to disclose how they derived their rate. Just because one did, doesn't mean it's any better than the other.

If the e(shapeshift) < e(evercoin), I'd go for Shapeshift, or vice-versa.

In the real world, I wouldn't expect a money-exchange at the airport to include a full breakdown of their costs on their exchange schedule.
That breeders are unsafe is simply wrong as a general statement.

A Thorium or Uranium based liquid fuel molten salt reactor is incredibly save and highly viable for civilian power generation.

> The lack of production thorium reactors, over half a century since the first experimental reactor was built, suggests to me that there are serious complications that thorium proponents are missing out on.

You massively underestimate the political and economical problems of these things. There are many different types of reactors and other ideas that have never managed to get to market.

Until very shorty it was basically impossible to develop one in the US. The Department of Energy would not grant anything, not even use of labs to anybody who wanted to research it. Much of the research itself was basically lost for a long time.

> Don't wave silly treehugger regulations at me, because it's not just the US and Europe - Russia and China, with rather less concern for safety and rather less regulatory process than us, aren't building them either.

China is massively investing molten salt reactors, including liquid fuel thorium. They plans are pretty big.

Also, there are simple not that many people who do this kind of stuff. The early research was done in the US and most other piggyback of that and have continued to make marginal improvements.

> Even India, with a third of the world's thorium, is just now in the process of bringing on their first thorium reactor.

India has tried earlier but failed. The reason was that they did not have the advanced science, not some fundamental problem. The went in another direction because they felt it was easier. The same problem did not apply to the US.
Neural Adaptive Video Streaming with Pensieve
> if you can't say "I love you", it is not a language to me

Japanese don't say "I love you" (winky face)

[1] https://www.quora.com/Do-Japanese-people-say-I-love-you-to-p...

[2] https://answers.yahoo.com/question/index?qid=20090222081745A...

[3] https://www.youtube.com/watch?v=azLpKvKBdHE
| Onavo’s data comes from Onavo Protect, a free mobile app that bills itself as a way to “keep you and your data safe”

oh what irony
>Plus, it's still relevant to remind people that equal opportunity and equal outcome are not the same

I see this trope trotted out again and again. Where exactly are we drawing the line between opportunity and outcome? When a 22 year old (woman or otherwise) gets hired at google that's no more an outcome than an opportunity. It's not like they're going to be sitting on their deathbed thinking of the way their life turned out realizing it was all set in stone at 22. More likely they're going to work for google for a few years, maybe leave to start a new business, get poached by a competitor or make a run at climbing the google ladder but what is that 22 year old going to be thinking later on in their career, say ten years down the line? Probably something like "I'm glad I got the opportunity to work at Google."
In Minnesota, honest counting is enforced by process. Any ballot handling, whether marked or unmarked, requires the presence of members of at least two different parties. At no point is a single person (or group from just one party) ever left alone with ballots.

We've had two full-on hand recounts at the state level in the past decade or so, and the final results where within a few hundred from the original count in each case, with three million votes cast. Good process solves a lot of problems.
> But what if there are still biases in hiring? That someone sees a woman and assumes this or that about her based on gender alone?

I think the issue is not so much about someone actually being outright blocked at the interview, although that may well happen also, especially if there are substantial numbers of people who think that women need to be accommodated because of fundamental biological differences.

But I would say the issue of bias is more systemic than that, it's more about the pipeline, that there are fewer female candidates at the interview stage because programming has been seen as a male activity. Women are discouraged from getting involved, through their own attitudes, and the attitudes of others projected onto them, and over time that winnows down the crowd of candidates. It's death by a thousand cuts, usually nothing dramatic, just a thousand subconscious decisions and comments.

That is not a problem of the same order, but it is still a problem, and assuming we accept that, the issue is what can be done about it. I don't think it's enough to say that we need programmes only targeted at teenagers or children, there should be something which happens at the end of the pipeline as well, so that company cultures are welcoming, there are female role models, and that it's clear that jobs are available if you buck the trend. The problem is made up of myriad small issues all along the pipeline, so that's also where you need to tackle it. Over time you will get to a point where the small changes are self-reinforcing, and no further action is required.
Yes, I'm sure Google has analyzed this. I'm just saying it's fairly surprising considering that $3 billion hinges entirely on the assumption that people won't change the default. Apparently there are approximately 700 million active iPhones in the world [1], so Google is willing to bet $4 per user on that assumption. I'm not saying it's a bad assumption.

[1] http://www.siliconbeat.com/2017/03/06/many-iphones-use-analy...
Didn't we have a point where there was close to gender parity in college in computer science at a lot of colleges in the 80's/90's? My off the wall hypothesis from the gender pay disparity data is that the lack of women is more related to people making the judgement that the amount of time at work (versus time with family) in relationship to the value of the work itself means women choose not to work/continue a career in computer science/programming jobs, but women do not have this issue with the medical or legal profession (that have a much higher societal status in certain circles versus computers), i.e. working at Google in this case is associated (wrongly or rightly) with making money from motivating people to click on ads versus making a difference in people's lives with medicine or law.
Assuming very small messages that are rarely sent then yes, the hit of multi process is not going to be your biggest issue.
We need a GitLab for XMPP.
One aspect I haven't read much about are the incentives that the big tech companies are offering women candidates.

You mention wage gaps but if the pool of qualified engineers is mostly men and Google (and other tech companies) want to hire women, it seems that salaries for women should be far, far higher than it is for men. The fact that they are close to equal might be part of the problem.
The "what about all the good Hitler did?" argument. Doing those things did not require the slaughtering and enslavement, there's no balancing act that makes those acceptable.
That may be true, but it's difficult to separate that out from the other things that happened at the same time. They also started a cloud service for users and offered discounts on subscriptions. Who's to say that it wouldn't have worked out just as well if they made the cloud service and offered discounts on boxed copies of the software? Unfortunately, you can't do the experiment twice.
Researcher who neutralized WCry pleads not guilty to writing banking malware
It does make it much easier to get going. Most of the packages you expect to be able to use are there. This only becomes an issue if you want to run cross platform. Once nice thing they added recently is that they issue warnings if some of those packages depend on Framework, which helps.
Ask HN: Advice for mentoring?
I'm the lead on my dev team and we've just taken on a new apprentice.

It's been a while since we've had a new addition to the team and I'm worried that my mentorship skills are lacking.

I don't want to let the new start and the team down so I'm looking for as much advice as possible.

Any and all advice welcome!
IIRC, “Spain”, like “Germany”, was a geographic name long before it identified a particular polity.

In any case it's a geographic name coextensive with a modern polity now, and a modern speaker using it to identify a geographic location even for events that predate the modern polity is normal and clear.
How meta: a solution to let FB know that you're very motivated to read an article about FB going to great lengths to snoop on user data!

Maybe that's the kind of data they need to reconsider their approach to privacy.
I agree. Even developers who are well aware of how to write thread-safe code probably don't even bother with mutex locking in Python. That code isn't poorly written... it's just code targeting the implementation.
Point 1: I take it you've never been on the receiving end of the "Oh, you use _Windoze_" comments. The fact that "M$ Windoze" exists as a meme is proof enough that there are enough people who show disdain for proprietary software that people took notice.

Point 2: Do you mean besides his every day demeanor? Or besides his extensive essays on the evils of proprietary software that imply _strongly_ that people who use and create them are against Freedom?

Look, the vast, silent majority, as with most groups, doesn't care what kind of software other people use. The problem is, as usual, the core, vocal group of people who dislike anyone who doesn't think like they do.
> What do you mean with "shaming"?

Making users feel put down in some manner for using proprietary software, even when they might not be aware of the issues surrounding it. Users might be made to feel like they're hurting themselves and others in doing so. While being made to feel personally responsible (intentionally or not), they might then be exposed to a barrage of statements about how proprietary software is bad/evil and all of the problems surrounding it, which might make them feel even worse about their position.

This can have mixed results. If a user _didn't_ feel personally attached to those problems, then he/she might find it informative and a good illustration of the problem. Otherwise, users might become defensive or angry. Some might feel ashamed or bullied.

rms can come off that way, for example, even though he legitimately doesn't intend for that to happen. He has to balance his writing style with other concerns. One of his articles[0] was the topic of discussion on an internal GNU list where I and others provided some feedback to reduce the sense I just described. He makes strong, important points in the article, but it can be off-putting to people who aren't a part of the free software community. So for free software advocates reading it, it might seem informative and an excellent example of the issues, whereas someone not familiar with software freedom might experience the issues I mentioned above. It can be difficult to convey that using proprietary software is doing harm by encouraging others to use it, for example.

[0]: https://www.gnu.org/philosophy/is-ever-good-use-nonfree-prog... (compare with earlier versions on archive sites)
The practice of the poor being able to take unharvested crops for themselves goes back to the old testament. It was an early form of social weldare.

https://en.m.wikipedia.org/wiki/Gleaning
My gateway drugs into programming were AutoIt (https://www.autoitscript.com/site/autoit/) and Ren'Py (https://renpy.org/).

AutoIt lets you control the mouse, simulate keyboard input and so on. It was pretty fun as a kid to make a "can't press this button" game and watch others try to beat it. There wer also bindings to various Windows APIs, which I used to build GUI solvers for my math homework.

Ren'Py is a framework for creating visual novels, and I made one that mocked the vocabulary tests by having each choice be a pun on bastardized French or a running gag in my French class. I think pretty much everyone in that class played it at some point.

My point being, there are tools out there with a special-purpose scripting language used by content creators who might themselves not be expert programmers, and I if you let kids play around with that they will probably build something they find fun without anyone telling them to do so.
They'll see you, but you may or may not see them.
The article does not say Amazon commingled glasses from multiple sources.

Before I purchased eclipse glasses from Amazon, I first checked with NASA for approved brands, purchased an approved brand, and have not received a recall email from Amazon.

The fact is that we don't know what happened at Amazon, whether they commingled inventory or incorrectly included legitimate suppliers in the recall or if there were real issues with the products provided by the supplier in the article.
do you still need to install mono in addition to core to get autocomplete on vscode ?
What are the implications of solving the P versus NP problem? What practical effects would that have? Not trying to belittle the problem, just curious as an outsider.
The main alternative is probably Matrix currently (Disclaimer: i work on it). The advantages are that it's a pretty simple HTTP API, and there are good SDKs for JS, iOS & Android. The biggest disadvantage is probably that the UI SDKs (matrix-react-sdk, matrix-ios-kit and matrix-android-sdk) have ended up quite entangled in the Riot client codebase, and we need to decouple them so that they can be better used to implement custom chat/collaboration components.
exactly, so "real" AI can be trained by the same people too and have the same outcome?
> The only contribution this post makes to the discussion is to add "I'm a woman and I agree with one side of the debate"

Are you serious? An ex-Google hiring manager shares her experience hiring software engineers, and you conclude the only contribution this post makes is that "she's a woman". Frankly it's impressive how much of her perspective you ignored to focus on her status as a woman and a mother.
Even when using only LaTeX, I still find the edit/compile/view cycle annoying compared to WYSYWIG. How much of a delay to this cycle does using pandoc add?
> What he said was that in the aggregate, women and men statistically have different interests, behaviors, and performance in different fields.

...which therefore explains the lack of women in tech and leadership. People are taking exception to the latter claim: that the biological differences between men and women justifies the lack of women in the tech industry. The former claim, that men and women are biologically different, is uncontroversial.

> I can't imagine how sheltered of a life you'd have to live to not be exposed to this in real life, or more appropriately, how intellectually dishonest you'd have to be to pretend you've never noticed.

You are conducting a straw man argument against a claim that the other side is has not actually made.
Snap sold fewer than 42K Spectacles, down 35% in Q2
> She has very valid points about what should be fought against, like subliminal biases against women in tech. But then she's like 'we had to fire our women tech workers because they lacked the energy'. Isn't that something that's easily taken out of context and fuels exactly what she advocates against?

> This feels to me that it's the kind of articles that causes engineer bros to say things like: 'see, even good women engineers think women suck at it'.

She stated literally what happened. No need for her to editorialize.