News for hackers. Stuff that matters.
Re:Choose design over architecture by e12e on Thursday December 10, 2015 @01:15AM (#10709146)
The article is indeed an odd mix. As for Architecture vs Design -- I think "Software Architect(ure)" is a bit of a misnomer -- in as much as architecture makes sense as a term, it is a property of a System. And like the original MVC was MVCU: Model-View-Controller-User -- a system consists of more than just code.

I keep going back to the original REST thesis[1] -- and it's wonderful use of architectural constraints as a lens in which to say something general and useful about the nature of hypertext applications. And other architectures, which people seem to ignore all the time -- REST is just one sub-set of constraints that emerges for a rather particular application type. I really think the chapter that details all the other architectures is at least as interesting as the REST-part.

Notice how this article talks about "web servers" and "APIs" -- as if they were general, universal, system level properties -- rather than some very specific instances of RPC -- shaped by the architecture of hypertext applications and REST.

[1] http://www.ics.uci.edu/~fielding/pubs/dissertation/net_arch_...

Re:Choose design over architecture by zachrose on Thursday December 10, 2015 @01:19AM (#10709161)
Model-View-Controller-User? Really? That's awesome!

I would have expected there to be a mention of this on c2.com[1]. Any other places I might find it?

[1] http://c2.com/cgi/wiki?ModelViewControllerHistory

Re:Choose design over architecture by e12e on Thursday December 10, 2015 @01:28AM (#10709187)
https://heim.ifi.uio.no/~trygver/themes/mvc/mvc-index.html

[Ed: note the illustration. On a cellphone, so a little painful to read through - I just remember Trygve mentioning it in a presentation I had the good fortune to attend a few years back]

[Ed2: Here's at least one reference to MVC-U, from one of the presentations on DCI (a successor to MVC of sorts):

http://www.artima.com/articles/dci_vision.html

"Most programmers think of MVC as a fancy composition of several instances of the Observer pattern. Most programming environments provide MVC base classes that can be extended to synchronize the state of the Model, the View, and the Controller. (Model, View and Controller are actually roles that can be played by the objects that the user provides—we'll talk more about roles later.) So it's just a housekeeping technique, right? To think of it that way is to take a nerd's perspective. We'll call that perspective "Model-View-Controller." More deeply, the framework exists to separate the representation of information from user interaction. In that capacity we'll call it "Model-View-Controller-User," capturing all four of the important actors at work—MVC-U for short."

As I recall, in the presentation, it was indicated that this was the an emphasis on what MVC originally was about, and that the User-bit originally was such a central part of the whole thing, that it was also part of the name -- but that the "U" got dropped at some point (ie: in the late 70s when they were writing up this stuff initially).]