- Low-Power Deep Learning — it’s a media release for proprietary tech, but interesting that people are working on low-power deep learning neural nets. As Pete Warden noted, this kind of research will be at the center of smart sensors. (via Pete Warden)
- Tesla’s Self-Improving Autopilot — it learns when you “rescue” (aka take control back from autopilot), so it’s getting better day by day. Musk said that Model S owners could add ~1 million miles of new data every day, which is helping the company create “high-precision maps.” Navteq, Google Maps, Waze … new map data is still valuable.
- The Digital Revolution in Higher Education Has Already Happened (Clay Shirky) — and no-one noticed. I read half of this before going “holy crap this is good, who wrote it?” I’m a Shirky junkie (I bet his laundry lists cite Habermas and the Peace of Westphalia). At the current rate of growth, half the country’s undergraduates will have at least one online class on their transcripts by the end of the decade. This is the new normal. But, As long as we discuss online education as a pedagogic revolution rather than an organizational one, we aren’t even having the right kind of conversation. The dramatic adoption of online education is not mainly a change in the content of classes. It’s a change in the institutional form of college, a demand for more flexibility by students who have to manage the increasingly complicated triangle of work, family, and school.
- System Automatically Converts 2-D to 3-D (MIT) — hilarious strategy! They constrained their domain: broadcast soccer games. The MIT and QCRI researchers essentially ran this process in reverse. They set the very realistic Microsoft soccer game “FIFA13” to play over and over again, and used Microsoft’s video-game analysis tool PIX to continuously store screen shots of the action. For each screen shot, they also extracted the corresponding 3-D map. […] For every frame of 2-D video of an actual soccer game, the system looks for the 10 or so screen shots in the database that best correspond to it. Then it decomposes all those images, looking for the best matches between smaller regions of the video feed and smaller regions of the screen shots. Once it’s found those matches, it superimposes the depth information from the screen shots on the corresponding sections of the video feed. Finally, it stitches the pieces back together. Brute-forcing soccer. Ok, perhaps “hilarious” for a certain type of person. I am that person.
Get fine-grained control over your design with an SVG 2 property implemented by many browsers.
SVG rendering uses a painter’s model to describe how graphics are rendered to the screen. Like layers of paint on a wall, content on top obscures content below. The SVG specifications define which content gets painted over which other content. The different parts of each shape — the stroke, fill, and markers — each create layers of paint. Those shapes are then layered one on top of the other, in the order they are defined in the document.
Two new properties introduced by the SVG 2 specification,
paint-order, allow you to change up the rendering rules.
Most web designers will be familiar with
z-index, which has been supported in CSS layout for years. Unfortunately, it is not yet supported in any major web browser for SVG content. At present, the only solution is to arrange your markup (or the DOM created by scripts) so that elements are listed in the order you want them to be painted.
In contrast, the
paint-order property has already been implemented in a number of web browsers. If you’re willing to make adjustments in your design according to browser support level, you can use the fine-tuned control in the latest browsers and replace it with a simpler effect in others. If you need the same appearance in all browsers, however, you can create something that looks like paint order control with SVG 1.1 code. This post describes why
paint-order is useful, how to use it in the latest browsers, and how to fake it in the others.
Learn how to add this popular visual effect to your iOS project.
Up until the mid 1990s, the pinnacle of video game graphics was parallax scrolling: the use of multiple scrolling backgrounds, which created a sense of depth and perspective in the game. When you’re being a 2D game in Sprite Kit, you can create this effect by creating multiple sprites, and managing their position over time.
In this example, we’re creating a scene where there are four components, listed in order of proximity:
- A dirt path
- Some nearby hills
- Some further distant hills
- The sky
You can see the final scene below:
Plugin-free vector graphics are now easier than ever before
Thirteen years ago, in 2001, the World Wide Web Consortium (W3C) finalized the specification for Scalable Vector Graphics, version 1.0. A few months later, in early 2002, O’Reilly published the original SVG Essentials, describing both the basics and the wonderful potential of SVG. An open standard for vector graphics, with support for scripting and animation, was an area of boundless possibility.
From some perspectives, not much has changed. The official SVG specification is still at version 1.1, which was released in 2003 and edited in 2011. Neither update introduced new features to SVG, instead focusing on improving clarity and consistency in the details.
In practice, however, SVG has changed considerably. There are numerous tools for creating SVG, both full-featured graphics programs and online widgets. Most importantly, nearly every web browser out there treats SVG as a first-class citizen (some outdated mobile and Internet Explorer versions being exceptions), displaying SVG as an interactive part of your document with no need for plug-ins.