[{"data":1,"prerenderedAt":243},["ShallowReactive",2],{"project-6146665":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":34,"aspects":35,"strip":38,"post_text":39,"what":40,"said":64,"maker_in_thread":109,"shape":119,"grid":123,"attempts":204,"same_week":205,"maker_shows":32,"maker_hidden":236,"reader_version":237,"card":238},"6146665","google-drive-ocamlfuse","FUSE filesystem for Google Drive written in OCaml","title","Show HN: FUSE filesystem for Google Drive written in OCaml","https:\u002F\u002Fgithub.com\u002Fastrada\u002Fgoogle-drive-ocamlfuse","github.com","astrada",1375448969,2013,86,29,279,1739,17,"notable","infrastructure","filesystem","cli",[24,25,26,27,28],"google drive","fuse filesystem","ocaml","linux mount","cloud storage","curious",0,{"positive":32,"neutral":33,"mixed":30,"critical":32},1,3,5,{"privacy":36,"execution":37},{"positive":30,"critical":32},{"positive":32,"critical":30},[33,30,32,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,33,30,33,34],null,{"problem":41,"audience":39,"pricing":39,"motivation":39,"time_to_build":39,"stack":47,"openness":63,"stage":63,"team_size":63},{"value":42,"source":43,"evidence":44},"Mounts Google Drive as a local filesystem","inferred",[45],{"id":46},"post",[48,53,57],{"value":49,"source":50,"evidence":51},"OCaml","maker",[52],{"id":46},{"value":54,"source":50,"evidence":55},"FUSE",[56],{"id":46},{"value":58,"source":50,"evidence":59},"Google App Engine OAuth proxy",[60],{"id":61,"by":11,"text":62},"6147749","That is a proxy on GAE that makes it easier to complete the OAuth2 flow. The source code of the proxy is here: https:\u002F\u002Fgithub.com\u002Fastrada\u002Fgd-ocaml-auth. More info about the…","unknown",{"praise":65,"objections":81,"requests":98,"questions":103,"alternatives":108},[66,74],{"value":67,"source":68,"evidence":69},"Works fine with Vim saves","commenter",[70],{"id":71,"by":72,"text":73},"6163930","gregwebs","works fine with Vim",{"value":75,"source":68,"evidence":76},"Seems like a neat app",[77],{"id":78,"by":79,"text":80},"6147923","rca","That's seems like a neat app! How did you handle the concurrent remote-access on the files? Is there a way for the user applications to be warned when you receive an operational…",[82,92],{"value":83,"source":68,"evidence":84},"OAuth flow runs through a third-party GAE proxy that receives access tokens",[85,89],{"id":86,"by":87,"text":88},"6147685","chrissnell","I've never used OCaml so I started randomly clicking through your source. I was looking at this file:…",{"id":90,"by":87,"text":91},"6147809","Fair enough. I can't imagine that most users will want to pass access tokens through your proxy, despite the hassle it saves. I would suggest making proxied auth \u002Fnot\u002F the…",{"value":93,"source":68,"evidence":94},"Editors like Vim create duplicate files on Drive",[95],{"id":96,"by":72,"text":97},"6148935","I am using the google drive app for Windows (in a shared folder that my Linux VM sees). When I save a file with Vim it creates a duplicate copy on the GDrive server. I couldn't…",[99],{"value":100,"source":68,"evidence":101},"Make proxied auth non-default or document it more prominently",[102],{"id":90,"by":87,"text":91},[104],{"value":105,"source":68,"evidence":106},"How are concurrent remote modifications handled",[107],{"id":78,"by":79,"text":80},[],{"comments":110,"answered":33,"key":111},4,[112,113,116],{"id":61,"text":62},{"id":114,"text":115},"6147883","I see your point. Thanks for your feedback.",{"id":117,"text":118},"6147551","In Italy it isn't popular at all, but a couple of friends of mine use OCaml, mostly for hobby projects. And I like the language. It is more advanced than main stream languages I…",{"commenters":120,"max_depth":34,"maker_replies":110,"first_comment_mins":121,"lifespan_hours":122},22,121,83,[124,126,127,129,131,135,138,141,144,146,148,151,152,155,158,162,166,170,173,176,179,183,186,189,192,195,198,200,202],[86,30,33,125,87,30],"maker\u002Fneutral\u002Fprivacy",[61,30,30,125,11,32],[90,30,32,128,87,30],"project\u002Fcritical\u002Fprivacy",[114,30,30,130,11,32],"commenter\u002Fneutral\u002Fprivacy",[132,32,30,133,134,30],"6147374","other\u002Fneutral\u002Fnone","bsaul",[136,32,30,133,137,30],"6147495","BMarkmann",[139,32,30,133,140,30],"6147498","fabriceleal",[142,32,30,133,143,30],"6147603","icebraining",[145,32,30,133,140,30],"6147693",[147,32,30,133,143,30],"6147722",[149,32,30,133,150,30],"6147527","benesch",[117,32,30,133,11,32],[153,32,30,133,154,30],"6147806","timsally",[156,32,30,133,157,30],"6147829","munin",[159,32,30,160,161,30],"6147868","other\u002Fcritical\u002Fnone","jahewson",[163,32,30,164,165,30],"6148020","commenter\u002Fneutral\u002Fnone","jon_smark",[167,32,30,168,169,30],"6148641","other\u002Fneutral\u002Fdocs","gtani",[171,32,30,133,172,30],"6148278","zhemao",[174,32,30,133,175,30],"6148497","tbrownaw",[177,32,30,133,178,30],"6148749","bfung",[180,32,30,181,182,30],"6149132","other\u002Fpositive\u002Fnone","mhd",[184,32,30,133,185,30],"6149667","bcuccioli",[187,32,30,133,188,30],"6150297","agumonkey",[190,32,30,133,191,30],"6149706","georgemcbay",[193,32,30,133,194,30],"6149789","apaprocki",[78,196,33,197,79,30],2,"maker\u002Fneutral\u002Fexecution",[199,196,30,197,11,32],"6148012",[96,33,33,201,72,30],"project\u002Fneutral\u002Fexecution",[71,33,34,203,72,30],"project\u002Fpositive\u002Fexecution",[],[206,211,216,221,226,231],{"id":207,"name":208,"points":209,"category":210},"6169040","Gmail",158,"languages",{"id":212,"name":213,"points":214,"category":215},"6159835","Distributed Homomorphic Encryption Adder",104,"security_privacy",{"id":217,"name":218,"points":219,"category":220},"6148137","Rails Performance Help",68,"dev_tools",{"id":222,"name":223,"points":224,"category":225},"6161236","Temper",53,"web_saas",{"id":227,"name":228,"points":229,"category":230},"6165913","adventureplaybook.com",47,"creative",{"id":232,"name":233,"points":234,"category":235},"6148672","Thyself.io",45,"productivity",false,"v2",{"id":239,"name":5,"line":6,"ai":236,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":30,"top":18,"kw":240,"maker":11,"domain":10,"tier":19,"attempts":30,"strip":241,"url":9,"mix":242,"praise":67,"objection":83,"sub":21},6146665,[24,25,26,27,28],"30100000000000000000000003035",[32,33,30,32],1793990896762]