ddewey
Also, here are some links to the proceedings of recent AGI conferences:
Con: The author seems to try to be fair, but quickly falls into the trap of characterizing men in the field as "socially-challenged-uber-nerd[s]". She says that "a lot of men would rather not live like code-cowboys", but goes on to recite a litany of bad traits that are "masculine qualities" and contrasts them with the traits of a "good developer". That's a good way to alienate male readers who would otherwise be sympathetic. Perhaps men do advocate for themselves more actively in the workplace, and that should be corrected for by affirmative action; saying that men "pester the boss until she finally relents to send them to a conference" doesn't accomplish anything.
Con: spelling.
Using full sentences reminds me of a UI element* that replaces a form with an interactive sentence. The example (from a trip-reminder app) was the sentence "Do not announce these trains". Clicking "Do not" changed the sentence to "Do announce these trains 20 minutes before they depart", clicking "20 minutes" allowed the user to enter a time, and clicking "depart" changed it to "arrive". All clickable text appears as hyperlinks to let the user know what can be changed. The author then demonstrated this element scaling up to what would normally require a configuration dialog of a dozen checkboxes, radio buttons, text fields, and spin boxes. The full-sentence version has the benefit of being easy to check by reading, and it seems easier to set up in the first place, though that's hard to judge looking at mockups.
*See "Configuring notifications" from http://worrydream.com/MagicInk/#case_study_train_schedules (Linked on HN over a year ago at http://news.ycombinator.com/item?id=600799)
I highly recommend the whole article!
More info: http://golang.org/doc/effective_go.html#interfaces_and_types
Add to this Go's garbage collection and clean built-in concurrency model, and you've eliminated much of what bugs me in day-to-day C++. Go could still blow it with a poor treatment of generics, but I think it stands a good chance of doing Java and C++'s jobs in a much more concise, 'quiet' style.
I can't imagine how I will remember all of the Ways To Do It, though, given that I'm not likely to use only Perl all the time. There are so many builtins, operators, etc. that I'll be constantly living in the manual.
I'd argue that humans are more morally relevant because humans have richer mental lives (evidenced by language, culture, etc.), so we have a higher capacity for suffering and caring about our future lives, and suffering/caring are the two factors I find to be intuitively "morally relevant".
How would you convince me that humans are not more important than anything else? Do you have an argument?
Hamming's Questions ("What are the most important problems in your field? Are you working on one of them? Why not?") are great, but somewhat daunting. Maybe the blow can be softened by loading those problems into ambient thought mode instead of pounding against them systematically. That was one of Feynmann's methods: keep a few hard problems in the back of your head all the time and wait to stumble on something that helps.
I have the opposite problem: practical things that need some ambient thought to really get right (day-to-day work, money stuff) fall by the wayside, while things that I care about or find more interesting (like programming projects or relationships) take all the ambient time. Anyone else find this happening? Have coping strategies?
I guess I have a long way to go towards controlling my ambient thought. Maybe this is part of why I always had trouble "forcing myself" to study effectively?
I wonder what its integration with the browser is like? I'm not sure if it'd be better to have a separate app for my Google Reader and Hacker News, but those are both sources I'd like to read in this format.
Besides, to parallel his later argument about games (which I disagree with, but... maybe some other time): when was the last time you executed a great piece of literature? What does Moby Dick print when you run it?
I agree that scholars and programmers should talk to each other about their studies, but I doubt that this article contributes much to the discussion.
Is this article really just a call for the splitting of Turing-complete languages into software "materials", a group of DSLs that provide constraints? Programming in universal languages would become like materials science or industrial R+D.
We'd better figure out artificial food production before we discover that plants can feel, suffer, and care about their own future, or I'll end up starving :)
Notable concepts from the article: a "fixed-point" of language design, the idea of working backward from an aesthetic (Martian) to a language, and Kelvin versioning, in which "releases count down by integer degrees Kelvin. At absolute zero, the system can no longer be changed."
It's true, though; I found the actual language the author's made (or is still making?) to be pretty opaque.
I don't know how seriously I can take this kind of speculation, though. Unfortunately, we only have one data point to work with when it comes to technologically advanced species.
For more on how different other intelligences could be from us, here's some entertaining sci-fi: http://lesswrong.com/lw/y4/three_worlds_collide_08/ Previous posting: http://news.ycombinator.com/item?id=1387771
Maybe Predators are not technically biological predators, but the biological definition isn't the only use of the word (e.g. sexual predators). Using the word "Predator" instead of "Hunter" suggests that Predators derive something essential from their activities-- it's not a sport for them, it's a way of life.
This article also gives too much credit to simplistic evolutionary-biological explanations of modern cultures. Assuming that Predators were shaped by evolutionary pressures like ours, then concluding that they are "failing as a species" because they are "acting against Darwinian pressures", is intellectually lazy.
This whole thing reminds me of the kind of pseduo-intellectual justifications historically given for slavery. They are part of a "backward" culture in some ill-defined way.
Whew, maybe this is an over-serious reply to this article, but I prefer to practice critical thinking when I can, especially when it comes to portraying other cultures or species (fictional or non) as backward.
With most "decisions" about my lifestyle, I keep the societal default until unhappiness with it prompts me to change, rather than considering all options from a neutral state. I wonder what the pros and cons of the default-first and neutral-first strategies are? Default first automatically directs your attention to "pain points" in your life, but may make you blind to larger, more existential choices. Default-first also takes into account the "wisdom" of the masses, at least some of which is probably right. Neutral-first keeps you from being locked into any one lifestyle by fear or other attachments.
Examples of things that I've consciously changed from the default settings: I'm vegetarian (animal-rights motivation), I cut my own hair (I like the simplicity and the control).
For reference on the neutral-first strategy (with a pleasingly mathematical twist): http://www.astatespacetraveler.com/a-mathematically-proven-w...
Applying the "project" model (6) to a programming career: with 3 or 4 small projects a year on Kickstarter or App Store(s), you might be able to make a modest living. I guess that the special challenge of (6) would be to build up a good enough reputation and get people's attention.