skysight-inc/HackerNews huggingface dataset:
def is_collatz(n):
s = set()
while n not in (1, 2, 4):
if n % 2:
n = 3 * n + 1
else:
n /= 2
if n in s: # Non-Collatz loop
return False
s.add(n)
return True

This is theoretically bounded far below modern memory limits. Feel free to tell me the first natural number for which it returns False. :3
Virtual segway tour on Google maps using the Wii Balance Board
I remember writing a code obfuscator for my first job at company XYZ ;-), not really a pleasant experience. That's why interns or entry level employees do that.
Google provides an ImageLoader library. It kinda sucks, and occasionally causes Application Not Responding errors or out-f-memory exceptions in my company's apps, but there's nothing better that's open-source. I wrote something pretty cool at my previous job that unfortunately probably will never be open-sourced that pipelined and cached image fetching, and supported a responder-chain like pattern for handling the images, as well as decoding it to a limited size rather than fully decoding into a full-sized bitmap and then resizing, as that would occasionally fail due to the bitmap decoder deciding to return null sometimes - probably in low-memory cases.
Sorry I didn't see this earlier.

I believe there is no meaningful distinction between an algorithm running on general purpose hardware and the same algorithm running on custom hardware. If you'd enforce your patent by claiming that someone else was barred from implementing an algorithm you own, I'd say that "what is novel is not physical". Algorithms are not within the purview of the patent office (or I should say, should not be).

If you'd enforce your patent by saying that someone else was barred from inventing your custom hardware to run this fast algorithm, I guess I'd want to know if the leap from the algorithm to the specific ASIC is "obvious to one skilled in the art".
http://www.minecraft.net/prepurchase.jsp
<-- right there.
"In a free market, prices are determined by what buyers want" - sure for products but it is not entirely true when it comes to compensation. If janitors, in some united way, stopped cleaning our bathrooms for minimum wage then we would pay more. I'd say their service is "worth" more then we compensate them for, we are just collectively taking advantage of their position in life.
Yeah, Gephi is a combination of one of the neatest and most useless tools I've seen..
Depends on how many times you've watched The Hunt for Red October.
I've never used NowJS nor looked at the source for it, so I can't comment about their justification for a rewrite.

But most programmers I know don't need any encouragement to rewrite stuff, myself included!
Any person who is using a browser and cares about the quality of future applications to come thanks to HTML5 should take a look at this campain. Moreover, it is about internet citizenship, express your opinion and gather to make corporations bend to the popular will.
In Web Design, Learning to Say No
I thought I would take a break from my technical articles in this latest edition of the iNoobs series and instead concentrate on the BUSINESS of web design. Being a great web designer, developer, programmer, etc. as – in my opinion – just as much about how you manage yourself, your time, and defining what you will and will not do – as it is about being a creative coder, or mastering effective, attractive design.
Profile of the 2012 Presidential Candidates’ Twitter Followers
"by not providing me with a download of the version as-is when I paid for it."

... so you don't want automatic updates and game improvements, then?

And he's incrementally delivering on his product. He continues to work on it, adventure mode is on its way out. Rumor: he's also working on new worlds, like that sky mode thing. He does continue to work on it, he's not broken his promise. I don't understand what you're talking about.
Just wait for the "oh no I can't do that I have a pet hate about Steve Jobs and Apple" responses.
Congrats on flipping your startup. It's pretty much what everyone is doing nowadays. Change the world... whatever.
You can make your string pointer a "fat pointer" (basically a (ptr,size) tuple), instead of the char ptr you have now. Then substrings are still strings, you just have to make a new fat pointer to it rather than an ordinary pointer.
Indeed, I think spodek's point is that the many non-startup design jobs (with "dependable salaries") in New York makes it harder to attract good designers to startups.
(strncpy, but one that always NUL-terminates)

It is trivial to write a function like strncpy_term() that adds a terminating NUL and drop it into any C project you write.

Potential language support and compiler support could've been added. All of this should've been done way back in the day, but it wasn't.

I would argue that since C became the de facto high-level lingua franca of low-level programming, it was better to keep it minimalistic so that programs written in C would be as portable as possible.
You should apply to them all. They're each going to get hundreds or thousands of applications from which they'll each pick just tens.

More importantly though, keep working on your startup because whether you get in or not should be secondary to what you're actually doing.
Foobar2000 should have this functionality.
Aloha Editor uses paragraphs as first class construct. The https://github.com/alohaeditor/Aloha-Plugin-MetaView plugin gives you a nice outline view of the used dom elements to understand the semantics. Using tags for formattings like b and i seems a good choice to me as it is the suggested formatting tag for visual bold or italic presentation in HTML5. Other formattings like (indent, etc) could be implemented as css classes, but this could cause problems when copy/paste content from on site to another as the css classes may not expose the same way. This could lead to unwanted behavior because the normal users will understand the reason.
It's managed to survive our vicious benchmarking tools and our ridiculously comprehensive test cases.

I guess they did not rewrite those from scratch. If so, I would guess they only rewrote, at the most, 25% of their code.
I moved back from Chrome to Safari after installing Lion. Mostly because I'm a sucker for eye candy and the back/forward gestures with page sliding effect are absolutely great. I might return to Chrome soon though as there are couple of things that annoy me in Safari. a lot.
Since you showed interest, using this as the for loop tweaks it even a bit more :)

/* temp number */
char tmp[20];
int pos = 0;
int j = i > 0 ? i : -i;
do {
tmp[pos++] = '0' + j % 10;
j /= 10;
} while (j != 0 && pos <= 20);

/* output both numbers simultaneously */
char x[44], *p1 = x, *p2 = x + 1 + pos;
if (i < 0) { *p1++ = '-'; *p2++ = '-'; }
do {
int tpos = --pos;
*p1++ = tmp[tpos]; *p2++ = tmp[tpos];
} while (pos > 0);
*p1 = ' ';
*p2 = '\0';
If someone introduces you to their contact, you should treat them with respect and not fuck up their reputation by being an arrogant bastard. (But maybe that's why I don't write blog posts).
Money would be for creating a team of more talented individuals than myself (specifically in Node.js + server admin and design) and of course for hardware and infrastructure costs.
They threw out 3 months of work... That's not a rewrite, that's a prototype. People do this all the time.
There is an opposite extreme seen on government software efforts...imagine systems that have been around 15,20,25 years. Interfaces frozen from the days of mainframe, millions upon millions of lines of code, written not necessarily by software engineers, but other engineers.

There's a point where it is really really smart to throw away pieces of that system and regenerate them. You produce a lot of cruft of 20 years.
It's only impossible to write a program that can be feed with any completely arbitrary program and input and yet determine all the time if it will halt or not.

What few people realize, is that most completely arbitrary programs are very uninteresting. More interesting programs have characteristics that would very often allow to statically prove that all of their loops that should terminate indeed will terminate. And even interesting loops for which it would not be in the first time possible to determine that often gain in clarity from being slightly changed so that the tool can do its work.

IIRC MS has a tool that does sort of that for windows drivers.
"The embedded systems I work on use shared libraries, C++, shell scripts, and even Adobe Flash."

Consider yourself lucky...
Rewrites are always fun and I applaud any man brave enough to undertake such an effort.

I've often been faced with a situation warranting a rewrite, but I never mustered the courage to actually go with a full rewrite I don't think. Gradual rewrites are much more my thing.
I am a Mining/Mechanical Project engineer and have had the extreme pleasure of visiting a lot of these underground operations (although Kidd is still on the bucket list!)

Due to precious and base metal prices as they are, there are a lot of mining deposits that were once not viable, but now seem quite profitable. There is a huge push to deeper levels and this is leading to some awesome engineering advances in the field (that I am proud to be a part of).

Mining is a market for hackers waiting to be tapped(!). This industry pushes two things, safety and efficiency. These mines work 24hrs a day, 7 days a week, any loss of work costs serious money. If you could develop software to have mines be both safer and more efficient, you have a signed pay check.
drchrono (YC W2011) looking for healthcare hackers for our iPad EHR platform
Analyst: Fall iPhone Upgrade will be “Bigger than Expected”
Multiple string schemes is exactly the sort of fragmentation this industry does not need. Citation: C++.
Google Buys Local Deal Compiler, The DealMap
These high-frequency traders are not parasites. They are providing liquidity. Essentially, they are providing you a service. If your friend had not come along, perhaps you would have been holding onto your netbook for a lot longer, or it may not have sold at all.

If you want to see what happens when liquidity dries up, you only have to look to the Flash Crash. Yes, the whole thing started due to an erroneous trade, but the fall was greatly magnified when all of the computers were pulled from the market when they couldn't make sense of things. If this type of trading were to be banished tomorrow, the market would tank so quickly that people would be begging for the computers to be flipped back on. The genie is already out of the bottle, and it can't go back in without considerable pain to everyone around it.
asprintf is a GNU extension, I believe.
Recording phone calls using a trojan app would be useful to anyone who wants to gather information without having to get a legal wiretap: private investigators, unscrupulous reporters, intelligence agencies, organized crime syndicates, etc.
Well, if you really want to go apples-to-oranges and specialize as much as possible for the sequentially increasing case we're dealing with here, you could just do your arithmetic directly on the ASCII string itself, complete with a little ripple-carry loop...I bet that'd be fast. If I'm remembering correctly, I think x86 actually has dedicated instructions for ASCII arithmetic (though they're probably so unoptimized in a modern microarchitecture it'd probably be faster to avoid them).
"Every right-thinking..." <--- The author is just covering his/her ass. Sort of like Descarte putting God in his meditation work.... he knows it is BS but he does not want to get hanged for his work.
HP TouchPad update brings speed, stability
> compiled with GCC 4.5.2 at -O4 (other optimization levels were tested, this produced the best performance).

I was under the impression that any number greater than 3 had no effect?
That's the attitude I am trying to avoid these days. When I look at something that I want to rewrite I now ask the following questions,

1. Do I have sufficient tests and testing to do this without breaking things?

2. Do I want to want to rewrite because I cant be bothered understanding it?

3. Is there going to be any gain now or in the near future by rewriting it?

4. Will I be able to rewrite it sometime in the future as part of another piece of work which actually delivers value?

Unless I come up with Yes, No, Yes, No I tend to leave it alone. There are other things of value I can do with my time.

EDIT - Formatting...
Teaching Computer Security Trough Science Fiction
Congratulations, you've just reinvented geothermal power!
Do women ever conflate war and business?
An open question - There was recently a post about "Burning boats" comparing ancient wars to modern business. The author is male.

My question - do women ever use military metaphors in to explain business matters? I can't recall a single time.
using CP as a reason is useful because the media does not rely on logic but rather sensationalism to judge the worthiness of something. Instead of focusing on the logic of the stuff in the bill, the authors can just say "you must love CP!!!" instead and then the argument is already destroyed. 2ndly, noone wants to be labled as a cp lover so they are more likely to shut up even though they hate the bill.
Richard Feynman: The Likelihood of Flying Saucers
Deploying: Then & Now
Throwing out all your code and rewriting it from scratch is like demolishing your building and constructing a replacement from scratch. It's usually not the right thing to do, it occasionally and rarely is the right thing to do, and it's always the tempting thing to do.

It's stupid to argue, "You should never tear down a building" (like http://www.joelonsoftware.com/articles/fog0000000069.html implies) and it's also kinda stupid to write an article entitled, "Why We Tore Down Our Building (And Why You Should Too)"

Neither is universally right. The right thing to do in a given situation is a difficult and complicated question to answer, and it depends on the building in question: how big it is, how well it was designed, how well it's been maintained, etc.
If it encrypts the photos and messages then everyone I want to share them with also has to have this plugin installed?
I am sorry if you feel that there is few reaction on the forum. We try to improve that. If you have a look at https://github.com/alohaeditor/Aloha-Editor/commits/dev/ you will notice that there is a lot of action going on and we are hard working on providing a better user experience with the beloved contenteditable. The probably most painful part of HTML5 spec and browser implementations.
The HTML5 spec unfortunately is very unclear in most cases ("the behavior is UA-dependent" - http://dev.w3.org/html5/spec/Overview.html#user-editing-acti...). Eg. "Break block" is defined with 2 sentences, where we have more than 80 test cases and are far from complete https://github.com/alohaeditor/Aloha-Editor/blob/dev/src/tes...
Though the next release (in a few weeks) should bring a better experience.
PS: mahalo() should work even with the very old stable version 0.9.3. Could you point me to a implementation where it doesn't work?
Is anyone working on a JIT for object code? I'm thinking we could keep all our SO's how they are now since they are great for updating versions of libraries with bugs, but have a JIT that takes care of profiling and inlining functions from other modules.
So Dropbox security is based on a code obfuscator? And was it an intern that let us log into any dropbox account with any password? Kidding, but seriously, they need to get more interns because one of the most requested feature for years on their site is remote wipe (https://www.dropbox.com/votebox/35/remote-destroy-purge-opti...) and they never implement it. Granted its not an entirely reliable method but its better than not offering it.
Yes, we are pushing it!

Thanks for the comment!
I totally agree, but who is there to stop the practice? Everybody wants their own bills passed, so everybody put names on them to encourage (extort) passing.
PeekYou: 92% of Newt Gingrich's followers are fake
A Monad is pretty simple.

class Monad m where
return :: a -> m a
(>>=) :: m a -> (a -> m b) -> m b

and the left-neutral/right-neutral/associativity laws:

x >>= return = x
return x >>= f = f x
x >>= (\v -> y v >>= z) = (x >>= \v -> y v) >>= z

Last law can be expressed more easily if you define:

(f >=> g) x = f x >>= g

Then you can say:

(f >=> g) >=> h = f >=> (g >=> h)

How complex is that?
This is actually what Java does when you call substr, effectively (String objects contain a reference to a char array, a length, and an offset).
It'd be trivial to sort the calls by listening to a few seconds of each to identify potential high value phone numbers (banks, florists, catalogue ordering lines, etc), then listen to every call to the high-value numbers.
Y Combinator Is A Stupid Idea » OnMedea
Assembla.is hiring remote Ruby on Rails developers. We are seeking experienced RoR backend developers https://www.assembla.com/search/show_job/888
and junior RoR devs for application internationalization.https://www.assembla.com/search/show_job/890
More positions to be posted in the coming week.
Assembla offers tools and workspaces to help accelerate software development. We are based in the Boston area with a distributed global development team. We develop with agile methodologies; we move fast.
Seriously. The city government almost spent twelve times as much on two baseball stadiums:

http://www.nytimes.com/2002/01/17/opinion/bonus-season-for-b...

The final amount that was actually spent is subject to a lot of interpretation, but it's clearly in the nine-figure range.
World Countries Data in a Flash
Chartbeat: Real-time web analytics exclusively for publishers
i think one year bump is fair :)

more so with ATT announcing higher prices every now and then.
Agree. A lot of buss words... Does that make it untrustful to you?
Agree 2: It would have been possibile years ago, but would have been even more pain than it is now, where the browsers improved a lot because of the efforts Ian and his fellows at WHATWG did to write a spec (HTML5) the respects current browser implementations and tries to find a common ground for all major browsers. I think that this movement encouraged browser vendors to improve their implementations and make them more compatible.
Of all parties involved, Twitter is best-equipped to try and detect that behavior.
When you make your purchase you are given the ability to download the version of the game as is, fulfilling the contract. Until you point to something that specifically would force them to maintain the link beyond that your entire position is untenable. That they maintain a link to the most recent version in addition to having provided you with the promised version upon purchase is purely a bonus.
Nice article. The collision avoidance algorithm explanation is very simple, but overall the post is interesting.
Sorry, you are correct; I mis-read the man page. It is however in at least glibc and Darwin/FreeBSD's libc.
Pimping my tool:

http://github.com/bsandrow/hn-profile

Written in response to an HN thread asking how to download the list of saved articles.
Careful Cutting To Get Faster RSpec Runs with Rails
Watch The Smurfs Online
Watch The Smurfs Online
Advances in CGI have made the inclusion of favorite cartoon characters in action movies are now experiencing is a cheap often terribly happy to make a movie.
3 people working on a project for 3 months is the same as 1 person working on a project for a year. Why do you need a team again?
I think it's best to treat that contact as you would a family friend - you wouldn't want to piss off a friend of your mom, right?
@1 Did you use the https://github.com/alohaeditor/Aloha-Plugin-Undo to test undo? If not you just test the default browser implementation which breaks whenever an app modifies the content...

@2 Actually right now this is the default behavior. Converting bolck elements (h1-h6, pre, p) always changes the whole block and does not split the selection. This could be changed in future.
You can manipulate emails later on, while on this exerimental site, your released info has the lock up date, so visitors can be sure, it has not been changed since creation.
Quantcast will only see web traffic and create estimates from their panel + live cookie data. A lot of Twitter's usage is via mobile or API which will not be reported in these numbers.
I'm fairly certain that "sorting to find the one atom for each pixel on the screen" is exactly the definition of raytracing.
I've been really really tempted to do one, but sadly the pressures of the job take precedence and so it usually ends up being the case that you stick with the code you've got and try and hack extra things in, knowing full well you really don't want to and aren't at all happy with it.

So my 'rewrites' sometimes come in the form of superficial organisation. Looks moderately nicer, doesn't work any better.

I guess it is courage though. You don't really know that your rewrite will be an actual improvement, or if you'll even pull it off. Brave move indeed.
Actually founders, don't burn your boats.
The contents of that page were changed without notice some time ago. The part you quoted was included later:

http://web.archive.org/web/20090615065558/http://www.minecra...
:) We did another sweet cube http://www.aloha-editor.org/demos/cube/ (works only in Chrome and Safari right now) Feel free to extend https://github.com/alohaeditor/The_Aloha_Cube :)
Every major company uses code obfuscation/minification/compilation on their javascript. It's not really clear what they mean though...
DANGER - BAD QUESTION - asking this question is asking a candidate (currently employed or otherwise) to violate the terms of the Confidentiality Agreement with their previous employer. Asking prospective employer this question is doing the same thing.

THE CORRECT ANSWER TO THIS QUESTION - "Answering this question necessitates that I violate my duty of confidentiality.
This is an app (application) and not the classic definition of Trojan Horse virus: http://en.wikipedia.org/wiki/Trojan_horse_(computing)
Relevant:
Things you should never do - http://www.joelonsoftware.com/articles/fog0000000069.html
It's not possible to reconstruct variable names that are replaced with arbitrary strings.
Distinct counting with a self-learning bitmap
You know what harms/kills waaaaaaaay more children?

Cars.

Maybe we should ban pictures of those.
I wonder if there is a legal requirement for an ISP to provide a certain % of advertised performance. Also wonder if ISP circumvents by using "Up to" in advertising. up to 3 MBPS usually comes out to 56kps 99% of the time in my case.
Vinci's Android tablet is for the toddlers
The big problem that I see is that they don't show any animation. A camera floating through a static scene can only get you so far in video games.
The 68K Macintosh used Pascal-style strings; Str255, with a count on the front.

I don't recall it ever noticably improving code quality. And it made it really, really hard to deal with long strings; everyone invented their own formats and interoperability between libraries was a nightmare.
My thoughts exactly. I wasn't aware of any apps for Android that allow you to record phone calls. Does the Android API even allow apps to do this?
In the discussion about the ratio in incomes between those earning the least and those earning the most, pg does not seem to be aware of the fact that this ratio has been changing over large time spans (even ignoring the excesses from pop culture which can be explained by a structural change in how that part of society functions).

Curiously, these changes correlate with the rise and fall of certain political movements. It is then quite reasonable to wonder if, perhaps, the disreputable ways of earning money via political manipulation are really not a thing of the past after all.
Yeah, your first sentence basically summarizes the article.