

The 90/10/0 Principle: Programming vs. Languages - redhotvengeance
http://redhotvengeance.com/2012/11/26/the-90-10-0-principle/

======
dagw
I disagree that it's all just syntax with minor variations in API. Imagine you
have a bunch of data in various tabular forms. Now imagine you have to find
all the rows that match some complex set of criteria. The way you'd approach
the problem in C or Java is entirely different from the way you'd approach the
problem in SQL. In fact chances are, if you're using C, a likely approach
would be to find a way to call SQL from C and solve the problem using SQL.

~~~
redhotvengeance
Interesting point.

As with your previous comment on functional languages, I'd argue declarative
query languages are more about a difference in thought process. Query
languages definitely have a major shift in syntax, but I think the more
significant shift is in the theory.

One thing absent from my article is addressing the major categorical
differences of programming language types. Perhaps I will post an update to
address the topic of imperative vs. functional vs. declarative.

------
ankurdhama
Well... It seems you have programmed only in C family of languages
(c/c++/java/c# blah blah) as most people on this planet have and they all
think same about programming languages ... best of luck with this thinking

~~~
redhotvengeance
While it is true that I have quite a lot of experience in C-syntax based
languages, I've also done quite a bit of Ruby programming, and dabbled in
Python as well, both of which are nothing like C.

Regardless, I don't see how having programmed in C family languages
invalidates the fact that programming is about problem solving, not syntax.

~~~
dagw
_quite a bit of Ruby programming, and dabbled in Python as well, both of which
are nothing like C._

I'd say they're quite similar to C family languages in that they're both
largely imperative languages with OO support and a smattering of functional
features.

If you want to see something that's nothing like C I'd look at something non-
imperative like Prolog or Haskell. Once you've done that you'll see how much
Ruby and Python actually resemble the C-family of languages.

~~~
redhotvengeance
Fair enough. When viewed from a use-case perspective, I suppose you could
claim that Ruby and Python are similar to C family languages.

I actually have started exploring Haskell recently, and clearly functional
programming languages require a different thought process than imperative
languages.

I'd still assert, however, that the difference in thought process is a growth
in the theory of programming, or what I called the "0%". That's why many
programmers find it hard to learn functional languages - it requires a great
deal of conceptual learning. It has very little to do with the syntax.

