Ask HN: Is HN having problem keeping up today?
For what it&#x27;s worth, my own desire to see if I can help out <i>somehow</i> has definitely only increased over the past few months as I&#x27;ve noticed the messages at the tops of threads about pagination. I don&#x27;t have any particular skills that would make me a hand-in-glove fit (eg, I&#x27;d need to learn Arc...), but surely there are tons of little boring things I could usefully do that would take the heat off. If I&#x27;m thinking this way, surely there are (many?) others...?<p>For example, something tiny that I&#x27;d love to fix is to split vote() in half and move the UI update logic into an Image.onload handler, so that the UI only changes if the upvote absolutely committed. I&#x27;m OCD about this because I actually use voting as bookmarking, and recently realized that some unknown percentage of my upvotes&#x2F;bookmarks have sadly been lost because the auth= value had expired (eg in the case of a weeks-old tab) or because I was on bad 4G on my phone, but the UI state has no bearing on the network response.<p>Something else that I&#x27;d be very happy to put effort into, after being told how to approach the problem :), would be to make the site screen-reader-accessible: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=G1r55efei5c&amp;t=386s" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=G1r55efei5c&amp;t=386s</a> (size-XL volume warning - unfortunately the speaker volume is like 5% of the screen reader volume).<p>A longer-term project that I also think would also be very useful would be to implement OAuth2, so that users would be able to safely attach external logins to their accounts without needing to supply their actual user passwords (which thankfully none of the alternate UIs have tried to do AFAIK). This could support fine-grained scopes like &quot;can see own comment votes&quot;, &quot;can vote&quot;, &quot;can post replies&quot;, etc. IMHO the best way to do this would be to have a central pool of manually-approved app registrations; this is definitely the most complicated approach :&#x2F;, but it means the entire system would depend on a human who could go &quot;...that OAuth2 app in particular is behaving weird. <i>[pause]</i>&quot; which would be very tricky to achieve with an autonomous system (where everyone independently creates their own tokens that have no semantic value). This sort of thing utterly fails at large scale (see also: Google, YouTube, etc), but I think it would be perfect for HN. While implementing this it would also make sense to support 2FA using TOTP.<p>A while back I read that one of the reasons the site was closed was to keep the voting logic private. The chances are there are probably a bunch of other things (like maybe the spam detection&#x2F;handling systems, and maybe the moderation tools) would be similarly classified as (for want of a better word) &quot;sensitive&quot;. Well... it could be very, very interesting to split the codebase in half, with all the sensitive stuff in one corner, and the remainder of the codebase capable of running locally without it. Maybe you&#x27;ve already considered this, and consider it nonviable :(<p>(NB. The reason for the Rube Goldberg OAuth2 architecture I suggested was precisely to make it that much harder for people to register throwaway&#x2F;bot accounts etc, keeping in mind the voting logic thing. Couldn&#x27;t figure out how to reword the above two paragraphs to resolve the info dependency :) so put this here instead. lol)<p>IIUC, there are a very small pool of enthusiasts around the K programming language (<a href="https:&#x2F;&#x2F;kx.com" rel="nofollow">https:&#x2F;&#x2F;kx.com</a>) that privately study the source code to Kdb, and I understand that Arthur Whitney et al. are actually open to newcomers taking an interest in the project. (I&#x27;m <i>sure</i> I saw a comment mentioning as such a while back, possibly by geocar, but don&#x27;t seem to be able to find it. I might&#x27;ve read as such elsewhere.) At some point I hope to go down that rabbithole, which looks genuinely interesting, but learning that it *was* actually accessible left a bit of an impression given that (<a href="http:&#x2F;&#x2F;archive.vector.org.uk&#x2F;art10501320" rel="nofollow">http:&#x2F;&#x2F;archive.vector.org.uk&#x2F;art10501320</a>):<p>&gt; <i>Whitney demonstrated his “research K interpreter” at the Iverson College meeting[5] in Cambridge in 2011. We had visitors from Microsoft Research. The performance was impressive as always. The tiny language, mostly familiar-looking to the APL, J and q programmers participating, must have impressed the visitors. Perhaps conscious that with the occasional wrong result from an expression, the interpreter could be mistaken for a post-doctoral project, Whitney commented brightly, “Well, we sold ten million dollars of K3 and a hundred million of K4, so I guess we’ll sell a billion dollars worth of this.”<p>&gt; </i>Someone asked about the code base. “Currently it’s 247 lines of C.” Some expressions of incredulity. Whitney displayed the source, divided between five text files so each would fit entirely on his monitor. “Hate scrolling,” he mumbled.*<p>The above, combined with the project&#x27;s niche accessibility (I understand that one <i>does</i> have to be genuinely interested) speaks to me of business and engineering focal points in perfect calibration and harmony with each other. (Hnng. :P) It also gives evidence that it is in fact possible in the first place to achieve and sustain this kind of calibration <i>in contexts and situations that make use of niche technology</i>. The (meta-?)question (to me), then, is how the same sort of niche accessibility context might be applicable&#x2F;applied to news.arc (et al) to varying degrees.<p>I also wanted to incidentally mention that I&#x27;ve long had mixed feelings about using GitHub (in a sharing capacity). There&#x27;s a bit of &quot;but I don&#x27;t have anything interesting enough!&quot; in there, but it&#x27;s mostly hesitancy about dumping stuff underneath The Giant Spotlight Of Doom, Inc™. This isn&#x27;t GitHub&#x27;s fault; it&#x27;s more that the consumer end of open-source has something of a demand&#x2F;non-empathy problem toward the higher end of the long tail, that GitHub is the biggest platform, that everything not-GitHub correlates with an exponential drop-off in terms of visibility... and the intrinsic lack of any nice middle ground in the resulting mess. Applying these considerations to HN&#x27;s crazy popularity, I think that using GitHub could be great for &quot;pop culture accessibility&quot;, if you will - but at great potential cost to behind-the-scenes logistics (maintaining CI that merges closed-source modules, explaining Arc for the 5,287th time, etc), and a noteworthily increased maintenance burden. While there are a variety of &quot;alternative&quot; Git hosting platforms, I think LuaJIT&#x27;s approach is most interesting (<a href="https:&#x2F;&#x2F;luajit.org&#x2F;download.html" rel="nofollow">https:&#x2F;&#x2F;luajit.org&#x2F;download.html</a>): the Git repo is only available over HTTPS as a firewall convenience, and there&#x27;s no browser-accessible repository viewer. Thus everyone needs Git installed. You could also for example require everyone&#x27;s Git client to provide an HTTPS client certificate, for example. Such speedbumps would enable a scalable form of &quot;proof of interest&quot; (there&#x27;s also the fact that everyone has to go learn Arc once they <i>do</i> finally get at the code...) and naturally rate-limit this new dimension to something hopefully maintainable.<p>Lastly, and as a bit of a continuation of the last point, regarding the question of <i>licensing</i> (&quot;oh no&quot;), I&#x27;d actually be in favor of something custom. Both because all the opportunity (read: $$$ xD, but also Bay Area) is available to properly figure that option out, and also because virtually all existing licenses (and their wide use) bring a sort of reification to the table that makes politicking&#x2F;taking sides (&quot;ooooh! XYZ does ABC! that puts it in the same group as DEF!&quot;) all too easy, which may potentially threaten HN&#x27;s pragmatic ethos somewhat. A unique license has no reference points and thus less potential impact to cohesion, and also makes solving niche cases extremely easy; you just work backwards from whatever end state you want (which you&#x27;ve almost certainly had years to think about, or at least subconsciously gather context for). One concrete example (working with the limited context I have) might be disallowing mirroring or copying of the code, which would close the loop on the Git setup described above.<p>I&#x27;m not sure what bits of the above are interesting and what bits ultimately amount to excited bikeshedding :) - but I definitely want to convey that I, and probably (many) others, would be genuinely interested in helping out. Also, I realize stuff does actually get fixed, like * vs \*, which I am very appreciative of :D.