Math

Visualizing Algorithms 50

An anonymous reader writes "Many people reading this site probably have a functional understanding of how algorithms work. But whether you know algorithms down to highly mathematical abstractions or simple as a fuzzy series of steps that transform input into output, it can be helpful to visualize what's going on under the hood. That's what Mike Bostock has done in a new article. He walks through algorithms for sampling, shuffling, and maze generation, using beautiful and fascinating visualizations to show how each algorithm works and how it differs from other options.

He says, "I find watching algorithms endlessly fascinating, even mesmerizing. Particularly so when randomness is involved. ... Being able to see what your code is doing can boost productivity. Visualization does not supplant the need for tests, but tests are useful primarily for detecting failure and not explaining it. Visualization can also discover unexpected behavior in your implementation, even when the output looks correct. ...Even if you just want to learn for yourself, visualization can be a great way to gain deep understanding. Teaching is one of the most effective ways of learning, and implementing a visualization is like teaching yourself."
Programming

Building the Infinite Digital Universe of No Man's Sky 100

An anonymous reader writes: Hello Games is a small development studio, only employing 10 people. But they're building a game, No Man's Sky, that's enormous — effectively infinite. Its universe is procedurally generated, from the star systems down to individual species of plant and animal life. The engine running the game is impressively optimized. A planet's characteristics are not computed ahead of time — terrain and lifeforms are randomly generated on the fly as a player explores it. But, of course, that created a problem for the developers — how do they know their procedural generation algorithms don't create ridiculous life forms or geological formations? They solved that by writing AI bot software that explores the universe and captures brief videos, which are then converted to GIF format and posted on a feed the developers can review. The article goes into a bit more detail on how the procedural generation works, and how such a small studio can build such a big game.
Bug

Why Software Builds Fail 279

itwbennett writes: A group of researchers from Google, the Hong Kong University of Science and Technology and the University of Nebraska undertook a study of over 26 million builds by 18,000 Google engineers from November 2012 through July 2013 to better understand what causes software builds to fail and, by extension, to improve developer productivity. And, while Google isn't representative of every developer everywhere, there are a few findings that stand out: Build frequency and developer (in)experience don't affect failure rates, most build errors are dependency-related, and C++ generates more build errors than Java (but they're easier to fix).
Android

Google I/O 2014 Begins [updated] 49

Google I/O, the company's annual developer tracking^wdevelopers conference, has opened today in San Francisco. This year the company has reduced the number of conference sessions to 80, but also promised a broader approach than in previous years -- in other words, there may be a shift in focus a bit from Google's best known platforms (Chrome/Chrome OS and Android). Given its wide-ranging acquisitions and projects (like the recent purchase of Nest, which itself promptly bought Dropcam, the ever smarter fleet of self-driving cars, the growing number of Glass devices in the wild, and the announcement of a 3D scanning high end tablet quite unlike the Nexus line of tablets and phones), there's no shortage of edges to focus on. Judging from the booths set up in advance of the opening (like one with a sign announcing "The Physical Web," expect some of the stuff that gets lumped into "the Internet of Things." Watch this space -- updates will appear below -- for notes from the opening keynote, or follow along yourself with the live stream, and add your own commentary in the comments. In the days to come, watch for some video highlights of projects on display at I/O, too. Update: 06/25 17:41 GMT by T : Updates rolling in below on Android, wearables, Android in cars, Chromecast, smart watches, etc.Keep checking back! (Every few minutes, I get another chunk in there.)
Google

Nest Announces New Smart Home API 38

mpicpp writes "Today, in advance of Google I/O, Nest has officially announced a new developer program and API that will allow other companies' smart devices to communicate with Nest's Protect smoke alarm and Learning Thermostat. Among the companies that Nest is partnering with for this initial publicity push are IFTTT, Jawbone, LIFX, Logitech, Mercedes-Benz, Whirlpool, Chamberlain, and Google itself—the latter two companies will release Nest-compatible features this fall, while the others are all available today.
Input Devices

Programming On a Piano Keyboard 57

An anonymous reader writes: Here's a fun project: engineer Yuriy Guts built a Visual Studio extension that lets people program using MIDI instruments. You can write code letter by letter on a piano keyboard. Granted, it's not terribly efficient, but it's at least artistic — you can compose music that is also a valid computer program. Somewhat more usefully, it also allows you to turn a simple MIDI input device, like a trigger pad into a set of buttons that will run tests, push/pull code, or other tasks suitable for automation. The extension is open source and open to contributions.
Mozilla

Mozilla Introduces Browser-Based WebIDE 132

mpicpp (3454017) writes with word that Mozilla released a full development environment integrated into Firefox (available now in nightly builds). From the announcement: Developers tell us that they are not sure how to start app development on the Web, with so many different tools and templates that they need to download from a variety of different sources. We’re solving that problem with WebIDE, built directly into Firefox. Instead of starting from zero we provide you with a functioning blueprint app with the click of a button. You then have all the tools you need to start creating your own app based on a solid foundation. WebIDE helps you create, edit, and test a new Web application right from your browser. It lets you install and test apps on Firefox OS devices and simulators and integrates the Firefox Developer Tools for seamless debugging and inspection across those devices. This is a first step towards debugging across various platforms and devices over WiFi using open remote debugging APIs. The default editor is based on CodeMirror, but the protocol for interacting with the IDE is open and support for other editors (Emacs anyone?) should appear soon.
Oracle

Oracle Buying Micros Systems For $5.3 Billion 71

An anonymous reader writes Oracle is buying hospitality and retail technology vendor Micros Systems for $5.3 billion, in a deal that will be its largest since the purchase of Sun Microsystems in 2010. "Oracle said the acquisition will extend its offerings by combining Micros' industry-specific applications with its business applications, technologies and cloud portfolio. Oracle expects the deal to immediately add to its adjusted earnings. Its stock climbed 18 cents to $41 before the market opened. Micros' board unanimously approved the transaction, which is expected to close in the second half of the year."
Programming

Computational Thinking: AP Computer Science Vs AP Statistics? 155

theodp writes: "What if learning to code weren't actually the most important thing?" asks Mother Jones' Tasneem Raja. "Rather than increasing the number of kids who can crank out thousands of lines of JavaScript, we first need to boost the number who understand what code can do." Computational thinking, Raja explains, is what really matters. So, while Google is spending another $50 million (on top of an earlier $40 million) and pulling out all the stops in an effort to convince girls that code and AP Computer Science is a big deal, could AP Statistics actually be a better way to teach computational thinking to college credit-seeking high school students? Not only did AP Statistics enrollment surge as AP CS flat-lined, it was embraced equally by girls and boys. Statistics also offers plenty of coding opportunities to boot. And it teaches one how to correctly analyze AP CS enrollment data!
Technology

Age Discrimination In the Tech Industry 370

Presto Vivace writes: Fortune has an article about increasingly overt age discrimination in the tech industry. Quoting: "It's a widely accepted reality within the technology industry that youth rules. But at least part of the extreme age imbalance can be traced back to advertisements for open positions that government regulators say may illegally discriminate against older applicants. Many tech companies post openings exclusively for new or recent college graduates, a pool of candidates that is overwhelmingly in its early twenties. ... 'In our view, it's illegal,' Raymond Peeler, senior attorney advisor at the Equal Employment Opportunity Commission, the federal agency that enforces workplace discrimination laws said about the use of 'new grad' and 'recent grad' in job notices. 'We think it deters older applicants from applying.'" Am I the only one who thinks many of the quality control issues and failed projects in the tech industry can be attributed to age discrimination?
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!"

Slashdot Top Deals