If nim just used python syntax it could be great. Python is a gold standard for a good reason. If some/most python code happened to be valid nim it would be a massive win.
Bro, that's so cool I don't know how I did not find it when I was looking through available Scripting (c++ extension solutions) for UE, there was AngelScript and few other things Thanks for great work, will try to make a game with it and report back :)
How I can implement this using an actual nim code. e.g. A simple music player using *nimx* that can open a mp3 file, then using omni to control volume and a simple 3 band eq (high, mid and low). This video doesn't seem to show any nim code. 😔
This guy has me sold! Finally, someone who gets it. The vast majority of GUI libraries suck badly. Unfortunately, there's a good reason for it. First, there are major layout differences. On a MacOS dialog box, for instance, the "OK' button is always to the right and "Cancel" is on the left, whereas on Windows they buttons are swapped. The user will either account for it with a separate layout, or ignore it. There are tons of other differences, including how MacOS uses a single menubar for all windows while Windows has a menubar for each one. Second, there are differences in geometries. Using absolute coordinates and dimensions will not work, since the aspect ratios and dpi varies across platforms. In the demo, Fidget happened to pick neat simple layouts, but the majority of UIs are considerably more complex. Fidget is bold and interesting, but its design is based on some naive assumptions. Google's flutter solved these issues by bypassing the native UI drawing and rerendering it to look as accurate as possible.
you have to be completely sick/perverted to love python. It is a slowpoke, complete break, devs don't really know how to really do DEV - they were completely unable to transition to version 3 - language split in 2, and therefore i read that it is unlikely we will ever going to witness version 4, EVER.
This is incredible. I was looking for some language to use on microcontrollers and sharing your experience is very appreciated. (I'm gonna do esp32 and older one - have you tried it)?
To promote Nim the community should develop and release a good open source soft or a game. Maybe a web browser, a cliente for some secure messenger or something most people use. When people know that software is made with Nim, it would help to boost Nim reputation.
To promote Nim the community should develop and release a good open source soft or a game. Maybe a video editor or something most people use. When people know that software is made with Nim, it would help to boost Nim reputation.
This is a really awesome idea. I've had to make plenty of GUIs in my time, but it's not what I pride myself on or what I want to focus on. My wife is learning UX design, so I've been seeing and thinking more about it. She prefers Figma to pretty much all of the tools shes had to learn (html/css, adobe products, Qt). I think the concepts behind fidget are well placed in collaborative workflows just as you said. I haven't read the code yet, but wo questions stuck out in my mind after watching the presentation: 1.) I wonder how simple it would be to handle multi-threading in this framework. Unless the app is dead simple you usually need multiple threads running that cannot block the rendering thread. Of course, I saw that the HttpGet function triggered a redraw and that mechanism could be used for something to similar effect, but from the way you were talking it may need some extra manual attention for true multi-tasking workloads. It's not a hard problem to solve but something like event loops and interop is likely going to be needed often. You didn't seem to mention anything like that. 2.) In more complex GUI frameworks it is usually a mess to implement complex custom controls for the same reason it *can* be difficult to change basic behavior like buttons. This library could provide a dream solution to this problem, but in order to really take advantage of that there needs to be a system for encapsulating and mediating abstract behavior between entities. This looked like it might be a chore the way the DSL was used when integrating with the back end of the code. I know the examples for the presentation were illustrative and that most of these problems are likely serviceable with the vision of the project. Having re-usability, pain free multi-tasking and clean separation of back end to front end (I would say ideally in 3 stages there) are critical for me to feel like a GUI framework is usable and constructive. That being said this project is impressive and I'm looking forward to checking it out.
While introducing toy-languages besides the elephant in the room (the industry standard C for MCU business) for a unreliable and non certified toy (ESP in every flavor) may be fun (please also consider learning real human languages ... its fun! :) ), there is no benefit of one high level language over the other. Well ... "better" ? ... is surely nothing. Just the right tool for the problem solution (I hope). Diversity is good. You do you. My suggestion: RTFM!!! (Datasheet, sorry hehe), learn Assembler and the architecture. This will turn every API you will write into a pretty fart of an unicorn. Others can clearly see, that you understood the underlying hardware, the problem you tried to solve and that the users after your prototype are having a benefit now from your foresight. ... in a perfect world! There are plentiful solutions for build-systems and templates you can start from out there (and I am personally guilty for some good and bad ones:P) All have their pros and cons. All of them need a quantum (that is the most possible small X of something ... ) love. Some of that reality-check above is meant satirical and should be consumed with a grain of salt. Nonetheless thank you for your work, for your presentation and the love you put into research and making this work via Nim, Christian. Thank you for the entertaining and insightful lecture. P.S.: We don't stand a chance against "esphome" or "platformio" anyway. Any plumber can create Blinkenlights with a text file (which is great, I'm joking!). Soon those from PlatformIO etc. will also get a contract from Seagate, WD and advertising for even more cores from the processor manufacturers. Who doesn't get the joke: Some development environments need several gigabytes of space for superfluous dependencies and minutes to compile for the typical hello world (called "Blinky") in the MCU world ... which is a matter of usually 10 ms. ... speaking to the general audience: Anyways, have fun coding. Also consider learning a electrical profession. Just to hurt no one .... :P
Nim can translate into c++ and since unreal already uses C++. But I don't know the details. this is just a plugin and not an official implementation. So the people behind it probably also work better with Nim.
35:15 "Because some weird internet weirdos want to destroy the english language" We are very glad to be reassured that Nim does not have a corporate-poisned environment ;) (Man, I was so anoyed when we had to rename all our git branches, just because a certain country has to export its problems to the rest of the world...)