FWIW I removed the CSP from atom and now have figwheel running inside atom 
and its awesome

On Friday, October 7, 2016 at 8:25:18 PM UTC-4, Ray King wrote:
>
> Thanks for all the direct and public replies so far, we take great 
> reassurance from them.
>
> Recapping the constraints:
>
> We have an existing Java library, which is a collection of algorithms 
> (Statistical inferencing stuff), architecturally they are stateless. Pass 
> in a Map, and it returns a Map.  There is a coordination layer which we 
> have moved to Clojure, this just a Map/Reduce & transform router. For 
> example, we would run a simulation a few alternative models concurrently. 
> The Clojure code distributed work maps to threads and instances in 
> different memory spaces and consolidated all the results as pour back in 
> asynchronously. It handles failures and continuation etc.  This part works 
> fine. The difference of reimplementing this layer in Clojure is night and 
> day, forget Java and Scala for this, the rewrite was painless and scaling 
> options we have given ourselves are fantastic.
>
> We still have Java dependencies, there in is the rub.
>
> We want to move as much as this stuff client side as possible, 
> Clojurescript and only leave the bounds of the customer's machine for 
> certain operations where we need to offload these work maps to cloud bound 
> processors.
>
> In the perfect world, we would have an electron app with render processes 
> handling the GUI elements and the primary process doing some light 
> processing and distribution and coordination of the work maps. In fact, we 
> have prototyped this, and it appears viable.
>
> In the short term, we have running a JVM based server on the client 
> machine as that is what host the algorithm library.
>
> (By the way, this library will eventually be reimplemented in Clojure 
> script, but as there is a need to for precision & correctness we currently 
> have a test suit that 3x larger than the code base and we still trying to 
> get our heads around the float points in JS)
>
> The above is what motivated the question.
>
> 1. Cljs and Electron, Tick no problems.
>
> 2. Packaging up a web socket server in electron for deployment and later 
> version updating? Has it been done, Clues thoughts, etc.?
>
> 3. Developer workflow, (Productivity). 
>     
> a. Currently, we have the library, Java code, and Clojure layer in one 
> code base and repository. Using Lein, and Cursive to hack on it. Which by 
> itself is fine.
>
> b. Bring 'Cljs' & electron into play, using ATOM with 'Dirac' and 
> 'Cljs-oops' with 'Boot' starting becoming a lot more ergonomic and lighter 
> then Intellij, Cursive and Lein.
>
> We would like to unite these two worlds into one repository and one tool 
> chain. From that one environment, we should be able to work on the GUI 
> layer, live reload, inspect and tango on. (ATOM, Dirac and Boot). Then move 
> without friction and context changes to hacking some Clojure, running some 
> unit test and now specs with 1.9.0-alpha. Then back again, to the front.
>
> The fact is all the above (Clj, Cljs, Electron and Java can work together, 
> and deliver good results). But we have yet to find a unified tooling chain. 
> Being an IDE/Editor, 'repl', build and dependency management. That handles 
> the architectural options that 'Clj' and 'Cljs' is enabling.
>
> Yes, 'lein' abstracts us from mistakes of past 'Maven' but it is not the 
> promised landed. I want to write code executable testable code to manage my 
> project, to extract what I need from the code base, compile and package 
> into immutable file sets. 
>
> Darken by two decades of Java, Maven and dependence management yet not 
> brave enough to ride the grunt while gulping down bower packages which are 
> made by copy and paste mystery meats. I am thankful for the Google Closure 
> Complier that tree shakes out some of the JS crap that always seems to find 
> its way into JS apps. I am hoping that 'boot; will become the tool that 
> bridges 'Clj' and 'Cljs'.
>
> Please share your thoughts and wash apart any ignorance I have in this 
> area.  Indeed, if you have a directory structure and tooling around a 
> unifying a 'Clj', 'Java', 'Cljs' and 'JS' project, please share.
>
> Thanks again for the suggestions, I hope this post elaborate more upon 
> what I mean when I say developer workflow, productivity and ergonomics.
>
>
> On Friday, October 7, 2016 at 6:13:30 AM UTC+11, Daniel Compton wrote:
>>
>> Hi Ray
>>
>> We have a ClojureScript + Electron + Re-Frame application that we run. 
>> Those three work together quite nicely. I’m not totally clear what it would 
>> look like for Clojure + Boot + ProtoRepl to co-exist with the first three? 
>> Can you explain what you’re envisioning some more?
>>
>> On Wed, Oct 5, 2016 at 11:41 PM Mathias De Wachter <mathias....@gmail.com> 
>> wrote:
>>
>>> Hi Ray,
>>>
>>> I'm in a pretty much identical situation, except that I'm using re-frame 
>>> for the gui that connects to the websocket the local clojure app provides. 
>>> I haven't gotten as far as you yet, since I haven't yet started the "port" 
>>> of the gui from browser to electron. I also have two code bases, but am 
>>> wondering if the merge makes sense. So, I would be very interested to see 
>>> read about your experience!
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Clojure" group.
>>> To post to this group, send email to clo...@googlegroups.com
>>> Note that posts from new members are moderated - please be patient with 
>>> your first post.
>>> To unsubscribe from this group, send email to
>>> clojure+u...@googlegroups.com
>>> For more options, visit this group at
>>> http://groups.google.com/group/clojure?hl=en
>>> ---
>>> You received this message because you are subscribed to the Google 
>>> Groups "Clojure" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to clojure+u...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> -- 
>>
>> Daniel
>>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to