HN user

notabel

62 karma

name: Cain Norris place: University of Florida

Posts2
Comments82
View on HN

On that note, you might take a glance at the lightweight concurrency paper; it proposes a new concurrency runtime for GHC, basically moving most of the implementation into Haskell, with just a thin layer of primitives in the RTS. Interestingly, those primitives don't include locks, but instead a very minimal transactional memory.

http://research.microsoft.com/~simonpj/papers/lw-conc/index....

(The paper is also notable for giving a complete operational semantics of the system it discusses.)

(But this stuff isn't in GHC mainline, and won't be, for now, because it needs serious performance work first.)

The extra speed would have been nice yesterday, while the emails were going out. I doubt I was the only one who noticed the site slow down as we all refreshed compulsively. :-)

Doing it in Lisp would be exceedingly tricky, since, while most dialects have some sort of laziness construction, it's explicit, so you don't get the automatic evaluation order reduction that happens in Haskell.

(NB: Unless I'm wrong. I've never tried it, it's possible that there's some nice trick for it that just isn't occuring to me.)

It's unlikely that the situation is any different in Arc; Haskell is just fundamentally different from other languages (other than Clean), in that lazy evaluation is the default behavior. In Lisp you can ask to create a thunk and then ask to evaluate it later; in Haskell, everything is a thunk, and the compiler/runtime evaluates it when needed.

I've got a Sieve script running on my IMAP server, set to redirect to my phone any message from an address containing any of the strings "pg@", "tlb@", "rtm@", "x@", or "ycombinator".

I also have my email here set to a subaddress, which is also included in the above forward. Points to anyone who understands Sieve semantics well enough to predict whether the message will get matched and redirected twice.

Sieve happens in realtime :-)

I'm waxing originalistic, but I'll spare you the argument from Latin (the relevant verb is educare), and just skip to the OED. To educate is "3. To train (any person) so as to develop the intellectual and moral powers generally." The distinction I draw is between "develop[ing] the intellectual and moral powers generally" and training a particular skill, without respect to overall intellect.

(Also note, I'm not saying that there is no such thing as an engineering education, only that many engineering programs suck at developing the mind generally. I'd still maintain that there's a fundamental difference between engineering and liberal art/science education, but that is not a discussion for this thread.)

Good luck getting that degree accredited.[0] You've entirely elided the fundamental aspect of education: education. A college degree is not supposed to just be a certification that you are competent over a certain domain of facts, but rather an indication that you have spent 3-4 years thinking, applying yourself, and growing intellectually.

While autodidactism is certainly laudable, there is value in a corporate educational setting, namely the value of intellectual interaction. College is not so much about learning a set of data, but learning how to learn. (For the ultimate example, consider the Ph.D., a degree meant only to teach you to do research, and requiring legitimate research to attain it.)

Now, I'll admit, I was educated in a liberal arts[1] high school, and am currently pursuing a couple of liberal arts degrees. That is both why and because I believe education is about thinking, not committing facts to memory. I eschew academic engineering because it is (at my university, at least) primarily a series of courses that certify your knowledge of yet another parcel of facts. That is useless, educationally. As technical training,[2] great, but it's not education.

Your list of "why"s implies that, substantively, you were no different at the end of college than at the beginning, modulo a group of friends, and four years aging. If that is the case, I'm terribly sorry; you managed to miss most of your education.

[0] Mea culpa: this entire comment is a bit hot-headed. You've hit a pet peeve. [1] Before you jump to conclusions: the liberal arts include the hard sciences. [2] In all honesty, that's what engineering school is: a vocational education in an incredibly advanced vocation. (That's not a problem, really: I share my time between my liberal arts degrees and a fine arts program, which is also vocational education, in a (imho) advanced vocation.)

I found it relatively inaccurate, but oddly, it was always very precise; i.e. when it got things wrong, it got them profoundly, diametrically wrong.

One thing I wonder is whether there is any logic to deal with confounding variables--for instance, if someone picks every photo that has a bike in it, maybe they just like bikes, and those data points should be excluded.

On the whole, though, the pairwise people have probably as good a shot at anyone at making a not-suck personality analyzer.

There are two distinct classes of work that are called "busy work". The first is heinous, the second is often loathed, but great.

There's real busywork: work assigned just to take your time, create something to grade. That's crap, it should go away. (And in my collegiate experience, largely has.)

Then there's "impractical stuff": people often malign work they do that doesn't directly apply to the real world, but I think that it is often worthwhile. Consider MIT's famed 6.001: few of its students ever use Scheme, or any functional language, professionally, but the work in Scheme is never the less worthwhile. (Disclosure, I love functional languages.)

[This is just about your first paragraph.]

The question is whether that is a problem. I for one don't really think that traditional secondary ed is the right place for teaching tech. Tech moves too fast.

We need to fix the school systems to more effectively cover their domain: sciences and humanities. Technology, however, is best learned as we learn it: free-form, self-directed, online. There is no need to merge that into curricula.

(Note, there's a difference between technology and CS: CS is algorithmics, theory; it's a branch of math, really. Technology is applied: websites, programming languages, things of this sort. Any curricular approach to technology is doomed to constantly lag the tech education available extracurricularly.)

"public schools teach in a certain way and change very slowly."

I can certainly agree with you about that. IB has been around for 30 years, and just got any foothold in American 10 years ago. I was lucky enough to go to one of the early public IB schools.

I think we're considering fundamentally different paradigms. In my education, there were effectively no assignments, and certainly none that could be completed online. Consider my senior English or Latin classes: the only "assignments" were to read, and occasionally to write, generally on a self-generated topic.

In class, similarly, there was very little pre-planned content. In Latin, we simply went through the previous night's translation, line by line, with discussion breaking out whenever someone was perplexed or intrigued by something.

In English, there was perhaps a bit more planned content, but not much: the teacher would have something to talk about, and start out talking about it, but within 5-10 minutes we would have moved out of the prepared material into our own discussion.

Now, in the sciences, yes, there is definite content, and there, surely, there would be value in a central content store, but it would need to be developed outside the institutional structure, or your 2) would rapidly become 1). (Yes, I'm a bit jaded: I went to an amazing program, but it was housed at a horribly administered school.)

I have to disagree with you, and vehemently. Centralization is exactly the problem.

I was lucky enough to be educated in an International Baccalaureate program that stressed interaction between students and teachers, convivial debate rather than lecture, and analytic essays instead of rote recall. The strength of the program came from its decentralization, relying on good teachers rather than central planning. The teachers and students worked together, as collaborators.

Technology is a wonderful thing, but in education, it generally gets in the way of the greatest teacher: intellectual discourse. A teacher and 10-20 students talking with each other[1] is an optimal model for learning. Educational technology generally takes the personal interaction out of things, and certainly makes the process less engaging.[2]

[1] Very different from a teacher talking to, or at, students.

[2] I'm talking about secondary education. For primary ed, technology can be very useful. But that is a very different environment.

I don't find it entirely impossible. After Startup School I talked to Adam D'Angelo about spam on facebook (largely because I'd never seen any); he said that there is a lot of spam activity, but that internal safeguards prevent most of it from ever being visible. If the researchers were using internal, pre-filter datasets, their claim is reasonable.

I agree with you; Tumblr seems to fill a niche somewhere between a public del.icio.us feed and a blog. It lets you show people things in a genuinely unified manner (unlike del.icio.us, which is links, only links, nothing but links), without obligating you to go into commentary. It's kind of like a multicast, pull version of emailing something nifty to a friend. I think there's definitely a market for that.

I think that question, like the question about stock, is largely to make you think about the problem, and see how you react to it. Obviously, it's not possible to produce a number with any real meaning; just discuss potentialities, grand strategy, basically the conceptual framework you'd use for producing that number.

NB: As usual, this is me, guessing. Only pg knows for sure. :)

"Hackers and Painters" had an immense impact on me a couple of years ago. Like pg, I multiplex art and hackery (I suck at painting though--sculpture, printmaking, and theatrical design are my areas), so to read a book that validated and supported that duality was to find a good bit of clarity regarding my course in life. I still go back to H&P every few months, when I get worried about such things.

Just yesterday I started reading "Founders at Work", and from what I've gotten through, it's going to be great. More on that later, if this thread last.

I had long pined to read Tufte's The Cognitive Style of PowerPoint, but couldn't convince myself to spend the money; when I arrived at university, I immediately found a copy, and greatly appreciated it (not to say I agreed with every point). I thence read Visual Display of Quantitative Information, and found it fascinating--for anyone who's ever taken an interest in typography, visualization, or the theory of communication, it's an excellent read. Even if none of that interests you, you'd still benefit from the book: it shows you how to think analytically about human factors, which is a relatively rare discipline.

I think Metaweb is the only big name currently betting itself on the Semantic Web, though in a way that might let it route around some of the problems. For most other startups, the semantic web is a possible benefit, but not a necessity. Opportunistic utilization of semantic web tech can certainly benefit most web startups; the entire vision doesn't have to fly for us to derive some of the benefits.

I have to wonder if the stream will expose any inadvertent goodies, like the photoset did. (I'm thinking of the pic of Justin talking to someone, with a justin.tv alpha test login clearly visible on the white board. I didn't try it, but it sure was tempting.)

In any case, I'll certainly be watching.

Firefox isn't going anywhere. Even if Apollo catches on like nothing since C, it wouldn't kill Firefox; the user still needs a browser.

Yes, FF supports rich application development in XUL, and yes, Apollo might compete with that somewhat, but it doesn't really matter. XUL is there not as a feature but as a tool: the FF UI is built with XUL. That it is useful for others is really just a detail. In FF3, there will be more emphasis and support given to XUL apps, but still, it's there for the browser.

Also, the degree of competitions between FF and Apollo is, I think, overestimated. Apollo is basically just another RAD toolkit. XUL apps aren't desktop apps, they run directly in the browser just like Ajax apps. That gives them an entirely different use case than Apollo. (E.g. if FF becomes widespread, XUL might compete with Ajax when building something like gmail. Apollo wouldn't--a desktop app built with web tech is still a desktop app.)

The implementation here is really the amazing part; the basic data-vis tool is pretty simple (I wrote a much uglier variant in Mathematica, inspired by a proprietary stats app), but if they can/will expose this via a clean, open API, then this sort of visualization can become much more widespread. I don't know if/how google intends to make money from this, but if it's available as essentially a commodity visualization component for the web, then everyone benefits.

Quantitatively and predictively, no. You can only look at the outcomes from YC-funded companies, see to what extent they beat the curve. Of course, you still have to sort out the potentially higher quality of YC fundees to begin with. It's a hard statistical problem; any takers?

Shooting in the dark, I'd say one big difference is the focus on the founders, rather than just throwing money in and hoping for something valuable to pop out. You can see that in the YC application--very different from a request for a business plan.