skysight-inc/HackerNews huggingface dataset:
men and women are not the same.

That's a straw man opener, for sure. No-one is arguing that men and women are the same. What I am saying is that women and men are equally capable at being great business leaders. They are equally capable of assholes while doing so. But men are far more likely to be given a free pass on behaviour like that than women are.

There's nothing evolutionary about that. Someone's perception of you is not coded into your genetic pattern. It's cultural. A hundred years ago you could have easily claimed that women shouldn't have the vote because of tens of thousands of years of biological differences. What makes that argument any different to this one?
> In the real world, most apps don't change database engines during their lifetime.

Perhaps not, but a lot of times you may have to support multiple database engines at once (this is more true of e.g. middleware than an end-user application obviously).
As long as all the profits are actually going to be used to help people, it doesn't count as exploitative i don't think. Though going to a foundation ... i don't know. A lot of charity money can go to paying salaries, and that doesn't always mean equal good is being done.
Mostly true - labels like "beautiful" and "elegant" make an app stand out when those labels are applied by other people, and not the developer of the app.
No, I am not a female CEO. I am female and have struggled a lot with the ways in which being female throws up barriers to some of my goals.

The fact that it wasn't perceived by her as a big deal does not prove she knows better than I do. Statistical outliers are not inherently more wise than others about the problems that your "average" person has.
To be sincere, I find Django's ORM is one of the weakest ones (e.g., the API doesn't support a simple GROUP BY). If you want to make a good case for ORMs, Django's may not be a very strong argument.

In about 5 years working with Django the ORM has been the only component that consistently gave headaches. I have filled a couple bug reports about it generating non-sense/slow queries too (like generating queries with `DISTINCT` for no reason, with no way to override).
Over and over I keep finding that just an ORM is not enough, but raw SQL is hideous in a different way.

ORMs map nicely when you are indeed modifying objects, but somethings don't map well that way. So don't map them that way! What we need is a low level abstraction layer alongside the ORM.

The main problem with raw SQL is that what you really want is a genuine programming language. You almost want programmatic access to the SQL AST, so you can generate syntax as opposed to concatenate strings together. Kind of like a DOM API, but for SQL.

Let me give you an example from what I'm working on now. So let's say you have a generic query for fetching monthly aggregated import / export values between countries. Sometimes you want to filter by one country. Sometimes you want to filter by 10 countries. Sometimes you want to use the column containing the inflation-adjusted value instead of the regular column. Sometimes you want the average export instead of the total export.

With a low level abstraction layer, I can do stuff like already_complicated_query.filter(another_param==5). Or I can write a function that does get_world_trade_aggregate(country="USA", aggregate="average") and it'll generate the right query for me. But then that's not even all, if I have to modify or filter that query further in some other part of the code, in some unexpected way totally doable. It's less often that I have to write a whole new function or duplicate code.

So the point isn't the abstraction, it's the fact that it makes queries modifiable and composable, which is something you just can not have in raw sql. So given a query, I can decide to add something to it or change it without having to change the text based SQL. You know how it's good practice to split your 1000 line function into smaller, modular pieces? With this you can do that with your ginormous SQL query too. AND it's (well, almost) guaranteed to generate correct and safe SQL.

This also makes everything much more maintainable. E.g. If I change table names or migrate fields, often it's a non-issue and there is a single place I need to change that. But with raw SQL you have to go in and do a ctrl-f and hope you catch everything, but often you don't because someone decided that that field name should come from a variable or something.

Raw SQL spits into the face of everything we've learned about programming languages in the past 60 years.

Anyway, the neat thing is that this magical system exists, as the SQLAlchemy Core (http://docs.sqlalchemy.org/en/rel_0_9/core/tutorial.html). Enjoy!
I am not testing — and I know this is horrifying. I need to write some tests. D:
In New Zealand, the posted speed limit is often too high for the road. If you drive the speed limit, YOU WILL CRASH AND DIE - frequently taking another car with you.

This is because:

1) Very few divided highways
2) Blanket speed limit of 100kph on open roads
3) Fun road obstacles - hairpin turns, single lane bridges, blind corners and no shoulder drops down cliffs.
Even these days, many people have a problem with "female". Some people with particularly unsavoury views of women have a particular tendency to use it.
They're lowering prices by 50% for the next day. Two interpretations:

-They want to take advantage of the publicity to sign up as many people as possible, hoping a decent percentage stay at the higher rate.

-They hypothesized the price was too high and are testing the effect of lowering it.

I suspect it's a latter with the former as a fallback benefit. Their most recent product change coincided with a 20% price decrease. O'Reilly wants to focus on making the best product possible, even if the higher expenses and lower prices mean reduced profitability in the near-term because he sees how huge this can be in the long-term if done right.

Pearson likely doubted the wisdom of short-term sacrifice which is how each side leaves feeling happy.
Enforcement is certainly part of it (planners and civil engineers make jokes about the ever-changing number of "E"s involved in planning--engineering, enforcement, education, encouragement, entomology, et cetera). From my own experience, enforcement is the number one thing people ask for at public meetings, and the very last thing they are willing to pay for. Enforcement is crazy expensive.

Technology, as you point out, more broadly deployable, as well as cheaper and less likely to discriminate. For that reason, I actually kind of like speed / red light cameras. However, they are wildly unpopular to the point of being made illegal in many places. Plus, I think there are legitimate concerns about surveillance aspects of our newly smart cities.

With respect to "safer at any given speed" designs, I think you have to consider that, in order for safety to hold, you need to make some unrealistic assumptions about other factors remaining constant. Also, many of those so-called safer designs really do everything possible to eliminate other kinds of roadway users from the mix.

An automobile monoculture isn't very robust, and it also assumes the wrong units of analysis. Traffic engineers used to measure mobility in vehicle throughput. Amazingly, if you shift your units of analysis to people, monoculture looks less compelling. And that's even before you consider physical activity, environmental externalities, and a raft of other issues.
The lower the speed limit, the easier it is to generate traffic ticket revenue. It's a money game. In California, they tell you that whatever the judge tells you your traffic ticket fine is, say $100, your total is 6 times that when administrative fees are added in.
If it was released today, they would skip the awkward do-i-spell-it-out-or-do-i-add-vowels part in favor of the catchy-but-meaningless-project-name and just call it Sequel. Then they could be fresh and say it's the "sequel" to ORM.

(Though you might go for Seequill or something so people could google it.)
Funny they should say that now, seeing as how they used to think the web should work for everyone, as long they were using IE.
SQLAlchemy isn't like most ORMs. It's data model is actually closer to the relational model than OOP objects, and therefore lacks many of the ORM warts.

I wish more ORMs were like SQLAlchemy.
> Women are much less likely to be met with that reaction.

This does not seem to be the case in my small sample of anecdotal experience. Could you say a bit more on why you think it is the case in general?
It is smaller, but it's not like all women have to get their children before 30...
Whether or not the constitute "Python" code is debatable. But it is common practice to not count blanks and comments when stating LoC.
Assembly is a very ambitious name for a startup about coding. It's like naming a startup Java or Ruby.
Most of the time I see arguments like this the author probably has an inconsistent and de-normalized schema. With the caveat that all growing systems gather warts, and yes, it's nigh upon impossible to keep your data de-normalized at scale with sufficient complexity, an ORM coupled with a decently designed schema is an unbeatable combination. Not only do you get fast development, code re-use, and easy benchmarking but you also get all the knowledge and expertise that's been baked into the ORM. Most ORM's now come with miles of security features built in, and are able to infer and optimize on complex queries and joins better than your average non-DBA developer (assuming your data size isn't in the millions of rows, per table, with < 3 tables to join... aka 90% of all queries).

Of course general solutions sometimes can't match up with tightly coupled, highly optimized, extremely specific hand crafted SQL, and duh, making things easier can encourage bad practices, but that's just parroting tautologies and ignoring all of the benefits you get with an ORM. In fact, good ORM's will even provide tools to allow you to construct custom queries in the same scope as an ORM query, allowing you to have your cake and eat it too. Why would you throw out the baby with the bathwater when you can just rewrite your most egregious 10% of queries in SQL, while allowing the rest of your app to merrily chirp on? Hopefully one day someone super smart can create a brilliant ORM that incorporates machine learning, whizbang functional tools, and insert trendy something or other here and we can all relegate SQL to the status of "DB assembly" where it belongs. I, for one, am embracing an era where devs no longer have to shlep around arcane DBA wisdom tidbits in comments above grotesque SQL queries. Why would you ever reject high level abstraction over tedious minutiae?!

P.S. This is all ignoring the ease of which you can switch database backends/engines with ORM's, which could be a 500 word comment all on it's own
I like the idea and can't wait to try it. I was using Evernote to track down projects, but this one might be a better fit! Thanks!
I was thinking more of the Magento/Oscommerce/Prestashop community, as shop owners are obsessed by monitoring competitors, and bots scraping thousands of pages are a common resource/plague there. A Wordpress plugin would be nice, too.
I'd trade a reasonable (15-20mph) speed limit on city streets if it meant people could blast it on the highway.

It's silly to me that so much of the speed limit conversation is around highways, when really the dangerous streets are the fast non-highways (where you see the unfortunate folks walking in the shoulder.) If anything we should slow those down so people don't go faster than 30mph, if we want them to be safe environments for walking.

Sure, speed up the freeway all you want, but don't conflate the freeway's inhumane paved wasteland with every street.
> it's difficult for a woman to step into any kind of leadership position and do the tough things without being perceived as a "bitch".

I disagree that leadership is about being a bitch or an asshole.

Yes, it's widely said that Steve Jobs was an asshole. But people "got" where he was coming from. He was a perfectionist. I'm pretty sure he didn't alienate all his friends.

In leadership you have to be able to take tough decisions; but it's not about being tough with other people all the time. You might have to be tough with someone occasionally, it's a tool you might need to use.

Take Martha Stewart for example. Tough bitch ? Successful CEO ?
Hence why I tend to use "female" and "male." Mankind is not separate from the animal kingdom. Although I suppose male human and female human are the least ambiguous.
Your homework for today is to go ask your mother if having and raising a child is equivalent to taking two weeks off work.
Sounds more like an opportunity than a handicap to me.
Don't books get revisions ? So in the future, why not the content (as in images, "meme"s in addition to text itself) ?

Come on guys, the article is not about "memes", but what's described at all. Through the read I've quite enjoyed and memes were placed correctly.

Kudos author(s). Looking for the rest of series.
It's a shame their Indie plan doesn't include Visual Studio support, without that there is way less value as a developer imo (and at $1k/yr still steep for their business plan).
Apple uses Riak for this.
Show HN: Sup? A simple clone of Yo for Android
Correct me if I'm wrong, but the studies you're referring to are examining speed, but not speed limits. It doesn't seem to me that the two are equivalent.

This might be another "tantalizingly counterintuitive" observation, but raising speed limits may not necessarily make everyone go faster. What it might do, though, is make people more courteous to each other.

As an example, if the speed limit is 50mph and you're going 50mph and someone is tailgating you, the fact that they're tailgating you probably frustrates you and makes you less likely to speed up or switch lanes. In fact, depending on your personality, it might make you mad enough to slow down or brake check them. However, if you're going 50mph because that's the speed you're comfortable with, but the speed limit is 65mph, you'll probably still be annoyed at somebody tailgating you but you might also be more sympathetic and hence less likely to do something passive aggressive.

This is, of course, all speculation.
Doesn't this actually un-thicken the plot? :)
The article repeatedly mentions that there is very little correlation between posted speed limits and traffic speed. He goes to great pains to explain that traffic speed seems to be independent of speed limits. The paper you quote states that there is a correlation between accident frequency/severity and actual speed not speed limits. The argument in your comment is based on precisely the fallacy that the article says most people unfortunately fall for, which is that there is in fact a strong correlation between posted speed limits and traffic speed.
> 1cm on a mobile device and 1cm on a desktop

You lost me. How is 1cm on a mobile device not the same as 1 cm on a desktop. Yes, they have different pixels resolutions within that centimeter, but the length of a centimeter doesn't change.

Well, unless the engineers are fudging the standard so marketing isn't seen to be lying.
Interesting. Working in my (first) game atm in my free time, was just about to refactor the enemy system, so this is a gios time to try something interesting like this!

Thanks for the writeup.
http://www.svb.com/uk
Speaking of speakers: The official deadline has just past (we just missed this!) but I'd love to have some HNers submit for DevOps Days Toronto here: http://devopsdays.org/events/2014-toronto/propose
>With a low level abstraction layer, I can do stuff like already_complicated_query.filter(another_param==5). Or I can write a function that does get_world_trade_aggregate(country="USA", aggregate="average") and it'll generate the right query for me. But then that's not even all, if I have to modify or filter that query further in some other part of the code, in some unexpected way totally doable. It's less often that I have to write a whole new function or duplicate code.

If you're working in Ruby, there's also Arel[1]. I have my complaints, but it seems to be the exact same thing: Composable, programmatic access to SQL from your application code.

[1] https://github.com/rails/arel
Several psychological studies indicate that adjectives like "ambitious" are often perceived as positive when describing men but negative when describing women. That does make the female leader's role more challenging.
Ditto. I hate the spam submissions.
I'm annoyed that the taboo thing to say in this discussion is whether increased traffic fatalities is always an inherently bad thing. When you're talking about societal-scale policy, it's impossible to make anything 100% safe; rather, it's about acceptable trade-off in risk. We could make a universal speed limit of 10mph and traffic deaths would probably vanish, but we don't because the impact on transport is too great. People like to brush off this argument with "should someone die just so you can get to work 5 minutes earlier", but if you start multiplying those 5 minutes by millions of people, there is an actual trade-off to consider.
Show HN: 'tmux-open' plugin screencast
A good ORM is not a substitute for SQL. They help you with mundane things and you can still write SQL if you want. I like the approach of RedBeanPHP (www.redbeanphp.com).
Very cool hack, I love reading stuff like this, thank you for sharing your experience and knowledge. I was going to ask the same question about just re-soldering onto a new SD Card of a similar type, I was wondering if the controllers can detect the exact chip type they are connected to, if so it might work. Also, for de-soldering and soldering SMT's the hot air re-work station makes it easy, never hurts to have the right tools :)
While "gender identity" probably doesn't play a large role in the "when" decision, unfortunately "gender expectations" do. Most societies expect different things of different genders, regardless of what the individual wants, leading to social pressures. Luckily that doesn't apply to America as much these days.
No one respects an asshole or a bitch if that is all they are. If you are one of these and great at what you do, people will often accept your character flaws. If you are an asshole and do not know anything, then you will soon end up with people who either have no other choice, or those actively trying to leave. Neither one of these will help you build a great company.
***Move Your Body***
> You know there are cars outside America?

Sure, that doesn't change the fact that your statement upthread is still generally wrong. But I've updated my response to it to be more general and less US-centric.
Teens Youth Ministry: Palavra Profética – Domingo 03/08/2014
Does this mean that Pearson books will start disappearing from Safari?
> My greatest fear is discovering too late that something I'm doing will make me famous

Careful. That quip is almost good enough to become famous for.
The problem is childcare which lasts much longer than 2 weeks. A woman who wants to focus on career and have children would be best served marrying a guy with less career aspirations than her which she would be less likely to run into in corporate circles.
Father of net neutrality Tim Wu talks about tech policy’s worst year
> You almost want programmatic access to the SQL AST, so you can generate syntax as opposed to concatenate strings together. Kind of like a DOM API, but for SQL.

I think this is the appeal of MongoDB's driver on Node: You really do have programmatic access to the AST, insofar as the microlanguage is just a plain old Javascript object.

Though SQL is more universal, Mongo's approach definitely has thought hard about the balance between abstract and concrete that me and my other developers find very intuitive. So intuitive that we use their microlanguage way outside applications in ORM, like for sorting, filtering and object updates.
I've been noticing this type of thinking a lot on HN. It simply isn't true. I am not in the tech industry (if you search my comment history you'll find I do underground tunneling) but everybody I have interacted with at my firm that is above the junior level (and the majority of those at the junior level) puts in far more than 4 hours of concentrated, high-quality thinking a day.

Out of the normal 45 to 60 hours I work a week when I am doing design work, at least 75% of that time is spent doing high level thinking. I am not an anomaly in my firm.

I don't accept nor do I respect the idea that a person is only good for a couple of hours of high quality work to their employer per day.
HN self-selects "code lovers." It's easy to see that how the belief that this also applies to the industry can propagate here.
I'm loving all the momentum towards writing templated-sql, in fact, I wrote a library for this myself[1].

By leveraging jinja2/django-style template inheritance, you can even bring some advantages of ORMs (composition, reuse, and extending) into the raw-sql world.

The OP also intimated that he's taking a templated approach:

"“In these cases, I've elected to write queries using a templating system and describe the tables using the ORM. I get the convenience of an application level description of the table with direct use of SQL. It's a lot less trouble than anything else I've used so far.”

[1] https://github.com/civitaslearning/swigql
Xiaomi’s One More Thing
You might be interested in 'General Game Playing'. The idea is that players are presented with a machine-readable description of game rules (in a prolog-like locigal language), and they then play the game.

Since you can't use human-tuned heuristics for every game, you have to use more general meta-heuristics. There's also a lot of room for logically parsing the game, and trying to separate out individual components, obviously meaningless moves, etc.

see http://en.wikipedia.org/wiki/General_game_playing or https://www.coursera.org/course/ggp

an example game: http://ggpserver.general-game-playing.de/ggpserver/public/vi...

it basically defines an initial game state, the moves each player can make and how they alter the game state, and the end-conditions and goals of the game.
Yes, I think so. As others pointed out earlier, portable devices with immobilized reagents like pregnancy tests or glucose monitors already show the concept is (in principle) feasible; and there's been a lot of recent work dedicated to miniaturizing and integrating all steps of critical assays, including even the most elaborate ones [1]. It's pretty impressive stuff, so I expect a breakthrough anytime soon.

I definitely agree though it's a commendably well-thought-out project in itself, especially for the usual techno-bubbly standards of Silicon Valley hackatons of late.

[1] http://www.springer.com/cda/content/document/cda_downloaddoc...
You'd hope. That's all I could take off (paid) for my daughter's birth though. I had a little more time for my son's (first born).

Leaving out details, but I'll say my wife's time/compensation package was _far_ better than mine. If anything her career has accelerated sharply since our first born. Which is positive of course. But it certainly seems counter to the "prevailing wisdom" on HN.
Sorry... I meant more portable between applications (assuming you're willing to stick with SQL), obviously not between database providers.
I'm slightly envious that you are working on a Clojure project with PostegrSQL, especially involving all the bells and whistles. Got any PostGIS or otherwise geospatial data, on top of all that? :)
Also depressing are some of the corollaries that have cropped up. "On average, you are surrounded by people who are more successful than you." "On average, your (sexual) partners have more partners than you."
It depends what you're trying to measure, no? I agree that for the point being made it's not ideal, but I think it's separately noteworthy that in the US, poor planning and more car-dependent lifestyles lead to a higher rate of traffic fatalities because of how much more Americans end up having to drive.
Can your bluetooth speaker survive a toilet flush?