Hello! After a 5 month break, we have resumed our ...
# share-your-work
r
Hello! After a 5 month break, we have resumed our activities. We haven't officially released the product yet, but I have written a draft of introductory articles. I would be happy to hear your feedback. The official release of Desk is scheduled for the end of this month. https://github.com/Hihaheho/Desk/blob/main/docs/blog/0001-introduce.md
i
It'd be hard to give constructive feedback on this, I'm afraid. It's very much a draft. But do share the tool here once it's public so we can try it out!
r
Thank you! It still doesn't seem to be ok. But I have no idea where to add sentences or paragraphs. I seem bad at writing. From your point of view, what do you think is needed especially?
Maybe the problem is that I’m knowing Desk too much.
i
The thing that you're planning to release — let's call it the "product", since that's the term you used — how much of the draft you've written describes what the product currently is? There's a lot of stuff in the draft that feels like far-future goals. I'd like to see more writing about the thing you've actually built. What would I use it to do? What other things is it most similar to? How does it differ from them? You've already got some things that seem like they'd answer these questions. For instance, you have:
Desk is: [...] A coding environment for the next 100 years. It blurs the line between living and coding.
But I don't know what that even means, so it doesn't actually answer the question "What is Desk?"
r
Thanks a lot! Your feedback is really helpful. As you say, I will add a significant description of the current product.
r
What do you mean by "Smalltalk but functional and statically typed"? Is it still based on classes and messaging? It would help to have a small sample program in the language, to get a feel for how it works. As for the vision I get it and am a fan, though it helps that I'm working on something similar. Here it would help to have a roadmap showing what to expect in the initial launch, and what the initial group of users would be. It seems like you're particularly interested in games, but I also like the tools-for-thought space as an initial target, given its relative simplicity and the usefulness of custom software - the only problem is, being based on a game engine, text rendering is going to be really hard. You may want to look into using something like skia as well.
r
Thanks!
What do you mean by “Smalltalk but functional and statically typed”?
It was meant to have something similar to the Smalltalk environment, including the GUI, but be functional and static rather than dynamic and object-oriented. I’ll add sentences about this.
the only problem is, being based on a game engine, text rendering is going to be really hard.
It’s actually easy because I use egui for GUI. I’ve added the following to my TODO list. • Add a roadmap with target group of users
Here is the new TLDR Desk is: • a reinvention of Excel to fascinate both hackers and gamers. • a reinvention of Smalltalk environments but with a functional and statically typed language.
I've released a POC of my visual editor. You can try it at https://desk-x.com/ (You should wait for up to 10 seconds on the first load to fetch and compile a Wasm binary. If it seems crash before running, reloading without caches or using other devices would help). Open the editor by clicking the "Fibonacci" button, then hover or click anywhere within the code, and use arrow keys to move around the cursor word by word. It's really lightweight to rendering the editor in 30fps or more with low cpu usage and it's throttled to 1fps while you aren't operating the input devices. If you have a cheap laptop or tablet, you should also try the editor on it, and it'll work nicely even on not powerful processors. You may notice the quality of font rendering is not good. It varies on what browser you use, and zooming in the page should improves the readability. Although I don't mainly use apple devices, it's best and beautiful on their devices. I'm finding a way to fix this problem but not with the top priority. Based on this POC, I plan to add these features in this order: 1. Rendering the code with syntax sugars 2. Inlay-hints and hover popups to show the inferred type of an expression and any compiler messages 3. ▶️ button to run the code 4. Dragging single or multiple expressions to move it to another place including other files 5. Structural editing at cursor
j
Super fun! • I can't seem to edit anything (in the fibonnacci editor). clicking a number gives me a cursor-looking-thing, but it won't respond to any key presses. • the little "resize" things don't seem to work on the 3 little windows that are open by default. The Fibonnacci editor does resize vertically, but not horizontally • And should the hamburger-menu do something when I click it? I can drag it to the side to reveal an FPS monitor, but nothing else
r
This is very neat! I'm going to spend some time reading the documentation and learning more about the design and implementation. Would you be open to a 30min call at some point to help me learn more about your vision?
r
@Jared Forsyth Thanks! 1 is just not implemented yet and 2 and 3 may bugs that I could not find it. They must be fixed before the official "Desk-lang Playground" release schedule for a few months. @Rafi Khan Thanks! You may be the first person who would read my code of this project, and I'm really glad to hear that 😸. "docs/" contains some documentation but not yet comprehensive, and I will publish currently most descriptive article in a few days. [I already wrote a draft of it in Japanese](https://zenn.dev/ryo33/articles/4b11a0dfede4c5), so you can translate it with any software translator to read it for now. https://github.com/Hihaheho/Desk is the repository of this project. "crates/" contains all implementations in Rust, and It's super simple and easily readable code because I'm extravagant to make my code beautiful (It's a work related to our art/game studio). Also I'll write a grand architecture document and contribution guide by today or tomorrow that may help your code reading. I'm really open to anything related to this project so you can ask thousands questions of it, and message in the our studio's Discord server is the most noticeable for me, but I also check this Slack periodically for any new message. I'm struggling to develop my English comprehension by my ear, so I need a simultaneous translation software, but I don't know any of it.
r
Awesome thank you for such a passionate and detailed response
r
The core of my vision is: To make coding accessible and essential for everyone as like smartphones could change this world to a good direction.
r
I'll read up on the docs and the article you shared above 😄 How can I find the discord link (I'll reach out there once i've gone through all the materials)
Really love the idea. I've been working on prototypes for several years trying to do the same thing, I'd love to collaborate and share ideas. I have to jump off now, but will catch you again soon. Good night 😄
r
https://discord.gg/egTTeg7DRp could work. Good night!
Sorry, as failures of estimation and scheduling, I haven't even started things I've mentioned.
r
No problem, happens to all of us 😄
r
@Rafi Khan At first, I've updated the contribution guide that may help you to explore the repository's codes and documentations. https://github.com/Hihaheho/Desk/blob/main/docs/CONTRIBUTING.md
For next, I plan to create an architecture document.