skysight-inc/HackerNews huggingface dataset:
I like to keep it simple. 20% or 25% for fair to good or really great, 15% for poor service. I too don't like how people are trying to push this value up. But at the same time I have enough and I don't mind sharing some with a person who has just served me dinner.
Heroku exists because Ruby deployment is a major pain point and developers are willing to embrace serious architectural limitations and high rates in exchange for willing this problem away. I'm not down on Heroku at all, I think they're brilliant, but "use Heroku" isn't a universally viable technical solution to this problem.
Congrats on writing your first extension!

Out of curiosity, why did you choose to pass around the salt explicitly? According to the docs at http://www.mindrot.org/projects/py-bcrypt/, you can test a password directly against the output bcrypt.hashpw, without explicitly separating out the salt:

import bcrypt
password = "my_password"
hashed = bcrypt.hashpw(password, bcrypt.gensalt())
if bcrypt.hashpw(password, hashed) == hashed:
print "Success!"

I'm also a bit curious as to what deficiencies you're trying to address in the existing py-bcrypt library? Similarly, how did you decide to make this a Flask extension, versus a standalone Python module? It doesn't look like you're actually doing anything Flask-specific. Do you have broader plans for the project?

Edit: Also, I think your docstring for generate_password_hash is incorrect. You state that "Ints exceeding 31 will become the default value of 12." Instead, py-bcrypt has a floor of 4 rounds and a ceiling of 31. Integers exceeding 31 will be treated as 31, etc. For reference, here's line 32 of py-bcrypt's __init__.py:

return encode_salt(os.urandom(16), min(max(log_rounds, 4), 31))

Link: http://code.google.com/p/py-bcrypt/source/browse/bcrypt/__in...
> I would love to see some people blog about the basics of using new versions of rails.

You mean:

Rails for Zombies (http://railsforzombies.org/)
Michael Hartl's screencasts/tutorial (http://ruby.railstutorial.org/)
Stack Overflow (not a blog, but a really good resource).

I think the number of blogs doing Rails 101 type posts has changed, because there are existing resources that do a great job, and developers/bloggers recognise that.
There are two questions here - data integrity and service availability.

To the first question - daily backups are too rare, consider incremental SQL log backups throughout the day, like every 15 minutes.

To the second question - 5 minute downtime is likely a lot less important for your business than you think. But your hardware will fail at some point and cause several days of downtime it takes to order a new machine. It's probably not acceptable so you will need a standby machine.

Personally I run all my SQL Servers on AWS EC2, so if one of my servers fails I can simple reattach the EC2 EBS volume to another machine and I am back in business a few minutes later. I also do EBS disk snapshots every 15 minutes. Even if entire availability zone fails, I can restore the EBS disk from a snapshot and get up and running in about an hour.

The setup you are describing will work as well it just seems very capital intensive with all the hardware and software licenses. And you're still prone to Geo failure (power failure, flood, tornado, fire, theft).
Did Google actually make an offer for Groupon? IIRC, Google's never said either way, and it seems unlikely (they'd be a horrible culture clash, if nothing else).
People should check they are not charging $5/minute.
Who cares about google maps? I use waze, a free gps that has all Israeli roads and hotelier listed, plus, if there is a new road, users can create it into the map. I also have an iPhone app that tells me about different shops and entertainment and gas stations etc that are around.

I use google maps (map view, not satellite) multiple times a week. I use the walking directions, and find the
directions and the estimated time to be highly accurate.

It would be a nice perk for satellite imagery, but that doesn't really hurt my usage of google maps in israel. It would be really nice too for google street view, but I'm not crying.

Why don't we let israel manage it's satellite imagery how it wants. For a country constantly at war over since the writing of its declaration of independence, it seems only prudent to hinder the spread of even mediocre quality intelligence gathering tools.
Given Rocky's claim that investing a large amount up front for a traditional advert placement is equivalent to receiving a short-term loan from Groupon for running a deal on the site, then Groupon is merely like all other direct marketing/direct response operations. So you can probably predict how successful Groupon could be by comparing it to something like Valpak.

Despite the fact that Groupon shifts the marketing costs from the merchant to the customer, it probably won't affect couponing behavior in the long run. To me this is like chess where the players have switched sides after a match. It's the same game, but a new player gets the first-move advantage this time around.

Groupon Now! seems slightly more interesting and possibly has more potential.

My wild, unsubstantiated prediction is that they'll IPO, fizzle out and be bought out by some media/new media conglomerate by 2014.
Well, that's debatable. I suppose if you squint a bit, you mentally perform a reverse CPS transform on a Node program and end up with a set of tasks that are executing concurrently. In that case, I'll rephrase: Erlang as parallelism (on adequate hardware) but no shared state; Node has shared state but no parallelism.

Still, given the way Node forces programmers to manually unravel tasks and write everything as callbacks, I'm not inclined to call it "concurrency" even if eg. the processing of a group of web requests overlap in wall-clock time.
My apologies. I misread the whole thing as a question about fault tolerance (which is not a bad thing to consider at all IMO). RAID will certainly help in your case. You need to come up with an estimate of how much your losses will be if you have a single point of failure. Usually, paid-for services have this factored into their pricing model.

But as another comment suggests, unless you are grumpy about Azure ToS or US laws (maybe Azure services exist outside the US) or whatever, you should take a look at Azure services.
Prolog as a language has great features. Checkout out ciao prolog and others and you will know what you can do with it rather than just perceiving it as a library or some embedded language.
Widening the von Neumann Bottleneck for Graph Reduction using an FPGA
Nexmo SMS API fan page
Four more guys! That'll really help scale to a more gender-balanced group of companies!

No insult to Sam, Garry, Emmet, and Justin who I'm sure are very talented. But given how Jessica Livingston talks about how hard it's been for Y Combinator to attract female founders and then they do something like this, I really have to wonder how much they're trying to change.
But we can't show you what they are doing right now. Sorry. PS: More money please!
I think i am going to install the trial version! who wants to play?
Good things are happening. I am glad to see more attention to front-end stuff.
What's so scary there? I am using SCSS and CoffeeScript outside the Rails too (for WordPress themes) and I do pack my JS and compress my CSS. This is how it should be done and I am glad to see it is default in RoR.
The pace of Rails development isn't a problem in and of itself, it's that the pace of change and the overall Rails development culture wrecks the documentation ecosystem.

Of the top rails documentation resources:

* Rails Guides are still out of date and incomplete for 3.x series. I often have to go to the API docs since some big topics just aren't covered in any level of detail.

* Railscasts deals exclusively with deltas-- new features, new techniques, etc, and no longer has a nice pedagogical sequence. The original tutorials are just plain out of date. (Maybe the peepcode tutorials are more up-to-date and comprehensive?)

* Google. The biggest of all. Rails pace of change and its agnosticism means that the corpus of blog posts with recommendations, bugfixes, tips, tweaks, tutorials, etc, become out of date quickly, and more importantly it's extremely hard to tell what version of rails or of a plugin a given post or thread is referring to.

A secondary issue: Rails newfound agnosticism (compared to its previous "opinionated" nature), along with the culture of the "flavor of the week" creates problems in the development and documentation ecosystem:

* The plugin ecosystem: the "flexibility" of rack means that there are so many plugin options it's blinding, and the flavor of the week changes so often that it's hard to know if you're on a dead-end track or not.

* Google: the same issue with Rails core changes applies manyfold to the development ecosystem: blog posts, stackoverflow threads, forums, etc are quickly obsolete and it's difficult to determine staleness and whether the recommendations are pointing to a development dead-end where the project is no longer under active development.

The panoply of options and the chaotic development ecosystem can equally be attributed to Rails' newfound agnosticism, the development culture that engenders, and that chaos multiplied by the huge popularity of Rails makes navigating and getting things done difficult.

It's my experience that Rails involves a lot more yak-shaving than it used to due to the issues above.

I kind of wish there were a more conservative Rails community/blog/resource that issued recommendations and documentation/tutorials about a more stable way of doing Rails, making sure that the surrounding ecosystem is more stable and has less entropy
than the community at large.
Two new significant UI features in Lion
Needless to say, Emacs can do it (M-x artist-mode)
> Rails is a curated framework. It either fits your requirements or it doesn't.

"Opinionated" was the original description. "Curated" is just some buzzword that means "people look after it" rather than "automatically generated", which is, uh, pretty much going to be par for the course for a maintained framework.
Sorry to hear you found the newsfeed so spammy - I work at Facebook on keeping spam out of the feed (and off the site in general), and I'm curious what you found most annoying. I'd love to work on reducing it, as it probably annoys other folks too.
My brother, who is a novice programmer, picked up the rails basics in a couple weeks (with some help, of course). He was able to create the app he set out to, going from zero experience to a fully functioning app in 2 months.

If you are having trouble with rails, it's for two possible reasons... 1) you won't accept that it's opinionated software and throw out your preconceptions or 2) you're just not trying hard enough. The amount of books, screencasts, tutorials, podcasts out there for rails is just insane. I'm completely jealous these things weren't around in '06 when I started.

Edit:
Should have mentioned that he did the Michael Hartl screencasts/tutorial (http://ruby.railstutorial.org/)
Nope. What I said is still true. Here is my code in Java:

public List<Integer> mergeSort(List<Integer> list) {
// Base case
// If list has one (or less) element, return list as is
int size = list.size();
if (size <= 1) {
return list;
}

// Partition list in half
int m = size / 2;
List<Integer> left = new ArrayList<Integer>();
List<Integer> right = new ArrayList<Integer>();
for (int i = 0; i < m; i++) {
left.add(list.get(i));
}
for (int i = m; i < size; i++) {
right.add(list.get(i));
}

// Recursively merge sort each partition
left = mergeSort(left);
right = mergeSort(right);

// If the last element of the left partition is greater than the first element of the right partition
// The left and right partitions need to be rearranged
if (left.get(left.size() - 1) > right.get(0)) {
return merge(left, right);
// Otherwise left and right partitions are in the correct order
} else {
left.addAll(right);
return left;
}
}

protected List<Integer> merge(List<Integer> left, List<Integer> right) {
List<Integer> result = new ArrayList<Integer>();
// While both containers are non-empty
// Move lesser elements to the front of the result, and remove them from their containers
while (!left.isEmpty() && !right.isEmpty()) {
if (left.get(0) < right.get(0)) {
result.add(left.remove(0));
} else {
result.add(right.remove(0));
}
}
// The container that still has elements contains elements greater than those in the other container
// It is assumed that the elements in the container are also already sorted
// So the non-empty container's elements should be appended to the end of the list
if (!left.isEmpty()) {
result.addAll(left);
} else {
result.addAll(right);
}
return result;
}
He could have also mentioned the old babylonians and their base 12 system. We still have an extra word for 12 (a dozen) and it explains our strange counting of time (212 hours in a day, 512 in an hour or minute).
Awesome! Bookmarked for future usage.
If two people independently invent something at about the same time, does that mean it's obvious to someone skilled in the art?

In those scenarios, I'd like to see both patents thrown out.
I'm working on a distributed app that shares code between the client and server, and there are already a multitude of open-source libraries that are designed to run in any JS environment.
This press release, rewritten as a news article, seems like it comes from a parallel universe in which carriers are not trying to drive costs to zero.

I especially liked the comment from the VP that part of their plans for making the plane environmentally sound starts with recyclable components. As if recycling the plane is a major design consideration.
Wow thanks for that, ideally I'd like one without all that extra stuff and just the diagrams from asciiflow.. but that's just being pedantic :)
I too get a feeling of "change for the sake of change" from Rails at times. That's obviously not something they're doing, as all the changes have some motivation, but at times it feels a bit like churn.

At one point in time, you did forms like <%= form .... and then they switched to <% form .... do and now they've switched back to <%= form ... do again.

Also, the upgrade to Rails 3 is not an easy one. Yeah, you get some nice stuff, but because it's so painful, it's not happening for a lot of people, which is causing more problems.

All in all, I still think it's the best thing going in web development today for what I do, and am not contemplating alternatives.
Just what I was about to say http://www.cinsk.org/emacs/emacs-artist.html
Ya. I was implementing an abstract class so gen-class was the only way.
Y Combinator’s latest partners are also alums
Amazon's Tablet Will Offer Steak Dinner.
bla bla is not programming.
bla bla bla is not programming.
Now what I do is definitely programming.

(congregation explodes into applause)
NYT Complaint Against Lodsys
It's really really cool to see this :). I'm sure everybody here remembers, but back in 2009, lost of geeks were clamoring for ways to try and provide internet to Iranian protestors. Something exactly like this is what we were always daydreaming about on IRC, and wondering why the CIA hadn't already built.

In the modern world, "bombing" a country with these things could be a very very liberating thing for the recipients.
Connecting the Dots
Oh wow, nice.

Just what I needed to make a directory tree example for a readme.txt
Why is that security analyst acting like this was hard to do? I'm not a cracker and I am always looking at the URL. It would only have taken one out of Citi's millions of customers to notice the flaw or casually examine a potential flaw. It seems it was quite easy for the crackers to prepare to exploit this.

Once logged in to [the site reserved for Citi's credit card customers], they leapfrogged between the accounts of different Citi customers by inserting vari-ous account numbers into a string of text located in the browser’s address bar.

The method is seemingly simple, but the fact that the thieves knew to focus on this particular vulnerability marks the Citigroup attack as especially ingenious, security experts said.

One security expert familiar with the investigation wondered how the hackers could have known to breach security by focusing on the vulnerability in the browser. “It would have been hard to prepare for this type of vulnerability,” he said. The security expert insisted on anonymity because the inquiry was at an early stage.
For a good comparison look at the map quality of South Korea near the border and North Korea over the border. The maps of North Korea are higher resolution and completely uncensored. Occasionally, when I am wandering along in South Korea with my GPS on I find something censored on Google maps. Why are the images of the Palestinian territories not available in in higher resolutions? It doesn't seem like a problem to allow clearer images of other non-US friendly nations.
I can state for a fact that as of January 2010, Groupon did no vetting of financials prior to doing a deal. All that was required was a conversation with a nice woman, who seemed way too smart to be an account rep. But hey, maybe a cubicle at Groupon was all her MA or MS could get her in the downturn.

The bankruptcy theory presented by the author is correct. My family's shop in NYC was on the brink, and Groupon seemed like a possible salvation. We had nothing to lose, anyway. Groupon decided to run a deal for us, we worked out all the details, and waited. And waited. And closed the shop. Groupon called us to do the deal about 3 days after we closed the doors.
Its hard to trust a humorless judgement of humor.

While I haven't played the game myself, I'd like to point out to the author of the article that if attempting to describe why a something isn't funny, the best weapon in your arsenal would be humor, not simply sticking up your nose in disgust (though one could mix that in).

That said, a lot of the jokes in the game sound pretty straightforwardly shitty and weird. However I'm trying to imagine the author describing a Louis CK comedy set, a dirty comic I find hilarious, and I'm fairly sure he could ruin that in short order, so I'll hold off on my judgements.
If the US distributed these in Iran, the government there would probably consider anyone using them a US agent and arrest them.
I don't know much about this offering, and I am not a neuroscientist/md, but I do know many well known and respected neurologists/epeleptologists and have worked with them for quite a while (I currently work in the Dept. of Neurology at a very well known institution). Nevertheless, even I know that signals acquired from surface electrodes are very difficult to "read" let alone useful to manipulate anything. For one, a patient who is awake and moving will generate a very difficult to ascertain signal to noise ratio due to too much muscle artifact. The best/most reliable I have seen via surface electrodes are simple binary commands along the lines of "move the dot on the screen up or down" (my brother did that as his senior thesis for his undergrad bio-engineering major).

Now, the guys at emotiv may have devised a way to enhance the electrodes and/or filter out artifact but I would really have to put this to some of my scientist buddies who would actually know what is going on under the hood here. I am inclined to think they have not because I haven't heard any excitement from any of the neurologists in the epilepsy division. I've seen expert technicians actually apply electrodes both surface and implanted (aka. in the operating room with ones brain exposed). Let's talk surface. There is a lot of expert care and skill that goes into setting up electrodes (and in specific places). On top of that, the electrodes are generally coated with a gel. All of this to enhance the electrical signal. The headset from emotiv looks like it is dry and how do you know if it is positioned properly?

tl;dr, I would love to think this has real value but I just don't think so.
Hints about the active tool appear at the bottom right; apparently the arrow tool is used for selecting a region so you can copy it to the clipboard.
Wow, awesome feedback, you must be in my head :).

Yes, the idea was to focus on answers (what worked?) and then perhaps draw out the common questions (what is a good analogy for xyz?). For example, colorized equations seem to be an awesome response to the unasked "Help me get a plain English description of this equation."

1) Upvoting commets should definitely be added, thanks

2) Duplicate posts should be linked and combined. From initial usage, duplicates emerged. Someone wrote an analogy for understanding why negative times negative is positive and I made a new insight with my own thoughts. Ideally all such insights are grouped and the top ones bubble up.

I think integration with existing sites is the next big step :). I have some articles which are fairly popular and want to add an aha widget to them (similar to disqus) where people can share and vote on the insights that helped. Currently this is scattered in the comments on the article and difficult to parse. Once I stabilize this I'd love to open it up.

I really appreciate the thoughtful feedback here! My mind is buzzing thinking of possibilities :).
I used the word "gobbledygook" because the article is poorly written, not because I think he's wrong to criticize Node. Reread the paragraph on Node and tell me it doesn't meet the Wikipedia definition: "text containing jargon or especially convoluted English that results in it being excessively hard to understand."
MENS NOBLE LOW-BRICK CANVAS [MENS NOBLE LOW] - $67.26
Too clever. Can VIM do it too?
Method Size Limit in Java
I'd suggest you play the demo before sticking with how you're describing the article.

I'm a fan of nearly all types of comedy and don't mind the mindless, 'tasteless' humor types. That said, the demo was tasteless AND unfunny. Considering Gearbox and 2K's recent track record, it's not too surprising -- they've been relatively mediocre at best lately.
My favorite line: “Our research shows that passengers of 2050 will expect a seamless travel experience while also caring for the environment,” Charles Champion, Airbus Executive Vice President Engineering.

I wonder how they researched what passengers of 2050 expect. If they invented time traveling, they should demo that instead.

Besides the fact that it's going to be a "reality" in 2050 which means it has a high chance of never becoming a reality as discussed today, it's a pretty cool concept video. I'm that guy who loves staring out the window every 10-20 mins or so. I'd enjoy it if it was used in production today. Not sure what the state of the art will be in 40 years.
9 Reasons to use Twtbuck as a business
Twtbuck is offering small businesses (especially start ups) an opportunity to try out Twtbuck's Social media advertising platform with small budget of $100.
There is a time slider in Google Earth which lets you see older satellite imagery. It's a pretty fun distraction.
As a European company, I believe recycling has to be a major part of their development efforts.

They could easily be caught up in EU laws and regulations regarding recycling. Though the link below pertains to electronics, I believe there are similar laws for automobiles, so they could just be thinking ahead.

http://en.wikipedia.org/wiki/Waste_Electrical_and_Electronic...

Further to that, recycling is good practice in something as resource intensive as an airplane. Recycling bits from lots of different phones is, I suspect, much more challenging than recycling large chunks from planes.
Thanks for the thoughts so far.

I always feel like a self-promoting wonk whenever I try to tell people about my apps. Any tips for getting over that? Or at the very least, tips for self-promoting without being completely obnoxious?
Hey, I can believe that the game sucks in a painfully humorless way, never said it didn't. I'm just talking about the writing style of the article. If it was that unfunny, there should have been plenty of material in the article for the author to riff on.

As is, he sounds like a straight laced bore.