skysight-inc/HackerNews huggingface dataset:
I came here to post this too. I felt bad for them until I got to the "girls" part, at which point I didn't feel bad.

Although they didn't go out of business because of their sexist business practices, I don't shed a tear for them.

Yes, this is a marketing stunt, but I hope the day comes when the cost of this marketing outweighs the benefit (i.e., more people find the objectification of women offensive to the point of changing their purchasing decision than people who find it appealing).

This is related to a common theme on HN: discussions of why there are not more women in tech and tech leadership positions.
A big ditto from me at 42 (programmer/musician)
6 Big HealthTech Ideas That Will Change Medicine In 2012
Don't underestimate the power of defaults:

http://www.codinghorror.com/blog/2007/01/the-power-of-defaul...
the problem seems to be with verification not the business model itself.

so they should just tweak it to make it work...there are hundreds of supercar rental companies, so just copy them.

.
> Every added level of nesting is another piece of context that your brain has to keep track of.

I disagree entirely. Nesting manifests the conditional-evaluation context in the presentation of the code. Without nesting, the context shifts must be held purely in the mind of the programmer (instead of offloading that storage to the layout of the code.) In dynamic languages especially, I've also found that early returns lead to more test failing while refactoring (or more bugs if the code has low test coverage.)

The issue I have with named functions (as shown in the article) is that context for inner blocks must be passed through the outer blocks, which means your intermediate function signatures have some irrelevant (to the local scope) cruft. There are some rough corner-cases where nested code is far less complicated than juggling context batons.
I can see how it can be a difficult situation for him to turn in his friend, but it's only because he's detached from the situation.

m0nastic: Just think of the people who have their cars stolen, and tell yourself that every time they steal a car and you don't turn him in then you've essentially helped screw that person over. That person could be someone just like nostromo.

Imagine young nostromo, coming to you for help. What would you do? Who would you side with? Every time they steal a car it's the same situation, except the victim may not personally know you so they won't come asking you for help.
Returning early is, in my experience, a recipe for disaster.

Even in trivial 4 line functions I assign my return values to a variable and then return that at the end of the function.

This may just be my pedantry left over from when I first studied C at university, but more than once I've spent a while trying to figure out why a return value wasn't what I was returning (from some code that had been previously written by someone else) only to find that there was a return statement on the 3rd or 4th line of the function.

One could certainly argue that if a function were concise and readable and commented and all that stuff then this wouldn't be a problem, but that's not always the case and a little return statement sitting someone in the middle of the function can really throw you sometimes
You can also place blocks of code in a list and recurse through the list until the user is found.

let cacheUser user =
cache.set(user.id,user)
user

let anonymousUser id =
Some(new User())

let sourceList = [(fun id -> cache.getUser(id),
(fun id -> db.getUser(id)),
anonymousUser]

let getCachedUser id =
sourceList
|> List.pick (fun source -> source id)
|> cacheUser
I get that, I think here though, the idea is that those defaults are probably fine for the average user that can't be bothered to check the config. (On a tangential note, as that link talks about reinstallation and rote reconfiguration, this would be an example of where unix-style/philosophy is so nice. Configure it once, back up your config files in version control and you're good to go even if you reinstall.)
> all territory is split up among the different crews

That's probably not that much due to negotiation, but because smarter team tips off police about criminal activity of competing team, and competing team ends up in jail.

I would guess that more aggressive team is more likely to end up in jail, which causes natural evolution toward less greedy teams.

Still, stealing is a stupid choice for people capable of running efficient organization.
The title had me thinking 400,000 per car. The article corrected me to 400,000 total. The founder email corrected me further to 300,000 total.
For Javascript, async.js[1] offers some good tools for different kinds of control flow with callbacks.

[1]: https://github.com/caolan/async
Besides full content plays like Drupal, I've enjoyed working with Textpattern (http://textpattern.com/). It's easy to format content with textile, and it has a nice mix of plugins and template atomics that give you great power over the look and feel.
ownzee.com
Why does a car sharing service that can't afford a $400k loss have 4 $100k cars.
The insurance premiums will go up.

The problem is that the cars are owned not by HiGear but by wealthy clients who want to rent out their car (instead of having it sit in a garage). The cars have sentimental value. They may be customized and difficult/impossible to replace.

I suppose there are already businesses that don't use a Peer-to-Peer model. If it's just a matter of arranging rentals in a more traditional model, and only for wealthy customers, I don't even have to google -- it's been done before.
What could possibly keep gang member in the gang aside of greed?

Why not just move to another side of the country and start a new life?
Beautiful explanation. And to add to this, I would like to add something which isn't really related to tech but relates to the question.

My Dad is a general physician, and hence is a generalist. If you knew how Physicians' function you might know that he is the first person you need to see if and when you have a medical issue. And once he diagnoses the problem he might refer the case to an appropriate specialist.
I'm not sure if it's a good idea to motivate bottled-water companies to send their trucks over structurally unsound bridges just because people will pay $10 per bottle on the other side of the bridge.
This is a cool project/initiative ... I will be following you guys, maybe even participate :)

Hope something good comes out of this ..
AFAIK DeviantArt's team is all remote.
TextPattern is fantastic, and really encourages separation of content from presentation. That said, we use Posterous for company and personal blogs, so the hassle barrier is essentially zero.
I had one of my old cars semi-stolen. Luckily I took a few precautions and had a hidden fuel pump kill switch wired up(since the Integra was a very high target for thieves).

So they only got 20 feet away before the car died on them.

Wiring one up is real easy, takes like 20 minutes, all you have to do is pull the rear seats out, cut the wire and extend the wire to the switch.
Show HN: Facebook / social media as a CMS
It's drug money like reporting.

In this case, three old Datsuns were stolen, reported to the police as four recent Jaguars, who wrote down five Porsches, and finally reported as 1 Veyron.
You might think differently if you didn't have access to clean drinking water.
You are overestimating the ability of people to listen to directions and think and adapt them for themselves.

If it were that easy, none of us here would be complaining about hiring incompetent people :)
(Three replies essentially all said the same thing. I'll respond to this one.)

Enslavement should not be the standard by which we assess the effect of such actions. Under capitalism, we should expect to see people trading their labor (or image) for money.

The more interesting questions include: why is this marketing pursued? How does it fit into a tapestry of cultural "norms" that objectify and demean women? What effect does it have on all the people (men and women, boys and girls) who "consume" it?

The origins and continued existence of "car chicks", "beer girls", and "booth babes" has nothing to do with empowering women by creating new labor niches. It is a reflection and extension of a sexist society and culture.
Yeah, free plugins are both a blessing and a curse, though the majority of the common WordPress plugins (the common ones) are quite secure and are regularly updated. Obviously you can't install just any plugin without doing some research.

Obviously you have to be a programmer to roll your own blogging platform so that option is not for everyone, but you'd be reinventing a wheel being run on 70 million websites for the stated reason of writing something that is more secure? You'd have to be REALLY good at what you do compared to the 1000s of WP developers contributing to WP, the dedicated security team, and the hivemind of bug-reporting WP installations. Plus, when you do encounter a security vulnerability (not if you do), it will be your sole responsibility to patch the hole.

Closed-source is not a security solution - security by obscurity is no security at all.

I do not think that rolling your own blog platform is a bad idea as it's a great learning experience, but it is not a good solution if you are concerned about blog security.
Are you guys looking for summer interns?
Crowd-testing iOS app without putting app on marketplace
I want to be able to send invite to bunch of my friends across the world to test out our iOS app, without actually going through marketplace. Is there a way?

Primary reason I want this app to be widely tested before it hit marketplace is to make sure that app is very well tested before we formally hit marketplace.

I am sure some guy have figured out a way...looking for suggestions.
WordPress provides both a product that can be customized by non-coders (using existing themes and plugins) and a framework for blogging in the PHP language (by writing your own themes and plugins). It is both product and framework.
Not a musician, but 14 years of lessons in piano, woodwinds and percussion as a kid, and recently acquired keyboards, guitars and clarinet.

Recently I started coding in a language i was sort of afraid of, haskell, and playing an instrument I was afraid of, fretless bass, at the same time. I had a "Dammit, go somewhere, do something" moment.

Which reminds me that i was going to google for how string, brass and woodwind players aren't locked into equal temperament, they can intonate as they like.
Your Hail Mary comment got me thinking: is there an example of Hail Mary working in the tech biz? I've seen it happen in football enough to know it's at least worth a shot. But launching a product with all kinds of problems into a competitive market?
One way I was thinking is to put this app on marketplace using different account/app name.
Seriously, the title here is not even close to what the actual article covered. It sounds more like someone offered this as justification for why they felt the Touchpad was doomed to fail.
This is, in fact, a great solution in certain contexts:

http://wwwens.uqac.ca/~flemieux/PRO102/goto_Rubin.pdf
43 yo here. Recently I've been using Garageband to learn guitar. It's fantastic. My first serious use of computers with music even though I've been a programmer for almost 20 years.
It's always enough on webOS, and in the rare case when it's not, you have C/C++ instead of Objective-C.
I'm sure there's pressure to put out articles as fast as possible verses the old days of publishing where a journalist might have weeks to work on their piece. With publishing on the web so easy these days readers tend to expect higher publishing frequency, but I'm sure we can't be the only ones who would gladly trade quantity for quality.
follow your conscience!
Http://www.addthis.com/bookmark.php?v=250&pubid=zedge
Online membership software
Initiate and manage online, phone and in-person membership sales with membership software. Includes automated renewal and member communication tools.
https://testflightapp.com/
Actually, it's an incredibly good idea to motivate bottled-water companies to find ways around structurally unsound bridges to deliver needed water to desperate people on the far side.

And we have plenty of health and safety regs that prohibit, for example, ordering an employee to drive on an unsafe bridge, so that concern is rather a red herring.
The "newsig" branch is current development. That old stuff still has older syntax and semantics.
Budget is the biggest factor. That's why there will be no end to Occupy. It's a war of attrition. The Occupiers want to force anarchy across the U.S. by collapsing police departments in each city.
Have you used it? How would you rate it?
I'll +1 everyone who is recommending Jekyll. I've rolled my own blog engines (first one was Java/Struts 10 years ago) but I'm loving the zen of blogging via creating and pushing Markdown files to GitHub.

It's simple, provides me with a versioned and easily portable archive and doesn't require constant security updates. Here are some tips from migrating from WP: http://decafbad.com/blog/2011/06/08/moved-to-jekyll
another dumb vc sponsored idea fails, 290120 left...
It also looks like they first "round up" to the $15 minimum, then multiply by the dynamic factor.
Looking good! :)
If it were possible for everybody to block all advertising all the time, it would kill today's internet more effectively than SOPA.
Is that really so appalling..

I mean, stop to think for a moment. If there are Indic scripts there is probably an RTL handler et al. right? And they're working on implementing more complex font rendering.

But at the end of the day they have to load in thousands upon thousands of symbols and glyphs from many different cultures, either in open fonts or creating the fonts themselves so they can assure proper legibility and that the display looks like Android.

Doing that is no small task. I think it may have actually been easier for Apple, considering that the iPhone uses the Helvetica font that Apple has been working with for years.

Unicode is no small task, and though I agree they need to pay a lot more attention and put a lot more work into it we shouldn't underestimate how much work proper unicode support is.
I'd be interested in which `free` you are talking about. Beer or speech (or both)?

Because for me, the prime reason I refuse to use Dropbox[1] is that it's unfree software as per the speech definition. I am not running software on my computer that needs internet access and transmits files when I can not verify what this program does, in addition to my personal policy of reducing my usage of unfree software to an absolute, unavoidable minimum.

[1] I'm studying CS and it's really annoying how ubiquitous Dropbox has become among the student crowds. I stopped counting after about the first three dozen attempts of people trying to get me to use Dropbox.
Let me assure you, I'm still here :P

Most likely they reported based on original MSRP (likely around 400K) rather than current value (300K)
The following also mentions something on the similar lines
http://www.kernel.org/doc/Documentation/CodingStyle
I agree that WebOS has a good ambition. But maybe that they should have updated their software stack more often. If you look at the software versions, such as Webkit, V8, node, you find that their collection of tools are heavily outdated. That's completely against the nowaday web standard of fast updating.
Here's a link to the talk about PostScript hacking, which some people might also find interesting:
http://www.youtube.com/watch?v=PqL5P46m_zQ
I try to think in terms of interfaces, but implement quick & dirty.

So, for example, I may imagine that data sources for a page will come from several places: the db, Google maps, an api like Twitter etc. And I will create stub classes to capture this concept, but the methods will just return hard-coded elements. Eventually if the project goes anywhere I can build out the underlying methods as necessary.

I find this helps me feel like I'm doing real engineering but not get too lost in the abstractions.
Yes I know of Rust and think it's very interesting. For most system level programming it should be an excellent choice. It's great that the dearth of systems capable languages is something that is becoming less of an issue.

But when i was making the list I was thinking about if the language could possibly be used in an embed context. C is still king there. Rust I believe, is partially garbage collected in a way that is not practically avoidable. Any use of boxed types or abstract datatypes will incur this penalty. So with that criterion rust is not an option, in an embed system continuous execution is most vital. The languages I listed are either not garbage collected or with an ability to turn it off or use an alternative to abstract datatypes and have basically no overhead. The last time I saw Rust mentioned on HN a team member validly stated that such concerns are not the priority at the moment.
Totally awesome. I'm constantly impressed at the holiday projects that were developed.
You do have C++/SDL (roll your own UI!), but if I recall correctly you DO NOT have native UI APIs anywhere near what Cocoa is.
Sort of; it's Maybes being composed with <|> rather than with >>=. The code in Haskell is still extremely ugly, even though there's no indentation moving the code over to the right:

get_user :: Cache -> Database -> Maybe Id -> Maybe Username -> Maybe User
get_user cache db id name =
(id >>= get_user_by_id cache) <|>
(name >>= get_user_by_username cache) <|>
((id >>= get_user_by_id db) <|>
(name >>= get_user_by_username db)) >>=
\user-> cache_user cache user >> return user) <|>
Nothing

So while I like the look of this code more than I like the look of the Python, it's still shit. The problem here is not that there is nesting, it's that the code isn't well-factored.

The first problem is that the function does too much. There should be two methods, one that accepts a username argument and another that accepts an id argument. The dispatching between the two types of invocation is one level of nesting that is completely unnecessary; get_user_by_id(42) and get_user(id=42) are both equally easy to read, but the latter is much harder to implement cleanly.

The next problem is that the caching logic is handled in this random data lookup function, instead of some place where we can reuse the common pattern of "check cache and return, otherwise fetch, cache, and return". So let's write that:

def cached_lookup(cache, object, method, key):
# already cached
if cache.contains(key):
return cache.get(key)

# not cached; lookup in database and add result to cache
value = object.method(key)
if value is not None:
cache.insert(key, value) # we are punting on calculating the key
# from the value here, but that is something
# the cache could be taught to do with a
# decent metaobject protocol.
return value

Now we can rewrite the get_user functions:

def get_user_by_id(self, id):
return cached_lookup(self.cache, self, 'get_user', {'id':id})

def get_user_by_name(self, name):
return cached_lookup(self.cache, self, 'get_user', {'username':name})

Now the functions are separated by concern. The get_user_by_* functions do one thing: compute a cache key and ask the cache for the object. The cache is then responsible for the fetching logic. That means if we want to change how caching works (perhaps to add eviction), we only need to change one thing in one place. If we made every get_foo_by_bar function handle caching, the code would quickly become unmaintainable.

So to summarize, nesting draws our attention to problems, but removing the nesting is not the solution to the problem. Neither are monads. The solution to the problem is to refactor.
I'd be fine with it if one of the requirements was "does not take more than 100ms to load." For me, the point of AdBlock is that pages aren't blocked from rendering by needing to pull down external dependencies. (Ads are one example, but analytics scripts and "like" buttons also count.)
I've done this sort of thing to satisfy DRY in general (this kind of nesting problem is quite repetitive), and to generally make the intention more obvious. It's not so pretty in certain other languages, but still worth it.

(Edit: I posted before you edited.)
I've got 3, and am trying to convince myself to not renew one of them. But you know, I just might use it someday, and...
I wonder what your opinion is on baseball cards.
My resolution is to open source my work, yours should be too. Here's my start.
That pretty much describes the MMO industry. I remember beta testing EVE Online and being amazed when they launched it. Yet, it's still going strong how many years later.
Safety, for one. As for moving, family and lack of a link to anywhere else. Starting a new life isn't as easy as you seem to think it is. Nor, for that matter, is moving. Particularly if you don't necessarily have any good marketable skills.
do you have an email I could contact you at?
I've used it. Works fairly well, of course your friends need to give you their device ids, and you'll make an ad hoc build.
Metro Design Principles
An interesting font I use from time to time when I need to do multilingual work:

http://unifoundry.com/unifont.html

While quite ugly, (it's bitmap based) it contains 43,149 glyphs and weighs in at 10MB. You won't see any square boxes in this one.

Incidentally, the size if this starts to show why downloadable web fonts are not a viable solution for some non-latin sites.
Marriage Based Green Card Interview
Trust me, it's not good. It's not a matter of adding "rounding corners and other gewgaws" (which you already have on your site, I might add). It's about knowing what you're doing or hiring someone who does.
Perhaps I'm assuming, but it seems you don't know much about the life of the poor.

If they could afford to move from the projects where these gangs operate, don't you think they would in a heartbeat? The foot soldier in a gang is not making a lot of money - far from it. But your mom just got laid off, rent needs to be paid and your baby sister needs to be fed. So you do what you have to do.

I'm a big believer in personal responsibility, and was as big a supporter of Randian thought as one could be without ever reading any of her book. But as I grew up and got exposed to The Real World, I realized that many times we are the victims of circumstances which seem to conspire against us.

So it's not always easy to just up and move to another side of the country.
SEEKING FREELANCER - Remote only.
I need a jQuery/jQuery mobile person to help me finish a proof-of-concept workflow.

I've been doing this iteratively, so the tasks that need completion are discrete and well-specified: hourly NTE.

My email is in my profile.
Bridegroom
Jeevansathi.com is the leading marriage website that offers lakhs of genuine bridegroom profiles with photos and verified contact information. You can choose according to your community, profession, location etc. and find the one who best matches your preferences. Register for free and take a step closer to a lifetime committed relationship.
If you have kept up with this particular friend so that you know his current situation, then you have not removed yourself from the moral dilemma. Glad you got out, and there may be other reasons not to turn someone in, but this is a bad excuse.
Yes, that's an excellent requirement!
Dicuss: http://tbaggery.com/2011/03/10/is-tpope-asleep.html
No, it's completely unrelated. The only topic this is related to is, "Why do people care so much what women do, of their own free will, with their bodies?"
I've used it before, and I would consider it as close to a seamless experience as you can get. Though you are limited by Apple's ad hoc limit of 100 users.
returning early is a good practice for all the guards and sanity checks you have to perform before the main logic of the function kicks in. if you use it this way, your function will visually consist of a bunch of small blocks each with a return, followed by one larger chunk of code that is the "actual" function, and where you can enforce a single return at the end.