I would suggest that if you need to search every instance of the variable `i`, your loop is too large and needs to be refactored. Variables like this should only be used in a highly restricted scope that fits on your screen in 36-point font. If the scope is any larger, you need to search, and at that point, you have bugs.
> I think Knuth (in his famous "... root of all evil" quote) was referring specifically to programming, and to spending time on optimizations prior to functional completion.
What he said is, quote, "... we should forget about the small efficiencies, say, about 97% of the time" and "we should not pass up our opportunities in that critical 3%."
What he was talking about in the article[1] is the tendency of programmers to concern themselves with the efficiency of things like the modulo operator, when much larger efficiencies are far more important, such as the design of the algorithm or data structures.
Premature optimization, as when deciding that this small efficiency is important enough to optimize, causes you to forget about the larger efficiencies that cause your program to be slow.
They're just variants on the IFF theme.[1] All of these files are broken into chucks with a FourCC header (sometimes with letters alternately upper or lower case, depending on features and version) that includes a chunk length and occasionally a checksum. It's a very simple and flexible format that almost no one since the '90s seems to use any more for new file formats, the only exceptions being the likes of PNG, MPEG, and a couple other things.
There's a lot I'm not explaining, in part because I don't (yet) understand crypto well enough to know if my idea even makes sense, let alone is feasible.
Matrix is close, but not what I'm describing. It's far more centralized than I'd like to see.
Not exactly. I rather dislike XMPP's design, and what I'd like to see is something not only decentralized (relying at most on a DHT seed), but supporting group chats with trivially-expirable keys. My limited exposure to OTR suggests it only reliably supports one-on-one exchanges.
I've been bouncing around the idea of a fully decentralized end-to-end encrypted chat protocol for exactly this reason, but I've been afraid to work on it for precisely the reason this thread is being discussed. I know that if my name were attached to the project, I'd be facing all kinds of unwelcome scrutiny from the government and news agencies. I'd lose the very privacy I want to maintain by designing privacy-protecting software.
I think it's fair to say that LoC is perhaps the least relevant metric it is possible to imagine.
Languages differ in expressive power in ways that effectively mean that 200kLoC in one language is trivial to implement in a few thousand lines in another. Even within one language, two implementations of the same effective feature can be devised with similarly large differences in line count, if one prioritizes brevity over efficiency.
A simple criterion like this would be laughably useless and abused to absurd degrees.
You realize your microwave operates at over 1100 watts in a small enclosure designed to reflect RF, while 5G currently maxes out at 1100 watts in an open space that dissipates the energy in all directions, right?
You also realize that a microwave is designed to use a frequency band that sympathetically excites hydrogen atoms, while 5G is a collection of technologies that use UHF, high microwave, and submillimeter bands that do not sympathetically excite hydrogen, right?
Speaking for myself, this is partly why I want to contribute to the kernel.
I tend not to take my own mistakes very seriously unless they come with serious consequences. Having someone I respect tear into me would, I think, force me to take greater care and apply more attention to my work than I already do.
I've heard similar anecdotes from people who have contributed. I even recall a female contributor say something positive about it.
Actual protocols include tcp, udp, dccp, sctp, etc.