ClojureScript for Skeptics - Derek Slager

แชร์
ฝัง
  • เผยแพร่เมื่อ 1 ธ.ค. 2024

ความคิดเห็น • 29

  • @ManuelMontoyaRdz
    @ManuelMontoyaRdz 6 ปีที่แล้ว +45

    Developing on a modern Lisp language in back and front end avoiding JS: feels like heaven.

  • @domaincontroller
    @domaincontroller 4 ปีที่แล้ว +11

    07:00 Web Development Spectrum
    09:25 new framework
    14:55 tooling
    16:35 interop
    23:40 types
    ~ 26:00 editor
    28:00 templates
    29:33 workflow
    31:43 shaky foundation, javascript, one-liner
    33:09 code size

  • @valwaeselynck4529
    @valwaeselynck4529 9 ปีที่แล้ว +24

    Thank you! This is a great talk for everyone who wants to bridge the gap between ClojureScript programmers and JavaScript developers.

  • @craigfiebig8357
    @craigfiebig8357 9 ปีที่แล้ว +10

    The only person on the planet who can make this topic interesting and useful for that 180 degree arc of intellect that spans marketing to SDE.

  • @KentOJohnson
    @KentOJohnson 4 ปีที่แล้ว +12

    This is very helpful. Is there a recent update of this comprehensive nature for the current state of the ecosystem?

  • @ChadStovern
    @ChadStovern 9 ปีที่แล้ว +11

    Excellent talk, thank you for a great pitch for the javascript community!

  • @orestismarkou534
    @orestismarkou534 6 ปีที่แล้ว +21

    Revisiting the Objections* section today:
    First Run: New quickstart page is much better
    Types: Clojure.spec is available for ClojureScript
    Editors: Guides available on the site
    Java: Still here

  • @wheelindex8983
    @wheelindex8983 2 ปีที่แล้ว

    Really good talk. Experienced speaker, still relevant in 2022.

  • @androth1502
    @androth1502 5 ปีที่แล้ว +6

    is closurescript doing anything to integrate with webasm?

  • @LucasWiener
    @LucasWiener 7 ปีที่แล้ว +6

    Really nice presentation!

  • @marcopompili3763
    @marcopompili3763 8 ปีที่แล้ว +2

    At 25:35: What about Light Table as a good starting editor for ClojureScript ? Based on electron (same as Atom) and written in ClojureScript.

    • @irandomedthisnick
      @irandomedthisnick 8 ปีที่แล้ว

      Agreed. I've started to learn Clojure with Light Table and it is a really cool editor (I am used to Sublime Text). The inline REPL is a great experience for a first run!!

  • @davidyanceyjr
    @davidyanceyjr 8 ปีที่แล้ว +6

    Enjoyed the video. I have watched several clojure videos in an attempt to answer one question. Is this relatively new eco system worth learning if your new to programming?

  • @chrisvouga8832
    @chrisvouga8832 4 ปีที่แล้ว +2

    Very good speaker!

  • @ashtonsix2980
    @ashtonsix2980 9 ปีที่แล้ว +8

    Good talk & I defo want to start using ClojureScript.
    Examples of verbosity in JS are cherrypicked though and can all be done in one line:
    ISO date string:
    (new Date()).toString()
    Iterate w/ previous & next value (eh, could be better):
    const iterate = (a, f) => a.map((v, i) => f(v, a[i-1]))
    Trim:
    _.trim(str)
    Clone:
    _.cloneDeep(obj)
    Check for empty string:
    str === ''

    • @ashtonsix2980
      @ashtonsix2980 9 ปีที่แล้ว +1

      +Ashton War I agree w/ the comments about templates, they suck. I wrote a library based on react-hyperscript that solves this in native JS. So I'd write something like:
      div([
      span(`Hello ${name}`)
      ul(
      options.map((v, i) => li(`Option ${i}`))
      )
      ])

    • @ashtonsix2980
      @ashtonsix2980 9 ปีที่แล้ว

      +Ashton War Immutability + hot reloading, yep JS sucks at this and we don't have good solutions. +2 for clojurescrupt here

    • @ashtonsix2980
      @ashtonsix2980 9 ปีที่แล้ว +1

      +Ashton War Yeah, your right about Java, biggest thing making me want to stay away from Clojure

    • @ashtonsix2980
      @ashtonsix2980 9 ปีที่แล้ว

      +Ashton War That async / callback hell problem you put up is a little tricky, the people working on RxJS have solved this in native JS but the ideas haven't spread to the wider JS community yet.

    • @ashtonsix2980
      @ashtonsix2980 9 ปีที่แล้ว

      +Ashton War Though async / await in es7 could be seen as a step in that direction

  • @MrWholphin
    @MrWholphin 9 ปีที่แล้ว +6

    Impressive

  • @nielsvanklaveren3315
    @nielsvanklaveren3315 8 ปีที่แล้ว +1

    I get where you come from when starting up IntelliJ/Cursive and start New Project, but choose Leiningen and just ignore the first screen and you're golden.

  • @wotwot6868
    @wotwot6868 7 ปีที่แล้ว +2

    And here I am still using jQuery. Oh btw, also using JSPs. And best of all, we also don't use SCM/versioning.

  • @capability-snob
    @capability-snob 6 หลายเดือนก่อน

    Tony Hoare had many brilliant ideas, but CSP really wasn't one of them. This is the one part of working in ClojureScript that I remain worried about: I don't want the components I'm using to make use of unsafe concurrency primitives. In javascript, I can be confident that my event runs to completion before the next microtask is executed, but in clojurescript afaict, any number of unrelated events may be processed before some library function resumes. This means the developer can no longer reason locally about effect order.

  • @uzaarnaam
    @uzaarnaam 9 ปีที่แล้ว +1

    fwiw that ""javascript"" code example contains experimental ES7 features that are part of an early draft standard and require bleeding edge, experimental babel plugins: babeljs.io/blog/2015/05/14/function-bind/ It's misleading to say "this is javascript [right now in 2015]" :)

    • @uzaarnaam
      @uzaarnaam 9 ปีที่แล้ว +3

      +S ཨཽཨཽཨཽ Once point you didn't make but could, however, is that "javascript runs in the browser" is no longer a valid argument. Modern javascript REQUIRES a compile step (babel), so clojurescript really is not at a disadvantage here.

  • @chriscarlson9394
    @chriscarlson9394 3 ปีที่แล้ว +3

    Interesting but pretty outdated.