Moderators here seem to be pretty effective because I can't remember the last time I've noticed spam here and I visit frequently. Is this a genuine problem? A feature to off-load moderators? I'd rather have focus on new videos of the kind Charles used to produce, which are... absent. Now we have to rely on felix for interesting posts. :P
Yes charlie, it's confirmed. Google, lead by Kurzweil, is actively working to hit the technological singularity.Feb 27, 2014 at 9:31AM
I love that movie. :)
Human intelligence if contained within the human brain, which is contained within a body. This is what makes human intelligence unique from silicon (or the like) intelligence.
The human intelligence has conscience, though no one yet knows how to scientifically describe what that is or probably more accurately, how it is manifested. The human cortex is what is shared among all animals, regulates the heart beat etc.
Human intelligence is attached to the human nervous system, the evolutionary process that creates our desires, to eat and sleep, and to procreate, our greed (that all animals have). I could go on and on how AI contained within algorithms on computer chips would be so unlike human intelligence because of the disconnect from the body, but I think many here can go on themselves if they want to think if through a little bit further.
What is it about the body that is so special that humanity cannot escape it? I am not disagreeing with you per se, especially given that it hasn't, but wondering what your underlying beliefs, reasoning and facts are in this regard, to proclaim its impossibility.
Some evidence suggests that it takes much more compute power to simulate the brain than hitherto thought - but that probably only has to do with whether the simulation runs in slow motion or not - just play back the tape in high-speed.
Of course any simulated brain would have to have sensory input to interact and do anything interesting in the world - although clearly humans can function without without all senses intact and divert "compute power" to remaining senses once one is lost or impaired.
Yes charlie, it's confirmed. Google, lead by Kurzweil, is actively working to hit the technological singularity.Feb 26, 2014 at 9:57AM
"Is there an equation for intelligence? Yes. It's F = T ∇ Sτ. In a fascinating and informative talk, physicist and computer scientist Alex Wissner-Gross explains what in the world that means."
"goto fail" - it almost had to fail didn't it.
Actually I think some machine-checked formatting rules (aka coding conventions) could have caught this error! I'm shocked that a mega-company like Apple doesn't have something like that in place.
Yes charlie, it's confirmed. Google, lead by Kurzweil, is actively working to hit the technological singularity.Feb 23, 2014 at 5:34AM
That's no minor assumption until we see actual tangible results - but a company the size of Google investing heavily in AI is exciting nontheless.
Well given technological singularity, is there really any machine distinct from "us" anyway? I thought the whole point of technological singularity was connected intelligence - a sort of Internet of brains. An "us"-against-"it"-thinking sounds like zero-sum-thinking to me. And if our minds are augmented, how we think would also be altered because our thoughts and conclusions could be automatically fact-checked - or they could be corrected before they even reach our consciousness. I guess it depends on how integrated it all is.
Guilt-by-association - kind of the same that happens with browsers and bad plugins or operating systems and bad drivers. One hopes that these kinds of crashes are quickly reported via telemetry to the guilty party.
@ScanIAm: Not being an advocate for database lookups, infinite loops and formatting C:\ in property code myself, I quite agree with you. However I see the broader issue as transparency in code.
The term "honest" has been used to describe code that signals its own effects, whether formally through types or informally through names or perhaps even comments (and "dishonest" vice versa). I prefer the term transparent because it's more neutral.
Haskell has the IO monad to make certain effects transparent. Java has checked exceptions to make exceptions transparent. C# has async methods to make time-consuming mehods transparent and asynchronous. In a double-whammy there's also a naming pattern associated with the use of async.
These constructs make it (painfully or blissfully) obvious to the consumer what the effects of calling a piece of code are. The IDE also has a role to play here, by making effects more clear to the developer. But by formalising effects, perhaps we can better manage code evolution by seeing types change as effects change - and indeed requiring types to change so that code built on the assuption of no effects - or only some particular effects, has to be revisited when the code it depends on changes effectfulness.
I'm hoping to see some interesting developments in this area in M# - or whatever the research variant of C# that MSR is working on is called. Well, just dreaming here - keen to gain some experience with such a language and how productive it will be.
Will you be downgraded to 25/50GB after that year?
I'm not a big fan of properties having code within them, but I do understand that there are cases where it's necessary. I just don't know that adding notifications is one of those cases. If we are willing to accept some syntactic semi-sweetener to fix this, why not do it with a decorator that would imply that getting or setting the value should kick off an event?
Isn't the entire reason for the existence of the property construct to abstract over whether the accessed data is aquired via lookup or computation? Insofar as that is the case, you appear to dislike properties on the basis of their primary purpose - or? (Putting things on an edge here)
It's generally interesting to see - and control - the possible effects of calling a piece of code - but due to the abstraction afforded by methods and properties, that can be difficult without some form of static analysis. Such analysis could reveal potential effects of code - and a prescriptive mechanism could generate static errors before code is ever run. Future IDE's and languages should provide developers with much more insight and control.
What does this solve that a tool co-operating with the compiler in the IDE that notices 'bad patterns' during editing wouldn't?
Unrelated rant: I find properties are sometimes a pain when debugging as you hover over things hoping to get idea what the state is, then find you need to execute code and it can't execute the code right here since it's some complicated code. It's a bit "hey, I'm just a property, come see what value I am - then it 'laughs' at you for being so silly as to expect you could actually do that". It's obvious from a method that you need to execute it to get a value, with properties it's pretty much what C# tries to avoid - getting error at runtime - except here the runtime error is that no, you can't view the property right now, and the editor doesn't highlight this fact in any manner so you hover over it in *hopes* of getting something without needing to execute what could have side effects in 3rd party code that end up affecting the state of your code etc.
So that was a summary why I don't use properties much, and avoid things that make debugging harder. I chose C# as my preferred language because debugging it is easier. And that's key since most of the code in most projects I do will be stuff I didn't write and while I only use high quality 3rd party code, when bug does happen in 3rd party code, I like for it to be easy to debug and fix.
I agree with your sentiment but what would foo.P() vs foo.P gain in terms of debuggability? If P is an abstract (computed) property, then some code needs to execute whether it is syntactically expressed as a method or a getter. Maybe it's not sufficiently visibly expressed in the debugger UI that it is a property, if at all?
In general of course one is interested in knowing (and restricting) the effects of calling some code - can/does it write to disk, use the network. take a long time to execute, throw exceptions, spawn a thread, etc.