skysight-inc/HackerNews huggingface dataset:
I completely agree that "super magic emergent intelligence" is not an explanation, but a mystery. But I think it's worth noting that the same applies for this "super magic universal language of representation" -- it's not an explanation, it's a mystery.

It's also important to realize that these aren't beliefs, or truth claims, or scientific claims. They're philosophical perspectives; no more, no less. They might guide the intuition, but have no bearing on the science itself. Someone who doesn't clearly understand the distinction between the philosophy and science of a topic may definitely risk either contributing to the "depressingly common fallacy in science" you mention, or risk misinterpreting a philosophical argument for a scientific one, and hence through blurred vision believe they see fallacy when in fact there is none.

One way of looking at it is both views are different philosophical angles of the same thing (or at least the same problem/mystery). A connectionist sees this conception of a "shared language of representation" as assigning a sacred mystery (what does this language actually consists of, precisely?) to an as-yet unexplained phenomenon, in the same way a computationalist sees this of the connectionist's learning algorithm (how does this learning algorithm work, precisely?)

The reason I highlight this philosophical symmetry is to emphasize that these are merely different intuitive mindsets developed towards approaching the common mystery of general intelligence.

The bottom line is so long as human-like "general intelligence" is a mystery (to the extent that we can't replicate it 100%+ effectively in computers), it's going to be an "unexplained phenomenon", and thus any theories developed around it will have some "magic" hole somewhere -- some key element devoid of predictive power. (Because if there were no such hole, then by definition, we'd already have it all figured out.)
Did your parent try to find interesting projects for yourself when you were teenager?
You email info@ycombinator.com to get an invitation.
In related news, I just measured Apples to be 100 times redder than Oranges! What is the point of benchmarking Python vs Go, when by design we all know Python is slower? So, in this particular case it's 100 times, for completely random reasons. Speed is not why I use Python every day and absolutely have no need for Go, although I wish it would magically replace C++.
Thanks for the link - you have a very interesting project as well.

We can get up to 30fps on HD resolution. But our own codec is also less computing intensive than h.264. We sacrifice bandwidth efficiency a bit for that though.
Does everyone in the States have a static IP address? Here where I live, every time you reconnect to the internet you get a new IP.
I am amazed and humbled to hear that India has 880 languages.

I am a stereotypically monolingual American--years of study allow me to mumble a few sentences of Spanish, German, and an even smaller amount of Japanese. I cannot even conceive of 800/1100+ languages--it's like trying to understand the scale of the Sun or imagine how fast light travels compared to say, a motorcycle or walking.

I was hoping someone here on HN was going to give a little background on what 880 living languages even means. Mostly, in a linguistic/cognitive sense, but also in a cultural/economic/political sense.
Using OpenSSL from Python with python-cffi
Hmmn. I think there's a fundamental advantage in any rewrite that's allowed to drop functionality - even a C++ to C++ rewrite.

It's not just the language. It's the fact that (a) you already have an instantiation of the idea to look at as a reference and (b) you're happily cutting bits off the original. The latter suggests that you're not only not supporting all of the original use cases, you're probably in a nice state of organization where you're free from the temptation to "astronaut" up a more general system than you really need.

It's always nice to have this power, but it shouldn't be confused with the wonderfulness of the language.
disqus, i guess!
I wasn't expecting much (most articles with titles like that are terrible), but this vastly exceeded my expectations. If I'd had advice like this when I worked on my first couple of startups, rather than the advice in Hackers and Painters, I think things would have turned out differently.

The first-time founders I mentor now have somewhat more realistic expectations than we did during the Web 2.0 startup craze circa 2005, but there are still far too many of them looking to build what comes easy (e.g. social network) instead of looking to build what makes money.

For my part, I'm done taking money unless there's a compelling reason. Right now I'm spending weekends building my next startup while doing my time at my last startup, now post-acquisition. It doesn't just feel better than chasing money, it feels right. If enough revenue comes in such that I need to quit and put my full time in, it will be a victory that tastes all the sweeter because this time I did it on my own terms.
The penalty rather depends on why you were banned in the first place. If you deliberately violated the ban then it's equivalent to trespass, notwithstanding the publicly accessible nature of websites.

It's not that I love Craiglist particularly, but the fact is that their website remains their private property, same as any other commercial establishment. They have no obligation to serve people who don't respect their policies.
Even a wget on HN will do the same. I did it for shits and gigs one time and found my IP banned before it finished running.
Agreed. We will definitely think about your good suggestion of doing a community review of relevant code parts.
DSP in Go
I disagree with your point about the monitor. Of utmost importance in learning and usability is the concept of "visibility", that is, the ability to see at all times the state of a system. An experienced programmer can cope with less visibility since a lot of that system state is in their head. For a novice, with no experience to draw on, they are essentially working blind, having no idea what their changes are likely to do until they see the results.

At the very least you need to have both the editor and the browser open. Switching between these two to see changes is more friction than necessary. The additional windows are: 1. to see the lesson 2. to see the website she is copying off 3. I forget. but it doesn't matter anyway. The task of switching between all these windows is enough to shatter the mental context of the real task, which is building the website, making a particular modification.

That's the other thing- the workflow aspects haven't necessarily been offloaded into the novice's unconscious mind yet. Switching between a window needs conscious attention that breaks the coding context, and the coding context must be reestablished again and again, on every change.

None of these realities go away because of your opinions about how a "real" programmer should be working.
Outcome based ownership - an Accelerator model for the future
We get below 150ms end-to-end latency. Check out our project page where we describe what we do different to achieve this.
Dunkin' Donuts could exclude you from their premises if they saw fit. Your analogy is equivalent to 3taps making a list of Craigslist URLs and getting a front page screenshot for each one. Scraping is qualitatively different - you have go on into the website to analyze the content, so I suggest it's more like walking into the DD kitchen and trying to document their customer transactions.
Flyample
I believe it's possible. Today's hardware chips are optimized based on a weird mix of legacy and business concerns. If you actually take modern fabrication technology and throw it at intelligently designed, single-purpose parallel architecture, and you add in a novel algorithmic approach, I could see these things being possible.

Your average software on modern hardware is barely able to take advantage of even 1% of the machine's full capability. You spend most of your time waiting for cache operations. Even when the chip is being utilized well, it's spending a massive portion of its power budget on just synchronizing the clock signal amongst all billion transistors. A parallel, asynchronous chip with dynamic power regulation would be able to offer several orders of magnitude better performance than a stock CPU. For an existing real-world example, just look at how much better a GPU outperforms a CPU for its specific parallel tasks.

It also sounds like they are using compressed sensing techniques, or probabilistic linear algebra or other rank-reduction approaches. These can drastically lead to massive reductions in power and increases in throughput, because they fundamentally reduce the number of bits of state that must be managed and transformed.

TL;DR I don't know a lick of this guy's research but I absolutely believe that current hardware and software have a TON of room for improvement, at least where parallel image processing and machine learning are concerned.
> There's a race condition between the if and do something which invalidates the programmers world view (someone can delete the file between these two statements). And this is an exceptional situation the program has to deal with.

It's not an exceptional situation. It's a bug in your program. And it's not lazy to open() and check for existence. It's actually the _only_ sane way to check that the file exists, if you plan to open it.

> Error codes may tell the programmer this, but it is quite likely that the programmer will just ignore it, because "I've already checked that it exists - what could possibly go wrong?"

The following code is obviously wrong because of the race condition you mention. Nobody in their right mind would write code like this.

if exists(file) {
f = open(file)
// do something with f
} else {
// handle "file not found" case
}

This code is correct, to some degree:

try {
f = open(file)
// do something with f
} catch (file not found error) {
// handle "file not found" case
}

As is this Go code:

f, err := os.Open(file)
if os.IsNotExist(err) {
// handle "file not found" case
} else if err != nil {
// handle any other error that might arise
}
// do something with f

The thing is, the above code is not me being extra careful about checking errors. It's just bog standard Go code. Checking error values is the only way to write even half-decent Go code, so everyone does it all the time.

No reasonable programmer would write Go code like this:

_, err := os.Stat(file)
if err != nil {
// handle "file not found" case
} else {
f, _ := os.Open(file)
// do something with f
// (or explode if file doesn't exist)
}

To my Go programmer eyes, the underscore (where I'm ignoring the error) in the os.Open line sticks out like a sore thumb. You wouldn't write it, and when reading you would certainly notice it as bad code (or at the very least extraordinary code).
While this stance sounds nice, it doesn't actually make much sense in reality. It appeals to our cultural want for 'justice'/'fairness'/'equality', but it doesn't quite pan out once you look at the general picture of skill acquisition.

If a person learned to become exceptionally 'talented' in one area, then he/she's more likely to replicate that same level success in a completely new area, than someone who hasn't gained that level of skill anywhere. This is because skill acquisition itself is a skill. So once you've learned what it takes to master a certain skill (i.e. you learned how to learn effectively), you can then apply it with much more ease than someone who hasn't really learned how to learn as much. This causes a sort of 'snowball-effect' outcome, where ease of skill acquisition follows a logarithmic curve of sorts rather than a linear/exponential one like most people seem to view it.

The only limiting factor on skill acquisition is choice/taste. If a particular area doesn't interest you, then why bother expending energy learning to master it, right? Doesn't mean you're not capable of it, all it means is that you didn't have to strive for greatness in that area to make it work for you. And since Jobs met Woz pretty early on, there was really no reason for him to become a master engineer thereafter. Meanwhile, Woz probably just didn't care about business/marketing, so he chose to not master it.

There are other factors that influence skill acquisition (e.g. IQ), but they don't necessarily limit it. And in order for the 'fair' view of skill acquisition to hold, there would need to be some sort of non-trainable limiting mechanism for building skills. But as of now, I'm not familiar of anything that would cause that.

The only way the "Jack of all trades; master of none" mantra holds, is if the 'Jack' never deeply learnt/'mastered' any of the subjects he's familiar with. But of course, the label "Jack of all trades" doesn't actually specify whether-or-not that's actually the case. Same for "well-rounded"; implying it indicates anything other than breadth of knowledge is inaccurate.
Just saw this on the front page of Google News, on CNet - looks like we've done it! Good for Khalil for getting the exposure he deserves, and I hope FB backtracks on their idiocy.
No ByteCode in between, sounds a lot like v8, and incidentally that guy works on V8 previously.
Everybody talks about using C++ for efficiency, but the way most people end up writing C++? Not very efficient.
Germany:
http://www.stripes.com/news/americans-learn-of-locked-car-la...

Australia:
http://news.drive.com.au/drive/motor-news/drivers-face-fines...
Looks good.

With great strain I omitted
my usual rants about the role of formula
fiction -- e.g., a good guy, white hat,
with a problem,
and a bad guy, black hat --
and morality plays -- evil, sinful
humans transgressing against the
pure, pristine, precious, sensitive,
delicate, snow white, 100% all-natural
environment by wasteful, selfish
use of filthy carbon, with retribution
the destruction of the planet,
and redemption through sacrifice
of getting rid of cars and returning
to bicycles and horses --
in journalism.

Journalism usually fails standard
high school term paper writing
standards, e.g., the role of
primary references.

For nearly all important work
in our society, original research
in mathematics or physical science,
professional engineering,
medicine, finance, law, the
standards of quality in journalism
are laughable. An airplane designed
with the techniques of journalism
would never get off the ground, which
would be a very good thing.

We could go on and on.

The book mentioned TV: My ISP gave
me a cable TV set top box with their
special deal for lower cost than
service without TV, but I've never
connected a TV to the box! I haven't
watched TV in months and not much for
years. The set top box has a good
clock!
Obligatory anti STM hype links:

http://queue.acm.org/detail.cfm?id=1454466
http://webcache.googleusercontent.com/search?q=cache:HhZcU_j...

Pretty much all the generalized (not functional) memory TM schemes with adequate performance rely on hardware acceleration. If your design doesn't support that your design is wrong.
The solution to making a one pass algorithm from the paper is to realize that each pixel moves a fixed amount. First it moves horizontally, then vertically, then horizontally, to arrive at its final location.

The way the algorithm works, for each pixel, the amount of shear horizontally and vertically can be calculated up front, before "moving" the pixel.

So to make a one pass algorithm, allocate a second image of sufficient size to hold the rotated original (the size of this second image can also be calculated before any pixel "movement"). Then, for each pixel, calculate its horizontal shift, followed by its vertical shift, followed by its final horizontal shift. You now have its destination coordinates, so store it into the second image buffer at the destination coordinates.

The algorithm becomes essentially:

foreach pixel source_coord do
dest_coord = transform(source_coord)
dest_image(dest_coord) = source_image(source_coord)
done

where

transform()

performs the Horiz/Vert/Horz transformation of the input coordinate.
As mentioned above, LTE latency really isn't that bad. Just most implementations on top of it usually result in high latency. I think we avoid this pretty good in our project.
> By extending their argument from "IP block and C&D" (something I accept may be valid here as a civil violation) to merely "IP block", the court may have just found that 1) is a crime independent of any malice or damages, among other things.

I don't read the opinion to say that. In fact, I'd say that the court put more weight on the C&D than the IP ban (contra Prof. Kerr who reads the statue as giving primacy to the technological measure). Though admittedly the analysis is rather short.

3taps doesn't argue it thought it got caught up in an over aggressive automated filter. It knew Craigslist didn't want it to access its website and did anyway. I don't see why slippery slope arguments ought to let them off the hook. Though I agree a civil forum is generally the best for this sort of thing.
20g fat (5g saturated), 27g carbs (14g sugar), 10g protein - this is merely a trendy candybar
CL's C&D letter probably demanded they refrain from such, ah, workarounds, and courts take a dim view of such cat's paw tactics. The correct action in this case would have been to stop scraping CL and republishing their adverts. CL doesn't own the market but they do own their own traffic and publishing platform.
Bottle uses `wsgiref` (https://github.com/defnull/bottle/blob/master/bottle.py#L263...) by default as its server. Per the name, it is a reference implementation of a WSGI server. No one should really use `wsgiref` for an application they care about. This test is invalid for this and lots of other reasons.
I agree. Working on iOS – which is written in a typed language, then compiled and deployed to a simulator that automatically takes the frontmost window position – I've never had a problem working on just a laptop. But now that I'm foraying more into CSS, a second monitor might be nice.
A system that is smart enough to figure out how to accomplish a high level goal on its own doesn't have to be a self-directed entity.

But a system that can do this and is a self-directed entity provides, as I said, a competitive advantage over a system that can do this but isn't self-directed. So there will be an incentive for people to make the latter kind of system into the former kind.

We may guide our learning processes, but the actual modification of our neural networks is completely out of our control.

As you state it, this is false, because guiding our learning processes is controlling at least some aspects of the modification of our neural networks. But I agree that our control over the actual modification of our neural networks is extremely coarse; most aspects of it are out of our control.

It's still just as useful to us if we're in control of its growth.

No, it isn't, because if we're in control of its growth, its growth is limited by our mental capacities. An AI which can control its own growth is only limited by its own mental capacities, which could exceed ours. Since one of the biggest limitations on human progress is limited human mental capacity, an AI which can exceed that limit will be highly desirable. However, the price of that desirable thing is that, since by definition the AI's mental capacity exceeds that of humans, humans can no longer reliably exert control over it.
> it's not truly general purpose computing as long as the stuff beneath the browser - from OS to hardware - is out of your control.

By that standard the state of general-purpose computing has been steadily improving as the most popular computing platform has moved from Windows--which is closed-source--to Android, which is open-source.
I think the biggest problem in learning to code is getting over the initial dev ops hurdle. ...definitely not what keyboard you're using.
My lawyer from Polsinelli helped me to get one.

http://www.polsinelli.com/

Tell them that simMachines recommended their services so they will point you to the right person.
Honestly, I couldn't read the second page of that article because I felt too badly about forming an impression of the (surely brilliant) Ms. Perry from it.

The stoner quote was immortal, but I'll raise you:

Nothing in her training prepared her for this kind of research. She was an astrobiologist, after all.
> type safety is in practice incompatible with VM-supported hot code upgrade.

That's not true.

First, it's very easy to hot reload changes that have been made to the code that are backward compatible. The JVM spec describes in very specific details what that means (adding or removing a method is not backward compatible, modifying a body is, etc...).

This is how Hotswap works, the JVM has been using it for years.

As for changes that are backward incompatible, you can still manage them with application level techniques, such as rolling out servers or simply allow two different versions of the class to exist at the same time (JRebel does that, as do other a few other products in the JVM ecosystem).

Erlang doesn't really have any advantages over statically typed systems in the hot reload area, and its lack of static typing is a deal breaker for pretty much any serious production deployment.
It just occurred to me that the / (4 pi r^2) factor may not be relevant here. The reason is that the acoustic wave could be steered (http://en.wikipedia.org/wiki/Beam_steering) so it does not propagate evenly over all the solid angle.

Perhaps the steering could be done cooperatively with the device(s) being charged. I.e., devices announce their location to the charger, and the charger steers the beam towards them.

Maybe that would bring the power required down to a reasonable range.
EPAutos is Deay-Ud - due to an unexplained Google de-listing
5 best paper notebooks
Is this running RSA PKCS #1 v1.5 signatures on every message, and CBC-encrypting without a MAC? It's a little hard to follow the code (the crypto specifics appear to be platform-specific).

Also, the WP8 code uses a CSPRNG for keys (good) but the insecure random number generator for IVs. Why?

Where do my peer's pubkeys come from? How are they stored? How are they validated? Do I have one per peer, or one single RSA key I send to all my peers?

How screwed am I if I lose my RSA key to an attacker? Are all my old messages now decryptable?

Exactly what happens when an RSA verification fails? What about when decryption fails?
I wanted to make a 4g based quadcopter for a while but gave up after looking into the advancements that would have to be made to overcome latency. I'm glad you guys did it!
@Last Software was the name of the original company, and a great one it was, in terms of both innovation, customer service, and community building.

Wonder how much of the original team is still there? The original product was brilliant, and it's nice to see it survive multiple acquisitions.
It was The Hunt for Red October, with Sean Connery.
Has anyone looked at the y410p? It has really good specs for the price, but I'm now sure how the quality holds up?
RTFA before ranting.
This is great, and a compelling alternative to TextAdept in the lua-scriptable text editor space.
> After all, it's not like Greenwald is going to take this lying down and that's something that they could predict quite accurately ahead of time.

I wouldn't never, ever doubt the amount of sheer stupidity and arrogance of a Government.
Even though the comparisions to OS X seem inevitable due to the launch bar, I like the snappiness of the OS, and one of the few distros I felt playing around. I am a primary windows user, who tinkers and plays around with Linux and OS X, I definitely like the OS. My wireless drivers being proprietary could not work with Luna, so as much as I want to have Luna - I could not use on the old laptop, but I will definitely consider installing it on my VM.

Crunchbang and Luna are the distros I am liking.
One might also note that Google doesn't use exceptions in C++, either.

http://google-styleguide.googlecode.com/svn/trunk/cppguide.x...