DEV Community

Discussion on: Why Scratch is the Ideal Development Environment

Collapse
 
pulljosh profile image
Josh Pullen

I have a few extra thoughts that were axed from the main article in the name of keeping it concise, but I want to extrapolate a bit more here for those who are interested.

I actually think that the idea in this article — that we should build languages and tools that make code more intuitive — is starting to take hold.

In the world of frontend development, I've spent a lot of time with React and have found the component-based architecture to be very useful when trying to "mold" a program rather than write it top-to-bottom. I am also hopeful that Dan's work on hot reloading will bring us closer to the promised land of truly live code editing.

Perhaps more interesting to me is SwiftUI and the Xcode editor that goes with it. I have never so much as dabbled in the Apple ecosystem (except my childhood iPod touch), but some of what I'm seeing is incredible. Check out this clip of app creation with SwiftUI:

We've hit two out of three marks here: We can see all the code options available (in this case, in a few different menus), and the live reloading is top-notch. The experimentation aspect isn't quite analogous to Scratch, but the entire experience still comes pretty darn close.

It's not really surprising that Apple, of all companies, has nailed the integrated, end-to-end ecosystem experience with a language, an editor, and target devices all built as a cohesive whole. Obviously, there are downsides to walled gardens, but I think that we can learn a lot from SwiftUI and the development experience it provides.