Childchen的Blog

技术阅读无限空间
posts - 79, comments - 54, trackbacks - 0, articles - 0

导航

公告

2010年美国计算机图书市场Part4

Posted on 2011-02-24 22:32 childchen 阅读(...) 评论(...) 编辑 收藏

第四部分:编程语言表现

在第四部分中,我们看看编程语言,并更进一步看看每个语言领域。

整体来讲,编程语言的市场2010年与2009年相比,下降了6.27%。2009年的销售册数为6,303,125,而2010年味5,931,452,减少了371,673册。Java在销售册数方面增长最大,2010年比2009年增加了28,633册;而PHP的下降最多,2010年比2009年销售册数减少了38,614。

 

在开始深入分析语言之前,先说明一下“语言维度”。当我们按照语言维度来分类图书的时候,我们按照图书的代码示例所使用的语言来分类。因此,使用Java进行Flash编程的图书,会分入到Flash五级领域,但是,其语言维度将会是Java。类似的,O’Reilly的Head First Design Patterns一书中的示例是用Java编写的,因此,它在语言维度上标记为Java。

 

2009年和2010年是编程语言领域图书销售最糟糕的两年。下面的图中,没有包含面向方法的、关于项目管理、关于消费者操作系统的图书,也没有包含那些不涉及语言内容的图书。因此,这和本报告第一部分的市场整体视角是不同的。在下图中可以看到,2010年和2009年的每周销量,都分别低于前一年度。

 

AllYearsLanguages.jpg

 

2008年,我提到C#作为语言超越了Java。但是,Java在2009年反弹并且在2010年复苏,现在成为图书销售方面排名第一的语言。从下面的2010年前20名语言图表中,可以看到,Java在语言中大大领先,Objective-C进入了第三位,紧随在C#之后。

 


2010 语言市场占有率


Top20_langs_2010.jpg

 

看看下面的表,就知道哪种语言在2004年到2010年有这最大的销量。较新的语言,或者“过时”的语言,可能没有表示出来,因为它们很少有机会产生较为显著的销量,而进入在我们的数据集。这张图基本上反映了这段时期每种语言图书的总销售册数。前10名的语言,在7年之间,产生了7,655,365册的销售;而11到20名的语言,在同样的时期内,销售了1,919,691册。前10名的语言占这段时期总销售册数的80%。可以看到,2009年之前,C#稳定增长;而同一时期,Java正在下降。除了Java,VBA、VBScript、SAS、JavaScript、C++和C在2009年到2010年都有所上升。另外的13种语言在2009年到2010年呈现下降的趋势。

 


AllYearsT20Langs.jpg


编程语言的Treemap视图如下



prog_lang_tree.jpg

 

上图比较了2010年第四季度和2009年第四季度的情况,我们注意到有很多亮绿色的区域,有几个深绿色的区域,还有一些黑色和红色区域。Objective-C下降了12%的主要原因是,其2009年的销量很大,这很难继续保持。在Treemap视图上,该语言从一个小斑点成长为占据相当大的一个方块。

 

先来看看对语言的分组,我们按照2004年到2010年这些语言的图书的总销售册数来分组。在下表中可以看到,只有中等偏大的组在2010年是增长的,而其他的组都下降了。带动中等偏大领域增长的语言是R。有趣的一点是,这一统计语言与我们在Strata大会上讨论的那些语言很类似。也就是说,R、SAS、Matlab、Labview、Mathematica和SPSS综合起来,销售册数增长了49 504,增长率达到了惊人的102.87%。Google首席经济学家Hal Varian关于统计学将是未来最热门职业的言论,激励着开发者去学习这些语言。

 

分组

销售册数范围

Y2010 销售册数

Y2009 销售册数

Y2010 品种数

Y2009品种数

10占有率

09占有率

特大

50,000 — 200,000

1,051,945

1,069,762

1,590

1,433

75.96%

75.00%

较大

10,000 — 49,000

227,306

254,587

450

456

16.41%

17.85%

中等偏大

3,000 — 9,999

53,152

44,909

104

85

3.84%

3.15%

中等偏小

1,682 — 2,999

20,818

20,965

61

58

1.50%

1.47%

较小

1,000 — 1,680

13,000

15,517

46

31

0.94%

1.09%

最小

399 — 999

6,299

6,350

25

19

0.45%

0.45%

其他

< 399

3,370

6,368

49

43

0.24%

0.45%

 

为了以更加便于阅读的格式来分组和展示这些信息,我们将按照如下的标题方式,来展示个语言分类:

 

*特大*

销售册数

品种数

市场占有率

1. 语言

2. 2010 销售册数

3. 2009 销售册数

4. 2010品种数

5. 2009品种数

6. 10年市场占有率

7. 09年市场占有率

       

 

1.语言的名称或缩写

2.2010年销售册数

3. 2009年销售册数

4.2010年Bookscan 3000中的品种数

5.2009年Bookscan 3000中的品种数

6.2010年市场占有率

7. 2009年市场占有率

 

下表包含了特大类语言的数据。可以看到,前10种语言中的5种在2010年是增长的,Java一马当先,逆转之势给人印象深刻。你可能还记得,在以前的报告中,Java的销售册数稳定下降,至少持续到2009年,在2010年继续下滑。Android开发带来了Java的复苏?即便Objective-C在2010年相比2009年下降了,但是,它进入前10名,还是令人惊讶的。该语言此前的排名在20位左右。JavaScript继续稳定地增长,巩固了其作为Web编程最常用/重要的语言的地位。

特大编程语言 — 2010年销售50,000 — 195,000册

*特大*

销售册数

品种数

市场占有率

语言

2010销售册数

2009销售册数

2010品种数

2009品种数

10年市场占有率

09年市场占有率

Java

194,520

165,887

361

332

13.90%

11.54%

C#

153,469

156,043

263

230

10.97%

10.86%

Objective C

136,711

141,608

89

51

9.77%

9.85%

JavaScript

131,850

115,107

169

157

9.42%

8.01%

PHP

106,952

145,566

163

152

7.64%

10.13%

C/C++

94,268

93,067

192

184

6.74%

6.48%

VBA

61,108

48,507

68

58

4.37%

3.38%

ActionScript

60,578

83,017

96

85

4.33%

5.78%

Python

58,905

60,700

94

84

4.21%

4.22%

SQL

53,584

60,260

95

100

3.83%

4.19%

 

如下是特大语言中的领先图书。注意,不管是按照销售册数或销售码洋排序,顺序基本一样。只不过按照销售额的话,WordPress这本书会跌出前5,而Addison-Wesley的PHP and MySQL Web Development成为第5名。

 

较大编程语言 — 2010年销售10,000 — 49,999册

还要注意,C、Powershell、ShellScript和VBscript这样的较大语言都是增长的。整体来讲,这些语言的销售册数,在2010年比2009年减少了27000册。这相当于较大语言类的12%的下降。

 

*较大*

销售册数

品种数

市场占有率

语言

2010销售册数

2009销售册数

2010品种数

2009品种数

10年市场占有率

09年市场占有率

.NET Languages

44,958

57,286

82

78

3.25%

4.02%

Visual Basic

42,225

55,574

88

94

3.05%

3.90%

C

36,638

34,820

91

83

2.65%

2.44%

Ruby

20,004

29,977

48

63

1.44%

2.10%

Powershell

18,652

12,124

26

19

1.35%

0.85%

Transact SQL

17,507

17,601

28

29

1.26%

1.23%

Perl

15,606

20,030

32

34

1.13%

1.40%

Pl/Sql

10,670

10,974

24

26

0.77%

0.77%

Shell Script

10,720

7,482

20

17

0.77%

0.52%

VBScript

10,326

8,719

11

13

0.74%

0.61%

 

较大语言中领先的图书如下。

 

Prentice Hall

C Programming Language

中文版C程序设计语言(第2版·新版)(09年度畅销榜TOP50)(08年度畅销榜TOP50)、英文影印版C程序设计语言(第2版)都由华章公司出版

Prentice Hall

Practical Guide to Linux Commands, Editors, and Shell Programming

O'Reilly

Learning Perl, 5th Edition

Morgan Kaufman

Programming Massively Parallel Processors: A Hands-on Approach (C language)

Pragmatic

Agile Web Development with Rails, Third Edition

中等偏大编程语言——2010年销售3,000 — 9,999册

这个领域中,统计语言表现相当不错。正如上面提到的,这些语言在2010年比2009年增长了102.87%。最显著的增长是R语言的8种图书,R in a Nutshell领衔这个领域。

 

*中等偏大*

销售册数

品种数

市场占有率

语言

2010销售册数

2009销售册数

2010品种数

2009品种数

10年市场占有率

09年市场占有率

SAS

9,035

7,974

27

21

0.65%

0.56%

SPSS

8,973

6,818

16

10

0.65%

0.48%

MatLab

7,857

6,752

22

17

0.57%

0.47%

R

7,800

2,817

15

12

0.56%

0.20%

Processing

6,996

6,038

8

6

.51%

.42%

Shell Script

6,073

7,116

19

16

.44%

.50%

Basic

5,540

5,277

7

9

.40%

.37%

Lua

4,677

5,570

7

6

.34%

.39%

Assembly

4,391

4,359

18

14

.32%

.31%

MDX

3,890

4,838

8

8

0.28%

0.34%

UnrealScript

3,028

2,440

3

3

.22%

.17%

 

中等偏大语言的领先图书是:

O'Reilly

R in a Nutshell: A Desktop Quick Reference

Prentice Hall

Using SPSS for Windows and Macintosh: Analyzing and Understanding Data

SAS Press

The Little SAS Book: A Primer, Fourth Edition

Open University Press

SPSS Survival Manual: A Step by Step Guide to Data Analysis Using SPSS for Windows

Sams

Mastering Unreal Technology, Volume I: Introduction to Level Design with Unreal Engine 3

中等偏小——2010年销售1,682 — 2,999册

这个领域中,函数式语言有所增长,例如,F#、Scala和Lisp。这些语言表现出51.38%的年增长率,2010年销售了7,648册,而2009年销售了3,718册。

 

*中等偏小*

销售册数

品种数

市场占有率

语言

2010销售册数

2009销售册数

2010品种数

2009品种数

10年市场占有率

09年市场占有率

F#

2,905

1,095

6

5

0.21%

0.08%

Scala

2,531

3,946

5

5

0.18%

0.28%

Groovy

2,452

3,972

7

8

0.18%

0.28%

Alice

2,441

2,472

10

9

0.18%

0.17%

Blitzmax

1,836

2,603

2

2

0.13%

0.18%

AppleScript

1,787

3,994

4

6

0.13%

0.28%

VHDL

1,785

1,733

18

15

0.13%

0.12%

Bash

1,715

183

2

1

0.12%

0.01%

Lisp

1,684

309

4

6

0.12%

0.02%

LabView

1,682

658

3

1

0.12%

0.05%

 

中等偏小领域的领先图书是:

Prentice-Hall

Learning To Program with Alice

中文版Alice学编程(原书第2)由华章公司出版

Artima

Programming in Scala: A Comprehensive Step-by-step Guide

No Starch Press

Land of Lisp: Learn to Program in Lisp, One Game at a Time!

Prentice-Hall

LabVIEW 2009 Student Edition

Manning

Real World Functional Programming: With Examples in F# and C#

较小语言——2010年销售1,000 — 1,680册

在这个领域中,可以看到10种语言中有6种在2010年销售册数减少。销售册数方面大概有年度20%的下降。亮点是Mathematica的表现,主要是Mathematica Cookbook一书做出了贡献。然而,这个领域是由函数式语言所主导的,尽管这些语言没有显著的增长。

 

*较小*

销售册数

品种数

市场占有率

语言

2010销售册数

2009销售册数

2010品种数

2009品种数

10年市场占有率

09年市场占有率

Mathematica

1,675

900

9

4

0.12%

0.06%

Erlang

1,513

2,276

3

2

0.11%

0.16%

Scheme

1,479

1,364

8

7

0.11%

0.10%

FBML

1,367

2,335

5

4

0.10%

0.16%

Clojure

1,332

1,460

2

1

0.10%

0.10%

AWK

1,200

1,642

2

2

0.09%

0.12%

Nxt-g

1,172

969

4

1

0.08%

0.07%

Scratch

1,112

674

2

2

0.08%

0.05%

Latex

1,099

1,623

6

5

0.08%

0.11%

Haskell

1,051

2,274

5

3

0.08%

0.16%

 

较小语言中领先的图书是:

O'Reilly

Mathematica Cookbook

O'Reilly

ERLANG Programming

中文版由华章公司即将出版,正在印刷中,敬请期待!

O'Reilly

Real World Haskell

Pragmatic

Programming Clojure

O'Reilly

sed & awk

最小语言——2010年销售399 — 999册

这类语言中,10种语言中有6种的销售册数在2010年增加了,然而销售册数相当小。全年销售册数下降了0.81%。我不打算列出这个领域的畅销书,因为和其他领域比,它们实在算不上畅销。

 

*最小*

销售册数

品种数

市场占有率

语言

2010销售册数

2009销售册数

2010品种数

2009品种数

10年市场占有率

09年市场占有率

Tcl

965

856

3

4

0.07%

0.06%

Stata

818

954

6

4

0.06%

0.07%

Peoplecode

702

444

2

1

0.05%

0.03%

Hla

625

0

1

0

0.05%

0.00%

Linden Script

623

1,695

4

3

0.04%

0.12%

D

604

0

1

0

0.04%

0.00%

Mel

587

1,022

5

4

0.04%

0.07%

Kml

531

973

1

1

0.04%

0.07%

Opengl Shader

445

406

1

2

0.03%

0.03%

Spin

399

0

1

0

0.03%

0.00%

其他编程语言——2010年销售< 400册

最后,如下的语言在2010年的销售小于400册。按照从大到小的顺序,依次是autolisp, unity, x++, cfml, inform, mysql spl, blitz3d, q, nxt, gml, pure data, javafx, rpg, cobol, nxc, minitab, ml, boo, ada, fortran, octave, jcl, racket, jsl, idl, cfscript, abap, verilog, m, smalltalk, mumps, go, windows script, egl, c/al, realbasic, bondi, cl, cs2, eiffel, ocaml和xquery。

接下来,第五部分将介绍电子书销售。