dlang website design

Ecstatic Coder via Digitalmars-d digitalmars-d at puremagic.com
Thu Jun 22 22:13:56 PDT 2017


> I think you'll have to elaborate on that. How is python.org 
> "obviously" targeted at inexperienced programmers and dlang.org 
> isn't? The home pages look rather similar to me: menu, search 
> box, code sample, sales pitch, those text boxes with icons, etc.
>
> What would you change on dlang.org? Completely overhaul 
> everything, or just adjust the wording and other details to be 
> more targeted at newbie programmers?

First, please notice how simple the landing page is.

Its nice visual design exhibits simplicity, and obvioulsy uses a 
few text as possible to convey the message.

I've recently studied web development for two years, and believe 
me, while not perfect, this landing page clearly matches many of 
the requirements we were taught.

And about the advertising target, the first text paragraph block 
below the code carousel you will read is :

"Get Started

Whether you're new to programming or an experienced developer, 
it's easy to learn and use Python.

Start with our Beginner’s Guide"

Pretty self-explanatory :)

It's actually the same message than in the code carousel, at 
slide 4 :

"Quick & Easy to Learn

Experienced programmers in any other language can pick up Python 
very quickly, and beginners find the clean syntax and indentation 
structure easy to learn. Whet your appetite with our Python 3 
overview."

I would summarize their moto as :

1/ Python is a scripting language that gets the job done quickly 
("Python is a programming language that lets you work quickly and 
integrate systems more effectively.")

2/ Python is very easy to learn, not only for experienced 
developers, but also for beginners ("Whether you're new to 
programming or an experienced developer, it's easy to learn and 
use Python.")

And look at the code snippets on the five slides of the carousel.

* First sample code :

# Python 3: Fibonacci series up to n
>>> def fib(n):
>>>     a, b = 0, 1
>>>     while a < n:
>>>         print(a, end=' ')
>>>         a, b = b, a+b
>>>     print()
>>> fib(1000)


* Second sample code :

# Python 3: List comprehensions
>>> fruits = ['Banana', 'Apple', 'Lime']
>>> loud_fruits = [fruit.upper() for fruit in fruits]
>>> print(loud_fruits)
['BANANA', 'APPLE', 'LIME']

# List and the enumerate function
>>> list(enumerate(fruits))
[(0, 'Banana'), (1, 'Apple'), (2, 'Lime')]


* Third sample code :

# Python 3: Simple arithmetic
>>> 1 / 2
0.5
>>> 2 ** 3
8
>>> 17 / 3  # classic division returns a float
5.666666666666667
>>> 17 // 3  # floor division
5


* Fourth sample code :

# Python 3: Simple output (with Unicode)
>>> print("Hello, I'm Python!")
Hello, I'm Python!

# Input, assignment
>>> name = input('What is your name?\n')
>>> print('Hi, %s.' % name)
What is your name?
Python
Hi, Python.


* Fifth sample code :

# For loop on a list
>>> numbers = [2, 4, 6, 8]
>>> product = 1
>>> for number in numbers:
...    product = product * number
...
>>> print('The product is:', product)
The product is: 384


These code snippets are very very simple !!! Almost baby code ;)

It seems pretty obvious to me that Python's code carousel targets 
beginner programmers, showing them simple code that they will 
easily understand.

This website is very effective at convincing people that learning 
to program in Python won't require much efforts, even if you are 
new to programming.

And I think that this message alone could be one of key reasons 
which explain Python is so popular, among others...

And when I say popular, I mean it.

Python is #4 at the Tiobe index 
(https://www.tiobe.com/tiobe-index) :

1. Java
2. C
3. C++
4. Python
5. C#
6. VB .NET
7. JavaScript
8. PHP
...

It's also #4 on the programming language popularity chart 
(http://langpop.corger.nl) :

1. JavaScript
2. Java
3. PHP
4. Python
5. C#
6. C++
...

And #3 on the RedMonk Programming Language Rankings 
(http://redmonk.com/sogrady/2017/03/17/language-rankings-1-17) :

1. JavaScript
2. Java
3. Python
4. PHP
5. C#
6. C++
...

What makes me sad with the above rankings, whether you trust them 
or not, is that I've actually used Python, Ruby and JavaScript in 
the past, and for the kind of file processing scripts and tools I 
develop, I can tell you that D is WAY better !!!

But almost nobody knows it.

And I don't think that the current website is effective at all in 
convincing people that D is indeed a better alternative to 
scripting languages like Python, Ruby or JavaScript, despite it 
really is.



More information about the Digitalmars-d mailing list