July 22nd, 2024

Where should visual programming go?

Visual programming enhances software development by integrating graphics with traditional code syntax. Advocates suggest using diagrams alongside code to improve understanding and maintain cleaner code, aiming for a harmonious coexistence of text and visuals. Luna explores a dual representation system where diagrams complement textual coding, similar to game engine scene management.

Read original articleLink Icon
Where should visual programming go?

The article by Sebastian Bensusan discusses the role of visual programming in enhancing software development. It emphasizes the importance of incorporating graphics where developers naturally visualize concepts like state transitions or network requests, rather than trying to replace traditional code syntax entirely. The author advocates for integrating diagrams alongside code to improve understanding and maintain cleaner code. Different levels of incorporating diagrams into the coding process are explored, from keeping them separate to generating them from code within IDEs. The ultimate goal is to have a harmonious coexistence of text and visual representations, allowing developers to leverage the strengths of each approach without one replacing the other. The article also mentions Luna's attempt at a dual representation system where code and diagrams coexist. The focus is on using diagrams as a complementary tool rather than a replacement for textual coding. The vision is to have diagrams as standalone tools that enhance the coding process, similar to how scenes are managed in game engines like Godot or Unity.

Related

Documenting Software Architectures

Documenting Software Architectures

Documenting software architectures is crucial for guiding developers, facilitating communication, and capturing decisions effectively. The arc42 template and C4 model offer structured approaches to achieve this, balancing detail and clarity.

Software Engineering Practices (2022)

Software Engineering Practices (2022)

Gergely Orosz sparked a Twitter discussion on software engineering practices. Simon Willison elaborated on key practices in a blog post, emphasizing documentation, test data creation, database migrations, templates, code formatting, environment setup automation, and preview environments. Willison highlights the productivity and quality benefits of investing in these practices and recommends tools like Docker, Gitpod, and Codespaces for implementation.

Self Documenting Code Is Bullshit

Self Documenting Code Is Bullshit

Klaus Breyer challenges self-documenting code, advocating for external documentation to enhance precision and abstraction. He emphasizes the need for detailed information like variable units and invariants, promoting a balanced approach for code clarity.

We need visual programming. No, not like that

We need visual programming. No, not like that

Visual programming environments struggle due to mismatched focus on syntax. Developers prefer visualizing state transitions and code aspects. Tools like Sourcetrail aid in understanding code complexity, suggesting more visualizations for improved software comprehension and optimization.

Visual programming should start in the debugger

Visual programming should start in the debugger

Visual programming leverages visual-spatial reasoning, proposing enhanced debuggers to visualize data structures over time. Efforts prioritize debugger improvements over text editors to create a new visual programming approach.

Link Icon 1 comments
By @dang - 3 months
Comments moved to https://news.ycombinator.com/item?id=41080644 (a re-upped version of https://news.ycombinator.com/item?id=40996809, now deleted, which was the first submission of the article. just trying to spread the love!)