Skip to main content
18 events
when toggle format what by license comment
Dec 2, 2013 at 12:10 review Suggested edits
Dec 2, 2013 at 12:38
Dec 14, 2012 at 1:40 comment added Evan Plaice Most media lockers (ex iTunes) exploit this fact to create artificial lock-in. They allow data in, but modify it (ex change file names) so it can't be easily extracted. In addition, most meta-data is stored in a platform-specific database format so it's only portable to the same/similar platform.
Sep 27, 2012 at 14:43 comment added Mike Sherrill 'Cat Recall' @AdrianRatnapala: Data structures as the public interface, plus data hiding (physical data independence), roughly equals the relational model of data. Its principles apply equally to GIT design and to database design.
Sep 27, 2012 at 0:04 history made wiki Post Made Community Wiki by Daniel Shawcross Wilkerson
Sep 25, 2012 at 15:20 comment added Adrian Ratnapala @ruakh: A comment like Torvalds' could have referred only to the internal maintainence of GiT, but in this case, Linus actually sees the data structures as a kind of public interface. That goes against the religion of "data hiding"; but behind it lies a deeper truth: you should expose the simplest, most stable interfaces possible. Linus claims that for GiT, that is the on-disk representation, rather than any function-call API. (The git commands themselves are an API for scripts).
Sep 24, 2012 at 14:00 comment added Chii I have to say though, that the line between datastructure and code isn't all that clear. To code up a good data structure, you often must have good code in the first place! After all, data structure is really just more code (albeit more modular ,and perhaps reusable)
Sep 23, 2012 at 23:13 comment added Carl I'd also like to add that bad data structures usually cause bad code, because over time, all that remains is the question "why was it designed this way?" and tacked on top of it are several half hearted attempts to fix the design. These attempts are also usually aborted out of fear because the "fix" inevitably comes down to "breaking" the way it currently works.
Sep 23, 2012 at 18:47 comment added azernik Which makes this kind of a single-developer version of Fred Brooks: "Show me your flowcharts and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won’t usually need your flowcharts; they’ll be obvious."
Sep 23, 2012 at 17:08 comment added Guillermo If I am not wrong, the first versions of git where doing the sha of the content, while the newer (+2 years probably) do with the content and headers. This is a data structure change, tha broke the first versions of git.
Sep 23, 2012 at 8:37 comment added Giorgio "Worry about the data structures first, and your code will naturally be cleaner.": The Roman statesman Cato (en.wikipedia.org/wiki/Cato_the_Elder) used to say "Rem tene, verba sequentur" = "Have the argument clear in your mind, the words will follow naturally". Same thing with programming: understand the data structures and design first, the actual code will follow by itself.
Sep 4, 2012 at 19:25 review Suggested edits
Sep 4, 2012 at 19:27
Aug 31, 2012 at 20:16 comment added riwalk +1. This answer puts context on a statement that could otherwise be construed to mean something very different. Anyone who has read a 5000 line monstrosity of a file knows exactly what I mean.
Aug 31, 2012 at 19:09 comment added ruakh @James: He's saying that the software is better (hence easier to use, and used by more people) because the data structures are better. Of course you don't need to know about the data structures of software you use, but you do care about them, indirectly, even if you don't realize it, because the data structures are what drive the things that you do realize you care about.
Aug 31, 2012 at 19:07 comment added Karl Bielefeldt He's talking from the point of view of programmers making changes to git itself. The end user point of view is completely orthogonal to this discussion, other than easily maintainable code making for fewer bugs and faster feature additions.
Aug 31, 2012 at 18:58 comment added James I shouldn't need to care or know about what data structures Git uses underneath really. How is he measuring success here; by how many people use Git and find it easy to use, or by how many contribute code to it?
Aug 31, 2012 at 18:38 comment added Conrad Frix the best code can't make up for poor data structures good gravy is that true
Aug 31, 2012 at 18:34 history edited Karl Bielefeldt CC BY-SA 3.0
fix typo
Aug 31, 2012 at 18:28 history answered Karl Bielefeldt CC BY-SA 3.0