Hacker Newsnew | past | comments | ask | show | jobs | submit | srn's commentslogin

My personal observation is that last night I stayed up too late reading the linux kernel code. Probably won't help anyone that much.


Validating a datapoint as useless/useful is a later step and does not disqualify the collection of data either case.


I like this article because it points out women are also geeky and that it's OK to be geeky. Women just may tend to have a slightly different way of expressing that geekiness.

You want girls to feel comfortable because you want the girls who are good at CS to go into CS. This is independent of how many women go in total. But since we're at it, let's talk about the biology arguments:

http://geekfeminism.org/2009/10/17/how-does-biology-explain-...

http://www.mun.ca/cwse/Cannon,Elizabeth.pdf

according to the above study, undergraduate women in engineering showed comparatively a higher interest in math than men though slightly lower interest in engineering and yet lower interest in physics.

http://www.cs.cmu.edu/afs/cs/project/gendergap/www/papers/

Through additional work CMU increased their percentage of women in CS from 8% to 1995 to 42% in 2000. One thing I recall is that women were not as experienced when they first got into CS and had to work harder. However they believed they had caught up by junior year.


But since we're at it, let's talk about the biology arguments

The geekfeminism link addresses the almost-strawman argument that women don't have the math or analytical skills needed for CS. It doesn't address the possibility that there are biological reasons for differing levels of interest in the field.


Yes, the first link addresses a strawman but I bring it up because other people still bring it up.

The second link discusses interests and influences for female undergrads majoring in some kind of engineering, not CS, though I still think it is somewhat relevant. I find the influence on family members to be the most interesting.

The third link has papers specifically related to interest. One is titled "The Anatomy of Interest." It discusses why women who started college enthusiastic about CS ended up leaving.



I play tabletop RPGs which could be considered fake achievement. The types I play however reward creativity and problem solving so I think they have merit.


Quake gave me a sense of direction when I was a teenager. Before that I had either walked very short distances or been driven everywhere. My sense of direction meant I could figure out that this street was parallel to that street etc. but it was not based on cardinal directions. When I started using a map during college was when my sense of north aligned with north.

In silicon valley it's interesting because people sometimes define north/south as parallel to the freeway north/south 101. It actually runs ~east/west where I am.


Carriers and HW companies may not like making side-by-side comparisons so easy. Alternately there should be names other than A,B,C which are not inherently ranked.


Someone (nokia?) has/had farms of different devices which you could test on remotely. However this is unlikely to be available to run-of-the-mill developers.


Agreed on the numbers.

Almost every web browser on the planet can run javascript, independent of operating system or underlying hardware. I don't think you can get more accessible than that


The hacker dojo may meet some of your needs.



Good compilers will warn you.

Extend this to functions as well.

I had a bug like

if (foo(b == A))

instead of

if(foo(b) == A)


Good compilers will warn you.

Even most bad compilers warn about this now.


Even ruby warns you

puts 'argh' if a = 'b' warning: found = in conditional, should be ==


Yes, but these warnings can generate false positives if you actually want to do assignment in a test condition. And before everyone tells me that's bad coding style, it is at least a common idiom in certain kinds situations like this very common example from PHP (whose compiler does not warn for assignment at all):

    <?php
    if (false !== ($pos = strpos($haystack, $needle))) {
        doSomethingWith($haystack, $pos);
    }
    ?>
I find the constant first notation to be very friendly, btw. It's not as natural when translated into English normally, but in terms of logic, it makes sense to think of the first part of the test condition as its own little predicate:

    // Generic language
    bool matchesMyConstantValue(val) {
        return MY_CONSTANT_VALUE == val;
    }


When gcc warns you, it tells you to wrap it in parens if you really mean it: "warning: suggest parentheses around assignment used as truth value". Your PHP example wouldn't raise a warning from gcc, because it already is.

I find assignment-in-conditional more useful in loops than if's, since you can't just plonk the assignment on the previous line.


Agreed and a more general case of that is something like:

  if ($result = $o->someMethod()) {
	// Do Something with $result, the method returned a value that cast to true
}


I would argue that this is pretty unreadable. Why do obfuscate your code to save one LOC?


It's common in C where functions return an error code instead of a value that you would use again. Then the conditional just checks that you're OK to go ahead, and you don't need to declare another variable to store the error code. (If a language has exceptions, then this isn't as useful.)


I write C full time for the day job and it normally goes something like this:

if ( !method_returns_rc( args ) ) { //error handle }

This isn't great, as I believe its not good to put methods with side effects in if statements (may be wrong here, or maybe its just me), but generally thats how its done (not to say that there aren't freaking GOTOs in our code... so take that with a grain of salt.)


One man's obfuscation is another man's expressiveness.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: