Live data from Hacker News

Show HN: FUSE filesystem for Google Drive written in OCaml

github.com

11–20 of 30 posts

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#11

I've never used OCaml so I started randomly clicking through your source. I was looking at this file: https://github.com/astrada/google-drive-ocamlfuse/blob/maste... It seems like it's using some GAE node (presumably owned by the author) for something to do with authentication. Would the author care to explain what's going on here?

That is a proxy on GAE that makes it easier to complete the OAuth2 flow. The source code of the proxy is here: https://github.com/astrada/gd-ocaml-auth. More info about the authorization process: https://github.com/astrada/google-drive-ocamlfuse/wiki/Autho.... Let me know if you need further info.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#12
post #2

OCaml is pretty big in french universities, but could anyone from other countries say how popular this language is in their country (education and corporate sectors) ? I'm quite surprised to see a news about this language on the front page of HN.

OCaml sees a lot of use in the applied program analysis community, which has applications to automated reverse engineering and formal verification. A company in this area recently started by CMU assistant professor David Brumley is: http://www.forallsecure.com/mayhem.html.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#13
post #11

I've never used OCaml so I started randomly clicking through your source. I was looking at this file: https://github.com/astrada/google-drive-ocamlfuse/blob/maste... It seems like it's using some GAE node (presumably owned by the author) for something to do with authentication. Would the author care to explain what's going on here?

That is a proxy on GAE that makes it easier to complete the OAuth2 flow. The source code of the proxy is here: https://github.com/astrada/gd-ocaml-auth . More info about the authorization process: https://github.com/astrada/google-drive-ocamlfuse/wiki/Autho... . Let me know if you need further info.

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 /not/ the default or at least divulging the use of the proxy in a more prominent fashion in your documentation. Just a suggestion. People get sensitive when it comes to their personal cloud storage.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#14
post #2

OCaml is pretty big in french universities, but could anyone from other countries say how popular this language is in their country (education and corporate sectors) ? I'm quite surprised to see a news about this language on the front page of HN.

you learn it in the PL class at UMD (that everyone takes) and the compilers class (which is an elective) uses it for everything.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#15
post #2

OCaml is pretty big in french universities, but could anyone from other countries say how popular this language is in their country (education and corporate sectors) ? I'm quite surprised to see a news about this language on the front page of HN.

F# is a superset of OCaml and both are descendants of ML (ML was created here in Edinburgh). Having worked with Ocaml extensively I would say that the ecosystem around the language is pretty stale: the standard library sucks, as does the documentation for it and important libraries such as "batteries included" are under the GPL, which rules out many uses. Usability is poor: stack traces can be a nightmare to get working properly, the compiler errors are the worst I have ever encountered anywhere (including C++ templates!), there's no standard build chain, the list goes on...

I switched to Scala and haven't looked back. Haskell is very popular here in Edinburgh also.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#16
post #11

Earlier quoted context omitted.

That is a proxy on GAE that makes it easier to complete the OAuth2 flow. The source code of the proxy is here: https://github.com/astrada/gd-ocaml-auth . More info about the authorization process: https://github.com/astrada/google-drive-ocamlfuse/wiki/Autho... . Let me know if you need further info.

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 /not/ the default or at least divulging the use of the proxy in a more prominent fashion in your documentation. Just a suggestion. People get sensitive when it comes to their personal cloud storage.

I see your point. Thanks for your feedback.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#17
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 transformation? I'm implementing a fuse filesystem for a similar webapp and I thought it would be impossible for an editor that hasn't be designed for that to deal with the concurrent modifications, even if the filesystem can handle it.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#18
post #17

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 transformation? I'm implementing a fuse filesystem for a similar webapp and I thought it would be impossible for an editor that hasn't be designed for that to deal with the concurrent modifications, even if the filesystem can handle it.

Conflict resolution is not very sofisticated. You can choose to always take server side version (the default) or client side version (see https://github.com/astrada/google-drive-ocamlfuse/wiki/Confi...). My main use case is a single user working on the client or on the server. So the scenario is not of a collaborative app.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#19
post #2

OCaml is pretty big in french universities, but could anyone from other countries say how popular this language is in their country (education and corporate sectors) ? I'm quite surprised to see a news about this language on the front page of HN.

F# is a superset of OCaml and both are descendants of ML (ML was created here in Edinburgh). Having worked with Ocaml extensively I would say that the ecosystem around the language is pretty stale: the standard library sucks, as does the documentation for it and important libraries such as "batteries included" are under the GPL, which rules out many uses. Usability is poor: stack traces can be a nightmare to get work…

You should take a new/better look at OCaml, as most of the information you mentioned is wrong and/or out-of-date. For instance:

* F# is not a superset of OCaml. OCaml has a number of powerful features missing from F#, like functors, polymorphic variants, and first-class modules.

* I disagree that the ecosystem is "stale". There's lots of recent activity around the language, and you can find libraries for almost everything.

Re: Show HN: FUSE filesystem for Google Drive written in OCaml

#20
post #2

OCaml is pretty big in french universities, but could anyone from other countries say how popular this language is in their country (education and corporate sectors) ? I'm quite surprised to see a news about this language on the front page of HN.

I think it's relatively popular in University courses on compilers and programming languages. We use it for our Programming Languages and Translators course (i.e. the course the Dragon Book was written for) here at Columbia University.
Post reply on HN