skysight-inc/HackerNews huggingface dataset:
yeah, i think i know what you mean, there are two ways:
1) explicit top of stack elements (e.g. the a-stack architecture of ocaml always keeps the TOS element in a register)
2) implicit top of stack element handling; the technique is called "stack caching" and the paper to read there is from ertl in 1995.

PS: by jit compiling this code can be easily eliminated.
PPS: the points i mentioned are only "easily" implementable when your host programming language supports primitive types (such as ints, longs, floats, etc.). whenever you are dealing with "objects" (i.e. pointers to structs) you have to do (un-)boxing which lessens the advantage of stack caching...
The name is a a reference to Peter Norvig's "Teach Yourself Programming in 10 Years" (http://norvig.com/21-days.html), which is linked in the essay.

The part of Emacs that takes years to learn is integrating it with everything else. The core editor doesn't take long.
Here's some math:

http://www38.wolframalpha.com/input/?i=%281000+choose+12%29+...

The real killer is the allowed capitalization of any letter. If we assume that the average word length will be 6 characters, then we can assume that the average character length of any 12 word string will be 72 (not counting spaces).

With capitalization, the permutations act like a bit string. That is, the capitalization is either on or off. This gives us 2^72.

The resulting hash space is somewhere near (1000 choose 12) * (2^72) * (95 choose 5), or roughly 2^188.
I found this very helpful:

http://users.ece.gatech.edu/~hamblen/book/bookse.htm

There is a third edition written around QuartusII - the current Altera software:

http://users.ece.gatech.edu/~hamblen/book/bookte.htm

I also found "The Designer's Guide to VHDL" (Ashenden) to be very useful for a deeper understanding of VHDL vs. the somewhat cookbook approach of the first book.

Ashenden has also written "The Student's Guide to VHDL" - no idea how good that is.

Some other links:

http://www.opencores.org/ Lots of VHDL and Verilog to examine

http://www.fpgaarcade.com/ Re-creating arcade machines

http://www.xess.com/ Nice development board (lots of good app. notes.) (I'm a satisfied customer)
concerning your second point: you're absolutely right, there are a couple of direct compilation systems (without interpreters). for example, the cacao jvm for dec alphas (afaik) used to be a jit compiler without an interpreter (but they added one afterwards)
Also, does anyone recommend a particular FPGA development board?
Granted, selling the software outright would be conveying, but what if the company leases their service on a remotely administered box colocated in a local data center? I think it is not totally clear that software has been conveyed, especially if it is under GPL2.

Regarding selling rights: you perhaps misinterpreted the scenario I am proposing. I am supposing that a company has written a proprietary "cloud" internet application that incorporates Zed's GPLed Lamson component -- which you say they can do because no software is conveyed. However, if they want to sell their software or (potentially) their company, I am saying that -- cloud or not -- they will be interested in acquiring a non-GPL license from Zed because the sale of their non-GPL software without such a license may run afoul of the GPL... which is why Zed's use of the GPL is relevant even in a "cloud" context.
Sounds like you've hit a rough patch, but that doesn't mean you should skip out on the idea if you believe in it.

You need to establish expectations for your venture. Simplest is hours / week; if he's working on it full-time, he'll be putting in 50-60 hours / week. If you're putting in 10 hours / week, use that as a baseline to discuss both expectations as well as compensation.

Alternately, adopt a sliding scale of equity for you, out of his general shares. With my startup, we hired another coder on an equity basis, contracting out the specific deliverables he needs to come through with in exchange for specific amounts of equity. E.g., we defined the admin interface, then specify that completion of this by such-and-such a date entitles him to 10 shares. Add in bonuses for completing work early. The sliding scale means that he is protected if he needs to go hire another programmer.

However, make sure that he understands your desire to participate in the business side of things as well. As a coder and startup guy, I've often found the strategic planning stuff the most interesting.

And, finally, if he doesn't want to give you a reasonable amount of equity, remind him that he'll otherwise have to pay to have the website built, and that your prices range from $friend_price to $overloaded_price. And building the site needs to be your #1, 2, and 3 priorities right now.

Good luck! If he's not amenable to these terms (giving you a share of the company), you may not want to work with him. There are hundreds of great ideas out there -- don't limit yourself to this one idea. It's not the idea that will succeed, it's the people. You may be better off finding a better group.
If you want business-friendly maps, Microsoft's MapPoint terms were very startup-friendly last time I checked. You just pay as you go. The downside is you need to talk to a salesguy:
http://www.microsoft.com/maps/
Something clearly spelled out in the terms of use of the API can hardly be called a gotcha.
It’s nearly impossible to prevent side channel attacks when your crypto is implemented in a high-level language.

AMEN!

I've been trying to make this point to people for years, but it has been hard to get anyone to listen -- it's good to have someone else singing from the same songbook.
Replying to myself feels weird.

Anyway, if he's asking you to sign NDAs, he's probably off his rocker. IMO, the NDA in the startup world is a red flag that somebody is clueless how little their idea is worth. It's execution that matters. (NB: my anti-NDA stance doesn't apply evenly. A biotech startup would be well served by one, but most startups should never use one in this situation).
I'm still fairly new to FPGA stuff (been doing it for about 3 years but haven't done any big projects yet), but I absolutely love my SP3Dev board: http://www.celeritous.com/estore/index.php?main_page=product...

Had it for about a year and a half, works like a charm. Xilinx also had a kit for $100 (maybe $150) that had a Spartan 2 and a CoolRunner II board, which was great in the early days. I think it's since been superseded by a Spartan 3 kit, but I don't know the pricing.
Great question. IANAL, but my reading of it would say yes.
I'd say markup is irrelevant if what you're interested in is the marketing aspect. In my company, SEM and web development are entirely different departments dealing with completely different domains:

Web devs worry about technical deliverables (e.g. does the site load quickly, can the client edit articles easily, will that affect how print-versions will look like, etc).

SEM guys worry about campaigns, analytics, etc (e.g. did users coming from a magazine ad convert more than a users from a google search, how often did users dismiss a satisfaction survey call to action, etc)

With that being said, markup deliverables can be quite elaborate. Start-ups can, to a cetain extent, do whatever they want with their layouts. When you deal with clients who expect code as deliverables, on the other hand, you may run into pixel-precision freaks, things needing to be quick for other devs to maintain, and other not-entirely-technical caveats that make tables less attractive than CSS-P (or vice-versa).
That's basically the premise of Virtuality (new TV series by BSG creators):

http://en.wikipedia.org/wiki/Virtuality_(TV_series)

Pity the pilot wasn't picked up, it looked quite promising.
Thanks for the prompt response. I gave it another try, and was surprised by how many hoops I had to jump through to get things working. There has got to be an easier way. People want this sort of thing to be "dead simple".
This looks like a really killer library. I like the ease of use as well. Now we need Ruby bindings.
http://university.eve-team.com/ has a university program by now through which you can access some real high-end hardware, you can try to contact them.

The nice thing with using an emulation system versus a raw FPGA board for learning is the same as debugging software with a source code debugger versus only having access to the disassembly.

In my experience, great hardware designers automagically write Verilog but think schematics.

A classic:

always @(posedge clk) begin
q1 <= d;
q2 <= q1;
end

Do you visualize the back-to-back flip-flops, and immediately double-check that the code uses non-blocking assignments? If so, you're fine. If the code used blocking assignments, you'd have a major bug.

And finally, most senior designers still get puzzled by one of my favorite quizzes:

what is the functional difference between those pieces of code, that both represent a flip-flop with async set/reset, one expressed in Verilog and one expressed in VHDL:

always @(posedge clk or negedge rst or posedge set) begin
if(!rst) q <= 0;
else if(set) q <= 1;
else q <= d;
end

process begin
if(not rst) q <= 0;
else if(set) q <= 1;
else if(clk'posedge) q <= d;
end process;
I wonder if it wasn't, in some way, correlated with the length.

More characters means more like to be seen.
It's not targeted at real people who have to make a choice about which to download. It's been pretty well established that the only people still on IE6 are stuck behind IT policies that don't allow for upgrades. It's just a political statement, then, an attempt to drive home the point that IE6 is an ancient and decrepit bane on society and technology. The more sheer embarrassment that you can pile on top of these IT departments, the more frustration you ladle into the end users that they can direct into getting their company policies changed (rather than, hopefully, directed at you), the better. I think showing a wider variety of actually viable browsers makes that point better (hell, throw Opera in), because it makes it obvious just how far behind the rest of the world has left IE6.
Heya! That's a great idea -- will definitely work on that :)
I've read in the past that telling people to do something isn't as effective as telling them that everyone else is doing it. I wonder how a phrase like "most people who like my blog follow me on twitter" would fare?
You're right, I put that badly. He says that the copyright issue is treated as a tension between consumer and publisher, and that this is a problem. I don't agree with this characterization.

I think the publishers are absolutely concerned with their bottom line when they complain about lost sales. I also think that there's enough substance to their slippery slope argument (given time, they'll lose so many sales they'll become insolvent) that it's wrong to dismiss it out of hand. Publishers aren't faceless entities intent on trading our freedoms for money, any more than a person who downloads a DVD screener is a hardened criminal. To suggest otherwise is ridiculous, and makes it that much harder to have a real conversation about the future of media.
This is fantastic.

Just curious - did you run any tests for statistical significance?
Yes, but you'd only be doing it for Escape.
The experiment is still going on! This guy wants to see what the clickthrough rate is given the elaborate description of the exeperiment above the link.

How Hofstadterian!
Microsoft Windows Marketplace Opens for Developers on July 27
Generally I'm against using the word "here" as link-text, since it doesn't provide any Google-juice to the relevant terms. But in this case the only other possible link texts might be "follow me" or "Twitter", so it's probably okay.
"The most disturbing development in the world of PowerPoint is its migration to the schools -- like sex and drugs, at earlier and earlier ages. Now we have second-graders being tutored in PowerPoint. No matter that students who compose at the keyboard already spend more energy perfecting their fonts than polishing their sentences -- PowerPoint dispenses with the need to write any sentences at all."

See

http://www.edwardtufte.com/bboard/q-and-a-fetch-msg?msg_id=0...

for Edward Tufte on how to write better technical reports by avoiding PowerPoint, and

http://norvig.com/Gettysburg/

for Peter Norvig's hilarious PowerPoint version of the Gettysburg Address.
The problem is that it's such a huge jump from $0 to $10k. That's the part that feels like a "gotcha". It's also just a huge number, even for a company with funding.
Cool, its like twoyeur.com but slower
how about "Follow me on twitter here. I have x followers."?
Using escrow for selling a website?
Has anyone had any experience selling a web site via escrow? Is it a safe or recommended way for the seller?
Similarly, I wonder how some automated text like "11,399 people follow me on Twitter, you should too" would work.
The act of planning implies careful thought.

An educated guess is still a guess. The point is that no amount of planning will guarantee a real outcome. A plan isn't any more real than a guess, and the only difference is the degree of confidence, which thanks to optimism bias may not even be justified by the data used to generate the plan.

This may feel good insofar as the point of planning is to reduce anxiety (individual and institutional) about possible outcomes, but too much faith in planning can mean both wasted time developing and false confidence in what is essentially a guess. I agree with Jason that referring to these things as guesses assigns them the appropriate status. As he says, there is nothing wrong with guessing, just with overthinking and overvaluing them as though they are something more concrete than they actually are.

The basic principle here is to favor constant feedback from the real world over carefully thought out fantasies about what might happen. To adapt instead of predict. It is a common pattern, seen in the OODA loop and manuver warfare, in TPS and Lean, in Agile, XP, and Scrum. All of these incorporate a de-emphasis on planning and favor adaptation to current circumstances.
you might like this one too

http://www.ted.com/talks/lang/eng/jay_walker_s_library_of_hu...
the hardware is still slow--the 3gs is nicer in terms of speed, but today's cell phones still feel a bit like operating a computer back in the early 90s. there are still plenty of crashes and delays.

absolutely right though, telecoms are going to push status quo for as long as they can because that's what is profitable for them right now. but the time will eventually come, and they will change (although i admit maybe not as quickly as i hope it will; i was the kid in school dreaming of FTTH in 2000).
BingTweets: Bing + Twitter mashup (from Microsoft)
I don't have the source or exact words on hand but I read there were A/B tests done on phrasing in infomercials. The phrase "operators are standing by" fared overwhelmingly worse than "if the lines are busy, keep trying" which implied that they were typically so busy with orders that they could hardly staff enough operators.

[EDIT: thanks to ironkeith for the Cialdini link ... it was a book by him and it was in a section devoted to the "Social Proof" research]
In my view Mr. Welch is exactly correct. Life is not the rose colored fairy tale many of the liberal mass espouse as both possible and ideal. Life is choices and choices will always have consequence, especially in a capitalist society that measures results above all else.

And measuring results is right. It is right for the employees who depend on the company to thrive as well as the middle-class family that has chosen to include a particular stock in their 401K or mutual fund.

Be advised, this is not a sexist comment. I have friends that have left the career path to the woman and the father is the primary emotional provider for the kids, and they seem to very much enjoy their decision.

As an entreprenuer and married father of 3 I would also love "work-life balance". It just doesn't exist for those of us who want for our careers and families the best life has to offer. Thank God to my wife for allowing me the time to take care of US.
>That's if there isn't a civil war first. They're built as a highly centralized empire where the Han Chinese have basically all the power, and the other groups - Xianjianese, Chen Chinese, Hong Kongese, Taiwanese, Macanese, and Tibetans all have no power and basically don't want to be part of China. Historically that produces civil wars. I think as soon as one of the areas pushes hard for independence, others will follow.

You would have to combine that with a weakened Chinese government to get a civil war. If one of those groups pushed hard for independence now, you'd be more likely see a brief civil war, ending with lots of dead Tibetans/Xianjianese/etc, followed by a return to the status quo - which is probably why they're not pushing hard for independence.
It was an article referencing research by this guy: http://en.wikipedia.org/wiki/Robert_Cialdini
how about free but obscure ... META-robots="noindex" , then have the crazy url that might even change - but updated for your clients when they log in ... also have the url always on call - incase you need to supply it.

the real solution is if your map is generating 10k +$1 a year in income pay the man :)
Time to tackle the real evil: too much debt
Business Models for Social Media Startups
I tried other longer but dulled phrases:

"Please follow me on twitter here."

"I have an account on twitter."

"I'm @dcurtis on twitter."

"Follow me at http://twitter.com/dcurtis

They performed poorly.
I've had good results with www.xess.com ($199)

There is also http://www.xilinx.com/products/devkits/HW-SPAR3A-SK-UNI-G.ht... ($189)
I hate when I read .ps/.pdf formatted files in columns. I have to rotate my MacBook Pro to read them in one page :)
Definitely Imperial over Cambridge for CS (as well as most engineering and science).
You can have a friend, or you can have a business partner. It's extraordinarily rare to achieve both (at least not in the sincere meaning of the words 'friend' and 'partner').

Generally, when you become a business partner with a friend, one relationship or the other will prevail -- that's really okay, and you should accept that as a natural consequence. To not recognize or accept it is folly.

Your case sounds like a very common scenario from the late 90s the dot-com era (except that then Greed excelled to greater dominance than now) -- an MBA-type has an idea that is wholly unrealizable on his/her own, yet he/she belittles the very technical skills it takes to truly succeed. There were (are) many examples of folks with very strong technical skills, but no marketable ideas or business sense and no appreciation for those who have them.

It only works when both partners recognize and respect the complementary abilities they bring, and recognize that the business will fail without _both_ of them.

Your so-called friend doesn't seem to see the equilibrium you see. Maybe he/she is delusional, or naive, or just dumb. The question in your mind maybe should be just how savvy that person would be when confronted with other 'executive challenges'....just as egoistic as now?

Reconsider your friends...and when you have one you cherish -- don't blow it by becoming business partners!
This was a problem I ran into. Originally my application did not require an email, but I ran into so many forgotten password cases that I eventually had to add one. And I felt it was my responsibility to help those users as most apps have that feature and usernames can be easy to forget.
This is not about this article in particular, but there has been a lot of news about Twitter these days here in HN but really, do they deserve this relevance and attention?
You ought to include those in the data set.
Sure, they could, but it would take time away from the interesting features of the application and the user interface (see: http://versionsapp.com/)
Google has the same issue with the Google Apps for your domain. The basic version is free (except for domain name registration fees) for 50 users with similar storage/features as gmail. But the business version is $50/user/year. The costs can very easily escalate into thousands.
LGPL would be a good choice for something like Git, so you can still use it in proprietary software, but any improvements to Git itself must be contributed back.
Agreed. There's no surprise to me here that Google would want a piece of the action if you are making money with their freely available services.
That's why I was saying you should make it available to both users AND non-users. That way if Google inquires (which I truly doubt they ever would), there is no way they can say the map is restricted to subscription/fee.
So the politicians pass the pandering laws 4 months prior, but talk them up around the election.
I'm not familiar with Twitter, but would it be possible to have the site say something like:

"You're following X, Y, and Z, who are also following me; you should too."

I don't really like the tone I wrote, but you get the idea.
As you and the original author both know, you don't need to use a stack data structure if you're just matching a single type of parens. (Your algorithm is the server-side solution employed by the author.) Though if you used {([])} with rules against them side-straddling like ([)], the stack would be necessary to distinguish what type of matching character you're using.

But look at what you have: an integer (n) that counts the number of unmatched open parens, that is not allowed to drop below 0, and that can only be incremented and decremented. Your solution there is essentially a pushdown automaton, with n representing your stack of open parentheses (and the value of n representing the size of the stack). If you approached the problem thinking of it as a stack problem, you'd probably end up optimizing to your solution when you realized that actually stacking parentheses could be efficiently simulated with an integer. But the restrictions you've placed on that integer effectively simulate the restrictions of pushing and popping parens off a stack. You're even going through the string once without backtracking.

I'm not sure if it's useful or just comp-sci wankery to think of it this way, but there's an equivalence between that solution and the freshman stack solution after all.
It still sounds like Keyczar is the way to go among current available libraries, despite its now multiple discovered exploits (which have presumably been fixed by the time they were disclosed).

Regardless of what feature set and implementation is ready for primetime today, I have a question for security folks: Wouldn't it make sense for "the rest of us" (those of us who do not understand crypto beyond a basic comprehension the types and how to use them from a high level) just to pick the most popular crypto library (and backed by a major corporation that has a very strong vested interest in security that works)? Age seems to have merit, as well. We're using OpenSSL, plus Perl bindings, and GPG for our various crypto needs in our products, but if we were doing something fancy, beyond https and encrypting billing data with a public gpg key, what would be the safe choice at this point in time?
One thing this doesn't measure is quality. Only quantity.

Don't quite know how you can measure that though.
I want to register .localhost ... :)
Except, company A's modification is a port to a platform with secret specifications. Neither you nor I have the time to reverse engineer it.
Simple Web Product Guidelines (Leah Culver)
I wonder if the wording has a qualitative effect on the people who tend to click on the link though.
Do you have any suggestions on how to make the verification of HN account simpler?

That's the only way I can think of.
Except doing this through Ruby is a guaranteed bet to not get done in time.