Re: [racket-users] Seeking expert opinion on how Racketeering tames web development chaos.

2017-07-30 Thread 'Alan Forrester' via Racket Users
On 31 Jul 2017, at 04:02, Sage Gerard  wrote:

> Hi!
> 
> New to Racket. Looking for expert opinion on my question, but I should give 
> some background.
> 
> I worked on software for about 11 years. Started on Win32 desktop 
> applications with C++ and then eventually moved to web, where I stayed on 
> front-end development for about 6 years. Moved to full-stack web dev then 
> finally architecture + web systems. I became a polyglot by necessity and am 
> now leading a UI team in a security startup.
> 
> Those of you working on the web know that Javascript went everywhere. In my 
> experience, I saw firms assume that they could now save on staffing by 
> normalizing to JS:
> 
> * Desktop devs (C++, C#, Go, etc.) were replaced by JS devs on Electron.
> * Mobile devs (Objective-C, Java Android SDK) were replaced by JS devs on 
> React Native or Cordova+Ionic.
> * Server devs (PHP, Python, Ruby, etc.)  devs replaced by JS devs on Node.js.
> 
> You get the idea.
> 
> The JS tooling explosion came tried handle the domain influx, only to 
> introduce the new problem of managing all of these domains. If you pull up a 
> large (~500k+ line) JS project, any one JS module could be read by a bundler, 
> a test runner, a transpiler, or Node. You have to maintain one script's 
> ability to function in N different domains.
> 
> This brings me to my questions, which I leave open-ended only because I'm not 
> experienced enough with Racket to be more specific. Please let me know if I 
> can elaborate more.
> 
> I found Racket while I was looking for a way to explicitly manage knowledge 
> domains while keeping a competitive edge. What I need your help with is 
> finding out if Racket is the tool in which I need to invest my time.
> 
> I see Racket can be used for web development, but is Racket really what I 
> need to meet the demands of multi-platform development while competing in the 
> market? Does Racket (or similar) sit at the next stage of evolution for the 
> multi-domain developer stuck in Javascript? If so, why?

There are some existing langs for compiling Racket to Javascript:

https://github.com/vishesh/racketscript
https://www.hashcollision.org/whalesong/

As far as I can tell, if you want facilities for iOS programming in Racket, you 
would have to write them yourself. Maybe it would be worth your while to do 
that.

If you want a lisp that has some existing tooling for every platform, your best 
option might be Clojure and Clojurescript. Clojurescript compiles to 
Javascript, has easy interop, has some integration with npm:

https://clojurescript.org/news/news

There is also a lot of material on using clojurescript to write iOS and Android 
apps using React Native:

http://cljsrn.org/

and apps using Clojurescript and React Native have been deployed to production. 
Clojurescript also has hot code reloading in both the browser and on iOS using 
figwheel.

Alan

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[racket-users] Seeking expert opinion on how Racketeering tames web development chaos.

2017-07-30 Thread Sage Gerard
Hi!

New to Racket. Looking for expert opinion on my question, but I should give 
some background.

I worked on software for about 11 years. Started on Win32 desktop applications 
with C++ and then eventually moved to web, where I stayed on front-end 
development for about 6 years. Moved to full-stack web dev then finally 
architecture + web systems. I became a polyglot by necessity and am now leading 
a UI team in a security startup.

Those of you working on the web know that Javascript went everywhere. In my 
experience, I saw firms assume that they could now save on staffing by 
normalizing to JS:

* Desktop devs (C++, C#, Go, etc.) were replaced by JS devs on Electron.
* Mobile devs (Objective-C, Java Android SDK) were replaced by JS devs on React 
Native or Cordova+Ionic.
* Server devs (PHP, Python, Ruby, etc.)  devs replaced by JS devs on Node.js.

You get the idea.

The JS tooling explosion came tried handle the domain influx, only to introduce 
the new problem of managing all of these domains. If you pull up a large 
(~500k+ line) JS project, any one JS module could be read by a bundler, a test 
runner, a transpiler, or Node. You have to maintain one script's ability to 
function in N different domains.

This brings me to my questions, which I leave open-ended only because I'm not 
experienced enough with Racket to be more specific. Please let me know if I can 
elaborate more.

I found Racket while I was looking for a way to explicitly manage knowledge 
domains while keeping a competitive edge. What I need your help with is finding 
out if Racket is the tool in which I need to invest my time.

I see Racket can be used for web development, but is Racket really what I need 
to meet the demands of multi-platform development while competing in the 
market? Does Racket (or similar) sit at the next stage of evolution for the 
multi-domain developer stuck in Javascript? If so, why?

Thanks for your time.

Sage

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.