I love that there's a serious debate about which pasta shape is the best metaphor for particular software engineering patterns!
Re:Don't Be Afraid of Types
by throwaway2037 on Sunday March 23, 2025 @03:04AM
(#43451320)
> Traditional Java was notorious for being the opposite of this.
Is modern Java better? If so, why? Also, what languages do it better than Java and why? Any as old as Java that do it better?
Re:Don't Be Afraid of Types
by DeathArrow on Sunday March 23, 2025 @09:55AM
(#43452952)
There's Vertical Slice architecture that kind of does this. A feature is in a folder.
Re:Don't Be Afraid of Types
by johnisgood on Monday March 24, 2025 @06:19AM
(#43459233)
> make navigation through the code for maintenance purposes more difficult.
I have this issue with: Java, Kotlin, Erlang, and Elixir, but especially Java and Kotlin.
I've seen the opposite with Python where there's so much junk in a single file it's also impossible to navigate.
Re:Don't Be Afraid of Types
by johnisgood on Monday March 24, 2025 @09:55AM
(#43461144)
Yeah, I do not use Python, nor do I have to read much Python code, but it may be difficult to follow, too (OOP in general), just like PHP with lots of classes but I do not mind 5000 LOC PHP code that is fully OOP at least, I probably would if they were in their separate files.
https://stackoverflow.com/questions/2052017/ravioli-code-why... https://en.wikipedia.org/wiki/Spaghetti_code#Ravioli_code
A related principle that I don't think is talked about enough is "locality": I'd rather have all the code about one feature in one file or close together, rather than it strewn across files where it's harder to read and understand as a whole. Traditional Java was notorious for being the opposite of this. Traditional HTML+CSS+JavaScript is also very bad for this problem.