skysight-inc/HackerNews huggingface dataset:
A unit testing framework in 37 lines of code, not too shabby.
I doubt Google have backups, take a copy home on a CD, have a massive third party database with dedicated certified people, or backup to Amazon S3.

I suspect their file storage system is simply good enough to replicate data intelligently across many machines/sites like a giant RAID array.

I also think that it's a truly massive benefit they have over other companies, particularly small companies, and that it's rarely discussed as such.
What gets me is how people even do normal development without some sort of backup -- even an informal one.

Maybe I'm just lucky enough to work with relatively small datasets, but our QA server contains a complete copy of the production database and is at most a week old. So even if we didn't run any other backups (which we do), we could restore from that server and be back up and running within hours.
Hope Twitter have backups...
Why Google Needs the GDrive to Fight Microsoft
Then you can still lose a days data. Why not switch and ship the mysql binary log every x minutes? Last backup plus all the logs gives you much better recoverability
They have a page/section at GetSatisfaction, but it doesn't seem to be updated anytime soon (though there are 3 employees set to answer questions): http://getsatisfaction.com/magnolia
Magnolia ain't exactly indexing every page on the internet though, ya know?

I agree with you that that is one of Google's key strengths, though. PageRank is neat, but the real edge is that the site is fast and the infrastructure is based on commodity hardware, so it's cheap.
Twitter I understand. Why secure youdomain@gmail I don't. Also if you are looking for email solution for your domain there is always google apps.
has potential. useless at the moment
Maybe it's the same lady, thus "small world".
Technically, you could check your gems, see which ones are not 1.9 compatible, fix the gems, and then release. :)
Sacrificing security for usability: security flaw in Windows 7 beta (w. proof of concept)
it really depends on how smooth - or not - the transition from XP to windows 7 is.
You don't have to wonder - all the code is downloadable. You can run the benchmark on Ruby 1.9 yourself.
Tarsnap.

Tarsnap lets you say:
tarsnap -c -f backup01302009 mysql_dir/

And you can just adjust the date each day. It gives you the luxury of a full dump (anytime you want to restore, just reference backup01302009), but it only actually stores the deltas (making sure not to duplicate data that might be in backup01292009 or backup01282009 and so on). Tarsnap stores the data to S3 so that it's replicated in multiple data centers.

It costs a little more than S3 at 30 cents per GB, but it's metered out so that if you only use 1MB of storage, you'll only be charged 0.03 cents for that storage. You could try creating your own way of doing incrementals, but I doubt you'd get it as efficient as Colin (the math genius behind Tarsnap) and so I doubt you'd get it cheaper. Plus, this way you don't have to deal with it.

And remember, it's hard to fill up a database.* As the Django Book notes: "LJWorld.com's database - including over half a million newspaper articles dating back to 1989 - is under 2GB." So, if they were using Tarsnap, they might be storing 5 or 10GB tops at a whopping $1.50-$3 per month plus whatever the transfer of their deltas was for the month. Oh, and tarsnap compresses the data too. So, maybe they'd be paying $1 or something lower.

* Clearly, if you hit it big time, you might not want to continue paying for tarsnap. However, if you become the next big thing, you can hire someone to deal with it for you.
...and then do a test restore!
I appreciated it, but it took me a moment to notice the asides. After all, I have spent years visually filtering advertising sidebars from page content.
'Colbert Report' creator Ben Karlin on the weird world of comedy portal WonderGlen
there goes mt renewed confidence in microsoft
In that vein, don't array indexes start with 1, instead of 0? Erlang does that too, and it's a bit weird, but not a show stopper.
Proper design doesn't cover: "Oh look, I can also monitor the 24v battery level if I stick a little voltage divider onto this extra pin" followed by soldering the pin to the wrong end of the high resistor 30 seconds later and powering up.

Frequently these breadboard type computers get accidental shorts from large fingers or are attached to incompletely specified devices ripped from old equipment. That's the only pin I've ruined in many projects and lots of breadboard work, but it happens. It's nice to know I can just move to the next extra pin and continue.
Early on the West-coast morning of Friday, January 31st, - poor guys must be frazzled. Jan 31 is Saturday.
That AVR does not, but they come in other variants with much more memory and ones that allow external memory (though at the expense of many pins).
Any ideas on how to force users to always vote and to do so truthfully in social sites?
I don't like reddit's stated incentive (improved recommendations) because it doesn't force users to always vote and it also requires users to trust the recommendation algorithm.

It seems that people vote on reddit so that they can have highly ranked submissions that they would like to see more discussion on. But this suffers from the one vote doesn't matter problem. Moreover, the site in question may not have any discussion.

I'm thinking of forcing people to vote by only showing them one item at a time. But there's a problem here with forcing them to be truthful. For example, they might downvote items as not being good answers just to see what other items will be shown next as answers.
Merlin Mann - http://43folders.com - creativity, productivity
A List Apart - http://www.alistapart.com/ - html, css, webdesign
Kottke - http://kottke.org - cool links
Subtraction - http://www.substraction.com - print design, web design

Some things that aren't blog but I Think provide great things and have rss feeds

http://delicious.com/network/tikva
http://delicious.com/cshirky
http://ffffound.com/

I read over 100 blogs, not all are in the super duper cool level, but I share what I think is the best stuff using my google reader @

http://www.google.com/reader/shared/06434253323852871046
You can have Google host your mail with Apps (for free for basic Gmail level email). And later if you decide you hate Google/Gmail or the next Gmail comes along, you can always switch, but keep your same addresses...
The trouble with convincing humans to back up is that it's important, but not urgent. For any given day of procrastination, the likelihood of consequences is small.

Our motto is "If it's not backed up, it's down." (Applies doubly so for us as a backup company.) For sufficiently seasoned administrators, non-redundant storage should cause sleeping difficulties.
Common lisp sequence functions work on lists, vectors (including those specialized for bits, bytes, etc), and strings.
I actually planned on doing that today
what does 'burning to an external harddrive' do ?

is this some new tech that I'm unfamiliar with ;) ?
BTW no one gets spat on and he doesn't say how Twitter will make loads of cash or why <some big company> will die, but it's really really a great talk. Really. Please watch it. I promise it's a good use of your next 20 minutes. You don't even have to upmod it. I will donate any karma points to charity.
1) Hide all the status/info bars in their browser.

2) Show them a single story/article

3) Set their browsers homepage to that article (in case they try to close/reopen their browser).

4) Show a popup demanding that they vote

5) Randomly make them revote on previous entries (to ensure the truthfulness of their votes).
There are other Mint users, too--I run a personal Mint account, but also one for my business. The business account is definitely quite atypical when compared to a personal account.
This is much better than third-rate wannabe programs like iVentures10 and whatnot - all the free services are explicit and from top-tier firms. This is a serious option for people considering YC and TechStars. I'd venture to say that this is superior to LaunchBox, as well.
Breaking Down Bernie Madoff P2 & 3
amen to that! You should see the confused looks I get when doing technical due diligence somewhere and they get that question: "when did you last try to restore a backup ?"

then once they get the point they want to leave the room asap...
YES! This comment should be modded up to the top.

We talk to a lot of customers about their backups every day. I'd say more than half of the backup failure stories we hear come from failing to adequately test that data can actually be restored.

Some have been comically tragic. Like creating an offsite backup using encryption keys that are only archived as part of said backup... :(
[Shrug]
At risk of sounding like a curmudgeon: learn to be careful, this isn't software.

With experience some things become second nature: no loose conductors on the test bench; double check before powering up; test one change at a time; add a temporary BIG resistor to any input that's over the PS voltage, don't change connections with power applied, etc.

Ask me how I know that EPROM based devices release a pretty purple flash right before the smoke comes out :-)
Which person on earth knows the most computer science algorithms? (Let's restrict to algorithms on Wikipedia.)
Which version of Ruby? 1.8 or 1.9? With my own projects Ruby 1.9 performs much better. Lua is well known for being small and fast, so I doubt Ruby 1.9 would beat it... Nevertheless, it'd be a lot more interesting comparison that Lua vs Ruby ???.
Or else this is a dire warning from the future! There's still time to save the data; this accident won't happen until tomorrow!
Any DVCS.

$ mkdir solo_project
$ cd solo_project
$ git init

Similar steps for hg and bzr.
It doesn't; you can certainly download a Hulu video if you know what you're doing.
Reminds me of the Couchsurfing fiasco back in 2006.

http://www.techcrunch.com/2006/06/29/couchsurfing-deletes-it...

http://www.couchsurfing.com/crash_page.html

Couchsurfing had a backup process in place, but failed due to human error. It's highly likely that magnolia had backups of some sort. Before we all start berating magnolia (and website owners in general) for not backing up their data, we need to know more about the real reason for this failure.

Couchsurfing was able to come back from the dead because of limited competition. In this case, unfortunately, it will be easier for users to look elsewhere.
Ask HN: How to learn languages with non-Latin alphabets?
Hi, I've been trying to find a way to learn some Armenian and Georgian but so far attempts have failed already at beginning: the alphabet.

How did you learn non-latin alphabet? I'm quite certain there are many of you with skill in Japanese or Russian for example.

I'm also in lovely position of being non native English speaker, it makes things at least twice harder.

Any tips are warmly appreciated.
Lua presumes you've already got your own batteries, thank you, and you don't want those crummy off-brand ones that always seem to come "included".

Thus, I feel a Lua - to - Ruby/Python comparison is sort of erroneous. Use Lua when you already have all your tools. Use Ruby/Python when you don't have any tools, and you want cool whizbang higher-level stuff.

Honestly the benchmark is wholly unsurprising to me; Lua is a much more minimal language. If you need another language to lump Lua with, lump it with Javascript sooner than you would Ruby or Python.
That's true, but I'll live with wondering a little longer. In the meantime, it seems that Lua is still quite a bit faster than ruby 1.9.0, even though ruby 1.9.0 is approaching Python 2 territory (tested 7 months ago):

http://shootout.alioth.debian.org/gp4/benchmark.php?test=all...
Indeed, and they're popular, too. If you type "youtube" into Google's search, the number one suggestion in the Ajax autocompletion box is "youtube downloader".
If you made something like Reddit where people only saw what was recommended for them, they'd vote more honestly. Especially if there was very visible feedback for dishonest voting. E.g. if there was a way to show them the stuff that didn't quite make the front page for them, and the only way for them to promote it was to undo (using an easy ui) whichever votes had most effect in keeping it off.

Incidentally, Reddit's stated incentive became a moot point within about two months of launch. Originally they were worried people wouldn't vote at all without an incentive. That turned out not to be a problem. Which is why the Reddits never spent that much time trying to make recommendations good.
DropBox are excellent. But I'll move to Google the moment they will provide the service because I'm using Android (Assuming that an Android client will be coming out)
Just forward the request to Donald Knuth, I'm sure he'll max out the wikipedia page length...
No, it will be ensured at run time, as all unboxing happens through pattern matches (which, btw, is EXACTLY what happens with a dynamically typed language).

For example, I can define...

(+) :: Dyn -> Dyn -> Dyn
(+) (I x) (I y) = I (x + y) -- integer addition
(+) (S x) (S y) = S (x ++ y) -- string concat

So I can now use the + operator on variables of type Dyn. If a value has the wrong tag, then a pattern matching exception is thrown. Once I get enough primitive operations defined, I will never really have to manually unbox a value of Dyn type again.

The one difficulty is emulating objects, because we would not have good syntax for arbitrary method calls. We could take a Smalltalk-like or Erlang-like approach, where the object takes message... the message being of type Dyn.

We should really look at dynamically typed languages as subsets of statically typed languages. In other words, they are not untyped, they are unityped. In other words, statically typed, but with exactly one type. This is the relationship between typed and untyped lambda calculus (untyped lambda calculus is actually typed, where every term has type Mu X. X -> X)
It's easy to say, "What? No backups... how stupid can you be?" But, without knowing the particulars, I wouldn't necessarily jump to that conclusion. It's very easy to have regular automated backups fail in some way.

Unfortunately, it's not enough just to have backups. You have to actually verify that they're correct and up-to-date. Verification is easy when your database is small (for example). You can just load it in your development environment occasionally. But, how do you verify your backups if you have hundreds of gigs or even terabytes of data?

As an example, I've seen cases where backups were successful every night... but, they were being run against a slave db and replication had failed. The result: Excellent backups of weeks old data.
An easy way to have a space efficient, perpetual backup of a database:

Run the dump file every N units of time.

Compress the dump file using gzip with the --rsyncable option. This increases size by 1% but makes it efficiently diff/patchable.

Use diff to make a patch going back to the previous compressed dump of the file. Keep the patch, discard the previous dump if you like. You now can apply the patches in succession to go back however far you like.

Finally, and most importantly, use par2 to store parity along with your backup files to protect against silent bitrot.

Note: --rsyncable is in newer gzip versions. It's too new to be included in OS X Leopard.
Ask HN: CMU's Information Systems or Computer Science?
This question does not pertain to Information Systems in general, but rather the specific IS major at CMU. I would like some perspective so I can advise people about what they should take in college.

A little background; I'm a senior at Carnegie Mellon University majoring in Information Systems. In IS, you start off learning simple web development and project management (documentation and client expectation management) in your first 2 years, and in the beginning of the third year, you complete a full scale web application in Ruby on Rails. During the second half of your third year you do project courses where you get into groups of 4-5, come up with an idea for a website and build it. In senior year, you get a non-profit client who has an idea and you build it for them.

IS cannot compare in terms of curriculum to CMU's computer science program. In CS, you start off with an introduction to programming, and quickly get into both the low level (C/bit operations, memory management, etc) and the high level (data structures, advanced algorithms, etc). In your third and 4th year, you get into functional programming and machine level code, and either build a complete Operating System from the ground up or a complete webserver, protocols and all. CS also comes with a deep mathematical background and training.

However, CS is also very difficult, even to relatively smart people. All the classes are very time consuming and leave little room for other activities. The required CS classes go very deep into theory, much deeper than you would need to if you were just web programming.

When I first joined IS, there were hardly any hackers in the program - most people wanted to become project managers or technology consultants. However, I TA some of the 2nd year classes and a handful of the students there have a programming background and take IS because it is easier, gives you a lot of free time, and lets you do a lot of electives. They just use these electives to take the CS classes that they want, but have enough time to do side projects like creating their own websites. A group of them have already gotten together and build websites for fun on the weekends.

Granted, the majority of IS majors are not hackers at all, and the project management side of IS is quite a large aspect of the program (to accommodate these types of people). Also, the program doesn't push you very hard technologically or mentally.

Now that was a long intro - My question for you is what major would you suggest and why?
your dad was probably quoting people that were not taking in to account the various money sinks that ate up the funds that could have been used to make that happen.

Wars and such...
... glad I'm on del.icio.us, but going to export all my bookmarks now anyways.
MS can always drop the price of Vista and Xp, the costs on those are sunk.
This is for a site that will give you tiny introductions to other sites.

The user types in the URL and then gets back a tiny introduction. If it's not good, the user can request another one.

So how can I encourage users to vote and to do so truthfully in this context so I can rank tiny introductions for a URL?
sounds like the same thing as Journal Space
http://www.techcrunch.com/2009/01/03/journalspace-drama-all-...
A former colleague was attempting to replace a failed hard drive in a server. So he installed a fresh OS, put the tape in the drive, installed the backup software and watched as the backup software started to reformat the tape...
I reckon it's news because it's a new book from a different author and publisher?... I generally find O'Reilly's books to be more to my personal taste than books on the same topics from other publishers, so I for one was happy to see this announcement.
I do something like that for my outgoing email ;)
Unqualified Reservations.

There are plenty of political crackpots on the internet, but how many condemn the American Revolution and support the Jacobite cause? How many go back to actually read Tory papers from the 18th century and Confederate papers from the 19th? Have you ever read the Tories' side? Chances are you haven't. Chances are you've been taught that America is wholesome and awesome and good and apple pie.

That's why UR is awesome. I love writing that changes my perspective on the world.

Edit: Here's a nice fisking of the Declaration of Independence from 1776:

http://oll.libertyfund.org/index.php?option=com_content&...

Some quotes with Moldbug's commentary:

" The last time I had the honour of being in your Lordship's company, you observed that you were utterly at a loss as to what facts many parts of the Declaration of Independence published by the Philadelphia Congress referred..."

Moldbug: In other words: these Congress people are so whack-a-doodle-doo, half the time your Lordship can't even tell what they're talking about. Presumably "your Lordship" is Lord Germain. Dear reader, how does your own knowledge of the Declaration compare to Lord Germain's? Weren't you amused, for instance, to learn that

" I know of no new offices erected in America in the present reign, except those of the Commissioners of the Customs and their dependents. Five Commissioners were appointed, and four Surveyors General dismissed; perhaps fifteen to twenty clerks and under officers were necessary for this board more than the Surveyors had occasion for before: Land and tide waiters, weighers, &c. were known officers before; the Surveyors used to encrease or lessen the number as the King’s service required, and the Commissioners have done no more. Thirty or forty additional officers in the whole Continent, are the Swarms which eat out the substance of the boasted number of three millions of people."

Moldbug: or, most intriguingly, that

" The first in order, He has refused his assent to laws the most wholesome and necessary for the public good; is of so general a nature, that it is not possible to conjecture to what laws or to what Colonies it refers. I remember no laws which any Colony has been restrained from passing, so as to cause any complaint of grievance, except those for issuing a fraudulent paper currency, and making it a legal tender; but this is a restraint which for many years past has been laid on Assemblies by an act of Parliament, since which such laws cannot have been offered to the King for his allowance. I therefore believe this to be a general charge, without any particulars to support it; fit enough to be placed at the head of a list of imaginary grievances."
I might be wrong, but I believe Winamp is still very much The King. Platform market share and all that...
Indiatimes link posted earlier: http://news.ycombinator.com/item?id=458077
Maybe we are in for something here. Having been lectured with the infamous Joyanes' books, I quickly learned to get my info in English the minute I found gopher (way before I knew what an actual gopher looks like).

This bias has made me consider the English language as the fist gatekeeper for computer geeks in Latin America. There are here nice people with lots of potential who cannot read English, this is always going to be a liability for them. Fool you not. No matter how good you think you are, you would be better if you could drink directly from the source. (take that from I guy who has thought himself great one or two times, just to find otherwise the hard way)

In spite of that, I still believe that language shapes our thoughts (there is formal name for this, cannot recall it). We are missing of so much because have to express ourselves in a foreign language, and the community as a whole looses our collective perspective because there is no place to share it.

<flamebait>
Said that, I don't think a news agregator would be useful at this stage. The moronic crowds would take over (think moronic as in Slashdot, not as a racial comment). Maybe some arbitrated site a la StackOverflow would do.
</flamebait>
Depends on the data and your budget, I guess.

Disk space is cheap -- I do a full dump of the database nightly (and a separate system dumps a few key tables every 15 minutes)