839 karma · joined April 19, 2012
Joining a pool is pretty painless though. You just create an account, and probably give them an email address, and then start running GUIMiner or something. You also give them a Bitcoin address to send the rewards. That's it, no other personal information needed.
Your breakfast analogy would be more like:
- Some days Alice eats crumpets while sitting in her house and it takes her about 20 minutes.
- Some days Bob eats a bagel while on the way to work and it takes him about 5 minutes.
- Therefore, bagels are 4 times faster to eat than crumpets.
See the problem is we have conflated lots of correlations at once. There is 1) a tendency for certain types of foods (languages) to be used for certain purposes, and a tendency for certain kinds of people to prefer certain foods (languages), and neither of those correlations are necessarily caused by the properties of the food (language) itself.
I'm wondering if there's a roadmap for Light Table's release, specifically if there's a point where the code will be available? I have a programming language in progress and I'm interested in potentially hacking LT to support the language. It seems like it would be a good fit.
Either way Tlark is right, you really don't want the game logic to be affected by framerate.
It is somewhat complex to do it correctly, see: http://gcc.gnu.org/onlinedocs/cppinternals/Guard-Macros.html
Creative works follow different rules though. The most successful ones become part of our shared culture and they permanently infect our brains. They become part of our jokes and our metaphors. You can't opt-out.
The most extreme example is Happy Birthday. Because of copyright, you can't legally take a recording of your child's special day and share it with others. It's a ridiculous situation, especially for such a basic song.
It's fine for the author to reap the rewards of their creation, but there needs to be some limit. 50 or so years is not asking too much.
Good question, it seems like all definitions of message passing involve not sharing state. Even OOP emphasizes data hiding as a core practice.
Rank 1: Polymorphism. You can "send" a message to an object. You don't know or care exactly what the object does. Other than the polymorphism, the "message" behaves just like a function call. It will definitely be handled by your target object, and it will definitely return instantly with a response. The compiler might even be able to inline this function call.
As seen in: Pretty much every OOP language.
Rank 2: Messages as first-class values. It's possible to write a function that forwards all incoming messages to another object, based on some logic. The caller does not know what will happen to the message. However, the message can be expected to be handled instantly, and it may respond instantly (if it does have a response).
As seen in: Objective-C, Smalltalk
Rank 3: Asynchronous messaging. When sending an outgoing message, it might be placed in a queue and handled at a later date. The message does not return a result instantly, so agents must have some other mechanism (such as including a "reply to" address) to be able to talk back and forth. From the perspective of the caller, it's a bit like putting a message in a bottle and watching it drift off to sea.
As seen in: Erlang, message queueing libraries.
Short answer: various methods of systematic trickery and financial booby-trapping perpetrated by, you guessed it, the 1%.
Try doing the Bing It On search for something like "radiohead". You see two columns of plain old search results, both are fine. But if you go straight to Google.com and search for "radiohead", you get more than just the normal search results, you get a bunch of extra details on the right side of the page. Those extra details are super relevant and helpful, like the band's members, popular songs, upcoming events, etc. If you go to Bing.com and try the same thing, it also has some extra stuff on the right, but it isn't nearly as good.
This happens for lots of searches. Google often shows some really helpful domain-specific information, but that extra stuff doesn't show up in the Bing it On challenge.
Linus actually implements his solutions to things that he rants about, and releases his code, so that analogy isn't quite right. Bret gives us nice big-picture ideas and leaves the implementation for others.
I think many of the specific ideas mentioned by Bret will quickly fall apart when trying to actually implement something non-trivial. But that's okay, it's useful to have a really inspiring big-picture vision.
I think a good analogy, say that I'm implementing a database. In my database, every single time it handles a query, it always does O(n) search across every record to find matches. The implementation would be so simple and elegant!
To be fair, it's not actually possible to present a new idea on this forum (or any forum with technical-minded people), without getting a flood of reasons why it won't work.
If contributors have write access, then Git is almost as easy. There's just one more command ("git push") compared to SVN.
If contributors don't have write access, then there's no easy way to do this with SVN. Most places that I've seen will either have users submit .patch files via email, or put their changes in SVN branches (ugh). Or, they convince themselves that they'd rather just give contributors write access. Either way, Git has many handy ways to solve this problem (Github pull requests are just one of those ways), and it definitely wins on this front.