We need a programming language for the rest of us

  Leaves of code        2011-07-22 02:20:09       3,807        0    

Recently I took on the enormous task of learning Objective-C from the bottom up and I was struck by something I couldn’t shake: this is too hard. An experienced developer might scoff at me for saying that, but it’s true. I’ll be honest about my education, Calculus II was the most math I ever took, I have an advanced degree from Berkeley in Journalism. I am a proficient HTML/CSS developer and can glue enough javascript together to solve almost any problem that has presented itself. My first encounter with C was at a community college when I was 13, and found the syntax so repetitive and purposefully obscure that I hid from it for years.

Now, many years later trying to restart, you might accuse me of not trying hard enough, but that simply isn’t true – I’ll continue plugging away at Objective-C until I’m functionally competent. However, I can’t but help that C is a syntax which refuses scalable learning and hides behind overly complex system.


Shield of Complexity

Saying C is too complex betrays that it takes a very specific syntax to define all the functions (or possible functions) of a computer. I acknowledge that its specificity is required to interact with hardware across many platforms, but learning C shouldn’t have to be a bottom up affair. I want to start with the big ideas and make my way down, and I suspect I am not alone. I can’t help but think a language founded by PhD’s suffers from the ‘shield of complexity’. In other words, those who know it have little interest in simplifying it as it devalues their own knowledge.

This is an unsustainable attitude in a society so tightly integrated with technology, where code is growing to the importance of literacy.

It can be easier if we just had better code grocery stores

I was struck recently while I was at the grocery store with my girlfriend, ruffling through stacks of fresh fruits and vegetables to find all the ingredients for a meal. Why can’t coding be more like this? I thought, more like picking ingredients for a meal. Learning C is like learning the genetic sequencing of a tomato. While it certainly is required for the tomato to exist, I don’t need to be familiar with it to slice it and put it together with a list of ingredients. It’s outside the resolution of knowledge required for preparing a meal.

On top of that, if every would-be chef needed to know the genetic sequence of a tomato before he or she constructed a meal, they’d probably never get around to the cooking. In fact, they’d probably never become a chef in the first place, because they, naturally, would not have been a very good geneticist.

Libraries, code-bases, and other niche hangouts aren’t enough

What I’m talking about is beyond some visual basic for the new age or a wysiwyg for C, but a natural language syntax which calls on object libraries within C which form a simpler foundation for learning.
As programs become an increasingly essential part of our day to day lives, we need to help kids learn code which will aid them for the rest of their lives. Mandating that they learn highly advanced mathematical skills mixed with a non-natural linguistics (asterisks as pointers, period condensed syntax, c’mon!) just is not realistic. It’s keeping curious children from learning the basic skills which they could later build on if they get as far as multivariable calculus. In the meantime, the rest of us could benefit from a programming language which doesn’t require years to learn. In short, we need a language for those of us who are skilled in fields other than mathematics. We need a language which embraces a more natural syntax (yes its possible) and a language which allows junior developers to both define and script without using a term-base which has grown to an astronomical size. Have you looked at the number of method calls in all the various branches of C lately?

Making code as simple as possible is charity for the rest of us

Can the complex branches of C be condensed into a series of objects which can be strung together using natural language? I think so, but for the moment it’s far beyond my ability. I do know that we cannot continue down a path of increasingly complexity in programming languages, if only that it will eventually become impenetrable to all but the most dedicated users. This artificial barrier will keep the expression of thousands or maybe millions of voices from reaching users.

Source : http://www.leavesofcode.com/2011/06/we-need-programming-language-for-rest.html

CODE.PROGRAMMING  EXPECTATION  EASY-TO-USE 

       

  RELATED


  0 COMMENT


No comment for this article.



  RANDOM FUN

Error everywhere