tags:

views:

118

answers:

3

I have lately been delving into F# and the new DSL stuff as in the Microsoft SQL Server Modelling CTP, and have some concerns.

Will this new idea that will come about be bad for skilled programmers?

Is code going to be dumbed down?

I know I sound like a luddite, but this does worry me, after spending years of time practising in my craft, and now might be scuttled by genius from within.

I am afraid, very afraid.

Will I be now trapped in a job that only programs against a DSL and therefore every job that I work on, I have to learn a whole new DSL based on top of a Framework (.net Java), that I will only be allowed to touch certain parts of.

I don't think the world is ready for DSL, but the sales pitch is deafening!

+2  A: 

I wouldn't worry, DSL's are a long, long, long ways away from being embraced by your average corporate IT department.

kekekela
Phew! I think that the marketing guys are sharpening their tools, I feel hacksaws and crowbars are out, and the market is waiting for the new golden hammer.
WeNeedAnswers
+3  A: 

DSLs will liberate programmers from doing a non-programming stuff. Cleaner separation of responsibilities is always a good idea. Programmers should program (e.g., implement DSLs), and other domain experts should do what they are good in. I am personally doing whatever I can to turn this industry towards a wider use of DSLs. I do not want to code business logic. I love to implement compilers. So I'm not afraid. I am looking forward for a time when every little task will require its own little DSL.

SK-logic
Like anything, a tool in the right hands can create wonderful things, however I feel that this kind of tool in the wrong hands will cause more harm than good. Language is a great thing and I love describing things to the best of my ability. To restrict someone's vocabulary I think is deplorable.These mini languages will be written not by capable experts in these matters, but by everyday normal bods. I think this is a dangerous Idea that will create terrible creations.There is no such thing as a domain expert, if we are going down that route then we need Anthropologists. A new kind of Job.
WeNeedAnswers
How many of these DSL's will contain the concept of Employee, Company, Customer and Address. I can see the books with the example of the bank account already! arghhhh! save me!
WeNeedAnswers
@iestyn: If people are creating these disasters, the market will require a capable person to fix them. You could probably make a lot more fixing these abominations rather than creating good ones from the start...
Austin Salonen
Any instrument of abstraction may go terribly wrong in the wrong hands. But, this is what the whole programming thing is about. OOP is a sort of a tool for building abstractions - and, yes, we've seen a hell lot of abominations made of it. LOP won't be that much different. It allows to produce better abstractions, and there will be cases of severe misuse. Just as with any other tool.
SK-logic
Like your style Austin.
WeNeedAnswers
+1  A: 

There will always be a need for real, knowledgeable programmers to construct those DSLs and to add new capabilities to them as requirements change. No problem domain is static.

Novelocrat
Problem though is the fact that the inmates will run the asylum. Some of the so called "Domain Experts" I have worked with are nightmares. If I design tools based on DSL's for them, I think that the power will corrupt them and they will go mental, like cats on catnip! I can see as I have done in the past, that when you do too good a job, your skills will no longer be required. A bit like creating a robot that does your job. I do not want to be a robot mechanic.
WeNeedAnswers
@iestyn: As a business app developer, you are supposed to be working yourself out of a job. If you can get a company to that point, you should have no problem getting good recommendations and positions at another company trying to reach that state.
Austin Salonen
One would think Austin, but the nature of Capitalism, is all about saving money. I do get good reputations and have spent years out in the field with a CV longer than most. This new stuff will change the reputation stakes, the playing field will change. Rules of the game will change with who owns the domain. This problem is not one that is technical, but a whole new way of operating. Maybe Robot Mechanic is the way to go, instead of being a robot? All a bit too Orwellian for my liking. Well Least it will sell books.
WeNeedAnswers
In the kingdom of the blind, the one eyed man is king. Better start poking peoples eyes out with my new blinding technological witch craft that is DSL!
WeNeedAnswers
@WeNeedAnswers: Yes, I would absolutely rather be a robot *engineer* than a robot.
Novelocrat