"Your home is your safe haven"
Pshaww! It's my castle, and nothing less.
I will not have you denigrating the sanctity of my ancestral demesne, replacing it with the fig leaf of this "Safe Haven", as you call it.
(Gaston, fetchez la vache)
2662 publicly visible posts • joined 8 Nov 2007
What big content want is end-to-end control of the entire distribution channel. This includes them having the ability to run arbitrary code on your machines. No doubt they will also continue lobbying until they get the next piece of the puzzle: namely, being able to bring you to court if you try to circumvent these "protections" on devices that you and you alone own.
Notwithstanding the fact that I'm sure that these "protections" will be easily defeated by simply lying to the EME code (supplying them with fixed DNS, time and random number generator) and replaying a valid authorisation exchange, nobody wants the kind of DRM that lets big media run whatever sort of code they want on their own machines. The only way that this scheme will not be easily defeated by an emulation-based environment is if the DRM hooks invasively into your OS. Remember the Sony rootkit fiasco? Well, maybe they said sorry, not our fault, but in their heart of hearts, this sort of invasive spyware is exactly the sort of thing that big media execs have wet dreams over.
Shame on Tim Berners-Lee.
Dr. Fred Cohen talked about this way back at the start of the history of computer viruses. Simply put, if the virus writer has access to the scanner, they can detect it and abort doing something that will identify its presence. You still see that in modern malware, such as when it detects that it is running under a VM (common practice when trying to analyse the buggers), it will do something different than it normally would.
Putting a Post-It labelled "AI" on the black box that does the scanning does not change the fundamental nature of the setup. So long as the virus/malware (or its author) has access to the box, it can use it as an oracle and keep trying different behaviours until it finds something that isn't detected.
What's the UK got to do with anything? You do know that places like Tipperary and Limerick aren't in the UK, right?
Anyway, the law in the Republic of Ireland is that you can use "reasonable force":
http://www.thejournal.ie/new-law-not-a-licence-to-kill-says-minister-327010-Jan2012/
Funnily enough, I came across this recently:
http://www.slashfilm.com/which-actor-dies-the-most-on-screen/
So John Hurt (who already played the Doctor, natch) has more on-screen deaths, but fewer deaths per appearance.
Of course, what with John Hurt having shuffled off his mortal coil IRL recently, ...
I thought of shredders, but I assume that it means that these mean issues that are common across a variety of different industries. Obviously analysts and their ilk have a penchant for making up new words when we already have perfectly sensible other ways of saying the same thing ("cross-industry" in this case).
AFAIK, pretty much all video codecs assume that the video to be compressed is 2D and intermediate frames only take account of the difference between one frame and the next. Both are reasonable simplifications if you want something that's fast to encode or decode, but they mean that a lot of exploitable structure is ignored. Another feature common to most codecs is that self-similarity within a frame is mostly ignored, with most focus being put on motion estimation as a way to compress inter-frame differences in common cases (eg, panning, moving objects within the frame).
If you think about algorithms that can turn images (or objects in them) into 3D approximations, this is a lot easier to do if you have a video camera attached to a vehicle (or carried) than if you present the algorithm with an unordered collection of stills of the same target from different vantage points. It's easier to reason about the relative motion of the camera between frames. It's going to be more smooth, and looking at a sequence of images it's going to be easier to divide up areas between static (modified only by relative viewpoint) and transient (moving objects passing through the frame).
If the cost of encoding isn't so much of a problem, you could apply interferometric analysis to a sequence of images. For the relatively fixed objects, you could build up a 3d approximation of those objects and generate a pixmap to skin them. Taking a sequence of images like this might also help to sharpen the image, hence cutting down on the amount of noise, leading to better compression. You can't sharpen single images, but you can with multi-sampling over time or slightly different viewpoints. To make interferometry work, you'd have to be able to adapt to things like focus and motion blur, detecting it on the way in (and tagging affected regions per frame) and adding it on the way out.
Videos also have various spatial self-similarities, besides the time-based ones. The most easily-exploitable option for compression is to assume that self-similar blocks will be neighbouring each other, and that's now most codecs work (mostly through compressing the palette across neighbouring blocks, AFAIK). If the codec tried representing areas as simple 3d meshes with pixmaps, then it could maintain a cache of these over an extended period. An algorithm would explicitly compress these mesh+pixmap objects based on their self-similarity. If a transient object moves across a surface, it wouldn't necessarily mean that the data about what's currently invisible due to the occlusion gets kicked out of the cache, meaning that once the transient object has passed, it should be cheap for the decoder to repair the "damage". Likewise with things like fast cuts, where the data for one bunch of frames can be re-used when the camera comes back to them a few seconds later rather than starting with a new key frame each time.
If encoding cost is no object, then you can try to reverse engineer lighting information from the original stream. When the contribution from lighting is removed from each area, you can compress the forest of mesh+pixmap cache objects much more efficiently. Or, you can use it to refine your idea of what a surface is by tesselating its original mesh and throwing out a lot of the pixmap data (which takes up a lot of space relative to a mesh + lighting model).
Going from (effectively) a simple block-based compressor to one with meshes, textures and lighting does, of course, make things a lot more costly for the decoder. Still, if there aren't too many light sources or reflectance, I could imagine a next-gen GPU managing to handle this. (Too much reflected light turns it into a generic ray tracer, which has very poor locality of memory references)
This sort of thing could handle fairly static objects, but there's also the problem of how to compress deformable objects like faces or the silhouettes of transient objects that aren't spatially modelled. Probably some completely different approach is warranted there.
This all sounds pretty pie in the sky, but getting an extra 30%-50% out of existing approaches probably won't be easy, IMO.
Just adding an observation: git allows for shallow clones with 'git clone --depth 1'
For big projects, this won't have the same level of bandwidth saving as a custom lazy file system (as here) but it can still have huge savings over doing a full clone of a repo with a long history.
Why should it be turtles all the way down? Presumably the GVFS code isn't large enough or have enough developers to warrant being self-hosted.
Even if it was self-hosted, there's nothing stopping you from making a full clone onto a non-GVFS disk. That's probably what people who have to work away from the office have to do anyway. I think that someone else made a comment about having a single point of failure, but realistically speaking you will have one or more backup clones. The cost of keeping them up to date (on non-virtualised storage) will be trivial. All this does is cut down the overheads for a horde of developers who would regularly clone full repos and not do much work on them.
re the title: no it doesn't
I clone various Linux kernel trees quite regularly. It can be a bit of a pain over slow links, but once I have the clone, I can pull updates with minimal hassle.
MS isn't "bastardising" git, either. Neither is it forcing a centralised model on developers. It's using lazy fetches to minimise the amount of downloads that individual devs need to make before they can start bashing on the code. Granted, if they want to actually *compile*, they'll need to do more fetches, but not, one would assume, the full repo + history. Anyway, a few things:
* The basic copy-on-write semantics are still there (developer's local edits are still local until pushed back and they still have to be merged back in in exactly the same way as before)
* Nobody is forcing anyone to use this file system, since they can still use regular clone to a local, non-virtual disk
* This is probably aimed at intranet deployment, where it should definitely help reduce unnecessary traffic (though I guess if it's well-designed, with well-thought out security, you could also use it on the wider net)
It's a file system, not a fundamental change to git itself, hence it's not enforcing a centralised development model, nor proving that git is fundamentally flawed.
Initial big/little implementations basically hid the fact that there were 8 ARM cores running at the high (application) level, but later iterations let you use all cores at full tilt if you wanted, leaving the pairing of big/little cores (and transparent migration of processes between them) as more of a secondary option.
So that's how big/little seems to have panned out in practical terms in a purely ARM system.
The article suggests that somehow there can be transparent migration of workloads from high-draw Intel cores to low-draw ARM cores. This between systems that don't share an ABI or machine code or whatever. So how is that supposed to work? Some sort of qemu-like emulation of the workload? Even if it's only doing the translation once, I can't see how emulation is going to be power-efficient enough to warrant sticking in a new CPU.
I guess the other option is that there is no migration and that the hardware uses all native big/little ARM code. Sounds a bit like winmodems, and I don't mean that in a good way.
Indeed. I saw a report on that on NHK World last night. They also had a segment on building a space elevator, with a Japanese company planning to use carbon nanotube cables to get up there by 2050.
I found their web site and it mentions:
The current technology levels are not yet sufficient to realize the concept, but our plan is realistic, and is a stepping stone toward the construction of the space elevator.
Are carbon nanotubes strong enough for this to even work, assuming it's possible to make a 96,000-km cable?
#1 Zappa's Valley Girl
"You know me, I'm like into like the clean stuff. Like PAC-MAN and like, I don't know?"
#2 Marcus Bridgstocke's (him an his misplaced 'e') Fringe-worthy joke:
“If Pac-Man had affected us as kids, we'd all be running around in dark rooms, munching pills and listening to repetitive electronic music.”
> A "guernsey" is the knitted garment you might wear playing football
Hmm. That's news to me. A "geansaí" (pronounced ganzi) in Irish is a sweater/jumper/pullover/shirt (sport). I'm not sure of the etymology but it looks more like it got borrowed into English than the other way around. At least it seems like a native Irish word to me.
systemd
v228
Waiting until something (eg, some initialisation) is finished is trivial:
1. Make a named pipe (done once)
2. Thing waiting on the dependency reads from the pipe and hence blocks
3. Thing providing the dependency writes "success" to the pipe when it's finished
4. init script wrapper sends "fail" to the pipe after a programmable timeout
5. Thing waiting on the pipe looks for "success" (in which case it stops the timeout program and continues as normal) or "fail[ure]" and does error logging
You could do this dependency stuff in any number of ways, but this is doable in a script that you put into /etc/init.d and requires no more than mkfifo, read, echo, sleep and kill commands.
Speaking of 3rd clocks (for avoiding indeterminacy when both of your clocks are telling different time) and assuming you're referencing the 3rd man:
http://www.imdb.com/title/tt0041959/faq#.2.1.4
TL;DR: no, the Swiss didn't invent cuckoo clocks
(Galileo, Galileo, Bee-el-zi-bug's got a daemon set aside for me)
It's like Time Magazine elected 4chan as pesron of the yare or something.
All military operations in urban terrain from here on? It's pronounced CYBA!
(the piano^Hclavier has been drinking ... not me)
They don't, but any useful measure of mass has to ignore (or decouple) mass due to acceleration. Since photons travel at the speed of light, they either have infinite energy or zero rest mass. The second option is the only one that makes sense. That's because it takes infinite energy to accelerate a massive object to c, even if the mass is tiny, since a fraction of infinity is still infinity.
You forget two things
Except that if you use a Unicode character in SMS, then the entire text gets promoted to UTF-16. Or at least that's the way it was the last time I looked into it. So the 5 characters you "save" are wiped out by the 144/2 characters you lose thanks to the 2-byte encoding.
Anyway, if you want to send a clear, unambiguous message then text is the way to go.