Cách khách quan tốt nhất để đo lường xu hướng phổ biến ngôn ngữ là gì? (Điều gì tốt hơn TIOBE?) [Đóng]


15

Cách tốt nhất để có được dữ liệu về mức độ phổ biến của ngôn ngữ máy tính mà tôi biết là chỉ số TIOBE. Nhưng mọi người đều biết rằng TIOBE là một thiếu sót vô vọng. (Nếu ai đó cung cấp một liên kết để hỗ trợ điều này, tôi sẽ thêm nó vào đây.)

Vì vậy, có dữ liệu về sự phổ biến ngôn ngữ lập trình thường được coi là có ý nghĩa? Lựa chọn duy nhất khác mà tôi biết là xem xét các xu hướng tại really.com, vốn đã bị thiếu sót, dựa trên các bài đăng công việc.

Không giống như tôi sẽ đưa ra quyết định ngôn ngữ trong tương lai chỉ dựa trên một chỉ mục, nhưng nó có thể mang lại sự cân bằng hữu ích cho viễn cảnh sai lệch mà người ta có được bằng cách nói chuyện với bạn bè và đồng nghiệp.

Để minh họa cho sự thiên vị đó, tôi sẽ chỉ ra rằng dựa trên kinh nghiệm của những người mà tôi biết, các ngôn ngữ duy nhất được sử dụng chuyên nghiệp ngày nay (theo thứ tự phổ biến) là Java, C #, Groovy, JavaScript, Ruby, Objective C và Perl. (Mặc dù rõ ràng là C, C ++ và PHP đã được sử dụng trong quá khứ.)

Vì vậy, câu hỏi của tôi là, tất cả mọi người bash TIOBE, nhưng còn gì nữa không? Nếu vậy, bất cứ ai có thể giải thích làm thế nào chúng ta biết thay thế có phương pháp tốt hơn? Cảm ơn.

Câu trả lời:


14

Một cách khác là xem xét số lượng câu hỏi cho mỗi thẻ ngôn ngữ lập trình trên StackOverflow.

Tôi thiết lập Truy vấn nhanh để thực hiện điều đó: Đăng số lượng theo thẻ

Không có gì đáng ngạc nhiên, với bản chất của cộng đồng đó, C # có một vị trí dẫn đầu đáng kể.

Tất nhiên điều này cũng thiên vị so với các ngôn ngữ mà vì dễ sử dụng có thể có ít người đặt câu hỏi hơn.


+1 trang đẹp và cũng đưa ra những hạn chế của cách tiếp cận ...
Rook

10
SO khởi đầu bằng cách được quảng bá bởi blog của Jeff và Joel, và do đó có được sự thiên vị .NET mạnh mẽ. Làm thế nào điều này đã ảnh hưởng đến cộng đồng tiếp theo của nó là nghi vấn. Chẳng hạn, có rất nhiều người C ++ ở đó, nhưng điều đó có phản ánh bất kỳ con số thực nào không?
David Thornley

Đó là lý do tại sao tôi nói "với bản chất của cộng đồng đó, C # có một vị trí dẫn đầu đáng kể."
JohnFx

10
Là số lượng câu hỏi về một ngôn ngữ cụ thể trên SO là thước đo mức độ phổ biến của nó, hay thước đo độ khó hiểu của nó?
Robert Harvey

1
"Tất nhiên điều này cũng thiên vị với các ngôn ngữ mà vì dễ sử dụng có thể có ít người đặt câu hỏi hơn.": Quan sát tuyệt vời! +1
Giorgio

6

Như tôi đã nhận xét trước đây :

"nhưng không có nguồn nào tốt hơn để đo lường mức độ phổ biến ngôn ngữ" - đó là vì không cần một thứ gì cả. Không ai có ý thức quan tâm đến thứ hạng - miễn là ngôn ngữ của bạn còn sống và làm những gì bạn cần, không cần phải lo lắng về thứ hạng tùy tiện ngớ ngẩn.


Có nhiều lý do mà dữ liệu đó là hữu ích. Nhưng nó có thể là TIOBE đủ tốt cho những lý do đó.
Eric Wilson

Nếu bạn muốn nêu ra những lý do đó, tôi chắc chắn rằng bản thân tôi và những người khác có thể chứng minh rằng họ không hợp lý và / hoặc TIOBE không giải quyết chúng.
Peter Boughton

Có phải là không hợp lý để tự hỏi nếu, nói, sự quan tâm đến Java đang tăng lên trước khi nói, dạy Java cho một lập trình viên vừa chớm nở 14 tuổi? Một chỉ số tốt sẽ không bao giờ cung cấp câu trả lời cho câu hỏi, nhưng để nói rằng dữ liệu tốt sẽ không có tác dụng trong bất kỳ quyết định nào gây khó chịu.
Eric Wilson

4
Đừng dạy Java cho một lập trình viên vừa chớm nở 14 tuổi. Dạy lập trình cho họ. Chắc chắn, bắt đầu với Java để làm như vậy, nếu bạn muốn, nhưng sử dụng nó như một công cụ để dạy cho họ các kỹ năng chuyển nhượng . Việc chỉ biết một cú pháp và mô hình là không hợp lý, cũng không có hại khi học một ngôn ngữ hiện có thể ít phổ biến hơn. (ví dụ Obj-C lớn như thế nào trước khi SDK iPhone đến?)
Peter Boughton

1
Bắt đầu với một ngôn ngữ, hầu như bất kỳ ngôn ngữ nào, với một trình thông dịch tương tác. Đừng bắt đầu với Java hoặc bất kỳ ngôn ngữ nào yêu cầu một bước biên dịch riêng.
kevin cline

5

Muốn quảng cáo - Mặc dù chúng có thể không phải là tốt nhất cho cộng đồng quốc tế, nhưng chúng có xu hướng là một thước đo rất tốt về khu vực địa phương nơi bạn đang làm việc. Nếu bạn đột nhiên bắt đầu thấy một quảng cáo tìm kiếm các nhà phát triển biết ngôn ngữ x khi trước đây từng có quảng cáo tìm kiếm các nhà phát triển biết ngôn ngữ y và các xu hướng này tồn tại trong vài tháng, thì điều đó có thể cho thấy sự thay đổi về mức độ phổ biến trong khu vực của bạn.


1
Vấn đề với điều này là muốn quảng cáo là một chỉ số tụt hậu, trong khi OP dường như muốn có một chỉ số hàng đầu.
dsimcha

3
Indeed.com có một công cụ tốt đẹp cho loại nghiên cứu này ( indeed.com/... )
JohnFx

Tất nhiên, tôi đã đề cập thực sự.com
Eric Wilson

2
Đây không phải là cung và cầu, đây chỉ là nhu cầu.
jk.

3

Khá nhiều vì lý do tương tự bạn gặp rắc rối được mô tả ở đây: http://blog.timbunce.org/2008/04/12/tiobe-or-not-tiobe-lies-damned-lies-and-statistic/ bạn đang đi có vấn đề tương tự với bất kỳ xếp hạng "giả vờ nói những gì phổ biến trên nhiều quần thể" khác.

Các đơn vị vận chuyển không thể được so sánh với các đơn vị tải về

Lấy số liệu sử dụng từ các trang web hoặc ngôn ngữ phần mềm thương mại được sử dụng trong nghiên cứu hoặc toán học vì những thứ đó không được tiết lộ.

Làm bất cứ điều gì với xu hướng hoặc phân tích từ khóa có thể là xu hướng hoặc là một từ thông dụng.

Trừ khi bạn có một khu vực mục tiêu trong tâm trí, thật khó để đề xuất những gì sẽ tốt hơn. Tôi đoán dựa trên các ngôn ngữ mà bạn đề cập, bạn có thể quan tâm nhiều hơn về mặt hợp thời trang, nhưng như một câu trả lời chung thì điều này không tốt vì có lẽ có một số lượng tương đương những người quan tâm đến khía cạnh lo9ng.


3

Cách duy nhất tôi có thể thấy là khảo sát chung về dân số. Một cái gì đó giống như một cuộc khảo sát điện thoại được sử dụng bởi các nhà thăm dò chính trị. Bạn có thể phải gọi 100.000 người ngẫu nhiên để tiếp cận đủ những người tự báo cáo là lập trình viên để làm cho kết quả hợp lệ. Sau đó hỏi họ những gì họ sử dụng.

Lý do bạn cần làm điều này là mọi chỉ số trực tuyến đều tự chọn và do đó không chính xác. Tiobe, tìm kiếm google, bài viết SO, bất cứ điều gì. Bạn cũng không thể nhìn vào sự tham dự của coference hoặc đăng ký tạp chí.

Nếu bạn muốn thống kê sử dụng thực tế, bạn cần khảo sát dân số nói chung.


1

Xu hướng của Google là một xu hướng khác mà bạn có thể sử dụng.

Không có câu trả lời hoặc nguồn dữ liệu chính xác 100% trong không gian này. Điều tốt nhất bạn có thể làm là tổng hợp dữ liệu từ nhiều nguồn khác nhau và đưa ra kết luận chính xác nhất có thể từ đó.


1

Thật thú vị khi khảo sát một loạt các kho lưu trữ mã nguồn mở lớn và đo xem có bao nhiêu dòng mã mới trong mỗi ngôn ngữ được cam kết mỗi tuần. Không chắc chắn những con số thực tế sẽ cho bạn biết bất cứ điều gì, nhưng xu hướng theo thời gian có thể rất lộ liễu.

Tôi thích điều này như là một biện pháp vì nó liên quan nhiều hơn đến bao nhiêu công việc thực tế được thực hiện bằng ngôn ngữ thay vì mức độ bối rối của mọi người bởi điều mới mẻ (đó là tỷ lệ tìm kiếm / câu hỏi của google / SO bị ảnh hưởng nhiều bởi Tôi nghĩ).

Tất nhiên, có tất cả các loại vấn đề với số liệu đề xuất của tôi quá; FOSS-world là một tập hợp con của thế giới thực, một số ngôn ngữ hấp dẫn các kho lưu trữ cụ thể (mà bạn có thể bỏ lỡ), một số ngôn ngữ hiệu quả hơn và tất cả các vấn đề khác liên quan đến số liệu LỘC. Có lẽ chỉ "số lần xác nhận" trong mỗi ngôn ngữ sẽ hữu ích hơn.

Bất cứ ai cũng biết nếu số liệu thống kê như vậy có sẵn bất cứ nơi nào ngày hôm nay? Có vẻ như một cái gì đó Ohloh / Koders / Krugle có thể làm được.


1

Đây là một anh chàng đã nghiên cứu mối tương quan giữa number-of-code-repose-on-github.com so với # of-post-tags-with- "ngôn ngữ" trên stackoverflow.com. Dữ liệu từ năm 2010, từ rất lâu rồi. Chủ đề bình luận dài.

http://www.dataists.com/2010/12/ranking-the-p Phổ biến-of-programming-langauges /

Đây là một nguồn dữ liệu khác, từ một công ty môi giới việc làm, url chấp nhận tham số "q" trong chuỗi truy vấn, đưa ra một sơ đồ

http://www.indeed.com/jobtrends

http://www.indeed.com/jobtrends?q=perl


-1

Như mọi người đều nói "nó hơi bị n", và bên cạnh đó bạn không được nhìn thấy xu hướng trong tương lai vì ngay cả trên kết quả cụm từ tìm kiếm, bạn sẽ nhận được rất nhiều người nói về lý do tại sao "ngôn ngữ cũ" lại tốt hơn "ngôn ngữ xu hướng mới" và do đó làm lệch kết quả.

Trang web 'Ngôn ngữ phổ biến' đã cố gắng tổng hợp tải các tìm kiếm ngôn ngữ từ các trang web khác nhau để đưa ra một cái nhìn tổng quan, chỉ họ mới giải thích ngôn ngữ nào phổ biến trên các trang web nào và cho phép bạn quyết định ý nghĩa nào, ví dụ: Google thích C, Yahoo thích C ++ trong khi Craigslist thích PHP. (trang web kể từ khi không còn tồn tại)

Tôi nghĩ rằng tốt nhất là thị trường việc làm - ngôn ngữ hiển thị nhiều nhất trên quảng cáo việc làm là một chỉ số công bằng, cùng với mức lương được cung cấp cho họ.


Trang web Ngôn ngữ phổ biến (langpop.com) hiện cố gắng cài đặt tiện ích mở rộng trong trình duyệt của bạn. Đừng theo liên kết, hoặc làm như vậy một cách cẩn thận.
Ellen Spertus

@EllenSpertus đó là liên kết chết khi tôi thử. Cập nhật ngay.
gbjbaanb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.