<story><title>Python moved to GitHub</title><url>https://github.com/python/cpython</url></story><parent_chain><item><author>timdorr</author><text>&amp;gt; Show file sizes&lt;p&gt;Those are at the top of the display of file contents. However, they aren&amp;#x27;t in the tree view, as you&amp;#x27;ve stated. Unfortunately, this is hard because I don&amp;#x27;t believe Git stores this info in their index of files, which is what is used to generate the tree view. It might be infeasible to gather that data for the tree view.&lt;p&gt;&amp;gt; Show real dates instead of the vaguely rounded off &amp;quot;how long ago&amp;quot;.&lt;p&gt;If you hover over any relative date, the real date is shown. It&amp;#x27;s on the title attribute for any relative date.&lt;p&gt;&amp;gt; Use a readable font on mobile.&lt;p&gt;The have Consolas and &amp;quot;Liberation Mono&amp;quot; on the font stack, but those probably aren&amp;#x27;t on your phone. They are limited in font selection because they have switched to native fonts. This avoids the download of some giant font file that contains all the possible glyphs (which is needed on a site like GitHub&amp;#x27;s). Unfortunately, the monospace options on mobile are pretty limited: &lt;a href=&quot;http:&amp;#x2F;&amp;#x2F;iosfonts.com&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;http:&amp;#x2F;&amp;#x2F;iosfonts.com&amp;#x2F;&lt;/a&gt;&lt;p&gt;&amp;gt; Show a directory tree on the left.&lt;p&gt;Best tip I can offer is to type `t` to search by file name. Works great and has partial matching support, which makes it really quick to navigate to certain key files.</text></item><item><author>Stratoscope</author><text>&amp;gt; Web source tree browsing that&amp;#x27;s front and center, that&amp;#x27;s relatively decent, with OK search.&lt;p&gt;The source browsing feels barely adequate to me. There are so many simple things they could do to make it better.&lt;p&gt;• Show file sizes. When I&amp;#x27;m exploring a repo I&amp;#x27;m unfamiliar with, one thing that&amp;#x27;s helpful for me is to get a sense of what the code is like. To do this, I want to look at some of the larger files; that&amp;#x27;s where I&amp;#x27;ll probably find the more interesting code. As it is I just click around on random files hoping to find something interesting.&lt;p&gt;• Show real dates instead of the vaguely rounded off &amp;quot;how long ago&amp;quot;. If it says &amp;quot;a month ago&amp;quot;, well, what is it, two weeks or six? And why not show the time? A couple of times I&amp;#x27;ve been looking for a code change and I didn&amp;#x27;t remember what day it was but I did remember it was right before lunch, maybe around 11:30 or so. It feels like their priority is a &amp;quot;clean and simple&amp;quot; display as opposed to a &lt;i&gt;useful and informative&lt;/i&gt; display.&lt;p&gt;• Fix the display for code that indents with tabs. It still defaults to 8 columns, which hardly anyone (with a few notable exceptions) likes. And you, the user, can&amp;#x27;t override this. They did recently start honoring the indent_size setting if you have a .editorconfig file, but that really misses the point. Many of us who use tabs don&amp;#x27;t &lt;i&gt;want&lt;/i&gt; to specify an indent_size. That&amp;#x27;s one of the virtues of tabs: people who read the code can use whatever indentation they prefer. The indent size for tabs should be a user preference setting. As it is, I started adding indent_size=4 to my .editorconfig files just to get a decent looking display on GitHub.&lt;p&gt;• Use a readable font on mobile. Courier, really? And not such low contrast! Everything is hard to read on mobile, and they even disabled pinch-zoom so I can&amp;#x27;t make the text a little bigger.&lt;p&gt;• Show a directory tree on the left. If I&amp;#x27;m exploring a repo, I&amp;#x27;d like to get the big picture of the directory layout, and also have an easy way to click around to look at the various directories. As it is, I have to do a lot of back and forth. Google Code had this from the beginning.&lt;p&gt;Edit: Thank you everyone for the helpful replies! I learned some great tips from you all.</text></item><item><author>payne92</author><text>Part of Github&amp;#x27;s secret sauce:  Web source tree browsing that&amp;#x27;s front and center, that&amp;#x27;s relatively decent, with OK search. (versus making the log&amp;#x2F;history the central part of the Web UI as other tools seem to do)&lt;p&gt;There are SO many times I need a short peek at something, and am glad don&amp;#x27;t have to clone&amp;#x2F;download, etc.</text></item></parent_chain><comment><author>benhoyt</author><text>It&amp;#x27;s pretty cheap to get the file size with decompressing the whole blob. You can decompress just the first hundred of so bytes of the .git blob object, which starts with &amp;quot;blob {size}\x00&amp;quot;. For example, using Python:&lt;p&gt;&lt;pre&gt;&lt;code&gt;   &amp;gt;&amp;gt;&amp;gt; import zlib
   &amp;gt;&amp;gt;&amp;gt; f = open(&amp;#x27;.git&amp;#x2F;objects&amp;#x2F;00&amp;#x2F;331d4c2e12984f70df4a3dd3bc7296825faab0&amp;#x27;, &amp;#x27;rb&amp;#x27;)
   &amp;gt;&amp;gt;&amp;gt; zlib.decompressobj().decompress(f.read(100))
   b&amp;#x27;blob 11708\x00...&amp;#x27;
&lt;/code&gt;&lt;/pre&gt;
So that particular file is 11708 bytes. It still requires an open and read operation. But they could cache that on a per-file or per-tree basis, so it&amp;#x27;s very doable.</text></comment>
<story><title>Python moved to GitHub</title><url>https://github.com/python/cpython</url></story><parent_chain><item><author>timdorr</author><text>&amp;gt; Show file sizes&lt;p&gt;Those are at the top of the display of file contents. However, they aren&amp;#x27;t in the tree view, as you&amp;#x27;ve stated. Unfortunately, this is hard because I don&amp;#x27;t believe Git stores this info in their index of files, which is what is used to generate the tree view. It might be infeasible to gather that data for the tree view.&lt;p&gt;&amp;gt; Show real dates instead of the vaguely rounded off &amp;quot;how long ago&amp;quot;.&lt;p&gt;If you hover over any relative date, the real date is shown. It&amp;#x27;s on the title attribute for any relative date.&lt;p&gt;&amp;gt; Use a readable font on mobile.&lt;p&gt;The have Consolas and &amp;quot;Liberation Mono&amp;quot; on the font stack, but those probably aren&amp;#x27;t on your phone. They are limited in font selection because they have switched to native fonts. This avoids the download of some giant font file that contains all the possible glyphs (which is needed on a site like GitHub&amp;#x27;s). Unfortunately, the monospace options on mobile are pretty limited: &lt;a href=&quot;http:&amp;#x2F;&amp;#x2F;iosfonts.com&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;http:&amp;#x2F;&amp;#x2F;iosfonts.com&amp;#x2F;&lt;/a&gt;&lt;p&gt;&amp;gt; Show a directory tree on the left.&lt;p&gt;Best tip I can offer is to type `t` to search by file name. Works great and has partial matching support, which makes it really quick to navigate to certain key files.</text></item><item><author>Stratoscope</author><text>&amp;gt; Web source tree browsing that&amp;#x27;s front and center, that&amp;#x27;s relatively decent, with OK search.&lt;p&gt;The source browsing feels barely adequate to me. There are so many simple things they could do to make it better.&lt;p&gt;• Show file sizes. When I&amp;#x27;m exploring a repo I&amp;#x27;m unfamiliar with, one thing that&amp;#x27;s helpful for me is to get a sense of what the code is like. To do this, I want to look at some of the larger files; that&amp;#x27;s where I&amp;#x27;ll probably find the more interesting code. As it is I just click around on random files hoping to find something interesting.&lt;p&gt;• Show real dates instead of the vaguely rounded off &amp;quot;how long ago&amp;quot;. If it says &amp;quot;a month ago&amp;quot;, well, what is it, two weeks or six? And why not show the time? A couple of times I&amp;#x27;ve been looking for a code change and I didn&amp;#x27;t remember what day it was but I did remember it was right before lunch, maybe around 11:30 or so. It feels like their priority is a &amp;quot;clean and simple&amp;quot; display as opposed to a &lt;i&gt;useful and informative&lt;/i&gt; display.&lt;p&gt;• Fix the display for code that indents with tabs. It still defaults to 8 columns, which hardly anyone (with a few notable exceptions) likes. And you, the user, can&amp;#x27;t override this. They did recently start honoring the indent_size setting if you have a .editorconfig file, but that really misses the point. Many of us who use tabs don&amp;#x27;t &lt;i&gt;want&lt;/i&gt; to specify an indent_size. That&amp;#x27;s one of the virtues of tabs: people who read the code can use whatever indentation they prefer. The indent size for tabs should be a user preference setting. As it is, I started adding indent_size=4 to my .editorconfig files just to get a decent looking display on GitHub.&lt;p&gt;• Use a readable font on mobile. Courier, really? And not such low contrast! Everything is hard to read on mobile, and they even disabled pinch-zoom so I can&amp;#x27;t make the text a little bigger.&lt;p&gt;• Show a directory tree on the left. If I&amp;#x27;m exploring a repo, I&amp;#x27;d like to get the big picture of the directory layout, and also have an easy way to click around to look at the various directories. As it is, I have to do a lot of back and forth. Google Code had this from the beginning.&lt;p&gt;Edit: Thank you everyone for the helpful replies! I learned some great tips from you all.</text></item><item><author>payne92</author><text>Part of Github&amp;#x27;s secret sauce:  Web source tree browsing that&amp;#x27;s front and center, that&amp;#x27;s relatively decent, with OK search. (versus making the log&amp;#x2F;history the central part of the Web UI as other tools seem to do)&lt;p&gt;There are SO many times I need a short peek at something, and am glad don&amp;#x27;t have to clone&amp;#x2F;download, etc.</text></item></parent_chain><comment><author>tlb</author><text>Size = 0 is a common case, useful to highlight, and (I think) should have a common hash value. __init__.py files are a great place to look if they&amp;#x27;re not empty, but most are.</text></comment>