Programming

Ask Slashdot: Best Way to Learn C# For Game Programming? 254

An anonymous reader writes So I, like many people, want to make my own game. Outside of MATLAB, Visual Basic, and LabVIEW I have no real programming experience. I initially started with Ruby, but after doing my homework decided that if I ever wanted to progress to a game that required some power, I would basically need to learn some form of C anyway. Further digging has led me to C#. The other parts of game design and theory I have covered: I have ~8 years of CAD modeling experience including Maya and Blender; I have a semiprofessional sound studio, an idie album on iTunes, and am adept at creating sound effects/music in a wide variety of programs; I'm familiar with the setbacks and frustration involved with game development — I beta tested DotA for 9ish years; I already have my game idea down on paper (RTS), including growth tables, unit types, unit states, story-lines, etc. I've been planning this out for a year or two; I will be doing this on my own time, by myself, and am prepared for it to take a couple years to finish. The reason for listing that stuff out, is that I want people to understand that I know what I'm getting myself in to, and I'm not trying to put out a not-so-subtle "help me make a game for free lol" type of post. With all of that said, where is a good place to start (i.e., recommended books) for learning C# for game programming? I am familiar with object oriented programming, so that's a little bit of help. I'm not necessarily looking for the syntax (that part is just memorization), but more for the methodology involved. If anyone also has any suggestions for other books or information that deal with game development, I would love to hear that too. I know enough to understand that I really don't know anything, but have a good foundation to build on.
Programming

Overeager Compilers Can Open Security Holes In Your Code 199

jfruh writes: "Creators of compilers are in an arms race to improve performance. But according to a presentation at this week's annual USENIX conference, those performance boosts can undermine your code's security. For instance, a compiler might find a subroutine that checks a huge bound of memory beyond what's allocated to the program, decide it's an error, and eliminate it from the compiled machine code — even though it's a necessary defense against buffer overflow attacks."
Education

Girls Take All In $50 Million Google Learn-to-Code Initiative 548

theodp writes: On Thursday, Google announced a $50 million initiative to inspire girls to code called Made with Code. As part of the initiative, Google said it will also be "rewarding teachers who support girls who take CS courses on Codecademy or Khan Academy." The rewards are similar to earlier coding and STEM programs run by Code.org and Google that offered lower funding or no funding at all to teachers if participation by female students was deemed unacceptable to the sponsoring organizations. The announcement is all the more intriguing in light of a Google job posting seeking a K-12 Computer Science Education Outreach Program Manager to "work closely with external leaders and company executives to influence activities that drive toward collaborative efforts to achieve major 'moonshots' in education on a global scale." Perhaps towards that end, Google recently hired the Executive Director of the Computer Science Teachers Association (CSTA), who was coincidentally also a Code.org Advisory Board member. And Code.org — itself a Made With Code grantee — recently managed to lure away the ACM's Director of Public Policy to be its COO. So, are these kinds of private-public K-12 CS education initiatives (and associated NSF studies) a good idea? Some of the nation's leading CS educators sure seem to think so (video).
The Media

After 47 Years, Computerworld Ceases Print Publication 105

harrymcc (1641347) writes "In June 1967, a weekly newspaper called Computerworld launched. Almost exactly 47 years later, it's calling it quits in print form to focus on its website and other digital editions. The move isn't the least bit surprising, but it's also the end of an era--and I can' t think of any computing publication which had a longer run. Over at Technologizer, I shared some thoughts on what Computerworld meant to the world, to its publisher, IDG, and to me."
Google

Intel Adds SIMD Vectorization to JavaScript 1

Engineers at Intel have been working to modify the open source JavaScript engines used by Chrome and Firefox to support SIMD vectorization -- which will bring JavaScript one step closer to supporting near-native applications. Jeff Cogswell takes a look at some of the sample code and see if he can figure out what they’re doing. One particularly interesting aspect about this code is that it was written in part by a guy who works at Google and is active in Google’s Dart language. Dart was created to be a replacement to JavaScript as a browser language, but there has been some resistance.
Graphics

Adobe To Let Third Party Devs Incorporate Photoshop Features 39

angry tapir (1463043) writes Third party developers will be able to build mobile applications that tap into the features of Adobe's Creative Cloud, including effects such as Photoshop's "content-aware fill" and PSD file manipulation, thanks to a new SDK the company is releasing as part of a major update to the suite of graphic design products. However, the company has been mum on important details such as how much (if anything) it will cost and what the license is likely to be (at the very least it seems end users will need to be Creative Cloud subscribers). The company has also made a foray into hardware releasing a pressure-sensitive stylus for tablets called Ink and a ruler called Slide.
Security

Code Spaces Hosting Shutting Down After Attacker Deletes All Data 387

An anonymous reader writes Code Spaces [a code hosting service] has been under DDOS attacks since the beginning of the week, but a few hours ago, the attacker managed to delete all their hosted customer data and most of the backups. They have announced that they are shutting down business. From the announcement: An unauthorized person who at this point who is still unknown (All we can say is that we have no reason to think its anyone who is or was employed with Code Spaces) had gained access to our Amazon EC2 control panel and had left a number of messages for us to contact them using a Hotmail address. Reaching out to the address started a chain of events that revolved around the person trying to extort a large fee in order to resolve the DDOS.

At this point we took action to take control back of our panel by changing passwords, however the intruder had prepared for this and had already created a number of backup logins to the panel and upon seeing us make the attempted recovery of the account he proceeded to randomly delete artifacts from the panel.
Android

Android Needs a Simulator, Not an Emulator 167

An anonymous reader writes Jake Wharton, Android Engineer at Square, has written an article about one of the big problems with building apps for Android: developers need a simulator for testing their software, rather than an emulator. He provides an interesting, technical explanation of the difference between them, and why the status quo is not working. Here are the basics of his article: "A simulator is a shim that sits between the Android operating system runtime and the computer's running operating system. It bridges the two into a single unit which behaves closely to how a real device or full emulator would at a fraction of the overhead. The most well known simulator to any Android developer is probably (and ironically) the one that iOS developers use from Apple. The iPhone and iPad simulators allow quick, easy, and lightweight execution of in-development apps. ... There always will be a need for a proper emulator for acceptance testing your application in an environment that behaves exactly like a device. For day-to-day development this is simply not needed. Developer productivity will rise dramatically and the simplicity through which testing can now be done will encourage their use and with any luck improve overall app quality. Android actually already has two simulators which are each powerful in different ways, but nowhere near powerful enough."
Internet Explorer

Microsoft Releases Early IE12 Preview As Part of Its New Developer Channel 105

DroidJason1 (3589319) writes "Microsoft is looking to create a more open dialog between the Internet Explorer team and the Web development community by announcing Internet Explorer Developer Channel. IE Dev Channel allows you to preview the next version of Internet Explorer (IE12) alongside and independently of IE11. Web developers can download and test drive the latest IE platform features, something developers were already able to do with Firefox and Chrome. This preview release even offers support of the emerging Gamepad API, allowing you to use your Xbox controller to play games in IE!"
Education

Average HS Student Given Little Chance of AP CS Success 293

theodp (442580) writes AP Computer Science is taught in just 10% of our high schools," lamented The White House last December as President Obama kicked off CSEdWeek. "China teaches all of its students one year of computer science." And the U.S. Dept. of Education has made the AP CS exam its Poster Child for inequity in education (citing a viral-but-misinterpreted study). But ignored in all the hand-wringing over low AP CS enrollment is one huge barrier to the goal of AP-CS-for-all: College Board materials indicate that the average 11th grader's combined PSAT/NMSQT score of 96 in reading and math gives him/her only a 20%-30% probability of getting a score of '3' on the AP CS exam (a score '4' or '5' may be required for college credit). The College Board suggests schools tap a pool of students with a "60-100% likelihood of scoring 3 or higher", so it's probably no surprise that CS teachers are advised to turn to the College Board's AP Potential tool to identify students who are likely to succeed (sample Student Detail for an "average" kid) and send their parents recruitment letters — Georgia Tech even offers some gender-specific examples — to help fill class rosters.
Programming

Ask Slashdot: Best Rapid Development Language To Learn Today? 466

An anonymous reader writes "Many years ago, I was a coder—but I went through my computer science major when they were being taught in Lisp and C. These days I work in other areas, but often need to code up quick data processing solutions or interstitial applications. Doing this in C now feels archaic and overly difficult and text-based. Most of the time I now end up doing things in either Unix shell scripting (bash and grep/sed/awk/bc/etc.) or PHP. But these are showing significant age as well. I'm no longer the young hotshot that I once was—I don't think that I could pick up an entire language in a couple of hours with just a cursory reference work—yet I see lots of languages out there now that are much more popular and claim to offer various and sundry benefits I'm not looking to start a new career as a programmer—I already have a career—but I'd like to update my applied coding skills to take advantage of the best that software development now has to offer. (More, below.)
Businesses

Netflix Shutters Its Public API 59

esarjeant (100503) writes "I guess it shouldn't come as a total surprise, but Netflix has gone from not issuing new developer keys to announcing the entire [public API] program will be shut down. It's a real shame they are going to be taking this offline; it spurred quite a bit of innovation for the Netflix service. For major sites that have already gone live it sounds like Netflix will let them keep going, but if you're looking to build the next FeedFliks, then you better look elsewhere."
Programming

545-Person Programming War Declares a Winner 57

An anonymous reader writes: A while back we discussed Code Combat, a multiplayer game that lets players program their way to victory. They recently launched a tournament called Greed, where coders had to write algorithms for competitively collecting coins. 545 programmers participated, submitting over 126,000 lines of code, which resulted in 390 billion statements being executed on a 673-core supercomputer. The winner, going by the name of "Wizard Dude," won 363 matches, tied 14, and lost none! He explains his strategy: "My coin-collecting algorithm uses a novel forces-based mechanism to control movement. Each coin on the map applies an attractive force on collectors (peasants/peons) proportional to its value over distance squared. Allied collectors and the arena edges apply a repulsive force, pushing other collectors away. The sum of these forces produces a vector indicating the direction in which the collector should move this turn. The result is that: 1) collectors naturally move towards clusters of coins that give the greatest overall payoff, 2) collectors spread out evenly to cover territory. Additionally, the value of each coin is scaled depending on its distance from the nearest enemy collector, weighting in favor of coins with an almost even distance. This encourages collectors not to chase lost coins, but to deprive the enemy of contested coins first and leave safer coins for later."
AI

The Profoundly Weird, Gender-Specific Roots of the Turing Test 136

malachiorion writes: Alan Turing never wrote about the Turing Test, that legendary measure of machine intelligence that researchers claimed to have passed last weekend. He proposed something much stranger — a contest between men and machines, to see who was better at pretending to be a woman. The details of the Imitation Game aren't secret, or even hard to find, and yet no one seems to reference it. This article explains why they should — in part because it's so odd, but also because it might be a better test for 'machines that think' than the chatbot-infested, seemingly useless Turing Test.
Programming

Google Engineer: We Need More Web Programming Languages 309

itwbennett (1594911) writes Web applications may one day surpass desktop applications in function and usability — if developers have more programming languages to choose from, according to a Google engineer. 'The Web is always available, except when it is not,' said Gilad Bracha, software engineer at Google and one of the authors of Google Dart, speaking to an audience of programmers Wednesday at the QCon developer conference in New York. 'It isn't always available in a way that you can always rely on it. You may have a network that is slow or flaky or someone may want to charge you.' Therefore any Web programming language, and its associated ecosystem, must have some way of storing a program for offline use, Bracha said. The Web programming language of the future must also make it easier for the programmer to build and test applications.
Software

Docker 1.0 Released 88

Graculus writes: "Docker, the company that sponsors the Docker.org open source project, is gaining allies in making its commercially supported Linux container format a de facto standard. Linux containers are a way of packaging up applications and related software for movement over the network or Internet. Once at their destination, they launch in a standard way and enable multiple containers to run under a single host operating system. 15 months and 8,741 commits after the earliest version was made public, Docker 1.0 has been released."
AI

Turing Test Passed 432

schwit1 (797399) writes "Eugene Goostman, a computer program pretending to be a young Ukrainian boy, successfully duped enough humans to pass the iconic test. The Turing Test which requires that computers are indistinguishable from humans — is considered a landmark in the development of artificial intelligence, but academics have warned that the technology could be used for cybercrime. Computing pioneer Alan Turing said that a computer could be understood to be thinking if it passed the test, which requires that a computer dupes 30 per cent of human interrogators in five-minute text conversations."
Education

Parents Mobilize Against States' Student Data Mining 139

theodp writes 'Politico reports that parents have mobilized into an unexpected political force to fight the data mining of their children, catapulting student privacy to prominence in statehouses. Having already torpedoed the $100 million, Bill Gates-funded inBloom database project, which could have made it easier for schools to share confidential student records with private companies, the amateur activists are now rallying against another perceived threat: huge state databases being built to track children for more than two decades, from as early as infancy through the start of their careers. "The Education Department," writes Stephanie Simon, "lists hundreds of questions that it urges states to answer about each child in the public school system: Did she make friends easily as a toddler? Was he disciplined for fighting as a teen? Did he take geometry? Does she suffer from mental illness? Did he go to college? Did he graduate? How much does he earn?" Leonie Haimson, a NY mother who is organizing a national Parent Coalition for Student Privacy says, "Every parent I've talked to has been horrified. We just don't want our kids tracked from cradle to grave." For their part, ed tech entrepreneurs and school reformers are both bewildered by and anxious about the backlash — and struggling to craft a response, having assumed parents would support their vision: to mine vast quantities of data for insights into what's working, and what's not, for individual students and for the education system as a whole. "People took for granted that parents would understand [the benefits], that it was self-evident," said Michael Horn, a co-founder an education think tank."
Intel

Intel Confronts a Big Mobile Challenge: Native Compatibility 230

smaxp writes: "Intel has solved the problem of ARM-native incompatibility. But will developers bite? App developers now frequently bypass Android's Dalvik VM for some parts of their apps in favor of the faster native C language. According to Intel, two thirds of the top 2,000 apps in the Google Play Store use natively compiled C code, the same language in which Android, the Dalvik VM, and the Android libraries are mostly written.

The natively compiled apps run faster and more efficiently, but at the cost of compatibility. The compiled code is targeted to a particular processor core's instruction set. In the Android universe, this instruction set is almost always the ARM instruction set. This is a compatibility problem for Intel because its Atom mobile processors use its X86 instruction set."
XBox (Games)

Microsoft Confirms Disconnecting Kinect Gives Devs 10% More GPU Horsepower 174

MojoKid (1002251) writes 'Microsoft confirmed a development rumor that's been swirling around its next-generation console ever since it announced Kinect would become an optional add-on rather than a mandatory boat anchor. Lifting that requirement will give game developers 10 percent additional graphics power to play with and help close the gap between the Xbox One and PS4. The story kicked off when Xbox head Phil Spencer tweeted that June's Xbox One dev kit gave devs access to more GPU bandwidth. Further, another Microsoft representative then confirmed that the performance improvement coming in the next version of the Xbox SDK was the result of making Kinect an optional accessory. No matter how Microsoft may try to spin it, cancelling Kinect isn't just a matter of giving game developers freedom, it's a tacit admission that game developers have no significant projects in play that are expected to meaningfully tap Kinect to deliver a great game experience — and they need those GPU cycles back.' Also on the Xbox capabilities front: Reader BogenDorpher (2008682) writes 'In August of last year, a Microsoft spokesman confirmed that the Xbox One controller will be compatible for PC users sometime in 2014. That time has finally come. Windows gamers can now use the Xbox One controller to play games on their computer. If a game supports a USB gamepad or the Xbox 360 controller, it will also support the Xbox One controller.'

Slashdot Top Deals