Vào mùa thu năm 2018, Python Software Foundation đã cùng với JetBrains đã thực hiện Khảo sát tình trạng Python hàng năm chính thức lần thứ hai.
Báo cáo Tình trạng Python
Bản khảo sát này cũng mới được công bố đầu năm 2019.
Giống như khảo sát trước đó, họ đã đặt ra để xác định các xu hướng mới nhất và thu thập cái nhìn sâu sắc về thế giới Python trong năm 2018.
-
Đọc Khảo sát Tình trạng Python năm 2017 tại đây
-
Nếu bạn là lập trình viên Python. Hãy tham gia Khảo sát của Python Software Foundation và Jetbrains thực hiện tại đây
Ở lần này, hơn 20.000 lập trình viên từ hơn 150 quốc gia khác nhau đã tham gia trong năm nay để giúp họ vạch ra chính xác Tình trạng Python cho đến thời điểm năm 2018.
Mục lục:
-
Tình trạng chung sử dụng Python
-
Kiểu phát triển Python
-
Tình trạng của Python 3
-
Python Framework, Libraries và công nghệ khác
-
Công cụ phát triển Python
-
Trình trạng Việc làm / Công việc của Python
-
Tóm lại những điểm chính
-
Video sự thay đổi của TOP Ngôn ngữ lập trình phổ biến nhất từ 2004 - 2006
#1. Tình trạng chung sử dụng Python
1.1. Tình trạng sử dụng Python như là một ngôn ngữ chính
Tỷ lệ sử dụng Python làm ngôn ngữ chính
Trong số 20.000 lập trình viên tham gia khảo sát được hỏi:
Có 84% người dùng Python sử dụng Python làm ngôn ngữ chính của họ, trong khi đối với 16% thì ngôn ngữ phụ của họ.
Trong năm 2017, chúng tôi đã có một bản phân phối hơi khác nhau: 79% chỉ định họ sử dụng Python làm ngôn ngữ chính và 21% làm ngôn ngữ phụ.
Từ năm 2017 - 2018, tỷ lệ sử dụng Python làm ngôn ngữ chính đã tăng 5%. Mình rất mong muốn thấy được Khảo sát năm 2019. Chắc chắn con số này sẽ tiếp tục tăng.
1.2. Sử dụng Python kết hợp với ngôn ngữ khác
Python kết hợp với ngôn ngữ khác
Như chúng ta có thể thấy,
Một nửa số người dùng Python cũng sử dụng JavaScript. Số liệu thống kê năm 2018 rất giống với kết quả năm 2017.
Sự khác biệt đáng kể duy nhất là Bash / Shell đã tăng từ 36% trong năm 2017 lên 45% vào năm 2018.
Go và SQL cũng đã tăng 2 điểm phần trăm mỗi, trong khi nhiều ngôn ngữ khác như C / C ++, Java và C # đã mất thị phần của chúng.
Như năm 2017, việc phân tích các ngôn ngữ hơi khác nhau đối với những người sử dụng Python làm ngôn ngữ phụ, với ít lập trình viên sử dụng JavaScript hơn (47%) nhưng cũng sử dụng C / C ++ (39%), Java (35%) nhiều hơn, Và C # (19%).
Python là ngôn ngữ chính kết hợp với ngôn ngữ khác
Python là ngôn ngữ phụ khi kết hợp với ngôn ngữ khác
#2. Kiểu phát triển Python
Ở phần khảo sát này, Python Software Foundation và Jetbrains muốn biết những kiểu lập trình viên Python làm gì (nghĩa là họ đóng vai trò lập trình viên nào) và cách họ kết hợp chúng.
2.1. Mục đích chủ yếu khi sử dụng Python là gì?
Sử dụng Python chủ yếu làm dự án cá nhân và Chuyên nghiệp
Bạn thấy đó, Python đều được sử dụng rất nhiều trong các dự án cá nhân và cả dự án chuyên nghiệp.
Và, các lập trình viên Python sử dụng chúng cả tại nơi làm việc và ở nhà.
2.2. Sử dụng Python để làm loại dự án gì?
Loại dự án sử dụng Python làm ngôn ngữ chính
Đáng chú ý là Phân tích dữ liệu đã trở nên phổ biến hơn so với Lập trình Web, tăng từ 50% năm 2017 lên 58% vào năm 2018.
Học máy cũng tăng 7% so với năm 2017. Các loại dự án này đang có tốc độ tăng trưởng nhanh hơn so với dự án Web (chỉ tăng 2% so với năm trước).
Giống như năm 2017, dự án web là danh mục duy nhất có khoảng cách tăng trưởng lớn (56% so với 36%) tách biệt những người sử dụng Python làm ngôn ngữ chính so với ngôn ngữ phụ.
Đối với các loại dự án khác, sự khác biệt nhỏ hơn nhiều.
Loại dự án sử dụng Python làm ngôn ngữ phụ
Năm 2018, đã có nhiều người được hỏi xác định rõ hơn họ tham gia vào DevOps (tăng 8% so với năm 2017). Về mặt Lập trình viên Python sử dụng Python làm ngôn ngữ phụ, DevOps đã vượt qua dự án web.
2.3. Bạn sử dụng Python cho dự án là vì Công việc hay vì Sở thích?
Loại dự án sử dụng Python vì lý do Công việc hay do Sở thích
Với câu hỏi này, chúng ta đã hiểu rõ hơn về các loại dự án khác nhau được lựa chọn bởi người trả lời trong câu hỏi trắc nghiệm trước đó.
Bạn có thể thấy rõ rằng các lập trình viên sử dụng Python để phát triển Game như là một sở thích.
Trong khi phát triển web, học máy, phân tích dữ liệu và kiểm tra phần mềm thì các lập trình viên sử dụng Python chủ yếu là vì yêu cầu công việc.
2.4. Bạn hay sử dụng Python để làm gì?
Bạn hay sử dụng Python để làm gì?
Trong câu hỏi này, người trả lời chỉ có thể chọn một tùy chọn. Thoạt nhìn, kết quả cho thấy lập trình web chiếm tỷ trọng rất lớn (27%), hơn rất nhiều phân tích dữ liệu (17%).
Python được sử dụng làm Khoa học dữ liệu nhiều hơn Lập trình web 1%
Nhưng nếu chúng ta xem xét kỹ hơn, chúng ta sẽ thấy có sự tăng trưởng với Học máy (11%). Nếu chúng ta kết hợp Phân tích dữ liệu + Học máy cùng nhau thành một loại là Data Science, thì con số này lên tới 28%.
Giống như năm 2017, lập trình web và khoa học dữ liệu vẫn là các loại phát triển Python chính trong năm 2018.
Tuy nhiên, chúng ta cũng nhận thấy rằng Khoa học dữ liệu với Python đang phát triển nhanh hơn rất nhiều như là một cách sử dụng bổ sung cho ngôn ngữ, bằng chứng là có nhiều câu trả lời cho câu hỏi, "Bạn sử dụng Python để làm dự án gì?"
DevOps / Quản trị hệ thống / Viết script tự động hóa đã chuyển sang vị trí đầu tiên trong số những người dùng Python sử dụng nó làm ngôn ngữ thứ cấp.
Phát hiện này tương quan với việc sử dụng Bash / Shell tăng lên như được nhấn mạnh trong phần trước.
#3. Tình trạng của Python 3
3.1. Python 3 vs Python 2
Python 3 vs Python 2
Đối với câu hỏi, bạn sử dụng phiên bản Python nào nhiều nhất?
Python 3 chiếm ưu thế lớn với 84% và Python 2 được sử dụng làm trình thông dịch chính chỉ 16%. Đó là một bước nhảy lớn trong sự phổ biến của Python 3, từ 75% trong năm 2017.
Việc sử dụng Python 3 tiếp tục phát triển nhanh chóng. Theo nghiên cứu mới nhất năm 2017, 75% đã sử dụng Python 3 so với 25% cho Python 2.
Việc sử dụng Python 2 đang giảm dần vì nó không còn được phát triển tích cực, không nhận được các tính năng mới và việc bảo trì của nó sẽ bị dừng lại Năm 2020 (Chi tiết tại đây)
3.2. Tỷ lệ sử dụng các phiên bản trong Python 3
Tỷ lệ các phiên bản trong Python 3
3.3. Tỷ lệ sử dụng các phiên bản trong Pytphon 2
Tỷ lệ các phiên bản trong Python 2
3.4. Tỷ lệ sử dụng Python 3 qua các năm
Tỷ lệ sử dụng Python 3 qua các năm
Lưu ý: Dữ liệu về tỷ lệ sử dụng Python 3 qua các năm trước được lấy từ các khảo sát có sẵn công khai: 2014, 2015, 2016 và 2017.
Tỷ lệ sử dụng Python 2, 3 trong Lập trình Web, Khoa học dữ liệu và DevOps
Một phát hiện thú vị khác là chỉ có 82% những người chủ yếu thực hiện lập trình web đang sử dụng Python 3, trong khi đối với những người làm về Khoa học dữ liệu thì con số này lên tới 90%.
Lý do có thể xảy ra là do một số dự án lập trình web vẫn còn kế thừa rất nhiều code khi chuyển sang Python 3.
Mặt khác, nhiều nhà phân tích dữ liệu và chuyên gia học máy mới tham gia hệ sinh thái Python và họ đã bắt đầu với phiên bản Python mới nhất.
#4. Python Framework, Libraries và công nghệ khác
Phần này nêu bật sự phổ biến của các Framework, thư viện và công nghệ Python khác nhau mà các lập trình viên Python đang sử dụng.
4.1. Web Framework của Python
Web Framework của Python
Điều đáng ngạc nhiên so với năm trước là, theo trả lời của những lập trình viên đã tham gia khảo sát của Python Software Foundation và Jetbrains thì:
-
Việc sử dụng Flask đã tăng 15% (hiện tại 47%) trong số những người trả lời khảo sát của chúng tôi và như vậy, năm nay Flask Framework đã trở thành khung web phổ biến nhất. (Tham khảo: Flask là gì?)
-
Django được lựa chọn bởi 45% số người được hỏi (41% trong năm 2017). (Tham khảo: Django là gì?)
Note: Đây là câu hỏi nhiều lựa chọn
4.2. Các thư viện và Framework cho Data Science
Thư viện Python hàng đầu dành cho Data Science
Không có gì ngạc nhiên ở đây, các khung và thư viện khoa học dữ liệu phổ biến nhất là:
-
NumPy
-
Pandas
-
Matplotlib
-
SciPy
Các thư viện dành riêng cho Học máy như SciKit-Learn, TensorFlow, Keras và các thư viện khác cũng khá phổ biến, điều này tương quan lớn với việc phát hiện ra Học máy đang phát triển nhanh chóng như một kiểu phát triển chính của Python.
Note: Đây là câu hỏi nhiều lựa chọn
4.3. Các Thư viện và Framework chung của Python
Các Framework chung phổ biến của Python
Đối với câu hỏi này, chúng ta liệt kê một số thư viện Python chung.
Không có gì ngạc nhiên, Request được sử dụng bởi hơn 50%.
Pillow cũng rất phổ biến.
Và 1/5 lập trình viên Python đã sử dụng Asyncio.
Note: Đây là câu hỏi nhiều lựa chọn
4.4. Các nền tảng Cloud hàng đầu
Nền tảng Cloud hàng đầu các Lập trình viên Python lựa chọn
55% lập trình viên Python thích sử dụng AWS (Sản phẩm của Amazone).
Google Cloud Platform đứng thứ hai, theo sau là DigitalOcean, Heroku, Microsoft Azure và PythonAnywhere.
Khoảng 1/3 số người được hỏi không sử dụng bất kỳ giải pháp cloud nào.
#5. Công cụ phát triển Python
5.1. Hệ điều hành
Hệ điều hành phổ biến các Lập trình viên Python lựa chọn
Đáng ngạc nhiên là gần 2/3 số người được hỏi đã chọn Linux làm hệ điều hành của họ.
Xin lưu ý, đối với câu hỏi này, người tham gia được phép chọn nhiều câu trả lời. Vì thế không rút ra kết luận hệ điều hành nào phổ biến nhất ở đây.
5.2. Testing Frameworks
Testing Framework phổ biến dành cho Python
Unit - testing framework hàng đầu là pytest theo sau là unittest.
Các unit - testing framework khác là ít phổ biến hơn. Điều này khá ngạc nhiên khi 35% người dùng Python không sử dụng bất kỳ testing framework nào và có lẽ họ tự kiểm thử bằng mắt thường. :D
5.3. Database
Database phổ biến sử dụng trong Lập trình Python
Hầu hết mọi người đang sử dụng các cơ sở dữ liệu nguồn mở hoặc miễn phí như PostgreSQL, MySQL hoặc SQLite.
Các cơ sở dữ liệu Non - relational như MongoDB và Redis cũng rất phổ biến với số lượng lớn người dùng Python sử dụng cho dự án Học máy hoặc Data Engineering.
5.4. ORMs
ORMs phổ biến nhất
Hai ORM phổ biến nhất là SQLAlchemy và Django ORM phù hợp với sự phổ biến của hai Web Framework hàng đầu là: Flask và Django.
5.5. Bạn sử dụng công cụ Big Data nào?
Tool Big Data phổ biến nhất
Các công cụ dành cho Big Data có nhiều khả năng được sử dụng bởi các Kỹ sư Học máy, đó là lý do tại sao 76% số người được hỏi không lựa chọn.
Trong Big Data, Spark là công cụ hàng đầu, theo sau là Hadoop và Kafka.
5.6. IDE và Editor
Một câu hỏi cũng được đưa ra để xác định các trình soạn thảo và IDE phổ biến nhất đối với các lập trình viên sử dụng Python.
Các tùy chọn có ít hơn 1% vào năm 2018, được kết hợp với nhau trong tùy chọn Khác.
IDE và Editor phổ biến dành cho Python
PyCharm là công cụ phổ biến nhất để phát triển Python với tỷ lệ kết hợp 35% cho các phiên bản Community và Professional của PyCharm.
Và thật thú vị, VS Code đã tăng từ 7% trong năm 2017 lên 16% vào năm 2018, trở thành Editor phổ biến thứ hai để lập trình Python.
Rất có thể là do sự tăng trưởng nhanh chóng của VS Code, nhiều Editor khác đã bị giảm tỷ lệ người dùng.
IDE và Editor phổ biến dành cho phát triển website với Python
Các lập trình viên phát triển website có sở thích biên tập hơi khác nhau với các nhà Khoa học dữ liệu.
Họ thích PyCharm, VS Code, Vim và Sublime hơn nhiều so với các nhà khoa học dữ liệu, trong khi nhiều nhà khoa học dữ liệu thích Jupyter Notebook.
IDE và Editor phổ biến dành cho nhà Khoa học dữ liệu
#6. Trình trạng Việc làm / Công việc của Python
6.1. Tình trạng Việc làm
Tình trạng việc làm của các Lập trình viên sử dụng Python
Hơn một nửa số người dùng Python đang làm việc fulltime, 19% là sinh viên, trong khi chỉ có 13% là tự kinh doanh hoặc làm freelancer.
6.2. Vị trí công việc
Vị trí công việc của các Lập trình viên sử dụng Python
Người trả lời có thể chọn nhiều vai trò công việc, vì vậy tổng số lớn hơn 100%.
Khoảng 3/4 xác định là lập trình viên Python và gần 1/5 là nhà phân tích dữ liệu, kiến trúc sư hoặc trưởng nhóm.
Trong nhóm "Other", các câu trả lời hàng đầu bao gồm nhà Khoa học dữ liệu, DevOps, nhà nghiên cứu và giáo viên.
6.3. Kinh nghiệm
Kinh nghiệm của các Lập trình viên sử dụng Python
So với kết quả năm 2017, năm nay chúng tôi đã thấy có nhiều người trả lời có nhiều năm kinh nghiệm hơn.
Các cấp độ kinh nghiệm của người dùng Python rất đa dạng, không có danh mục hàng đầu rõ ràng.
6.4. Độ tuổi
Độ tuổi của các Lập trình viên sử dụng Python
21 - 29 là độ tuổi phổ biến trong số những người tham gia khảo sát, với gần 1/3 là ở độ tuổi ba mươi.
Rất nhiều người trẻ tuổi dường như cũng thích Python.
#7. Tóm lại những điểm chính của Khảo sát Python
Key #1:
Tỷ lệ chấp nhận Python 3 đang tăng nhanh và đã ở mức 84%, trong khi Python 2 được sử dụng làm trình thông dịch chính bởi chỉ 16% người dùng Python.
Đó là một bước nhảy lớn về mức độ phổ biến đối với Python 3 (từ 75% trong năm 2017).
Key #2:
Phân tích dữ liệu đã trở nên phổ biến hơn so với phát triển web trong số người dùng Python, tăng từ 50% năm 2017 lên 58% vào năm 2018.
Key #3:
Một nửa trong số tất cả các lập trình viên đang sử dụng Python làm ngôn ngữ chính của họ cũng sử dụng JavaScript.
Python cũng thường được sử dụng cùng với HTML / CSS, Bash / Shell, SQL, C / C ++ và Java.
Key #4:
Flask và Django là các Framework phổ biến nhất đối với các lập trình viên phát triển web.
Cả Flask và Django có tỷ lệ gần nhau nhau (khoảng 45%), chúng bỏ xa các Web Framework khác của Python.
Key #5:
NumPy, Pandas, Matplotlib và SciPy là các thư viện và Framework phổ biến nhất dành cho Khoa học dữ liệu.
Các thư viện dành riêng cho Học máy như SciKit-Learn, TensorFlow, Keras và các thư viện khác cũng khá phổ biến.
Key #6:
AWS là cloud platform phổ biến nhất dành cho các lập trình viên Python, tiếp theo là Google Cloud Platform, Heroku, DigitalOcean và Microsoft Azure.
Key #7:
Năm 2018, chúng ta đã có nhiều người trả lời có liên quan đến DevOps (tăng 8% so với năm 2017).
Về mặt sử dụng Python làm ngôn ngữ phụ, DevOps đã vượt qua sự lập trình web.
Key #8:
PyCharm với hai phiên bản là công cụ phổ biến nhất để lập trình Python.
Thật thú vị, khi VS Code đã tăng trưởng từ 7% trong năm 2017 lên 16% vào năm 2018, khiến nó trở Python Editor phổ biến thứ hai.
Các Editor phổ biến khác cho Python bao gồm Vim, Sublime và Jupyter Notebook.
Key #9:
Đáng ngạc nhiên, gần 2/3 các lập trình viên Python chọn Linux làm hệ điều hành chính của họ.
Ngoài ra, đây là một bảng xếp hạng khá là hữu ích để tham khảo. Bảng xếp hạng cho thấy những ngôn ngữ nào đang tích cực được học và giảng dạy.
Thống kê sự phổ biến của các ngôn ngữ lập trình hàng đầu theo PYPL Index
Có thể bạn chưa biết: PYPL Index là chỉ số thống kê dựa trên số lượng hướng dẫn về ngôn ngữ lập trình được tìm thấy trên Google. Càng nhiều hướng dẫn được tìm thấy, ngôn ngữ đó càng phổ biến.
Tổng kết
Python đang phát triển mạnh mẽ. Với Báo cáo khảo sát Tình trạng Python này bạn cũng phần nào hiểu được về thế giới Python.
Và nếu bạn muốn tham gia hay muốn tìm một cơ hội để nổi bật trong lĩnh vực lập trình thì hãy Học Python ngay!!!
Đặc biệt, với sự phát triển ngày càng lớn của các công nghệ như AI, Machine Learning, Deep Learning, Big Data. Python hoàn toàn có thể cho bạn cơ hội đột phá.
Chi tiết báo cáo vui lòng xem thêm tại đây!
---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Dạy học Lập trình chất lượng cao (Since 2002). Học làm Lập trình viên. Hành động ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0914939543 - 0353655150
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
#niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp #python