Slashdot Mirror


User: r

r's activity in the archive.

Stories
0
Comments
113
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 113

  1. Re:Woo on Tech Jobs Projected to Double by 2010 · · Score: 2, Interesting
    Then the average computer tech will be an AI psychiatrist of a sort!

    well, we've already got paranoid AIs. and AI psychiatrists.

    :)

  2. game subscription on Games on Demand · · Score: 1

    this reminds me of a prior attempt by the real networks to provide a game subscription service named RealOneArcade. i don't think the service became all that popular, though - unfortunately, it seems they didn't offer much aside from arcade and puzzle games, and there's only so much demand for those.

    but in general, the subscription model can be amazingly profitable. even if games-on-demand bring only a fraction of the incredible revenue from on-line games, it's still a lot of money. not to mention they do a good deed of breathing new life into old games. :)

  3. streaming game assets from cd on The Future of PC Games, According to Microsoft · · Score: 1

    ... longhorn will give users the ability to play games directly from the cd, without installation. Which is great in theory, but what does that mean? Either your loading the whole game into RAM, *shudder* or it will include a program to automatically install when you run the game...

    no, it wouldn't have to be either.

    consider consoles. a game like GTA3 uses a ton of assets (animations, graphics, scenery descriptors, etc.) that can't all fit into RAM at the same time. the common solution is to do clever streaming - i.e. you devote a fraction of the CPU cycles to just keep loading and unloading data from the CD all the time.

    this requires cleverness and is a huge pain in the neck, because in order to prevent the 'stutter' as data gets loaded from the disk, the whole process has to be predictive - at any point in time you need to be able to predict what data is going to be needed, say, 10 seconds from now, so that you can begin loading them now in a background process, and unload them as soon as they're done with.

    ugh. streaming assets during gameplay is a huge pain, but it's doable - console games do it all the time. it would be very nice indeed if the next generation of directx came with tools to simplify it...

  4. Re:Not much of a guide required on Some Geek Guides for Dating · · Score: 1

    Sure, you'll find gays that are interested in computers enough for a job, but they don't really live the "geek lifestyle" per-se - they go out clubbing and socializing.

    actually, this hits on an interesting note. the gay and geek cultures have such contradictory notions of what's cool, that one has almost no choice but to stay in the closet either as a geek or a gay man. i mean, really, regular gays don't know what to do with geeks just as much as regular geeks don't know what to do with gays! :)

    btw, i bet there's a ton of geeks out there, just most of them geek out about some branch of humanities or the arts, rather than technology. techies are not all that common.

    I mean let's face it, a geek will be on the Internet - so either there's a whole hell of a lot of closted gay geeks, or there just aren't many of them...

    hehe, there are a whole lot of closeted gay geeks out there. and understandably so, there's no reason to be out if all you're going to get is idiotic responses like the ones we've seen even in this thread. no wonder people keep quiet or post anonymously all the time.

    but the fundamental lesson of coming out still applies. life becomes much easier if you don't go through it censoring yourself from speaking the truth.

  5. What is .NET? on Microsoft Drops .NET Name For Next Windows Server · · Score: 5, Interesting
    i've been able to find at least three distinct meanings of the .NET tag:
    1. in the web development circles, it's used for next-generation tools and services for writing web applications. for example, ASP.NET, SOAP RPC, and various other web- and XML-based services

    2. in the web customer services domain, it was going to be a secure roaming account scheme, a.k.a. the Passport .NET

    3. most interestingly, in the windows application development domain, .NET is also used to describe the .NET Framework, a new set of libraries that's meant to slowly replace the standard Win32/64 libraries (see articles at ars technica for really detailed info). the framework is basically a cleaned-up, garbage-collected, language-agnostic version of Win32. it's great. but hardly anyone thinks about it when they hear .NET-this or .NET-that. :)

    in any case, the semantic shift of the label .NET has surely caused MS much grief. it's about time they cleaned it up.
  6. Re:When video games induce violence on GTA and Rating of Video Games · · Score: 2

    Actually, sir, you're agreeing with him.

    Indeed, that's exactly what my first sentence says - I like what you're saying, but I have a problem with this particular statement. It's not that video games "do NOT cause violence" - rather, they don't in the vast majority of cases, and that's a subtle but important distinction.

  7. When video games induce violence on GTA and Rating of Video Games · · Score: 2
    Playing violent video games does NOT cause violence. In fact, most people who play violent video games do not commit violent acts. The same goes for violent movies and tv shows.

    Though I sympatize with your overall point, that statement is not true. But we have to be careful with details here.

    I've reviewed much of the psychological literature on violent effects of video games, and attended discussion on the topic at the Videogames and Cultural Policy Conference.

    What we know thus far about the effect of games can be summarized as follows:
    1. Violent games can be shown to induce violent tendencies is some children who are already suggestible to these kinds of messages. This is not any different from the effect violent movies have on them.

    2. Children who are not predisposed in this manner (i.e. the vast majority) do not appear to exhibit long-term violent tendencies due to video games. However, they may exhibit short-term violent tendencies due to the novel stimulus (e.g. showing off that new karate kick at the playground).

    3. Data about anything else is inconclusive; there is a ton of methodical problems with existing studies. It's just too difficult to construct the experiment in such a way that the experimentor's bias doesn't show through - i.e. it's all too easy to get the kids accidentally 'primed' to exhibit increased violence.

    And that's what the data shows. With some luck, we will have more information within the next 5 years or so.
  8. 802.11g on 802.11g Hardware Arrives · · Score: 5, Informative

    btw, for those who haven't heard of 802.11g - it's a new standard for higher-speed transmission in the same 2.4GHz band. it promises 20+ Mbps (maybe even up to ~54Mbps), in contrast to the 11 Mbps of 802.11b.

    it's interesting, though, that the standard is still in the draft stage, scheduled for ratification in mid-2003, and hardware manufacturers are already rolling out implementations. not surprising, given market conditions, but let's hope that any changes will be minor, and fixable in firmware. :)

    see the P802.11 status report at IEEE for more details...

  9. Re:I had a choice... on MS .net vs Mono, Open Source · · Score: 2

    Sleeping would have been more intellectually stimulating than reading this nonsense. I'll remember that next year.

    amen, brother. the amount of noise on this site has become mind boggling. thought-out messages don't get posted here very often anymore.

    there are days when i'm tempted to just change my password to some random string, and log off forever. and yet i don't, though i'm not sure why. maybe it's nostalgia. :)

  10. keep in mind you're helping them with their job... on HOWTO Go About Marketing to Developers? · · Score: 2

    IMVHO, if you're marketing to developers, i'd suggest approaching it with a B2B service mindset. in the eyes of your customers, you're there to help them make their job easier - and like a consultant, you should emphasize how your product can let them be successful in their job. which makes for peculiar constraints.

    - their business depends on the performance of your product. the more they know about it, and the more familiar they are with it, the more likely they will be to evaluate it fairly. also, trust is worth its weight in gold. :)

    - developers are likely to do a thorough comparison of your product with your competition. make sure to provide enough data points to convince then that your product is the best fit for their needs.

    - developers like to try before they buy, especially with something as idiosyncratically personal as development tools. give opportunity to test the product's performance in a real-world situation. (vmware's excellent 30-day license comes to mind).

    - pamper your developers. do all the things you (as a developer) like in a piece of infrastructure, and that rarely appear in low-quality (or open source) products. easy to use tools, clean and powerful APIs, great debugging and tuning facilities, extensive documentation with examples all go a long way towards convincing somebody to pay extra for a particular product.

    as i'm sure you recognize, customer relations are extremely important to anyone in a b2b situation. microsoft is especially good at this, and worth studying in great detail. they pamper but also respect their developers, teach them how to use their system, and go to great lengths to show them how they can make their lives easier by using their products. because in the end, your customers will look to you as someone who makes it possible for them to do their job. and that's the basis of a good business relationship.

  11. Also see MixMeister / GRAM on Digital DJ Turntable · · Score: 3, Informative

    While on the topic of digital DJ'ing - if you're looking for software, check out MixMeister. It's one of the most interesting DJ software titles around, with great waveform and BPM manipulations tools (ie. changing speed without changing pitch), and smart automatic beat matching.

    I understand the free GDAM has similar abilities, but I haven't used it. Any comments from those who have would be appreciated!

  12. Re:Low-resolution thread concurrency? on Virtual Machine Design and Implementation in C/C++ · · Score: 3, Informative

    Are there any VMs currently, for Java, Python or some other language, that can execute each thread one VM instruction at a time?

    if you have a language that optimizes tail-calls, you could have the front-end of the language convert the separate threads of execution into continuation-passing style, and then execute the code one continuation at a time, simulating threading on a VM level. if i remember correctly, the scheme48 VM could do that kind of threading, though on a coarse level.

    in CPS a function decomposes into a sequence of more primitive functions, each returning a continuation, ie. a handler for computation yet to come. for a simplified example, the evaluation of (+ (* 2 3) (* 4 5)) would evaluate (* 2 3) into 6 and return a continuation that evaluates (+ 6 (* 4 5)), which in turn would evaluate (* 4 5) into 20 and return a continuation that evaluates (+ 6 20), and that would finally evaluate to 26.

    but the point here is that one could explicitly halt the evaluation after receiving the first continuation, store it on the queue, and go off and compute something else. after a while you can come back, pop the continuation off the queue, and pick up the computation where you left off.

    the problem with such a setup is that it makes optimization difficult. i'd suggest looking at the CPS for more details...

  13. Re:.net is not a virtual machine on Virtual Machine Design and Implementation in C/C++ · · Score: 2

    This is nonsense. Of course CLR uses a VM. Do you think GC just "happens"? What about multicasting delegates? What do you think actually DOES the JITting? The VM. If you are not familiar with VMs please take a look at Mono for a concrete implementation of a CLR VM.

    garbage collection doesn't require a virtual machine, and neither do delegates, since they're merely function closures. and btw, by your JITting example, any compiler would be a 'virtual machine'. :)

    nice attempt at a troll, though.

  14. .net is not a virtual machine on Virtual Machine Design and Implementation in C/C++ · · Score: 3, Insightful

    one thing to remember is that the microsoft .net infrastructure does not run on a virtual machine!

    .net code (c#, etc.) compiles down to a standard intermediate language, which gets JITted into machine code, and linked to .net support libraries. there is no interpreted code execution going on, and indeed, the IR is not optimized for interpreted execution. hence, there's no virtual machine running, unlike in the case of Java or other bytecode interpreters.

    .net is not a virtual machine any more than gcc is a virtual machine.

  15. Re:Classes and APIs more important than language on What is .NET? · · Score: 2

    Scheme, being self-extensible, would make for a much more robust base upon which to construct a language-neutral runtime than the C# and VB-oriented CLR.

    actually, some of the features of CLR are there specifically to make the implementation of scheme, lisp, and other functional languages much easier. the main example is tail recursion. (ie. the idea that you can speed things up immensely if you don't need to allocate new stack frames for function calls, just reuse the one already on top). scheme, which requires tail recursion support by R5RS, was a complete hog when compiled down to java, because the java VM would insist on doing tail-recursive functions the naive way. but the CLR has tail-call function support built in - so you can write your recursive loops and other such, and they'll run as fast as regular iteration (not to mention they'll be much cleaner). this makes writing a scheme-to-CLR compiler downright pleasant in comparison to scheme-to-Java compilation. :)

    CLI actually goes to great lengths to remain language-agnostic, while providing lots of useful features, like GC, code security, or strong typing across languages. it seriously looks like it could be the One Runtime to bind all languages. which would be perfect, actually - we could write all of our code quickly and cleanly in our superior language, and only use other peoples' libraries for the boring parts such as sockets or XML parsing. :)

  16. Re:Chinese Rooms and Software Guys on Arguing A.I. · · Score: 2

    It's always seemed funny to me how the technologists take this field, which is tied irrevocably to philosophy, and ignore everything the philosophers say about it. For example, has there ever been a good refutation of Searle's Chinese Room argument?

    oh no, there's quite a bit of foundational inquiry going on in the field. but there is also a growing awareness that the analytic tools we've inherited from our logicist and mathematician forefathers are really rather inadequate in reasoning about human behavior.

    intelligence, as it turns out, isn't really very amenable to analysis from the traditional analytic stance. this is where the many paradoxes of logical representation come into play (the frame problem, the symbol grounding problem, searlean chinese room (which is a very subtle process/result argument veiled behind a rather crude part/whole paradox), and so on). these problems often stem directly from the philosophical tools used to talk about intelligence - and most spectacularly, from the analytic assumptions about the mind and the world.

    it turns out to be much easier to analyze intelligent action using an existential stance. there is an increasing push within ai to draw from the hermeneutic analysis of heidegger and merlau-ponty in order to analyze intelligence not in terms of abstract information processing, but in terms of properties of existence in particular contexts. this approach is especially strong in the subfields of computer vision, robotics, and game ai - these are the areas that actually have to deal with humans in human environments, and coping in the everyday world turns out to be surprisingly harder than most abstract cogitation.

    i will not repeat the argumentation here - see: hubert dreyfus, what computers still can't do (a bit dated by today's standards, but begun the critique of the analytic tradition in ai), philip agre, computation and human experience, and brian cantwell smith, on the origin of objects. they're wonderful expositions of where ai is headed philosophically.

    but from this vantage point of view, the problems such as the chinese room argument appear completely defanged - like medieval angels-on-a-pinhead arguments stemming from an ill-suited theory of the world. :)

  17. Re:The classic five-star book on Turing on Looking At Turing · · Score: 2

    interestingly enough, there is also a play and a movie called breaking the code, about the life of alan turing. the author of the book you mention had a hand in its creation.

    the role of turing was played by derek jacobi, famous for his title role in i, claudius. the movie made for the bbc is also available on tape.

  18. remember timex? on Fossil's $145 PDA Watch · · Score: 3

    anyone here remember the timex datalink? the little guy had a motorola 6805 in it, and 48k or so of memory... in other words about as powerful as an 8-bit atari or c64, except the form factor is much more portable. :) but the really interesting feature was the solution they used to download information from the host computer - the sender program flashed info on the screen like a barcode, and the watch synchronised with the monitor's refresh rate and read the barcode with a photocell. that was quite an interesting toy. :)

    but having the pda on the wrist is really convenient. plus, if it has a similar programmable interface as the timex, and can connect to my laptop via infrared, i'll be seriously tempted...

  19. computer games and board games on Creative Games sans Violence? · · Score: 2
    given your constraints i would suggest games that abstract a bit from their domain. take a look especially at strategy and simulation games - since they involve just the right amount of abstract conflict, and also teach how to think and plan for the future.


    some that come to mind immediately:

    • simcity, simearth, simlife, etc. - very intuitive simulations of very complex systems. great fun.
    • civilization - puts you in charge of the conquest of the known world. one of the best games in history. *
    • ms flight simulator - just a relaxing flight sim that takes considerable skill to master. gorgeous graphics.
    • alpha centauri - strategic game of starting a new civilization on a new planet. *

    * for games with an asterisk: i don't know how well those fit your constraints - they involve conflict and abstract warfare, but no violence on individuals.


    while we're at it, i'd also recommend getting some complex board games, since in addition to working on problem solving and thinking, they also require social interaction. some examples that come to mind:

    • settlers of katan - game of building the largest settlement on an empty island. requires a lot of friendly competitive cooperation, highly recommended.
    • history of the world - conquest of the world, again. :) emphasizes long-term planning in face of uncertainty. *
    • diplomacy - different kind of conquest of the world, one that requires an incredible lot of forming alliances, scheming, and planning.

    hope this helps!
  20. Re:Graphics, AI, and the Gaming Industry on Talking 'Bout Game AIs · · Score: 3

    Seems to me that there would be a niche for a company to invest heavily in developing a flexible AI framework to be used in multiple games.

    several independent developers have tried that - and the game ai page has links to pretty much all game ai sdks attempted thus far.

    the problem is that while high-level ai can be pretty general, the low-level ai (pathfinding, collision detection, world physics) is completely tied to the internal representations of the world inside the game engine. it's a similar problem that you have in physics sdks.

    also, given the game development characteristics (18-month dev cycles, ai being one of the last steps in development because it requires a working game engine), it's rare for studios to design a game in such a way that a general solution like an ai sdk could be just 'plugged in' that late in the development cycle. unless the workings of the sdk are well understood, it's easier to just build your own (especially if you're not doing anything complex).

    on the other hand, if a company with a hit game licenses their ai engine to others, that would be a big step in the right direction - the same way that id and epic licensed their graphics engines after the success of quake and unreal. and sure, many studios will write their own anyway, but those who don't want to rewrite a* for the nth time could instead concentrate on writing high-level behaviors. :)

  21. Re:Graphics, AI, and the Gaming Industry on Talking 'Bout Game AIs · · Score: 5

    Academia needs to make it more widely known to the software industry that stuff like this has been available.

    academia has been trying. :)

    there are (at least) two big problems in migration of ideas from research into development.

    1. time scales. as one developer put it, "if i want to use a new AI technique in a game, i have about two weeks to research it, and a month to implement it. any more than that, and i won't be able to justify the time spent on it to my boss."

    this is pretty standard in the industry, btw. otoh, it would take a skilled ai programmer easily more than a month-and-a-half to implement and debug an inference engine in C++. and you can forget about something like writing a compiler for building behavior-based networks - that takes too much time.

    2. different priorities. academic AI traditionally focuses on different things that games. in academia, working systems matter, but they're vehicles for the theories and techniques, which are the real crux of the matter. the programs can be slow, and they can consume vast resources, as long as they provide a novel insight into how human mind or human behavior works.

    games, otoh, run under tight performance constraints (ie. in a 30fps game, even with 10% of cpu available to AI, you have 3.3 milliseconds per frame to do all of your AI, including collision detection and pathfinding!), and its goal is not scientific insight, but believability - the creatures can be dumb as buttons, and they can be directed by simple finite state machines, so long as they look like they're doing something cool.

    with such different goals, it's not clear what can be done to bring the two closer together. for now we can just hope that if more game developers had formal training in AI techniques (as opposed to learning AI by hacking FSMs or NNs or whatever the fad-of-the-day is), and more academics were aware of constraints of the gaming industry, it would foster a better cooperation and exchange of ideas...

    It works well here, but be careful claiming this is anything bigger than excellent game AI using well-known techniques.

    amen to that.

  22. Re:Decision Trees? on Talking 'Bout Game AIs · · Score: 1

    Anyone have any insights into this "decision tree learning" that Evans mentions? It seems to me to be one of those fuzzy terms that could refer to any of a dozen things.

    yeah, i know what you mean. in my area, decision trees usually refer to simple trees of hierarchical dependencies - in order to satisfy the goal represented by the parent node, you have to satisfy the goals of all child nodes, in order. it's a very nice way to represent scripted behaviors (such as how to go about finding food, engaging in combat, etc.).

    i don't know what he means by learning there, but i'd bet i'm not too far off in suspecting the 'learning' part is just tweaking the weights on subgoals, so that the approach you used the most before would be the first one to try next time...

    i personally found that whatever learning technique got used in that game, it has significant problems with reward assignment. for example, i see my creature standing around and growling, and its hunger is about to peak. i feed it something and reward it. the game responds - "from now on, your creature will eat more when it's tired." but no, that's not what i intended! i fed it because it was hungry!

    proper reward assignment is a huge problem in all learning algorithms - which is why it's especially surprising that they would prevent the player from knowing what exactly he's rewarding the creature for...

    Like "perceptrons" -- unless he's actually referring to the algorithm described in Marvin Minsky's book of the same name

    i think he was just refering to neural nets without hidden layers - those were the ones described in the book, and the name stuck, at least in colloquial usage.

    but i don't have any inside knowledge (such a bad pun! :) about the workings of b&w. i could be wrong. :)

  23. Re:I'm a 2600 "hacker" on The Happy, Benign Strivers of 2600 · · Score: 1
    heh. yes, right, 2600 routinely publishes on such matters as how to design your own scripting language, what to consider when building strong crypto into your operating system, or why intel would use a strongly typed lazy functional language to formally verify their chip design.

    and yes, reading academic journals is an acquired skill.

  24. Re:Speaking as a Black Man... on Racism At Microsoft? · · Score: 1

    Let's set the record straight: My racial group does not choose to be less educated...we simply don't always have access to the same resources growing up as whites. That can't possibly be understood by someone who's never attended public school in a major city (I'm from Detroit). I took freshman EECS with 3 hundred white guys that had been taking C classes since the 9th grade, and the only exposure I'd had to any form of high-level programming was self-taught. Poor K-12 education == Poor SAT/ACT != quality higher education. This uneven playing field is the reason for the small numbers of us in the tech industry.

    as a product of the chicago public school system, i definitely know what you mean about not having the same resources as well-off burb kids - all the programming knowledge i had when entering college was self-taught as well, and i never took it for granted. but then you start your freshman year and meet all sorts of upper-middle-class kids who went to really good schools and had taken tons of AP classes, and they don't even realize how much of a better start they have - much less appreciate it.

    but please, don't frame it as 'we don't have the same resources as whites' - i've come from a working-class white background, and it didn't give me any magical bonus points. yes, i had to work like hell to catch up with my peers, and yes, people will disregard you for your clothes or your vocabulary or your accent just as easily (if not easier) as for the color of your skin.

    imvho, the issue here is not just racial. it's socioeconomic.

  25. what about compilers? on The Pentium IV Dissected · · Score: 1

    the article, however biased, brings out an interesting issue - intel is trying to simultaneously improve performance of legacy code, and introduce features that will really boost properly recompiled new code. however, it's not clear that you can kill these two birds with one stone - it really takes a year or two until compilers get updated to support the architectural tweaks.

    which makes one wonder whether the real problem might be not the processors, but the compilers. by that i mean, the traditional c compiler doesn't really have enough information to know when to apply what optimization. consider traditional tight loop over a region of memory - c lets you implement it as a straightforward for loop on array references, an "increment pointer and dereference, until pointer reaches some value" loop, and so on.

    now the problem is, the compiler doesn't have any sort of an idea of what we're trying to do. had it known we're performing bitmap manipulation with multiplication over an integer buffer, it might be able to partially unroll the loop to fill in the pipeline, or automatically insert MMX code when it sees its appropriate - same with the parallel-floating-point-op instruction sets. but since the c compiler doesn't know what data it's moving around, or what the user is really trying to do on a macro level, it doesn't know any better than to produce a pretty much straight translation of the c code.

    this way performance suffers because the compiler isn't smart enough to automatically support the subtle features of those new processors, and that in turn can be traced back to the languages such as c not retaining enough information about what is being computed to support such automatization.

    does this mean we may finally start seeing a move to higher-level languages, when low-level ones fail to compile as optimally as they ought to? i hope so. but considering how much c code there's still floating around out there, i won't hold my breath.