skysight-inc/HackerNews huggingface dataset:
This is an excellent viewpoint. I am curious how the youngest generations of today are being introduced to computer science as technology becomes more and more ubiquitous. Clearly there are tons of "Women in CS" programs and, generally, I think they are making a good impact for those who may already feel alienated. But a lot more study needs to go into why gender ratios are really so skewed and what root causes can be properly addressed.
Marketers, and people building an account for their business. Follow anyone who looks like they might be interested in what you offer, remove the spammers (TwitCleaner's main use for me), and unfollow people who don't follow back after some time has passed.

You can build a Twitter account with real followers pretty quickly that way.
The height of non-racisim isn't preferring a minority race over the dominant race, it's dealing with people as if you genuinely don't notice what race they're from. There's a great south park episode on this.

Similarly I believe the height of non-sexism isn't (in my humble opinion) giving women only help, it's dealing as if you don't notice the person's gender. Do eliminate brogramming and sexist jokes at the workplace but don't give women only meetups, courses, and preferential treatment.
What makes using an honesty-box moral? It is not that one side has dictated the terms.

Imagine finding an empty car-park, parking your car, approaching the honesty-box and finding a note declaring the owner does not expect money but instead expects to be paid in teeth: and would the car-park users please pull-out a tooth and deposit it. Would that be moral?

Yes, one could say it is moral to all follow a general rule of reciprocating, of giving something as well as receiving. But what and how much?

The morality of cooperative interaction is not about what one person wants, it is about how all are affected.

Saying what exact actions and amounts would be moral is in general an impossible calculation. But what would clearly not be moral is one party dictating to the other. Once you deliberately offer to engage in cooperative interaction you alone no longer set the rules.
@PLT_Zizek
the platitude that male sexism is keeping women from entering CS only reinforces the notion that the field belongs to men by default

https://twitter.com/PLT_Zizek/status/212662401525481472
I guess i disagree to a bit. I understand where you're coming from there, but I think "girl only" cs meetups help eliminate a possible burden to get into the computer world.

I think for that reason alone they're a good thing. Could it be taken too far? Sure but I don't see that happening right now, and at the moment given how few women are in our field I think more such things are needed to at least reduce the sharp edges people view from our world.
Two kilos? Heavy bag, for being empty.
One more language with a C syntax, how so exciting. If for nothing else, I love Lua for taking all the good simplicity out of Python and meshing it with a functional approach and everything is a table. Arguing over syntax aesthetics might be superficial, but I welcome some variety thank you very much, same as I would be bored as a writer if I could only use one style.
Self-promotion admitted, but the Bump app is interesting for IM/picture/file etc capabilities (though not voice) in this arena. A few points:

* Everything is tunneled over OpenSSL and (increasingly) NaCL.
* We do not use the CA infrastructure... we ship our server's public key
in the app
* Communication channels are established by a face-to-face "bump", and
the parties must mutually consent that the suggested "match" was their
intended counter party (they must validate name and mug).
* Subsequent communications can happen asynchronously at a distance
on this channel

Basically, one of the things we've explored in house and with partners is that we've "accidentally" created something with properties (though not yet rigorously vetted to endorse for specific use cases) that lead to everyday users having exercised some practices normally reserved for the technical and paranoid--such as identity based on an initial in-person exchange.
Programming/Computer Science is a boy's club. This boy's club will perpetuate itself just like other boy's clubs historically. It will be integrated just like other boy's clubs have been: by a few talented and determined women who pave the way for others to follow. I agree with the author, in that the model to follow is closer to piloting than it is to sports.

EDIT: To its credit CS is much further along than NASCAR.
Ask HN: Best Tool for Sharing Developer Notes, Processes, etc
We are a small startup that has added 3 developers in the past 6 months. Life is still good. Developers have a lot of autonomy, and we are still sharing most of views, thoughts, processes by email, IM, phone or in-person. However, the transitory nature of those communication channels is beginning to cause a problem.

What tools are startups using to share persistent information between developers?

We have tried using basecamp but everything gets buried in messages. The important stuff does seem to bubble up to the surface.

We tried dropbox and google docs but there is no separation between personal and startup. Plus its a mess.

We thought about standing up a wiki but I'm not very enthusiastic. It seems like creating technical documentation.

The best option I have found is crowdbase but I thought I should search HN to see if it has been discussed previously. I couldn't find anything which has triggered me to ask, what are other startups doing?
(1) is a number. (not 0) is (false), a boolean. How could they be the same? They must be different because they are different types.
"What if we just taught our kids about what computers can do, and worked toward a healthy appreciation for how vital computer science is to society and to a successful career, and then left them to decide on their own careers?"

I completely agree.
My proposed solution (that would probably work): teach basic cs in middle schools so it becomes as normal as chemistry, biology, physics, math, social studies, and english- that way, kids wouldn't denote the subject as a particularly male or female oriented path and would simply see it as a stepping stone to another possible career. But we would need more knowledgeable teachers...and more teachers in general.
You make excellent points. Our existing users signed up to make money, so for them (remember this was an email to our registered user base) paid posts is probably the most valuable thing we can offer. Going forward we probably won't focus on that much as we build our core base of writers, and we are going to have a high editorial bar for paid writers that many of our affiliate contributors - quite honestly - are not going to be able to meet.

I had a life before Referly, a life devoid of affiliate stuff where I was an editor in Chief of a local tech community site [1] - and I'm super excited to be digging up those old skills.

[1] http://www.bizjournals.com/seattle/blog/techflash/2010/01/se...
You're explaining the implementation, which I understand. There are reasons behind everything in the infamous "Wat!" video. The inconsistency is in conceptual expectations: (0) is true, (not 0) is false, yet (0 == true) is false. These are unexpected "gotchas" familiar to experienced Lua programmers.

It's not a dealbreaker. It's just a Lua quirk that often surprises newcomers. I was pointing out that Squirrel uses more conventional boolean evaluation that script authors coming from other languages may be more comfortable with. If you're exposing a scripting API, the language you use is essentially a part of your user interface.
So what's a good solution? Sounds like a snappy idea with no meat.
Is it worse than nothing? The logic seems to be: have imbalance partially caused by stereotypes -> encourage minority to lessen imbalance -> hope stereotypes change and balance becomes self-sustaining.

Shifting cultures is hard. Lacking perfect solutions, maybe plausible ones will suffice?
The author is talking about application/rate_limit_status which is also rate limited. The headers are great if you keep track of them from the response on your other calls, but if you want to see your rate limit status across all endpoints you can use:

https://dev.twitter.com/docs/api/1.1/get/application/rate_li...
I suspect if they made it a terms of service violation to block adds they could fairly effectively police smartphone apps. If nothing else it would be interesting to see them try.

I am also of the opinion that a vary cheap add blocking option say 1$/month would prevent most people from jumping though many hoops for add-block software.
1 is not the same value as true. Just as in the case I commented on a couple of messages above, 1 and true are two different types.

The == operator does not compare the "truthiness" of two values. It compares the values, and if those values are two different types, they are always unequal.

http://www.lua.org/pil/3.2.html
This is misleading-to-false, particularly regarding the logo.

The logo was created by Simon Oxley. It's misleading because while Oxley is a Twitter user, he didn't create it for Twitter: he created as stock imagery, and Twitter purchased the rights to use the image via iStockphoto: http://www.wired.com/business/2009/03/twitter-designe/

It gets into false territory because subsequent versions of the logo were developed by designers either Twitter employed or contracted with.

Even if you're talking about the "T" logo variant, it's also not true: the "T" logo was simply the "T" from Twitter's original wordmark, which was simply the Pico Alphabet font designed in 2001 by a Japanese design firm, Maniacker's Design: http://www2.wind.ne.jp/maniackers/pico.html
Motor Officially Released (non-blocking driver for MongoDB and Tornado)
In the case of Lua rules of what is truthy and why (as I read here) I'd expect (not 0) to be a type error. That's the case in OCaml for example and I think it would be good in Lua.
I've heard of it, but I'm unclear on the benefit. Can't you do async I/O in Lua already? What's the value of adopting the Node.js model, which is mostly about adding I/O to V8 and using callback functions for async, in Lua? (I hope that doesn't sound trollish – I'm ignorant and would like to understand, and the Luvit project page doesn't help.)
Ice Baby — A near-perfect frozen mammoth resurfaces after 40,000 years [2009]
Reddit co-founder: I'm not mayor of the Internet
If they're truly using EC2, and they haven't architected their infrastructure to be able to horizontally scale at the push of a button, then they're incompetent. Period.

It's forgivable that it doesn't happen automatically, as automatic provisioning in response to load isn't always an easy problem to solve, but if it's going to take them 3 days to bring up new machines on EC2 to handle load, they're doing it wrong. The ability to do this sort of thing quickly is one of the top few reasons to use something like EC2.
Hedy Lamarr (for those not familiar, https://en.wikipedia.org/wiki/Hedy_Lamarr) stands out as a woman who excelled in the "nerdy" aspects as well as the more "feminine" aspects. And she was involved long before it was treated as more mainstream, when her environment was more adherent to social norms than the world of 2013.

How did she break the norms, and why don't we see more women following her example?
You can override it. LuaJIT allocates the memory from the 0 index.
I strongly agree that runtime exceptions are the right way to go for certain rare events, see for example the new Java 8 addExact and multiplyExact methods which throw exceptions on overflows. These will not happen often but making them an exception allows implementers of languages with numeric type promotion to remove their own checks, and for the JIT to optimise the entire exception away in most cases.
It's not that esoteric. You need to see it in a broader scope than simply something that the C standard specifies. It's about how parsing is traditionally done: by splitting input into token using a longest-match if multiple token fit the begin of input. Then you can use the token to do things.

Even if you don't know that much about the subject, you can still have an interesting reasoning about it. Seeing that it is ambiguous is already a good observation. You then can propose way to resolve the ambiguity and touch (willingly or not) upon the topics of operator precedence, associativity, greedy matching.

Those topics are not only relevant in parsing either, for instance associativity is an important concept for list operations such as folding (a right fold is different from a left fold).
Arthur's LISP in BASIC
You know, when computer security conferences started getting too expensive, the BSides Security conferences were born. The idea was this: security conferences are too expensive, but all the speakers are in town. Let's ask them to come and talk for free at a free conference in the same town at the same time ... and it worked! Today, there are BSides conferences that take place all over the world. Learn more at http://www.securitybsides.com ... Maybe something similar could happen in the developer world?
> But we did decide to write a spec because (1) we want to be 100% open about this, and a spec makes it easier for others to learn about it, and (2) it helps us check we didn't miss anything because we have a formal type system.

If I'm going to target a toolchain at your runtime, and expect decent performance out of it, and expect to see consistent performance with other runtimes that also implement such behavior, then I (and you) need a spec.

Moreover, if I'm going to implement tooling that can make sense of your "byte code", then I absolutely need a spec that's more specific than "it's JavaScript that might be optimized".

This is making me more wary about being able to build reliable tooling around such a "bytecode", not less.

> If so, then that exposes a failing of all JITs, including the JVM.

Yes. But some languages and targets are much worse off than others.

> Actually even a CPU might not, because CPUs also optimize in unpredictable ways, these same issues are dealt with on that level too.

This is why we sometimes get down to carefull statement/instructions ordering to avoid pipeline stalls, or using architecture-specific intrinsics, or worrying about false sharing.

> Again, there is room for native apps. But there is also room for portable, standards-based apps. The web is the latter.

The web could be both, if Mozilla and other web die hards would critically evaluate the accident of history that is the modern web browser. What bothers me most of all is just how much Mozilla can hold back the industry. For example of where the industry could go, look at what happened with virtual machines implementations.

First, they were particularly inefficient, and relied on tricks such as trap-and-emulate. Not all that different from how NaCL is working, especially on ARM, with funny tricks like load+store pseudo instructions. Gradually, hardware vendors took notice, and we saw instruction sets and hardware shift to add enhanced VM-specific functionality (and ultimately performance) -- first with VT-x, and now with VT-d (eg, IOMMUs).

NaCL is in the perfect position to start down the road that leads to re-imagining what no-compromises sandboxed code looks like on the processor level. asm.js is going in the complete opposite direction, and in doing so, has the potential to steer the entire industry away from a path that could introduce significant and beneficial changes in the realm of security, portability, and open platforms.
Thanks for posting that link. I've been interested in Squirrel myself and will check it out.

I do like Lua and - per the discussion below - I don't see any problem in Lua's concept of truthiness. It's different from other languages like C or JavaScript, but similar to others like Ruby. Just something you have to get used to if you program in multiple languages.

But the other things you mentioned do sound worthwhile, so thanks!
Obviously there are reasons for the behavior, but it's still inconsistent to users who are exposed to your scripting API to have:

if 1 then print "true" end
if 1 == true then print "never prints" end

Not a reason to avoid the language. But it may be a reason to consider an alternative with more conventional behavior.
There are good and bad qualities to the CS events catered towards women. I think they are good for women of certain age groups (maybe 18 and older?) who might have been discouraged from or misinformed about the field. For young girls, these events are probably unnecessary and reinforce the stereotypes.

The events and boot camps made specifically for women to learn to code/learn about various opportunities are great, but I would hate for young girls to attend these events and learn about the gender inequality in case they weren't even aware of it.
It may be pg's site, and he sets the rules in the technical sense, but I feel like a majority of the users of the site agree with your position, and would discourage people from downvoting simply out of disagreement. The "rules" are one thing, the "culture" may be different. In this case, I think the cultural norm is in favor of not expressing disagreement through downvotes. But that's just me. shrug
Yes, it assumes an attacker cannot imitate the other person's voice without detection. If you introduce enough latency or have a system fast enough to do on-the-fly voice changing you'd be set. It's such a great, simple idea, I felt stupid for not having thought of it.

To be sure, the voice channel establishes before the verbal authentication. I see your fingerprint is "banana", you see "kitchen". We can chat and I can say "alright so banana, right?" and you say "yep, in the kitchen". An attacker would need to remove banana and kitchen from that voice conversation and put their own fingerprint words in.

I think that level of realtime audio modification is pretty out of reach for now, although I suppose if you introduced a lot of latency, you might be able to pull it off. It'd probably be noticeable, and you can keep chatting and confirming the phrase, so an attacker would have to be really on-the-ball.

Plus, this only happens the first time. After that, the client saves the keys, so you know you're good.
I don't follow. Do you mean in the ideal case he mentioned where he got paid enough for food and housing to keep coding? Well, yeah, thats a given. But that was also spoke of as an ideal. In the real world so much effort would be put forth in simply acquiring "donations" or justifying continued support that it really defeats the purpose. The point is our society is not currently structured in such a way that makes this model sustainable.
I am not moxie, but I'll reply. The key thing is that a short authentication string is shown to both parties. Then it is the job of the parties to also verify by talking to each other that they are talking to the right person (authentication part). That is the key part -- using some other channel (not just he algorithms and the protocol to authenticate the counter-party).

Then the boring part kicks in and the way the algorithms works is that if you are convinced that you are talking to the right person, then the way the secret key is generated won't be infer-able to an eavesdropping party.

Now, if I remember correctly NSA has published a paper where they allegedly fooled this system by using voice disguise and a voice actor to basically play a man in the middle attack. Now this is highly subjective and based on the context, so take that with a grain of salt.
Why Redfin, Zillow, and Trulia Haven't Killed Off Real Estate Brokers
You've just described why I want to live in a low population area. Thank you.
I'm aware of the reasons why. It's still inconsistent to users. Remember that Lua is targeted at non-professional programmers.
Elon Musk wants to die on Mars
[author here]

sigh

Yeah, you're both right. I'll move the images local. Not intending to leach. Just trying to lighten up an otherwise kinda depressing post. Seeing four years of work come crashing down.

As pg says, running a startup is like being repeatedly hit in the face.
> Could it be taken too far?

But I'm under the impression that today we offer women-only CS courses and the norm has become women get hired over equally or more qualified men in the name of eradicating sexism.

I humbly suggest this is taking it too far. I don't want to automatically get turned down for a job because a woman applied. I don't want to automatically get turned down for CS help because I am the wrong gender.

Every time I hear about a company spending money on CS help for women or "prioritizing hiring women" I cringe, but the HN community seems to readily accept and celebrate those posts.
I'm not sure your logic follows through - just because something is taught in middle school doesn't make it gender neutral. Most of the subjects you mention have similar gender issues to what is presented here, with similar discussions taking place in related communities.

The problem goes deeper than just introducing the material at an appropriate age.
In Chrome, it will still show the last history item with a different host at the bottom. So maybe use a better browser ;)
[author here]

The post was intended to be stand alone commentary Not a bulletproof thesis.

All I'm saying is my opinions etc after a long stressful week.

Ignore the links, they're just there to lighten the story.
No it is not. Working on a zero-pay project for a year straight is not possible unless the person has some money saved up in advance. What's going to happen when that money runs out? Currently shurcooL's lifestyle is not sustainable by definition - he has expenses but no income to sustain those expenses.
This is the standard argument against affirmative action as well. Of course affirmative action is more about addressing pay inequality and discriminatory hiring practices, while the focus of this post is more around changing cultural attitudes toward certain activities. Is it possible to separate the two? That is, to have laws in place which will address the historical wrongs while simultaneously building a culture of inclusion?

And of course, the argument for continuing to do this inclusive workshop bullshit (you can tell I'm sympathetic to the author's point), is that while the gender bias persists active effort must be taken against it. So, how do you know when you're done? And, how do you measure your progress? No one answers these questions.
Sure it will bother her some at some point, but be supportive and give her good options, that's the best you can do! Cannot fix society all the way immediately... but you can give her confidence and courage.
If the balance were more even, sure, I'd agree with you. But until there's a head of steam for things to progress naturally, it does need an artificial poke. The problem wasn't solving itself before these kind of events.
Snap: Visual drag-and-drop programming in HTML5 with first class procedures
Google's star rises as Apple's fades
Not everyone has a strong force of will to go against societal norms. Any recipe for the everyday person is going to be spoiled by "you just need the personality of extraordinary person X"
The problem with this type of the thinking is the same thing you see when it comes to racism in general: "If we just stop mentioning it, it will go away", "programs to counter racism are racist", etc. Not talking about racism/sexism etc will not make it go away. Kids are very perceptive, they notice the apparent differences in acceptable behavior very early on; they are internalizing it subconsciously whether we bring it up or not. The only way to compensate is to tackle it head-on. This means defining it, explaining why its wrong, and taking steps to mitigate its effects. Girl-centric CS activities are an appropriate way of counteracting these pervasive gender stereotypes. Ignoring it will not make it go away.