7 ms·
I am one of the older'ish programmers One day a young programmer flies into the office talking about the new MVC frameworks and how it would revolutionize how
by cl8ton 13y ago
I am one of the older'ish programmers
One day a young programmer flies into the office talking about the new MVC frameworks and how it would revolutionize how we write programs.
He was mystified when I explained how MVC works to him without even looking at what framework he was ranting about.
He asked how I knew? I told him it was invented at PARC in the 70's and I've used them starting in 1995 with the MFC C++ for document view. This was more of a reintroduction of an older methodology suited to web.
Older developers also get to see the linear progression of current technologies and how they arrived at current day implementation. What worked and what didn't work.
- Evbn 13y agoWow, when kids don't even know that the latest fad was originally popularised by Apple, we have entered postmodern hipsterdom.
- zwass 13y agoAre you referring to MVC in iOS programming? I would attribute the current popularity of MVC to Rails.
- deleted 13y ago[deleted]
- btilly 13y agoThere were lots of MVC frameworks for web development that predated Rails. For example Struts.
- arethuza 13y agoAnd MVC was talked about a lot as a design pattern for Web apps before Struts was started - I remember we rolled our own rather nifty one in 2001 or so and failed to get our execs to open source it so it died when the team withered away after our acquisition.
- btilly 13y agoStruts was released in 2000, so it predates yours. However I know people who were using MVC as a design pattern in Perl in the 90s.
- huherto 13y agoMVC comes from the Smalltalk world. http://c2.com/cgi/wiki?ModelViewControllerHistory http://c2.com/cgi/wiki?ModelViewControllerHistory But it is quite different from web MVC that was popular with web frameworks like Struts. I haven't looked at the more recent javascript frameworks, but my intuition tells me that they are probably going back to the original MVC pattern. (Observer pattern to notify views when model changes)
- btilly 13y agoSaid history was referred to in the top level comment that started this discussion. I've had as a low priority idea for a few years implementing a web MVC framework that is somewhat closer to the original inspiration - not because it makes sense for generating HTML (though it actually works quite well for that) - but because it would reduce the impedance mismatch with a client-side library using the original MVC pattern. I have not actually done this for a number of reasons. The top one being that when you scratch an itch that you think someone else should have, it is much less fun and likely to work right than when you scratch your own itch. But it still bugs me that nobody has written one that works like I think it should...
- arethuza 13y agoWhat I meant was that Struts wasn't the first mention of MVC in relation to web apps - lots of people were rolling their own frameworks in 2000/2001 and MVC was a common buzzword. As most developers in those days hadn't started with web apps it wasn't surprising that the term MVC was used - e.g. we were writing MVC C++ wrappers for simulations in 93/94 and Java MVC simulations in applets from '95.
- btilly 13y ago
- throwaway1979 13y agoLOL ... I am old! I learned MVC developing MFC apps back in the 90s!!
- D9u 13y agoI resemble that remark... I'm also old. I was writing RDBMS in dBase, compiled with Clipper, on MS-DOS, in the early 1990's, when I was about 30 years of age. (I was the "old guy" 20 years ago) Wow! The decades just keep passing by with increasing relevant speed.
- cl8ton 13y agoClipper! yes that was the first language I used professionally. I tell the younger guys that before IDE's and flat memory models were around, when you programmed, you went looking to buy three things. 1. Language/Compiler 2. Linker 3. Editor And you will spend just as much time in the linker file (segmented memory back then) as you did coding. The newer tools are just light years ahead of where they started back then. Its one area I will never look back at and wish it was still around.
- stan_rogers 13y agoIt is a well-documented fact that time passes as a percentage of life lived. There is far less relative distance between decades for me now than there was between my fourth and fifth birthdays. I have kids who have kids, and they weren't around for that last episode of MASH (left out the asterisks for formatting reasons) that I'm pretty sure (in what's left of my mind) was first aired a couple of years ago.
- btilly 13y agoA friend of mine told me this longer ago than I care to be reminded of. "The older you are, the faster time goes. The telescoping effect can be quite startling."
- jorgeleo 13y agoYup, it has happen to me too. I have around 20 years in software development. Around 9 years ago... Me: We can abstract most of that data access with a simple table oriented orm. Not all of it, but a good 80%. Younger Developer: Nope, That is what record sets are for, it is right here in the Microsoft docs (pointing to the ado api) ... 5 years later, he had moved to a different company, and I received a phone call from him: Just called to say that now I understand what you wanted and how it is simpler. Me: Then I failed to communicate properly. What could I have say that would have make you give it a chance? Him: Nothing, I needed to learn it the hard way. Experience teach. A few months ago, working with very young dev. team. Tech lead (late 20s): We need to do all using TDD, if it is not TDD we don't touch it. Me: Agree, but TDD is one of several tools to DDD; the developer needs to understand what its building, not just that all checks are in green. Tech Lead: The devs only need the proper test. Now they drop the core calculations from the project because they couldn't understand them by just looking at the tests, I got task with that, and a salary increase. And some how the tech lead think it is unfair because he "gets" Git and Resharper much better than me. Aaawww, the luxury of being young.
- benjamincburns 13y agoRespectfully, I have to disagree with your assessment that age is the contributing factor here. I'd argue that pragmatism is what you're seeing. Pragmatism might correlate with experience, and experience is only gained with time (thus age), but I'd be careful about jumping to that conclusion. There's nothing beyond assumption (this article included) that says younger people are always, or even usually, less pragmatic. [Edit: That said your tech lead is an idiot if he thinks he should be paid more for a better understanding of technologies tangential to his core goal while he has a weaker understanding of the goal itself.]
- jorgeleo 13y agoRespectfully I submit that we might not be in a big disagreement here. Pragmatism is a very high contributing facts. My personal experience has not show me IF pragmatism is better. Instead experience has show me WHAT is worth to be pragmatic about. My observation is that experience leads to emotional maturity, which leads to better pragmatic choices. It is the fear to make mistakes, hence the industry coined "Fail fast". It is the ego boost of "I just learned this cool technology", as opposed to "If this is so cool, hasn't been invented before? How did it look like?" (Another post showed an example with MVC). It is the "I own the world" feeling that we all have as young adults. And there are some "bad" apples in the VC culture that can exploit that. [And I don't think the tech lead is an idiot, he is where I was 18 years ago]
- rayiner 13y agoThere is very little new under the sun, at least if you're talking about what's going on in the mainstream rather than what's happening in the theoretical space (with GADTs, dependent types, etc). It's been a very long time since I saw software development technology that wasn't just the application of something developed in the 1960's through 1980's. "Oh, Java has lambdas now? Here are the design patterns that take advantage of them. They were well-understood in 1975." "Oh, Ruby has generational garbage collection now? Here is the paper describing the performance characteristics of that--from 1984." I think TypeScript is actually one of the more genuinely interesting developments recently--it's state of the art circa 1996 (Abadi and Cardelli's "A Theory of Objects.") This is not really a dig at software development. There is, for example, very little in aerospace that has changed more than incrementally since the 1970's. But people have this perception of software development as this rapidly changing field where knowledge becomes obsolete in the course of a couple of years, when in reality the basic principles are really quite well-developed and mature. Keeping up with software development technology is mostly a matter of figuring out how people have gussied up old ideas with new syntax. All of the interesting stuff now is domain specific. Algorithms for self-driving cars? Yeah, that's something that we didn't have 20 years ago.
- vilhelm_s 13y agoAnd GATDs and dependent types are pretty old too by now. E.g. Martin-Löf Type Theory was first published 1971-1972. :)
- discreteevent 13y agoThat's interesting. What is it about Typescript specifically that you think aligns it with "A Theory of Objects"? (not expecting a thesis in your answer)
- rayiner 13y agoAbadi and Cardelli lay out an object oriented calculus with object literals and structural object types. Typescript's object literals and structural object types seem very similar.
- ww520 13y agoThere is indeed very little new under the sun. A lot of stuff are just repackaging of old ideas. I remembered reading the Self language paper and thought it was cool as heck, objects all the way, no classes. Then later Javascript came along with its prototype and people thought it's the shit. I was like, whatever, it has been done before.
- Illotus 13y agoIf I remember correctly Brendan Eich was originally promised that he could build Self for Netscape, but later due to various reasons had to change the syntax and all that. Also the popularity of javascript in the geekdom is in my recollection fairly recent phenomenon. It became interesting only after ajax, before that it was a leper like php.