Johannes Schickling
Johannes Schickling
  • Видео 7
  • Просмотров 27 266

Видео

​Johannes Schickling: Why Local-First? (Local-First Meetup Berlin #1)
Просмотров 2 тыс.Год назад
Local-first is an increasingly popular paradigm for app development but there are still only few app case studies and best practices available. In this talk, I’m going to share my lessons learned building a local-first music app with focus on a new approach to state management. schickling riffle.systems/
Jonas Kruckenberg: CORD - How to built better software for humans (Local-First Meetup Berlin #1)
Просмотров 424Год назад
​In a world where our lives increasingly depend on computers, our digital tools and homes demonstrate a clear absence of individual expression, flexibility and freedom. This is a quick look at end-user extensibility, it’s roots, sociopolitical consequences of it’s absence and what we can do about it jonasKruckie
Anselm Eickhoff: Jazz - a framework for local-first data/permissions (Local-First Meetup Berlin #1)
Просмотров 1,2 тыс.Год назад
How I married CRDTs with client-side verifiable permissions (based on public-key cryptography). A first look at open-source framework and sync-as-a-service offering that makes building local-first, multiplayer apps really easy. ae_play jazz.tools/
Adam Wiggins: Local-First at Scale (Local-First Meetup Berlin #1)
Просмотров 1,4 тыс.Год назад
Muse has been running a local-first sync system in production for over a year. Adam will share what they've learned in that time about the user experience, operations, and business effects of local first. _adamwiggins_ museapp.com/
Nix Chats: How to run a Windows/macOS VM on NixOS (with Geoffrey Huntley)
Просмотров 3,9 тыс.Год назад
Geoffrey Huntley: ghuntley.com Geoffrey's Nix Repo: github.com/ghuntley/ghuntley Nix Tutorial: zero-to-nix.com/
Setting up Nix on macOS from scratch (incl. dotfiles via home-manager and Nix flakes)
Просмотров 16 тыс.2 года назад
In this video I've helped my friend Paul Shen (creator of Natto) to set up Nix on his macOS machine replacing Homebrew.

Комментарии

  • @BiGreDNoSecoMpAny
    @BiGreDNoSecoMpAny Месяц назад

    super helpful video, thanks for sharing this!

  • @MartinCharles
    @MartinCharles 2 месяца назад

    jlongster solved a bunch of these problems like 4 years ago

  • @LS-jv4uh
    @LS-jv4uh 8 месяцев назад

    Finally a plain English walkthrough of Nix on MacOS. Thank you!

  • @zombiemouth
    @zombiemouth 9 месяцев назад

    Yes please let the guest speak. Constant interrupts slow it down and make it even harder to follow.

    • @josephs1732
      @josephs1732 9 месяцев назад

      Yes for heaven sake!

  • @ibgib
    @ibgib 11 месяцев назад

    Just one more thing (Q&A starting at 29:20 poked me too much)... *IF* you focus on the UX of timeline composition, then the pain points of merge conflicts go away. What we have right now, with git, is a UX problem on only a subset of inter-timeline dynamics. If you only use a command line (or one step up some kind of rudimentary diffing tool UX designed by backend people), AND your use case is merging source code then merging can be a PITA. But if you focus on timeline UX and you're enabling merge *composition* then that can be a completely different story! For example, if you are merging source code then you better nit pick on the details of order. But imagine you are presenting a "multiplayer" collaboration on a recipe composition. In this domain, presenting alternative edits on text is the same visual workflow as providing alternative subsections of the recipe. Say the recipe's OP polls followers for pictures of their meals created with the recipe. Now when you present these *picture* alternatives (like a gallery), this is ALSO the same visual workflow of presenting alternatives. You're just conceptualizing them as branching timelines and providing the UX to navigate these timelines. The other aspect, besides time, is enabling space dynamics. For example, take his large document problem. This is because we are used to thinking of the final product as one large object. But if you start thinking of timelines, you can now start thinking of not only sharding large documents, but focusing on providing inter-spatial dynamics. By this I mean you can provide homomorphic transforms from document --chunk--> paragraph --chunk--> sentence. Once we provide timeline dynamics, we can think of each of these aspects of the document as its own timeline. A separate sharding mechanism isn't even required, because the entire foundation of the architecture is about interspatial and inter-timeline dynamics (i.e. enabling push/pulls/merge/sync operations). Unfortunately, programmers are heavily biased in their preconceptions of what "version control" is, added to the fact that they have become mesmerized with git instead of looking to learn from it and move on. But I assure you, this spacetime-oriented approach solves the Q&A issues. Maybe one of these days I won't be shouting into a black hole about this awesomeness! The inkandswitch people are so close...

    • @tyroneslothrop123
      @tyroneslothrop123 4 дня назад

      thank you, you comment is well appreciated since I'm in the process of exploring this kind of stuff for my ba thesis.

  • @ibgib
    @ibgib 11 месяцев назад

    Muse has such a beautiful UX. For well over a decade now, I've been working on my own local-first ibgib protocol, which creates DLT graphs that treats time as a first-class citizen (think git for an OOP language's base Object). But alas, both my front end and my marketing skills are dog 💩. Because it is like an entire universe of timelines (it is essentially a metaverse protocol), Muse's recursive navigation is just about the pinnacle of a possible 2d interface. In my first UX (Vanilla JS with Elixir+Phoenix back end) used an interesting front end I built on top of d3.js with navigable/expandable circles with d3.js physics but was still fabulously ugly. My current UX at ibgibDOTspace is an extremely slow Angular/Ionic monstrosity. I just wish I had Muse's front end artists, as it is such a beautiful interface. As I understand it, they are moving towards using automerge, but ultimately the crux of the issue is not just synchronizing but merging timelines dynamically. Automerge is more text/json-based and the solution requires enabling dynamics of time.

  • @mohamedmoussa9635
    @mohamedmoussa9635 Год назад

    Databases to manage data. Makes so much sense.

  • @magne6049
    @magne6049 Год назад

    This is genius.

  • @jacopomarrone8059
    @jacopomarrone8059 Год назад

    Great showcase!

  • @bestimmaa
    @bestimmaa Год назад

    great talk, very inspiring, thanks for sharing.

  • @richardbennett4365
    @richardbennett4365 Год назад

    I have a question ⁉️ ❓ for Mr Geoffrey Huntley or the host, if he knows as well. How does Mr Huntley not break the End User Licensing Agreement with Apple if he is not running his macOS on Apple hardware, or maybe his hypervisor running coder is running on Apple hardware and he's running a VM of macOS on that same hardware? In other words, is his server that creates all these VM running the demonstrated OSes Apple hardware like some Mac Pro? If not, then how does he obtain permission from Apple to run this VM on non-Apple hardware?

    • @richardbennett4365
      @richardbennett4365 Год назад

      The host is enthusiastic, but gosh, could he just let the man talk and explain without interrupting him so many times, please? He's wearing down our patience with his incessant questions.

    • @richardbennett4365
      @richardbennett4365 Год назад

      Yes, most people use qemu, but bhyve is very good, too. It's just not well-known.

    • @richardbennett4365
      @richardbennett4365 Год назад

      I see. His hardware is Apple, so he is not breaking any EULA for running macOS in a VM.

  • @NickFields4
    @NickFields4 Год назад

    Thank you! I'd totes watch any updated versions of this! All the best, Nick

  • @swattertroops-yaaa
    @swattertroops-yaaa Год назад

    the stuff of dreams

  • @swattertroops-yaaa
    @swattertroops-yaaa Год назад

    awesome

  • @jc.baptiste
    @jc.baptiste Год назад

    Digressing too much all the time, it's hard to keep listening unfortunately. Thanks anyway.

  • @brentonbills5946
    @brentonbills5946 Год назад

    Amazing. Looking forward to a part 2.

  • @robertkozak
    @robertkozak Год назад

    OMG. Shut up and let him talk. You are interrupting all the time its so hard to follow.

  • @workflowinmind
    @workflowinmind Год назад

    Thanks a lot, great idea and very useful

  • @thomassteven8323
    @thomassteven8323 Год назад

    Great to hear you talk through it all

  • @patrickm9953
    @patrickm9953 2 года назад

    This was helpful, really appreciate you sharing it

  • @siksniper1996
    @siksniper1996 2 года назад

    This was very helpful!

  • @roryonabike5863
    @roryonabike5863 2 года назад

    This really helped me understand the install process and how Nix works as a package manager. Are you and your friend still using it? Any significant problems?

  • @davidcodes009
    @davidcodes009 2 года назад

    Very informative thanks !!