Re: ewby on programming need some tips and tricks

  • From: Jamal Mazrui <empower@xxxxxxxxx>
  • To: programmingblind@xxxxxxxxxxxxx
  • Date: Mon, 8 Dec 2008 14:14:18 -0500 (EST)

Here are some additional, miscellaneous points about languages, based on
my experience.

Studies have found that programmer productivity is significantly
affected by how many lines (or words) of code are required to accomplish
a task.  Thus, if other factors are equal, a language like Java or C# is
likely to be less productive than others that do not require declaration
of types and use of punctuation symbols.  I understand that strong
typing is intended to increase the reliability of code.

I find that C# and Visual Basic .NET are friendlier to read with a
screen reader than languages that originate on Unix platforms such as
Python.  This is because .NET uses a consistent mixed case convention
and screen readers pronounce the different parts of a syntax element in
a more intelligible manner.  Unix-based languages often use all lower
case, cramming words togetherFor example, a built-in Python class for
prompting for and retrieving a password (without echoing characters to
the screen) is called getpass.  The same thing in .NET would be GetPass.

Because Unix-based languages often wrap Win32 libraries in their Windows
implementations, there is also a problem of inconsistency about casing.
One often has to guess whether all lower case is used in the name of a
method, lower camel case (the first part is lower case), or upper camel
case (each part begins with upper case).  When a language is case
sensitive, if the guess from memory is incorrect, time is then spent
debugging that problem.  With Visual Basic, even if one guesses, say,
GetXMLNode, rather than GetXmlNode, the program will compile.  One can
then tweak aspects of style at a later point in refining an already
working program.

I think Perl has the best documentation for 3rd party packages, on
average.  I can install a package and then explore an HTML subfolder of
the Perl program folder, where I usually will find documentation.
Python's pydoc utility is not as easy to use, in my opinion.  Neither is
Ruby's equivalent.

Perl, Python, and Ruby make installing 3rd party packages much easier
than C# or Visual Basic. Simple, command-line tools are available for
searching for, downloading, and installing such packages.

Of any language I have tried to learn, I have found Perl the most
difficult.  For example, If I have not worked with it for a while, I often
forget the exact syntax for working with an array or hash that contains
non-scalar elements.

An advantage of .NET development is that one can use either a
command-line compiler or IDE, or combination of both, that are
accessible.  Another advantage is the ease of creating stand-alone
executables without extra cost.  py2exe is a valuable tool for Python but
I do not find it easy to use.

Jamal

On Mon, 8 Dec 2008, Jamal Mazrui wrote:

> Date: Mon, 8 Dec 2008 13:47:17 -0500 (EST)
> From: Jamal Mazrui <empower@xxxxxxxxx>
> Reply-To: programmingblind@xxxxxxxxxxxxx
> To: programmingblind@xxxxxxxxxxxxx
> Subject: Re: ewby on programming need some tips and tricks
>
> For whatever it's worth, my present perspective on these topics is as
> follows.
>
> If a new programmer wants to maximize the chance of getting paid
> employment, I suggest lerning Java, C#, or PHP.  If the primary interest
> is developing web sites, I recommend PHP.  If Windows desktop
> applications, I recommend either C# or Visual Basic .NET, depending on
> personal preference about syntax.  If cross-platform development is the
> highest priority, I recommend Python.
>
> Regarding Python, I think its indentation requirement is unfriendly to
> blind programmers, particularly speech-without-braille users.  Other
> aspects of a language should also be considered, however, in judging how
> friendly a language is.  Clean syntax with a minimum of punctuation
> symbols often makes a language more friendly to beginners.  In the
> languages I have mention so far, Python and Visual Basic are the
> friendliest in that respect.  Case sensitivity also makes a difference to
> friendliness.  Visual Basic is the friendliest in that respect, since the
> other languages mentioned are case sensitive.  An interactive environment
> for testing small pieces of code is another aspect of friendliness.
> Python is the best of the languages mentioned in that respect.
>
> For anyone interested in a research project, I think the topic of what
> language is easiest for a beginning blind programmer is worth
> investigating.  Without empirical evidence, it is difficult to judge how
> to weigh the different factors that affect the friendliness of a language.
> Let me encourage any student or professional researchers on this list to
> consider designing a study that may shed more light on this.
>
> Jamal
>
> __________
> View the list's information and change your settings at
> //www.freelists.org/list/programmingblind
>
__________
View the list's information and change your settings at 
//www.freelists.org/list/programmingblind

Other related posts: