Oh you added something on the end. Well, augmenting a human brain doesn't change the search space of solving Chess and Go (especially Go). You may be underestimating how large those problems are.
141 karma · joined October 6, 2009
Oh you added something on the end. Well, augmenting a human brain doesn't change the search space of solving Chess and Go (especially Go). You may be underestimating how large those problems are.
http://en.wikipedia.org/wiki/INT_%28x86_instruction%29
I'd prefer to see this either with inline assembly, or using __debugbreak() (and variants for other compilers). I'd say it's a deref because many compilers don't generate inline-asm for 64-bit skus. This makes the instruction always emitted, and then 64-bit platforms ignore it. But not always (recent claims say it works: http://stackoverflow.com/questions/3634124/where-did-int-3-g...).
We turned off exceptions (BOOST_NO_EXCEPTION) because the Wii and the DS didn't support exceptions. That was it. We never had a problem with spurious assertions, nor with unexpected behaviour from a lack of assertions. Compile times were about 5 to 7 minutes for partial builds. A full build was longer (I forget), something like 15. This is a huge code base, remember.
I honestly have no idea what you're talking about. It's certainly not a "general rule of thumb".
Curiously, in my karate dojo, we are taught to learn to fight whilst being winded - as in, having the wind knocked out of you.
I'm sure there's plenty of Shotokan dojos that don't have such a good sensei though. YMMV.
Exceptions don't just add an overhead when they're thrown, they add overhead for every function call. How else would the exception-handling runtime know to unwind the stack to the correct addresses? It is this performance degradation that we avoid. Why? For the PC, it doesn't really matter. The XBox360 doesn't handle the performance hit very well. The compilers for the Nintendo DS (edit: and the Wii) don't even support exceptions, and the PSP is so crazily architectured that things like floating point numbers or exceptions can cause a framerate to drop from 300 to 12. I've not worked on the PS3. You must understand that these consoles and handhelds are designed very differently from PCs, and are never as powerful.
We do check for errors, we just stay away from exceptions. And dynamic casting, when we can (the DS does a freaking string compare against the vtable!).
Back on topic: I still find both 'nerd' and 'geek' to be offensive. Although I don't find "geek chic" to be offensive... probably because it has never been associated negatively - it has always been a label for a particular style, which in itself carries no meaning.
http://www.boost.org/doc/libs/1_44_0/libs/spirit/phoenix/doc...
Honestly, sometimes you just have to do it, even without any training. Maybe do it six times.
Using your gmail as a username isn't bad. It makes it easy to know where to send you emails for account details and such. However, I think GMail needs a revamp if it's going to be the focal point of many integrated systems. What I don't want is another Facebook clone. A developer-centric social layer, to integrate various components of their developer infrastructure (google code/analytics/adsense, etc), could work. Could. They've got a bad track-record at "social".
So your comment sounds particularly naive, in this part of the world.
If someone ever wants to buy my company for $20 mil, and I walk away with even half that, I will be a very, very happy man.
Yes, I've just tendered my resignation. I work in a large, large company. The place is okay, the people are good, the code is fine I guess. I just wanted a change of direction. I started in videogames, and compared to that, this job feels far more... stuffy. And boring. Anyhow, I wanted a shot at starting my own business writing web apps. I literally do not know: javascript, ruby (therefore rails), much of linux, or webservers (well, I've heard of a whole bunch).
But hey, I have good savings, I have low rent, I have a nice computer, and in addition - unlike when I was working in videogames - I have a sleep-cycle that has me up at 8:00am every day.
As for the actual experience, I've just informed my direct lead, and we'll have to talk to the head of our department later today. I guess I'll let you know how it goes!
Hooray for grellas! He always makes me consider going back to uni and studying law.
More specifically, watch this thread: http://www.gamedev.net/community/forums/topic.asp?topic_id=5...
Don't mistake speed of releases or popularity or innovation for the speed of development. Nintendo is a particularly poor example, I think, since I'm currently working with their tools... they are last-decade. I'm not even talking about the Wii's capabilities (which are Gamecube-era), I'm talking about their software: IDEs, compilers, etc. They struck gold with the Wii, but Microsoft went from (No Console) -> XBox360 within... like, 5 years? Nintendo's been playing this game for 25+ years, and without the unmitigated success of the Wii their console division would be bankrupt now (seriously!)
Microsoft's ability to develop (notably, but not limited to) software is unparalleled save for Google. Innovation, iteration, or popularization are all different matters.
"And that cuts to heart of why developers and anyone with an interest in the using the web of the future today has long since lost faith in Internet Explorer: The competition continues to deliver improvements at a pace that far outstrips Internet Explorer."
The competitor's products are better, but they were waaay better before IE8 even existed. After IE9, assumedly, they'll still be better, but by far less a distance. Google is really the only company in the world that can rival Microsoft's speed in development (when it sets its mind to it). Honestly, here's what I think happened: Microsoft missed the internet-apps thing. They sort of grew, and Microsoft didn't notice for a while. Then they exploded and Microsoft was caught off-guard with a browser the developers didn't like, and a business strategy that was out-dated. But being Microsoft, and they're not dumb guys, they started improving their browser and began to write some neat cloud software (Web Office, anyone?).
You'll notice this thinking in what they concentrate on: To Microsoft, web apps are where it's at, and javascript speed is important! It makes things run better. But if you look to web standards, you'll see Microsoft talk about "real world cases", or however they put it. They don't care about 100% compliance, they don't have time. They're playing catch-up, and are focusing on the areas that will make the most difference first. It's sort of like Startup 101. My belief is that they'll continue to improve the standards, but will devote, say, %20 of their efforts to it, until their javascript engine and css rendering layout engine is humming in tune with V8 and Sunspider.
Maybe afterwards they'll decide to go with full-standards compliance, one would have to look at the development cost vs. the predicted returns, but it wouldn't be a terrible idea, really, to woo developers over from other platforms: "Yeah, our performance is the same, and we're at 100%. You can develop for us and on us with no problems, assuming the competitors follow the standards like us".
But that's probably wishful thinking.
1) I did say 'savvy'. Sort of because I don't get to use that word enough, but also because it is possible to abuse operator overloading. String concatenation with the addition operator isn't going to suprise anyone, even if you come from another language (well, it might, but the choice of the + operator isn't an unintuitive one). Furthermore, nobody's jumping at things with well-defined operators, like vectors/matrices, etc. I've written very little outside of a maths library that used operator overloading, but it's a godsend for the cases where it's appropriate... probably a truism.
Secondly, they're just functions. You can look them up (y'know, assuming you can), you can optimise them, and you can document them. A programmer encountering an operator doesn't have to rely on their interpretation alone, and indeed shouldn't. They should know what that operator does. Now of course, if the operator has absolutely no contextual reason for existing, or is suprising divergent from its apparent purpose... well, see point 1.
As for your example, how do you do a greater-than-or-equal comparison on strings? :D
I feel as if string and map simply could have been part of the standard library. My solution to the this for prism was to have a section of the standard library (which doesn't exist yet) marked as "integral", to effectively have an implicit "import string, map from std.__integral__" at the top of every translation unit.
The absence of overloading operators seems to contradict their claims of improving the visual "flow" and feel of programming. There are cases where savvy operator overloading works wonders: vectors/matrices/quaternions, strings, complex numbers, etc. To be able to write my_string + my_other_string is far more elegant than strcat(my_string, my_otherstring). Consider what happens when you have four of five strings you'd like to concatenate!
The choice of CSP reflects Google's mentality: Their problems lend themselves very well to CSP. Other domains (in my opinion) work better with a STM model. But that's clearly a design choice, and I think it's fine!
I'm actually happy! It means my stupid little language has some validity :P
For those who wish to deride it: http://code.google.com/p/prism/