General statistics
List of Youtube channels
Youtube commenter search
Distinguished comments
About
Lawrence D’Oliveiro
Computerphile
comments
Comments by "Lawrence D’Oliveiro" (@lawrencedoliveiro9104) on "Computerphile" channel.
Previous
3
Next
...
All
On the other hand, why is it that “professional” news networks have such long latency in live connections with reporters in the field, particularly across countries? The anchor says something, the correspondent nods silently for a two or three seconds, then they start speaking. That’s not common with videoconferencing, is it?
6
5:37 Assuming the increment of i lies at the bottom of that squiggle somewhere ... otherwise you’ve just written an endless loop.
6
I think the BSDs are held back by their licensing. This allows proprietary companies to come along and take from them without giving back, and this stunts the growth of the ecosystem. Businesses may not like the sharealike requirement of the GPL, but at least it enforces something closer to a level playing field, and a competitive, thriving marketplace.
6
7:29 I had a lecturer at Uni who also had that “NMI” as his middle initial. Of course, in computing, “NMI” more commonly stands for “Non-Maskable Interrupt”.
6
OK, here’s a fun thought: how would you generalize this idea to a base other than 2? For example, base-26, using the letters of the (uppercase, unaccented) English alphabet? The obvious answer is to do arithmetic modulo 26, assigning numerical values like A = 0 ... Z = 25. The symmetry of xor would no longer apply, so you would need separate encryption and decryption blocks: the encryption blocks would use addition in place of xor, while the decryption ones would subtract.
5
Was this the early days of cheap knockoff PostScript clones?
5
2:55 Nobody seems to understand how to use the Motorola 68k DBcc instructions: they terminate when the count register reaches -1 rather than 0, and everyone thinks this as a misfeature that you have to work around. But it’s a feature! Here’s how you use it: move.w count, d0 bra loop.end loop: ... body of loop ... loop_end: dbra d0, loop You see how that works? You load the exact count into the D-register, not the count - 1 as people often do. And if the count is initially zero, the dbra simply falls through without executing the loop at all! And you get this behaviour without the need for a separate test for the count being equal to 0. DBcc only directly handles a 16-bit count. But it is easy to implement a 32-bit loop count using two DBcc instructions together with a SWAP.
5
@timothycurnock9162 How does the key know the difference between a “hack” and a “legitimate decrypt”?
5
The per-process virtual address space was only 16 bits.
5
“#include” is such a crude mechanism. Why isn’t Ada-style separation of module interfaces and module bodies more popular? Or look at Python’s module system. The nice thing about both is that they don’t pollute the global namespace without you asking them to.
5
For me, the moment was seeing “n = n + 1” for the first time.
5
But in C you are not allowed to put a “;” after “}” to close a block. But you are required to put one after “}” to terminate a struct definition. Not confusing?
5
Maybe that’s an argument for using names rather than numbers.
5
@menachemsalomon I don’t understand the point of that. It’s just a recipe for needless obfuscation -- and trouble, as you discovered.
5
8:11 A blank line at that point would have helped. Just sayin’.
5
Added complication: those channels overlap. For example, with the original 802.11b on 2.4GHz, there are supposed to be 11 channels, but in fact there is only room for 3 entirely separate channels -- 1, 6 and 11. So all the others overlap one of these (and each other) to quite a large extent.
5
Von Neumann understood this perfectly well. The only ones who have forgotten tend to use languages like Java or C#. Oh, and PHP.
5
4:23 “Kids can understand it” ... while I was doing my MSc degree, I volunteered to help out with informal computer classes for disabled kids at a nearby boys’ high school. Most of the other tutors were seniors from the school, supposedly intimately familiar with the school’s Apple II machines, which were what we were using. But they had only programmed in BASIC. It turned out they also had LOGO boot disks, which the boys had never used. I started up one, and gave a quick intro to the joys of list processing, doing quick-and-dirty word-for-word language translation from English to French with just a few lines of code. They were quite impressed, and agreed that the same sort of thing would be very hard to do in BASIC. And yes, LOGO was designed by Seymour Papert to be easy for kids to understand. And he has done and published the research with actual kids to prove it.
5
3:41 Why did you need to pass the string source of the function? You could have passed the function itself. That’s perfectly valid Python.
5
@profdaveb6384 Just don’t go taking part in any duels until then. ;)
5
It’s actually a “directed acyclic graph”. A commit can have a single parent, multiple parents (merge commit) or even no parents at all (like the first commit in a repo). Trivia question: can there be more than one commit in a repo with no parents?
5
9:56 The trouble is that you end up stretching your definition of “ain’t broken”. Turns out it crashes if you press two keys in the wrong order? Well, you learn never to do that. Entering records with a certain value in a certain field will corrupt the database? Never enter that kind of data. So your entire business process becomes convoluted to avoid all the sharp edges. There’s a hidden cost to that, but you never even think of how that might compare to the not-so-hidden cost of replacing the system with a better one.
5
Aren’t there double-microphone designs, where the forward one directly picks up the speaker’s voice, while the one behind picks up the room reverb so it can be subtracted out? I recall Apple had something like this in its “PlainTalk” microphones from the early/mid 1990s. What has happened since then?
5
Around about 1990, back when hard drives were a lot smaller and people still used floppies a lot, JPEG was an absolute revelation. The idea that you could take a photorealistic image and reduce the file size by a factor of 10 with no perceptible difference in image quality was stunning.
5
6:17 What’s missing is called “dynamic range”. Also note it’s not about large versus small numbers, but large versus small magnitudes of numbers. Remember that negative numbers are smaller than positives ones (and zero).
5
@sundhaug92 Probably deleted by YouTube’s anti-spam bot. You can never be sure what it will take exception to. One time I couldn’t even post a link to another YouTube video.
5
@NoNameAtAll2 Sounds like you have made up a circular definition to try to support your point. Otherwise, tell me where in the HTML spec it defines what “simplest” means.
5
Apropos a comment made by an ancient computer scientist about a different language, but perhaps applicable here: “it’s the language of the future, and always will be”.
5
You can do it in colour, too.
4
The paradox of cache-heavy modern architectures: RAM may be cheap, but accessing RAM is expensive.
4
The collision between “Plan To Throw One Away” and “Second-System Effect” was particularly amusing ...
4
14:03 The ’286 was never (“nominally” or otherwise) a 32-bit chip.
4
@timothycurnock9162 How does the key know who it has been given to?
4
Social science is considered a “soft” science. That’s a physicist/mathematician’s way of saying “not a real science”. Remember, this is not just any o ld “project management” -- this is about the management of software-development projects. If you don’t understand what’s so special about that, you need to read Brooks’ book.
4
Paging was a tricky thing. When we first installed MACSYMA on our VAX-11/780, it behaved very badly. Then our sysadmin edited the .EXE file, changing the page fault cluster size from its default of 16 down to 1, and that improved things a lot.
4
If you’ve read anything by Douglas Hofstadter -- particularly his classic Gödel, Escher, Bach: An Eternal Golden Braid -- that law of his starts to make more sense.
4
“Multi computer” would imply entirely separate physical boxes connected by cables. These might be regular LAN interconnects, but custom high-speed ones are also used (e.g. Fibre Channel, I think). One also talks about “tightly coupled” versus “loosely coupled” multiprocessor machines. Typically “loosely coupled” ones don’t share RAM, so they communicate by sending messages over communication channels of some sort. “Tightly coupled” ones share (almost) their entire RAM space, so they can communicate just by reading and writing shared memory. A small step back from full tight coupling would be NUMA (“Non-Uniform Memory Access”), where each processor has some local memory, and can also access memory belonging to other processors, but the latter accesses are slower. So this logically appears just like tight coupling, and is almost as easy to program.
4
4:09 Python enforces indentation, too. But it allows you to use either tabs or spaces, just so long as you are consistent. Forcing you to use only tabs is a step backwards, in my view.
4
@CTimmerman Who might be running GUI frontends. Or they might not.
4
You know that modern browsers compile it to machine code, right?
4
IBM’s excuse for EBCDIC was that ASCII was almost, but not quite ready for prime-time in 1964.
4
That’s how interrupts are handled in CPUs anyway.
4
Those IBM mainframes seemed to have amazingly primitive filesystems. Even our little DEC PDP-11s had files that you could grow just by writing to them.
4
@LiamMayfair Modern operating systems don’t tie themselves to a particular GUI layer. Microsoft and Apple do, but Linux doesn’t.
4
There might be one in this box. Or there might not. You can’t tell until you open it.
4
Anybody who was around in the 1980s might remember Judge Greene’s “Modified Final Judgement” on the breakup of AT&T, the old US phone-company monopoly. Just to say, if lawyers and judges can do it, why shouldn’t software developers do it too?
4
@djp_video I have never heard of these sorts of problems from any other user of Git. It has a reputation for rock-solidity. Remember how it became popular: it did not have the backing of any big company, no management mandating its use, only a small cadre of smart open-source developers who used it to gain a quantum leap in productivity. No slick, multi-million-dollar advertising campaign: only the first-hand testimony of real users. And its adoption grew from there. But this is all beside the point. If it pains you so much, why do you insist on using it? Maybe you would be better off with something like Microsoft Team Foundation Server. Then at least you can blame Microsoft for your problems.
4
Mel seemed to manage it OK.
4
2:47 The important point is that the same inputs always produce the same outputs.
4
0:07 You mean “off by 2” if you said “a year early” instead of “a year late”!
4
Previous
3
Next
...
All