부가 달력의 변천을 되돌아보다
14330 단어 Python추가 캘린더 2020
advent 달력 2020이 끝난 후 일주일 동안 역법도 약간의 변화가 생겼다. 아무도 advent 달력을 볼 수 없을 것이다. 과거의 advent 달력을 대조해 트렌드의 변천을 살펴보자.
해본 일
결실
표 1. 프로그래밍 언어
2019년부터 Rust가 인기가 많은 것 같아요.Go에서 개발하는 기업도 늘고 인기도 꾸준히 상승하고 있다.MATLAB와 파이썬 등 데이터 해석계의 언어는 여전히 인기가 많다.
표 2. 라이브러리
Laavel은 언어 프레임에서 인기가 많습니다.그리고 2020년에는 Unity나 Unreal Engine 같은 VR 엔진이 인기를 끌었다.난잡하게 말하지만 플랫폼이 이동에서 VR로 이동하는 날도 가까워졌죠.
표 3. 데이터베이스
PostgreSQL은 여전히 인기가 많다.나는 노스QL과에 가입했다는 보도도 괜찮다고 생각한다.
표 4. 이동
코스프레이트 형식 개발에서는 구글의 플루터, 페이스북의 리액트 네이티브가 인기를 끌었다.Google의 Firebase 등과 결합하면 모바일 애플리케이션의 개발이 더욱 간편해지겠죠.
표 5.DevOps
CI/CD 툴에는 Circle CI, Infrastructure as Code에는 Ansible, Terraform, Kubernetes가 인기다.인프라 부근에서 Docker로 컨테이너화하고 GiitHub로 지점 관리, CI로 자동화하는 것이 정형화의 증거죠.
끝말
Qita의 부가 달력을 돌이켜보면 올해 트렌드도 예상할 수 있을 것 같다.
저는 개인적으로 2021년에 VR 개발 환경이 급격히 향상되고 모바일 애플리케이션 개발이 더욱 활발해지면서 포화되고 환경 자동화 추진에 따라 인프라 엔지니어의 수요도 증가할 것이라고 생각합니다.
기술의 유행과 폐지가 치열하기 때문에 앞으로도 지정관측을 해야 한다.
Code
get_ad_cal.py
import requests
import pandas as pd
import numpy as np
from tqdm import tqdm
from bs4 import BeautifulSoup as bs
year = '2020'
url = 'https://qiita.com/advent-calendar/'+year+'/ranking/'
feed = 'feedbacks/categories/'
keyword_list = ['feedbacks', feed+'programming_languages', feed+'libraries', feed+'databases', feed+'web_technologies', feed+'mobile', feed+'devops', feed+'iot', feed+'os', feed+'editors', feed+'academic', feed+'services', feed+'company', feed+'miscellaneous']
columns_list = ['feedbacks', 'programming_languages', 'libraries', 'databases', 'web_technologies', 'mobile', 'devops', 'iot', 'os', 'editors', 'academic', 'services', 'company', 'miscellaneous']
def get_item_name(keyword):
key_url = url+keyword
res = requests.get(key_url)
if res.status_code == 200:
soup = bs(res.text, 'html.parser')
items = soup.find_all('a', class_='ad-Item_name')
else:
pass
for item in items:
items_list.append(item.text)
return items_list
df_list = []
for keyword in keyword_list:
items_list = []
items_list = get_item_name(keyword)
df_items = pd.DataFrame(items_list)
df_list.append(df_items)
np_list = np.arange(1, 21)
np_list = list(np_list)
df = pd.DataFrame(np_list)
for i in range(len(df_list)):
df[columns_list[i]] = df_list[i]
df.to_csv('ad_cal/'+year+'.csv', encoding='utf-16', index=False, sep='\t')
sort_year.py
import pandas as pd
years = ['2020', '2019', '2018', '2017', '2016', '2015']
columns_list = ['feedbacks', 'programming_languages', 'libraries', 'databases', 'web_technologies', 'mobile', 'devops', 'iot', 'os', 'editors', 'academic', 'services', 'company', 'miscellaneous']
for column in columns_list:
dic_year = {}
for year in years:
df = pd.read_csv('ad_cal/'+year+'.csv', encoding='utf-16', sep='\t')
try:
df = df[column]
dic_year[year] = df
except:
continue
df_cat = pd.DataFrame.from_dict(dic_year)
df_cat.to_csv('ad_cal/'+column+'.csv', encoding='utf-16', sep='\t', index=False)
Reference
이 문제에 관하여(부가 달력의 변천을 되돌아보다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/revvve44/items/83403bf81e406cf78dd3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Qita의 부가 달력을 돌이켜보면 올해 트렌드도 예상할 수 있을 것 같다.
저는 개인적으로 2021년에 VR 개발 환경이 급격히 향상되고 모바일 애플리케이션 개발이 더욱 활발해지면서 포화되고 환경 자동화 추진에 따라 인프라 엔지니어의 수요도 증가할 것이라고 생각합니다.
기술의 유행과 폐지가 치열하기 때문에 앞으로도 지정관측을 해야 한다.
Code
get_ad_cal.py
import requests
import pandas as pd
import numpy as np
from tqdm import tqdm
from bs4 import BeautifulSoup as bs
year = '2020'
url = 'https://qiita.com/advent-calendar/'+year+'/ranking/'
feed = 'feedbacks/categories/'
keyword_list = ['feedbacks', feed+'programming_languages', feed+'libraries', feed+'databases', feed+'web_technologies', feed+'mobile', feed+'devops', feed+'iot', feed+'os', feed+'editors', feed+'academic', feed+'services', feed+'company', feed+'miscellaneous']
columns_list = ['feedbacks', 'programming_languages', 'libraries', 'databases', 'web_technologies', 'mobile', 'devops', 'iot', 'os', 'editors', 'academic', 'services', 'company', 'miscellaneous']
def get_item_name(keyword):
key_url = url+keyword
res = requests.get(key_url)
if res.status_code == 200:
soup = bs(res.text, 'html.parser')
items = soup.find_all('a', class_='ad-Item_name')
else:
pass
for item in items:
items_list.append(item.text)
return items_list
df_list = []
for keyword in keyword_list:
items_list = []
items_list = get_item_name(keyword)
df_items = pd.DataFrame(items_list)
df_list.append(df_items)
np_list = np.arange(1, 21)
np_list = list(np_list)
df = pd.DataFrame(np_list)
for i in range(len(df_list)):
df[columns_list[i]] = df_list[i]
df.to_csv('ad_cal/'+year+'.csv', encoding='utf-16', index=False, sep='\t')
sort_year.py
import pandas as pd
years = ['2020', '2019', '2018', '2017', '2016', '2015']
columns_list = ['feedbacks', 'programming_languages', 'libraries', 'databases', 'web_technologies', 'mobile', 'devops', 'iot', 'os', 'editors', 'academic', 'services', 'company', 'miscellaneous']
for column in columns_list:
dic_year = {}
for year in years:
df = pd.read_csv('ad_cal/'+year+'.csv', encoding='utf-16', sep='\t')
try:
df = df[column]
dic_year[year] = df
except:
continue
df_cat = pd.DataFrame.from_dict(dic_year)
df_cat.to_csv('ad_cal/'+column+'.csv', encoding='utf-16', sep='\t', index=False)
Reference
이 문제에 관하여(부가 달력의 변천을 되돌아보다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/revvve44/items/83403bf81e406cf78dd3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import requests
import pandas as pd
import numpy as np
from tqdm import tqdm
from bs4 import BeautifulSoup as bs
year = '2020'
url = 'https://qiita.com/advent-calendar/'+year+'/ranking/'
feed = 'feedbacks/categories/'
keyword_list = ['feedbacks', feed+'programming_languages', feed+'libraries', feed+'databases', feed+'web_technologies', feed+'mobile', feed+'devops', feed+'iot', feed+'os', feed+'editors', feed+'academic', feed+'services', feed+'company', feed+'miscellaneous']
columns_list = ['feedbacks', 'programming_languages', 'libraries', 'databases', 'web_technologies', 'mobile', 'devops', 'iot', 'os', 'editors', 'academic', 'services', 'company', 'miscellaneous']
def get_item_name(keyword):
key_url = url+keyword
res = requests.get(key_url)
if res.status_code == 200:
soup = bs(res.text, 'html.parser')
items = soup.find_all('a', class_='ad-Item_name')
else:
pass
for item in items:
items_list.append(item.text)
return items_list
df_list = []
for keyword in keyword_list:
items_list = []
items_list = get_item_name(keyword)
df_items = pd.DataFrame(items_list)
df_list.append(df_items)
np_list = np.arange(1, 21)
np_list = list(np_list)
df = pd.DataFrame(np_list)
for i in range(len(df_list)):
df[columns_list[i]] = df_list[i]
df.to_csv('ad_cal/'+year+'.csv', encoding='utf-16', index=False, sep='\t')
import pandas as pd
years = ['2020', '2019', '2018', '2017', '2016', '2015']
columns_list = ['feedbacks', 'programming_languages', 'libraries', 'databases', 'web_technologies', 'mobile', 'devops', 'iot', 'os', 'editors', 'academic', 'services', 'company', 'miscellaneous']
for column in columns_list:
dic_year = {}
for year in years:
df = pd.read_csv('ad_cal/'+year+'.csv', encoding='utf-16', sep='\t')
try:
df = df[column]
dic_year[year] = df
except:
continue
df_cat = pd.DataFrame.from_dict(dic_year)
df_cat.to_csv('ad_cal/'+column+'.csv', encoding='utf-16', sep='\t', index=False)
Reference
이 문제에 관하여(부가 달력의 변천을 되돌아보다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/revvve44/items/83403bf81e406cf78dd3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)