skysight-inc/HackerNews huggingface dataset:
This is a problem even in professional data sources. I recently did an admittedly somewhat silly analysis, to see what happens if you take the "voting with your feet" metaphor for emigration seriously, and interpret each country's emigrants as a ranked-ballot "vote" for most appealing destination country, with all the ballots tallied using a Condorcet ranking. Results: http://www.kmjn.org/notes/voting_with_feet.html

I used bilateral migration data from the World Bank to do it: http://data.worldbank.org/data-catalog/global-bilateral-migr...

I thought this might produce complexities I'd have to deal with, since over the 50 year period this data set covers, countries have come and gone a number of times. But to my surprise, the data set somehow uses only current countries, even when giving data points for 1960 or 1970. It doesn't really explain how that happened, either. Did they somehow impute past data to current countries? What does the 1970 figure for Germany, or Serbia, actually mean? Something was too complex and didn't fit the database, so it got swept under the rug? Made my job writing this off-the-cuff blog post much easier, but now I'm left wondering what the data I used actually means, despite it coming from a highly respected source, and used in many academic papers.

edit: Found a paper describing the construction of the World Bank data. It looks like they use what they describe as an admittedly crude method of attributing based on population shares, so e.g. immigrants to "Yugoslavia" are apportioned to Croatia/Serbia/etc. based on population share, assuming the immigration was uniform throughout. Not horrible as a first approximation, probably, though clearly not "right" either. Source: http://papers.ssrn.com/sol3/papers.cfm?abstract_id=969242
Like the Supercomputer It Is
Given the way Google implemented gathering street view data, I wouldn't be surprised if Google has more map data in the USA than all the other map companies combined.
This article is primarily about Vinted Goods and how an advisor got the project ended with a cease and desist notice to the team and a DMCA takedown notice to Kickstarter.

What's striking about this particular case is that the issue seems to be with images used on their website (maybe in the video too), and nothing to do with the product they are producing: http://vintedgoods.com/pr

For those unfamiliar, there is no copyright in the fashion industry, so presumably these bags / fashion accessories they are creating aren't the issue.

http://www.engadget.com/2010/05/26/the-fashion-industry-surv...
That registration has value - its an asset that makes recurring revenue - so they'd likely transfer (sell) it to another registrar. You'd get an email with a link to a new backend to login to etc. This has happened to me numerous times over the years (they usually call it an acquisition, but I suspect many of them were effectively going out of business). It is a slight pain to learn a new system, but you never lose the domain or anything.

Worst case scenario Verisign or ICANN would step in. The registrar doesn't own the domain, you do. They are just the custodian. Similar to how a stock broker doesn't own the stock you hold with them and even if they go out of business, you still own the stock.
This is just hokum. Collapse of art and literature? Soft totalitarianism of political correctness? The "sordid worlds" of popular entertainment? Thiel sounds likes just another rich guy losing all connection to reality and morphing into a know-it-all railing against popular tastes. What does he know? And all of this "nature red in tooth and claw" shit - "most human beings through the millennia have existed in a naturally brutal, unchanging, and impoverished state" - who is he to spit on thousands of generations of living, breathing people, and say their lives were shit? What gives him that right?

The other thing I find strange is his talk of a still-to-come "energy revolution." Thiel sounds like just another false prophet of growth. I'm pretty sure we already had an energy revolution - fossil fuels. Massive reservoirs of stored energy that we discovered, learnt how to extract, process, and utilise, leading to a bewildering array of techniques and technologies. Does it dissapoint Thiel that the fruits of these achievements have gone to relatively simple things - more homes, cars, appliances, holidays and health care for more people. Does it disappoint him too that population and desire expansion soak up our technological advances? We live in the most resource-intensive society in history - and apparently it's still not enough. We need to grow some more. It hasn't worked before, but next time, it'll be enough, for sure.

So what does Thiel want? Science to break the fundamental rules of physics? Science to break the fundamental principles of living species? Seems like Thiel is pretty uncomfortable with human eistence. He wants that 50s vision - clean, pristine, glowing, perfect, anxiety-free (a vision invented to sell vacuum cleaners to the most anxious generation in history, if I recall correctly.) Thiel is the classic modern: living in the most disease, conflict, death and accident-free society of all time, terrified of the physical realities of human existence, callously dismissive of 99% of all that humans have experienced on this planet, bitterly dismissive of the achievements of modern technology, blithely dismissive of popular tastes, wanting to have his cake (liberal human rights and the free market system) and eat it (techno-transcendence and mass adoption of his political views) too.

My advice to Thiel would be to decide exactly what it is that he wants (more fundamental physics research, better solar/wind/algae, more noble pop culture, authoritarian domination by a cultural elite, space resource extraction, better education, better sci-fi novels), figure out what's at the heart of his chosen problem and (just like a good hacker) go and come up with an innovative solution to transform the problem himself. Either research or advocate or fund or all three. But he should stop trying to preach like this on the failures of our civilization, because he is just talking out of his ass.
http://lmgtfy.com/?q=what+happens+if+your+registrar+goes+out...
Very cool! It would be even cooler if there was some way to turn the page with highlighted text into a named anchor link.
Let's make some simplifying assumptions: the survey identifies two causes of poor performance, a lack of academic rigor, and a poor classroom environment (such as a teacher that's mean and unresponsive to requests for help or clarification). Those two categories are weighted equally on the survey - a teacher who gets 100% on the survey is good in both categories, a teacher who gets 0% is bad in both categories, and a teacher has more than one way to score 50%.

So, if both of those factors affect student performance on standardized tests, then there will be a strong correlation between the overall survey scores and the test scores. But analyzing the details of the survey results can offer actionable guidance that the test scores can't - the survey does provide useful information for how mediocre teachers can improve, even when it matches the test scores in predictive power for future test scores.
Is catching all exceptions really what you wanted to do here? A generic appError() is not equivalent to handling each possible failure more by type, as the Go example does.
Only AOL could turn requiring perhaps the most relevant experience into news.

Where "news" is used almost as loosely as "journalism".
Adafruit visit’s Bre Pettis MakerBot store in NYC (video)
because the web has changed. try to run an old firefox (or phoenix) again. really. try it. it won't feel fast. firefox got much faster in the meantime.
Unless they're unchecked exceptions, of course. In Python, all exceptions are unchecked.

The proliferation of checked exceptions all throughout the code is a whole other ball of wax.
Because hype != progress. Hype is basically a bag full of air.

You can try new things, but abandon the other ones because of hype (or thinking it's better cuz "ppl who don't know anything about languages said so") instead of true technical merit is pretty fucked up :)

Now then again Go ain't bad, but I don't see it being better enough than Python to switch in this case. Python in better for many things as well. Not a large step enough.
Now they just have to write the other '90%'.
How To Get Unlimited Free Quality Traffic
When I'm watching movies from 5 feet away using VLC, the pause gesture is invaluable.
What is your favorite IDE for development?
More importantly why do you choose it and do you have a different favorite for each language that you use?
Privacy movement finds strength in crypto night
I like how they suggest data centers be more like supercomputers. Why are supercomputers using 100% of their CPU time, while data centers are siting around wasting it.

Some companies, academic organizations and research groups have shown that vastly more efficient practices are possible, although it is difficult to compare different types of tasks.

The National Energy Research Scientific Computing Center, which consists of clusters of servers and mainframe computers at the Lawrence Berkeley National Laboratory in California, ran at 96.4 percent utilization in July, said Jeff Broughton, the director of operations. The efficiency is achieved by queuing up large jobs and scheduling them so that the machines are running nearly full-out, 24 hours a day.

Brought to you by the Times' best and brightest.
Handling errors in one spot doesn't work for all situations, though, right? Especially in an OO environment an object may need context for retrying a request, or some other kind of error decision making. So in practice some exceptions percolate through the object graph, while others are handled in-house, so to speak.
No, they meant September 30th. The application deadline was the 20th, they are reviewing them for 10 days.
Happy birthday. Thank you for serving me with my best interests at heart for so long.
How will mypy give satisfactory array and integer performance? In the case of arrays, unless they are homogeneous, you have to implement them as arrays of objects. And in the case of integers, they won't have the Python semantics unless they are the same number of bits as Python integers.

Also, what about things like metaclasses, changing methods of classes at runtime, etc? It seems like it won't be much like Python at all, and certainly not compatible, if it is to be efficient!

It seems to me that Python is fundamentally dynamic in nature, not just programatically, but also in terms of its type system.

Cobra was an attempt at a Python-like language with static compilation and type annotation. But so far, I don't see a mass exodus from Python to Cobra.

If mypy isn't going to be fully Python compatible, why wouldn't people who were unhappy with Python just switch to another statically typed/compiled language that already exists?
Heh, I thought the answer was "Because my blog is named uberpython and it would be way confusing." :-)

But error handling is one of those topics that really gets people going. From ABEND in the old IBM batch days, to uncatchable signals like SEGV in unix and uncaught exceptions in C++ or Java.

I tend to come down on the "decide what you are going to do in the code, right where the error occurs" flavor of the argument. So checking for errors when they occur is important to me, what to do next gets to be sticky.

So there are three things you want to do:

1) Easy - you just want to quit/die/exit pretend you never existed. This is pretty easy and most OS'es and embedded toolkits have something along the lines of 'exit' or 'exit_with_dump.' So that later you can try to reconstruct what happened.

2) Is "this is bad, but it might be ok later" where you want to unwind to the point where this started but not completely exit. Exceptions are pretty good for this if used well since you can catch them at the 'unwind' point and if you can attach the unwinding actions (closing files, freeing memory, etc) to the return stack then it can be managable.

3) You want to plod along in a degraded mode, which means you need some way of communicating with the rest of your code that you're damaged goods at some level.

Go has an interesting mix which I haven't used extensively but I wouldn't dismiss it out of hand. The folks writing it run services that continue through partial outages so if it were too egregious folks would rebel inside of Google.
That's his whole point. He doesn't want to ignore errors but feels like Go is so verbose about it that it's a pain for programmers to deal with it. Example in case, print. Would you check its return value every time you call it? No.

Contrast that to other languages, such as python, where you don't ignore the errors because you know that if something goes wrong, an exception will be raised.

It lets you do stuff like:

def whatever(request):
my_int = int(request.POST['some-param'])

Note that, in that case, we don't check if 'some-param' is in POST. Neither what happens if it's not a number.. Basically, an exception will be raised and a 404 will be shown.
I don't think you have to work at a crappy job, but working at a job where you actually learn the difficult lessons of interacting directly with customers, or the struggle of selling to them - or the reality of the mindset and motivation of a frontline employee is invaluable.

I'm always shocked, especially in software, at how many people just come out of school (or worse yet grad school) with no sense of trying to understand the edges of their business. Blissfully working away in a 'lab'.
Also when we outsource jobs to other countries, presumably given that the point of doing so is that they have a lower cost of living, therefore the company saves money. So presumably they could be paid and treated really well and would still be a lot cheaper.

It is one thing to move production to save money from wage differences, and quite another to then turn a blind eye to the working conditions of your new employees under the guise of it being the suppliers problem.

Also, it is worth remembering that although Apple is a major customer of Foxconn's and has some of the most leverage with them (which is why it is really is worth annoying Apple about this), they are hardly the only people who make use of Foxconn and that there are also a lot worse places than Foxconn that do not have such a strong light shone upon them, and that are usually forgotten quickly even when they make the news.
Will add support for more apps very soon! Thx!
I can see what it does, but not how it makes money doing it.
"go work on it himself"

Amen.

Some of his philanthropic efforts may prove beneficial to science. He could just be a quiet philanthropist. But these sort of PR pieces, even putting aside how annoying they are in terms the total lack of sound thinking^1, are designed to sell people on investing in "Web 2.0" companies and Silicon Valley of which he is conveniently positioned as a beneficiary.

1. Sound thinking is, I thought, what National Review, or at least WFB, Jr., was all about. This kind of contribution is pure rubbish. It's a wonder he didn't start name dropping a handful of "Web 2.0" companies to whet investors' appetites, as Andreeson does when he writes for the NYT.
Hm, I guess you're right. Maybe not laughable, but nothing to boast about on TC.
21 year old UCLA math major does an Arab Spring break
I'm not in love with this aspect of Go either, and I also find that the idiom for dealing with it (multiple return values and multi-statement if conditional clauses) doesn't play well with Go's scoping rules, so that I find myself regularly having to decide between cleaner conditional or an explicit variable declaration. I also don't love how it makes my code look like my teenage-years C code.

But I also think this is a very silly reason to adopt or not adopt a tool. No other approach to error handling is less fraught.

If Python is your only language, Go or something like Go is probably a very useful thing to have in your back pocket: compiled native binaries, fine-grained control over memory layout, and a simple and effective concurrency model is a good thing to have in one package.

There are a lot of things that annoy me about Go (and for that matter Python, which irritates me for very similar reasons). What I tell myself to get over that and keep an open mind is, Go may not be my idea of an elegant language (yet; I'm still learning to appreciate it), but it is an excellent tool. I can get over the language stuff if the tool works well enough, and Go seems to for me.

Incidentally, who "leaves" a language? I have a very hard time seeing how, even from the label on the tin, anyone could believe Go is a great solution for every problem. Python sure as hell isn't either.
PDXConf: Andy Baio + Girl Talk on the Future of Music
Phoenix was a really stripped down browser compared to other browsers of the day and you couldn't install lots of interesting extensions from day one. Firefox is still pretty barebones but so are other browsers now too, and most people install a ton of extensions that make it feel less snappy to boot.

A comparison via screenshots shows Firefox hasn't departed far from the spirit of Phoenix by default though. Phoenix 0.1: http://no.gd/p/phoenix-01-20120924-002927.jpg
Firefox 16: http://no.gd/p/ff16-20120924-002834.jpg
I don't think this is terrible practical. Just as SSA wasn't efficient until the advent of modern computers and for integers of about millions of bits, so Furer's algorithm probably isn't efficient until integers are so large that their number of bits takes million of bits to write down. I won't say never, but it isn't going to be practical any century soon.

The multimodular version is likewise pretty useless in practice.
it occurs to me that when you're programming functionally, especially in a functional language, you must think about your data's structure and types first (or fight a whole lot with the language). if linus is correct, could a strength of FP be that it naturally herds its users down the path of the 'good programmer'?
So it's better to be a liar? No it isn't.
Your mother would simply bring her machine to a genius bar at one of the Apple stores where they have all the required tools and media to re-install her computer. She wouldn't have had a tech come out to her house to replace it.
Can you imagine how unbelievably stupid and venal and untrustworthy you look when it's discovered that you deliberately lied about the timeline of your career? It's batshit that anyone would even consider it.
My bad. Good point. I looked at what he meant - not what he wrote. :)
How Hotmail is Inadvertently Letting Others Hijack Your Identity
Xkcd and Internet Reminders of the Vastness of Our Puny Existence
> OK, either your description page doesn't get your point across at all, or you're missing a definition somewhere.

The description page (like the rest of the project at them moment) is definitely a work in process. Sorry about the confusion!

> 'Wish the function keyword in JavaScript wasn't so long? What if you could define functions with def instead?'

> Erh, no? Why in the lord's name would I ? Is that your big selling point? 'I don't like function() because it's too long?'

This is just a really basic example of what you can do. Obviously you could have the same effect with sed but we need something simple to shows what basic macro definitions look like.

> 'Want a better way to make "classy" objects?'

> <provides example that looks like php vomited on Javascript after mating with ruby>

I'm assuming you refer to the macro definition with $ and whatnot. If you have ideas for better syntax please contribute! The notation is by no means final. That said I think it's pretty good for what it needs to do, matching syntax patterns and transforming them into new bits of syntax. Certainly more readable than a full parser/compiler.

> Am I the only one that doesnt understand the use case of this? Or is it just another lexer/parser?

The idea is to provide a middle way between no syntax extensions and writing your own full compile-to-js language languages like CoffeeScript which allow you to add any kind of syntax you want, but at the expense of being able to compose extensions. If you like the class notation of CS you must buy into all the syntax choices of CS whereas macros allow you to add just the syntax you want.

Whether you want new syntax is of course a different question. Other languages like scheme and closjure have found macros useful so sweet.js is an experiment to find out if the same syntactic extensibility that they provide is useful in JavaScript.

Hope that helps!
Who would be dumb enough to use it, given Kim Dotcom's criminal record? The man has been convicted of receiving stolen goods, insider trading, and embezzlement. If he's not convicted in the Magaupload case, it will be ENTIRELY due to procedural errors on the part of the prosecution.

The only times he appears to have not been engaged in criminal activity is when he was on parole waiting for a sentence to run out.

Why would you trust him with your data? Or if you are an investor, with your money?
Presimental - sentimental analysis for tweets about Obama & Romney
It works for most situations. If you need retry logic - exceptions is the wrong way to go. Errors returned by the standard library are most likely not errors you want to retry by default.
Did not realize that, and the dupe-detector didn't catch it.
Thanks for mentioning pytyp!

I have been using this recipe: http://code.activestate.com/recipes/572161/ to add type checking to Python for a while now, so it's nice to see a more mature and developed library that does the same (and more.)

In your code examples I didn't see any decorators around the functions that were being typechecked, so how do you then enforce the type checking?

In addition, is pytyp as fully-featured as the recipe above? (The recipe is short but well-written.) The comments at the beginning of the recipe shows a bunch of examples that demonstrate all that it can do.
DRACO: The Mean, Unseen, Virus-killing Machine - The Airspace
Another time saver: TimezoneDB [1]

TimeZoneDB provides free time zone database for cities of the world. The database is licensed under Creative Commons Attribution 3.0 License. It contains countries name, time zones, abbreviation, GMT offset, and Daylight Saving Time (DST). The data is available in CSV and SQL format. You can download and implement into your projects for free.

[1] http://timezonedb.com/download
Hardware compatibility is a problem, having a group of people all targeting one particular laptop to fix is worthwhile but isn't a great way to fix it. There are various laptops that can be pointed to if you're persuading someone buying a new laptop to install ubuntu (though which is poorly documented).

There are multiple problems, the main one is that windows is known, comes "free" and already installed when you buy a computer, is less of a risk and is good enough. Most people will know a "computer guy" who can help them with windows or be comfortable that they can pay someone otherwise.

Software is a bigger problem in some ways than hardware now (though the web is fixing this), note the effort Ubuntu are putting into the software centre, allowing paid for apps, proposing to relax the restrictions to get new software into Ubuntu, running app competitions and so forth.

Selling operating systems isn't easy, look at how long apple have toiled in the wilderness and they have linked hardware, loads of good will via ipod/iphone, billions in the bank and have managed to climb to something like 5%-10% market share.
Checked exception need to be handled properly. It depends on the sanity of the API.
However, the standard way how to handle checked exception is a lot easier to maintain than error return values.
...or just leave the data in. Having a few extra columns on a 250 row table isn't going to hurt anything.
An experiment in multiple cursors for Emacs (4 min screencast)