Treemap Viewer, part 7 The Last

Ойындар

Broadcasted live on Twitch -- Watch live at / j_blow

Пікірлер: 31

  • @ryoonio
    @ryoonio Жыл бұрын

    Appreciate the more frequent uploads lately! This series and the space invaders game have been great to watch. And great progress in a short period of time.

  • @namr2000
    @namr2000 Жыл бұрын

    Thanks for putting these streams up, they''re giving me motivation to do my own weekend projects.

  • @Paul-to1nb
    @Paul-to1nb6 ай бұрын

    This was an extremely fun stream. Thank you for uploading!

  • @Pangeli70
    @Pangeli70 Жыл бұрын

    I followed the entire series, really cool. Enjoyed all the development cycle, from the beginning to the end. With all the decisions and bug hunting and testing and experimenting in a real project. I have so many ideas to improve the tool. On the UI part, there are so many things that could be done. If it could be integrated with a text viewer or text editor, you could maybe control-click on a function and jump directly into the file and look at it for immediate investigation. Or maybe you can shift-click and list all the modules where the function is used or where all the polymorphs are declared. Right-click could open a context menu for quick contextualized operations. I'd try to remove entirely the bottom area of the UI to expand the treemap and I'd show a tooltip under the cursor while you move it so you don't have to read in a different position where the cursor is. Clicking on the file cursor could pop up a window that shows the function's metrics in detail. Another cool thing to add would be an AST per metric visualizer of the function to display how these are collected. Adding this tool to a profiler can allow us to watch how the behaviour of the program evolves at runtime. And combing codex data with profiler data could help join code complexity metrics with real usage metrics to visually identify bottlenecks and areas where to push hard till reaching the metal to squeeze out the performance. AST patterns and Codex metrics could be used to identify and visualize antipatterns, or obsolete syntax and aim at the areas that need refactoring. So many ideas. Maybe someone useful. :)

  • @Protoex
    @Protoex Жыл бұрын

    There is a very easy to fix bug to improve squareness. Instead of alternating between horizontal/vertical layout, decide it based on the aspect ratio of the remaining free rectangle. At some point in part one, it seems like you got the idea, but as complexity spiraled out, you make it alternating and never fixed back

  • @jblow888

    @jblow888

    Жыл бұрын

    Have you actually tried this and compared to see if it is better?

  • @JeffHanke

    @JeffHanke

    Жыл бұрын

    @@jblow888 I haven't, but it should reduce the number of rects that get squashed in the upper-right corner of parent rects that start out with an aspect far away from 1. When packing squarish rects into columns/rows and always alternating between them, the remaining space's aspect ratio will trend away from 1. Imagine starting with 200x100 (aspect ratio 2), you pack a column of 10x10, and a row of 10x10, you're left with 190x90 (aspect ratio 2.11), if you pack another column & row of 9x9s, you end up with 181x81 (aspect 2.23), etc. Subtracting approximately equal values from both the width and height will push the aspect ratio father and farther from 1. With the proposed change, you'd pack a column of 10x10s, end up with 190x100 (aspect ratio 1.9), see it's above 1 still, pack another column of 10x10s, end up with 180, etc, until you get down around 100x100 (aspect ratio 1) and then (most likely) start switching back and forth. Without trying it myself, I can't be *sure* that the packed rects will be more square, but the remaining space will certainly be more square, and I think that will end up giving you more rects that are close to square.

  • @Protoex

    @Protoex

    Жыл бұрын

    @jblow888 sorry I haven't. Do I get beta access to the compiler if it get improved?

  • @Adamarla
    @Adamarla Жыл бұрын

    The algorithm in the original paper picks packing to rows or columns based on aspect ratio rather than toggling. That reduces the thin rectangles as it allows them to be packed in the other direction. I waited until finishing watching everything before pointing this out in case it was already fixed on stream.

  • @unnameduser6683
    @unnameduser6683 Жыл бұрын

    Great stuff!

  • @draakisback
    @draakisback Жыл бұрын

    Oh sweet, you use emacs as well. Been watching these videos for awhile and just noticed that. I really like what I've seen of this jai language you've created. Useful compiler errors, simple syntax but with powerful features and a compiler that is relatively reasonable as far as speed goes. I hope to get my hands on it soon, though my interest is less regarding gaming and more about the actual compiler and language design itself.

  • @malusmundus-9605
    @malusmundus-9605 Жыл бұрын

    Jai language looks sick... nice map too. Identifier : Type is noice.

  • @Muskar2

    @Muskar2

    Жыл бұрын

    Yeah, I'm sure we're many who can't wait to try it out!

  • @Guyflyer12
    @Guyflyer12 Жыл бұрын

    Has Jon talked about the whole `codex` and memory profiler thing? Besides just the visualization but the under the hood stuff?

  • @benjaminpedersen9548
    @benjaminpedersen9548 Жыл бұрын

    About program to module ratio, I guess it is actually smaller than it would have been in C++, since Thekla has actively modularized code for the programming language.

  • @EnricoMartelli
    @EnricoMartelli Жыл бұрын

    Spotted some code that could be improved: recompute_if_dirty calculates the root node, but it can simply call treemap.root draw_treemap call recompute_if_dirty 2 times each

  • @adama7752
    @adama7752 Жыл бұрын

    We did it boys!

  • @clerothsun3933
    @clerothsun39332 ай бұрын

    Can't wait to use this language in 2150

  • @szabolcsdezsi8028
    @szabolcsdezsi8028 Жыл бұрын

    The border widths should be independent of the zoom level. When you zoom in a lot the borders take up a lot of space. If you addressed this in the stream, then sorry :)

  • @Muskar2
    @Muskar2 Жыл бұрын

    What is the color coding of the tree? It seems to be tied to the "blend" value, but what is that? Is it a weighted calculation of all the others stats?

  • @Muskar2

    @Muskar2

    Жыл бұрын

    "Generic code quality metric" (part 4 - 2:44:22) It seems to me like it's a metric that is inherited from the rest of the GUI, and not implemented in the treemap code. I'll update this if I get around to watching all parts to verify that assumption

  • @linkVIII
    @linkVIII Жыл бұрын

    And with the last, I need to find more things to focus on while I play more mindless zelda that still doesn't respect your time

  • @nates9778
    @nates9778 Жыл бұрын

    This is like nuclear technology dude!

  • @crimsonhawk52
    @crimsonhawk52 Жыл бұрын

    a command line REPL for Jai would be really nice. I use python on command line as my go-to calculator and to do dumb tiny shit I can't do in my head. ttrpg statistics mostly. But python is hella cringe tbh

  • @benjaminpedersen9548

    @benjaminpedersen9548

    Жыл бұрын

    I am not in the beta, but I imagine that it would be perfectly possible to make it with a compile-time metaprogram.

  • @ar_xiv
    @ar_xiv Жыл бұрын

    somebody get mr blow some new fonts. georgia is soo 2005 wordpress blog or something

  • @ar_xiv

    @ar_xiv

    Жыл бұрын

    Might I recommend the CMU family designed by donald knuth

  • @SemperVinco

    @SemperVinco

    Жыл бұрын

    @@ar_xiv You want his games to look like a mathematics paper?! TeX is fantastic but computer modern is my least favorite bit. Why not Bitstream Charter?

  • @DoctorGester

    @DoctorGester

    Жыл бұрын

    Pretty sure it's Karmina - the signature Thekla font

  • @sanjacobs6261

    @sanjacobs6261

    Жыл бұрын

    ​@@DoctorGester Yes, it is Karmina. And, arXiv: Selecting fonts based on current trends is a fast-track to becoming generic. I'm pretty sure Jon appreciates 2005 Wordpress much more than he does 2023 Squarespace.

  • @TheIonizator

    @TheIonizator

    Жыл бұрын

    Imagine if Jon started using fonts from wild niche ultramodern type agencies like ABC Dinamo. Now that's would be interesting and non generic. Would love Jai to have more bold identity, one can dream

Келесі