ááŸá áºáá áºáá°áž Olivier ááŒá®ážááœá¬ážáá±á¬á¡áá«ááœáẠáá»áœááºá¯ááºááœáẠáá¬ááŸáá¯ááºá áá¬áááŸááááŒáá·áº Habrahabr (ááŸáá·áºáááºá ááºááááºáá±á¬ááºážáá»á¬áž) á០áá±á¬ááºážáá«ážá¡á¬ážáá¯á¶ážááᯠáá»áœááºá¯ááºáááœááºáá»á°áá¬ááá¯á· áá±á«ááºážáá¯ááºáá¯ááºááŒá®áž á á°ážá ááºážááẠáá¯á¶ážááŒááºáá²á·áááºá
á áááºáááºá á¬ážá áᬠáá¬ááºáááºážáá»á¬ážá áœá¬ ááŸááá²á·áááºá áááºážááá¯á·áá²á០ááááá¯á¶ážá¡áá»ááºááŸá¬ ááá¯ááºááááºááŸáááŸá¯ 12 ááŸá áºáá¬áá¬áá¡ááœááºáž áá±á¬ááºážáá«ážáá»á¬ážá áá±á¬áºáááºááŸáá·áº á¡ááŒá±á¬ááºážá¡áá¬áá»á¬áž ááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážááŒá áºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá á¡áá»áá¯á·áá±á¬á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážá ááá¯ááºážááá áºááẠááœáŸááºááŒáááºá á¡áááºá¡á áẠ- ááŒááºá
ááœá²ááŒááºážá áááºááŒá¬ááŒááºážáá¯ááºáááºážá ááº
Habr áááºáá²á·ááá¯á· ááœá¶á·ááŒáá¯ážááá¯ážáááºáá¬áááºááᯠáá¬ážáááºáááºá áááºážá áá±á¬ááºážáá«ážáá»á¬ážá¡á¬ážáá¯á¶ážááᯠááŒááºáááºážááŒá®áž áááºážááá¯á·áá¶á០áááºáá¬á¡áá»ááºá¡áááºáá»á¬ážááᯠáá¯ááºáá°ááẠááá¯á¡ááºááẠ(á¥ááá¬á áááºá áœá²áá»á¬áž)á áá±á¬ááºážáá«ážá¡á¬ážáá¯á¶ážááá¯á· ááá·áºááºáá»á¬ážááẠ"habrahabr.ru/post/337722/" ááŸáá·áºáá°áá±á¬ááŒá±á¬áá·áº ááŸá±á¬ááºááœááºážáááºááŸá¬ ááœááºáá°ááŒá®áž áá¶áá«ááºáá»á¬ážááᯠá¡á ááºááá¯ááºá¡ááá¯ááºáž á¡ááá¡áá»áá±ážáá¬ážáááºá áá±á¬ááºáá¯á¶ážááá¯á·á áºááœáẠáá¶áá«áẠ350 ááẠá¡áááºážáááºáááºážááŒá±á¬ááºáž ááááá¯ááºááááŒáá·áºá ááŒá áºááá¯ááºááŒá±ááŸááá±á¬ document id á¡á¬ážáá¯á¶ážááᯠá¡ááá¯ááºážáá áºáá¯á¡ááœááºáž ááŒááºááœá¬ážááẠ(Python code)á
import numpy as np
from multiprocessing import Pool
with Pool(100) as p:
docs = p.map(download_document, np.arange(350000))
áá¯ááºáá±á¬ááºáá»áẠdownload_document
áááºááá¯ááºáᬠid ááŒáá·áº á
á¬áá»ááºááŸá¬ááᯠáááºááẠááŒáá¯ážá
á¬ážááŒá®áž html ááœá²á·á
ááºážáá¯á¶á០á¡áááá¹áá«ááºááŸááá±á¬ á¡áá»ááºá¡áááºááᯠáá¯ááºáá°ááẠááŒáá¯ážá
á¬ážáááºá
import requests
from bs4 import BeautifulSoup
def download_document(pid):
""" Download and process a Habr document and its comments """
# вÑгÑÑзка ЎПкÑЌеМÑа
r = requests.get('https://habrahabr.ru/post/' +str(pid) + '/')
# паÑÑОМг ЎПкÑЌеМÑа
soup = BeautifulSoup(r.text, 'html5lib') # instead of html.parser
doc = {}
doc['id'] = pid
if not soup.find("span", {"class": "post__title-text"}):
# ÑакПе бÑваеÑ, еÑлО ÑÑаÑÑÑ ÐœÐµ ÑÑÑеÑÑвПвала ОлО ÑЎалеМа
doc['status'] = 'title_not_found'
else:
doc['status'] = 'ok'
doc['title'] = soup.find("span", {"class": "post__title-text"}).text
doc['text'] = soup.find("div", {"class": "post__text"}).text
doc['time'] = soup.find("span", {"class": "post__time"}).text
# create other fields: hubs, tags, views, comments, votes, etc.
# ...
# ÑПÑ
ÑаМеМОе ÑезÑлÑÑаÑа в ПÑЎелÑÐœÑй Ñайл
fname = r'files/' + str(pid) + '.pkl'
with open(fname, 'wb') as f:
pickle.dump(doc, f)
ááœá²ááŒááºážá áááºááŒá¬ááŒááºážáá¯ááºáááºážá ááºááœááºá áá»áœááºá¯ááºááẠá¡áá áºá¡áááºážáá»á¬ážá áœá¬ááᯠááŸá¬ááœá±ááœá±á·ááŸááá²á·áááºá
ááááŠážá áœá¬á áááá¯áááºáá¬ááœáẠcores áá»á¬ážáááºááá¯á áá¯ááºáááºážá ááºáá»á¬ážááᯠáááºáá®ážááŒááºážááẠá¡áá¯á¶ážááááºááŒá±á¬ááºáž áááºážááá¯á·á ááá¯áááºá áá«áá±ááá·áº áá«á·ááá á¹á ááŸá¬á ááá·áºáááºá¡áááºážá¡ááŒá áºá áááá¯áááºáá¬ááá¯ááºáá±ááá·áº ááœááºáááºáá²á· áá¯ááºáááºážá áẠ100 á 4 ááá¯á·ááá¯áẠ20 ááẠááá¯ááŒááºáááºááá¯á· ááœááºáá¬áááºá
áá¯áááá¡áá±ááŒáá·áºá á¡áá»áá¯á·áá±á¬ ááá¯á·á
áºáá»á¬ážááœáẠá¡áá°ážáá¬ááºáá±á¬ááºáá»á¬áž áá±á«ááºážá
ááºááŸá¯áá»á¬ážáá«ááŸáááẠ- á¥ááá¬á "%&#@" áá²á·ááá¯á·áá±á¬ áá®ááá
áá¬ážáá»á¬ážá ááœááºáá¬áááºá html.parser
ááááá¯á¶ážáá²á·áá±á¬á áá±á«ááºážá
ááºááŸá¯ááᯠáá¯á¶á·ááŒááºáááºá &#
áá¬áá»ááºá
áœá¬á áááºážááᯠhtml entity áá¡á
áá¯ááŸááºáá°áá«á á¡á±á¬ááºáááºážááá¬ááᯠáá«áá¯ááºáá±ááŒá®á áá«áá±ááá·áº parser ááá¯ááŒá±á¬ááºážááá¯á· ááá¯áááºá á¡ááŒá¶ááŒá¯áá¬ážáá«áááºá
ááááá¡áá±áá²á·á áá¯á¶ážáá¯áááœá²ááẠá á¬áá±á¡á¬ážáá¯á¶ážááᯠááœáŸáá·áºáá¯ááºááá¯ááºáá²á·áááºá 65927á 162075 ááŸáá·áº 275987 áá¶áá«ááºáá« á á¬ááœááºá á¬áááºážáá»á¬ážááᯠáá»áœááºá¯ááºá ááá¯ááºážáááºá áºááŸáááºáááºážáá±ážá០áá»ááºáá»ááºážáá»ááºáá áºááá¯ááºáá«áááºá á€á¡áá¬áá»á¬ážááẠá¡áá¹ááá¬ááºááŸááá±á¬ pdf áá áºáá¯ááᯠáá±á«ááºážáá¯ááºáá¯ááºááá·áº javascript ááœááºážáááºáá áºáá¯á¡ááŒá±á¬ááºážá ááá±á¬ááºáá¬ááááºá¡ááºáá»á¬ážá¡á á¯áá áºáá¯ááá¯á¶á á¶ááŒáá·áº SMS ransomware ááŸáá·áº iPhones áá»á¬ážááᯠááŒááºáááºá áááºáááºá¡ááœáẠCrashSafari.com ááá¯ááºá០áá±á¬ááºážáá«ážáá»á¬ážááŒá áºáááºá Antivirus ááẠáá±á¬ááºááá¯ááºážááœááºá á áá áºá áááºáááºá á áºáá±ážáá±á ááºá¡ááœááºážá á¡áá¯á¶ážááŒá¯áá°ááááá¯áááºáá¬ááá¯á¡áá¯á¶ážááŒá¯ááá·áº cryptocurrency áá°ážáá±á¬áºáááºá¡ááœáẠá¡áá¯á¶ážááŒá¯áá°ááááá¯áááºáá¬ááá¯á¡áá¯á¶ážááŒá¯ááá·áº á¡áááºááœá±ážáááá á¹áá¬ááºá ááá¯ážáááºááá¯ááºááœáẠscript áá»á¬ážá¡ááŒá±á¬ááºáž 338586 ááᯠááá¯á·á áºáááºáá«á ááá¯á·ááŒá±á¬áá·áº antivirus áá¡áá¯ááºááẠáá¯á¶áá±á¬ááºáááºáᯠáá»áœááºá¯ááºááá¯á·áá°áááá¯ááºáá«áááºá
"ááá¯ááºááá¯ááº" áá±á¬ááºážáá«ážáá»á¬ážááẠááŒá áºááá¯ááºáá»á±á¡áá»á¬ážáá¯á¶áž 166307 á¡ááá¯ááºážáá»á¬ážá áááºáááºáá»áŸáᬠááŒá áºáá²á·áááºá áá»ááºá¡áá¬áá»á¬ážááŸáá·áºáááºáááºá Habr ááẠ"á á¬áá»ááºááŸá¬ááẠáá±ááºáá±á¬ááºáá»áá±ááŒá®á áá»ááºáá¬ážááẠááá¯á·ááá¯áẠáá¯á¶ážááááŸááá²á·áá«á" áá±á¬ááºážááŒá®á áá¬áááá¯ááŒá áºááœá¬ážááá¯ááºáááºá
áá±á¬ááºážáá«ážáá»á¬áž á¡ááºáá¯ááºáááºááŒááºážááᯠáááºážááá¬ááá¯ááºáᬠá¡áá¯ááºááŒáá·áº áá¯ááºáá±á¬ááºáá²á·áááº- á¥ááá¬á áá¯ááºáá±ááá·áºáááºá
áœá²áá»á¬ážááᯠ"'21 áá®áááºáᬠ2006 áá¶ááẠ10:47 áá¬áá®" áá±á¬áºáááºá០á
á¶á¡ááŒá
áºááá¯á· ááŒá±á¬ááºážááááºááŒá
áºáá«áááºá datetime
, ááŸáá·áº "12,8k" ááŒáá·áºááŸá¯ááŸá¯ - 12800á á€á¡ááá·áºááœááºá áá±á¬ááºááẠááŒá
áºáááºá¡áá»áá¯á· ááœááºáá¬áá«áááºá áááºá
áá¬á¡áá±á¬ááºážáá¯á¶ážá¡áá»ááºááŸá¬ áá²áá±ááœááºááŒááºážááŸáá·áº áá±áá¬á¡áá»áá¯ážá¡á
á¬ážáá»á¬ážááŸáá·áº áááºáááºáááº- á¡áá»áá¯á·áá±á¬ááá¯á·á
áºá¡áá±á¬ááºážáá»á¬ážááœáẠint ááŒáá·áºáá»áŸá¶áá±ááŒá®áž áá
áºáá¯á
á®ááœáẠ65535 áá²áááŸááá²á·áááºá
ááááºá¡áá±ááŒáá·áº áá±á¬ááºážáá«ážáá»á¬áž (áá¯á¶ááá«áá±á¬) á á¬áá¬ážáá»á¬ážááẠáá»áœááºá¯ááºá¡á¬áž 1.5 áá áºáá«ááá¯ááºá áááºáá¬á¡áá»ááºá¡áááºáá«áá±á¬ ááŸááºáá»ááºáá»á¬áž - á¡ááŒá¬áž 3á ááŸáá·áº áá áºáá¬áá®áá«ááá¯ááºááá·áº - áá±á¬ááºážáá«ážáá»á¬ážááŸáá·áºáááºáááºáá±á¬ áááºáá¬á¡áá»ááºá¡áááºáá»á¬ážáá«ááŸááááºá áááºážááᯠRAM ááœáẠá¡ááŒáá·áºá¡áááááºážáááºážáá¬ážááá¯ááºááŒá®ážá áááºážááẠáá»áœááºá¯ááºá¡ááœáẠá¡á¶á·ááŒááœááºáá±á¬ááºážááŸáááºá
áá»áœááºá¯ááºááẠá á¬áá¬ážáá»á¬ážááŸááá¯ááºáá² áááºáá¬á¡áá»ááºá¡áááº- áááºá áœá²áá»á¬ážá áááºáá»á¬ážá á¡áá»ááºá¡áá»á¬áá»ááŸá¯á á¡ááŒááºáá»á¬ážááŸáá·áº á¡ááŒáá¯ááºáá»á¬ážá០áá±á¬ááºážáá«ážáá»á¬ážááᯠááœá²ááŒááºážá áááºááŒá¬áá±á·áá¬áá²á·áááºá á¡áá»á¬ážááŒá®ážááŒá±á¬ááŒááá¯ááºáá²á·áááºááá¯á· ááœááºáá¬áááºá
Habrahabr ááœá¶á·ááŒáá¯ážááá¯ážáááºáá±ážáááºážááŒá±á¬ááºážáá»á¬áž
ááá¯ááºáá±á«áºááŸá áá±á¬ááºážáá«ážáá»á¬ážááᯠáááá áá¯ááŸá áºááááºážá áá¯ááºáá±áá²á·ááŒá®ážá á¡ááŒááºážáááºáá¯á¶áž - áááá-áááá áá¯ááŸá áºá
ááá°áá®áá±á¬á¡áá»áááºáá»á¬ážááœáẠá€áá±á¬ááºážáá«ážáá»á¬ážááᯠáááºáá»áŸáááºááŒáœá áœá¬áááºáá²á·áááºááᯠá¡áá²ááŒááºááẠáááœááºáá°áá«á 2012 áá¯ááŸá áºááŸáá·áº áááºááœááºáá±á¬ á á¬áá¬ážáá»á¬ážááœáẠááŸááºáá»ááºáá»á¬ážááŸáá·áº á¡ááá·áºáááºááŸááºáá»ááºáá»á¬áž ááá¯ááá¯áááŸááá²á·áá±á¬áºáááºáž á¡áá áºáá±á¬ á á¬áá¬ážáá»á¬ážááœáẠááŒáá·áºááŸá¯ááŸá¯áá»á¬ážááŸáá·áº á á¬ááŸááºáá»á¬áž ááá¯áá»á¬ážáááºá á€áááºááá áºáá»á¬ážááẠ2015 áá¯ááŸá áºááœáẠáá áºááŒáááºáᬠ(áá áºáááºááá·áº) áá°áá®ááá·áºáá¯á¶á á¶á¡ááá¯ááºáž áá¯ááºáá±á¬ááºáá²á·áááºá á á®ážááœá¬ážáá±ážááŸáá·áº ááá¯ááºáá¶áá±áž á¡áá»ááºá¡áááºáž á¡ááŒá±á¡áá±ááœáẠá á¬áááºáá°áá»á¬ážá á¡á¬áá¯á¶á á°ážá áá¯ááºááŸá¯ááᯠIT ááá±á¬á·ááºáá»á¬ážá០ááá¯ááá¯áá¬áá»ááºá á±áá±á¬ ááŒá¿áá¬áá»á¬ážáá®ááá¯á· áá°ážááŒá±á¬ááºážááœá¬ážáá±áááºá
áá±á¬ááºážáá«ážáá»á¬ážá¡ááŒááºá áááºážááá¯á·áᶠááŸááºáá»ááºáá»á¬ážáá« áááºáá¶áá±á«ááºážáá¯ááºáá¯ááºáá²á·áááºá ááŸááºáá»ááºáá±á«ááºáž 6 áááºážááŸááá±á¬áºáááºáž áááºážááá¯á·á¡áááºá០240 ááᯠáá¬ážááŒá áºáá¬ážáá«ááẠ("UFO áá áºá á®ážáááºáá¬ááŒá®áž á€ááá¹áááºážá á¬á¡á¬áž á€áá±áá¬ááœáẠáá¯ááºáá±áá²á·áááº")á ááŸááºáá»ááºáá»á¬ážá¡ááœáẠá¡áá¯á¶ážáááºáá±á¬ ááá¯ááºááá¯ááºááŸá¯áá áºáá¯ááŸá¬ áááºážááá¯á·ááœáẠá¡áá»áááºáá¶ááááºááá¯ááºááŸáááºáá¬ážááŒááºáž ááŒá áºáááºá ááŸááºáá»ááºáá»á¬ážáá±ážááá·áºá¡áá»áááºááá¯áá±á·áá¬ááŒááºážááŒáá·áº áá±á¬ááºážáá«ážáá»á¬ážááá¯áááºááá·áºá¡áá«ááœáẠá¡ááŒááºážáá»ááºážáá¬ážáááºááá¯ááºáááºá
áá±á¬ááºážáá«ážá¡áá»á¬ážá á¯ááẠáá¶ááẠáá áá¬áá®á០á á áá¬áá®á¡áá áá áºáá±áá¬á áá±ážááŒá®áž ááŸááºáá»ááºáá±ážááŒáááºá ááá¯ááá¯áááºááŸá¬á áá±á¬áºá ááá¯ááŒáá¯á·á áá¯á¶ááŸááºá¡áá¯ááºáá±á·ááœáẠáááºážááẠHabr ááᯠááá±á¬áºáááºááŸááºááẠáááºááœááºáá»ááºá¡ááœáẠáááºáááºáᯠááá¯ááá¯ááá¯ááºáááºá áááºážááẠá¡áá¯ááºááœáẠá¡áá»áááºááœá²ááẠáá±á¬ááºážáá±á¬áááºážáááºážáá áºáá¯ááŒá áºáááºá á áá¬ážáá ááºá á€á¡áá»áááºáááœá²áá±ááŸá¯ááẠHabr áá¡ááŒá±áá¶á០ááá±á·áá±ááºá¡áá áááºááŒáááºáááºá
ááá¯á·áá¬ááœááºá ááŸááºáá»ááºá¡áá»áááºáá¶ááááºá á¡áááá¡áá»áá¯ážáá»á±ážáá°ážááŸá¬ áá±á¬ááºážáá«ážá "áááºááŒáœáá±á¬áá" á ááŒá¬áá»áááºááŒá áºáááºá áá±á¬ááºážáá«ážáá¯ááºáá±ááŸá¯á០áááºážáááŸááºáá»ááºááá¯á· á¡áá»áááºáááºáá²á·ááá¯á· ááœá²áá±áááºááᯠáá»áœááºá¯áẠááœááºáá»ááºáá«áááºá ááá¯á¡áá»áááºááœáẠáá»ááºážáá»áŸááŸááºáá»áẠ(á¡á áááºážáá±á¬ááºááá¯ááºáž)ááẠáá¬áá® 20 ááá·áºá¡ááœááºáž ááœááºáá±á«áºáá¬ááŒááºážááŒá áºáááºá ááá¯ááá¯áááºááŸá¬á áá¯ááºáá±ááŒá®ážáá±á¬áẠááááá±á·ááœáẠáá»ááºážáá»áŸá¡á¬ážááŒáá·áº áá±á¬ááºážáá«ážáá±á«áºááŸá ááŸááºáá»ááºá¡á¬ážáá¯á¶ážá áááºáááºáá»á±á¬áº á¡áááºážáááºáᬠáá»ááºáá±á¬á·áááºá ááŸá áºáááºá¡ááœááºáž ááŸááºáá»ááºá¡á¬ážáá¯á¶ážá 75% ááᯠáá»ááºáá¬ážáá²á·áááºá áá áºáá»áááºáááºážááŸá¬áááºá á¡á á±á¬ááá¯ááºážáá±á¬ááºážáá«ážáá»á¬ážááᯠááá¯áááŒááºáááºá áœá¬áááºááá¯ááºááẠ- á¥ááá¬á 2010 ááœáẠááŸááºáá»ááºáá áºáááºááẠááá 6 áá¬áá®á¡ááœááºáž áá±á¬ááºáá¬áááºá
ááŸááºáá»ááºáá»á¬áž ááŸááºáá¬áááºááᯠá¡á¶á·ááŒáááááº- ááŸááºáá»ááºáá áºáá¯ááŸá áá»ááºážáá»áŸáá¬ááºáá±á¬ááºá¡áá±á¡ááœááºááẠHabr ááááºáááºážáá áºáá»áŸá±á¬áẠááŸá áºááá®ážáá«ážááá¯ážáá¬áá²á·áááºá
ááŸááºáá»ááºáá»á¬ážááẠáá²áá»á¬ážááẠááá¯ááá¯ááœááºáá°áá±á¬ áá¯á¶á·ááŒááºáá»ááºááŒá áºáááºá á¡ááŒá¬ážá¡áááºážá¡ááŒá áºáá»á¬ážááŸáá·áºááá°áá² Habré ááœáẠáááºááẠpluses áá»á¬ážáá¬áá minuses áá»á¬ážááá¯áááºáž ááá·áºááœááºážááá¯ááºáááºá ááá¯á·áá±á¬áºá á á¬áááºáá°áá»á¬ážááẠáá±á¬ááºáá¯á¶ážá¡ááœáá·áºá¡áá±ážááᯠáááŒá¬áá ááá¯á¶ážáá«ááŸáá·áºá áááºááŸá áááŸá áºáááºááŸá¯áá»á¬ážáá±á á¯ááẠáá²á¡á¬ážáá¯á¶ážá 15% ááá·áºááŒá áºáááºá á¡áááºááááºá á¬ááẠááá¯áá»á¬ážáá¬áá±ááá·áº á¡áá»áááºááŒá¬áá¬áá¬áá²á·á¡áá»áŸ á á¬áááºáá°ááœá± ááá¯ááŒááºáá¬áá¬áááºá
á á¬áá¬ážáá»á¬ážááẠá¡áá»áááºááŸáá·áºá¡áá»áŸ ááŒá±á¬ááºážáá²áá¬áááºá á¥ááá¬á¡á¬ážááŒáá·áºá á¡áá»ááºá¡áááºážáá»á¬ážááŒá¬ážááŸá ááá¯ááºá áááºááŒááºážá០á á¬áá¬ážááá¯á¶ááŸááºá¡ááŸááºááẠáááºááá·áºáááœá¬ážáá«á áááºá á¯ááŸá áºáá áºáá¯á¡ááœááºáž á á¬áá¬ážáá»á¬ážááẠáááºááá®ážáá«áž ááá¯ááŸááºáá¬áááºá
á á¬áá¬ážáá¯á¶á ᶠ(áááá¡áá®ážá ááºáá¯á¶áž) áááºáž ááŒá±á¬ááºážááœá¬ážáááºá á¥ááá¬á Habr ááááááŸá áºáá»á¬ážá¡ááœááºážá á á¬áá¬ážáá»á¬ážááœáẠáá¯ááºááŸáá·áº áá¶áá«ááºáá»á¬ážáá±á ᯠááá¯ážáá¬áááº-
áááºááá¯ááºá á¡áá¯á¶ážá á¯á¶ááŒá±á¬ááºážáá²ááá¯ááºá áœááºážááᯠáá¬ážáááºááŒá®ážáá±á¬ááºá á¡áá»áá¯ážáá»áá¯ážáá±á¬á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážá áá±áááºážá á¬ážááŸá¯ááᯠáááºáá²á·ááá¯á· ááŒá±á¬ááºážáá²áá²á·áááºááᯠááá¯ááºážáá¬ááẠáá¯á¶ážááŒááºáá²á·áááºá áá±á«ááºážá ááºáá»á¬ážááᯠá á¬áá¬ážáá»á¬ážá០á¡ááá¯á¡áá»á±á¬áẠááœá±ážáá»ááºááá¯ááºáá±á¬áºáááºáž á¡á ááá¯ááºážááœáẠáááºááẠáá®ážááᯠááŒááºáááºááœááºážáá¶á áááá±á¬áºáááºáž áá±á¬ááºážáá«ážáá áºáá¯á á®á áá±ážáá¬ážáá°á០á¡áááºááá·áºáá¯ááºáá¬ážáá±á¬ áááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áá«á áá»áœááºá¯ááºááẠááá¬ážááœáẠáá¯á¶ááŸááºáááºážááŒá±á¬ááºážáá±ážáá¯ááᯠáá±ážááœá²áá¬ážáááºá "Google" áá±á¬ááºáá¯ááºááẠáááŠážááœáẠ(á¡áááá¡á¬ážááŒáá·áº SEO ááŒá±á¬áá·áºááŒá áºáá±á¬ááºážááŒá áºááá¯ááºáááº) ááœáŸááºážááá¯ážáá²á·áá±á¬áºáááºáž ááŸá áºáá»á¬ážááŒá¬áá¬áááºááŸáá·áºá¡áá»áŸ ááá¯ááºá¡áá±ážáá»áááºáá»áá¬áááºá Javascript ááẠáá±áááºážá á¬ážáá±á¬ áá±á«ááºážá ááºáá áºáá¯ááŒá áºááŒá®áž áááŒááºážááŒááºáž ááŒá®ážááœá¬ážáá¬áá±á¬áºáááºáž á ááºáááºáá°ááŸá¯ááẠáááŒá¬áá±ážáá®ááŸá áºáá»á¬ážá¡ááœááºážáᬠáá»áŸááºááŒááºá áœá¬ áá°ááŒáá¯ááºáá»á¬ážáá¬áááºá á¡ááŒá¬ážáá áºáááºááœáẠLinux ááẠáááºá á¯ááŸá áºáá áºáá»áŸá±á¬ááºáá¯á¶áž á¡áá®á¡áá»áŸ áááºááœááºáá±áá²á·áááºá
áá¯ááºáá«áááºá áááºá¡ááŒá±á¬ááºážá¡áá¬ááœá±á á á¬áááºáá°ááᯠááá¯ááœá²áá±á¬ááºáá²ááá¯áá¬ááᯠá áááºáááºá á¬ážáá¬áááºá á¡ááŒá±á¬ááºážá¡áá¬áá áºáá¯á á®ááŸá á¡ááŒááºáá»á¬ážá áá²áá»á¬ážááŸáá·áº ááŸááºáá»ááºáá»á¬áž áá»ááºážáá»áŸ á¡áá±á¡ááœááºááᯠááœááºáá»ááºáá«áááºá á€ááœááºááŒá áºáá»ááºáá²á·áááº-
- á¡áá»á¬ážáá¯á¶ážááŒáá·áºááŸá¯ááá·áºá¡ááŒá±á¬ááºážá¡áá¬áá»á¬áž- arduinoá áááºáá®ááá¯ááºážá áááºááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á ááá¯ááºáá»ááºáá»á¬ážá ááá·áºááºáá»á¬ážá cssá htmlá html5á nginxá á¡ááºáááá¯áá®áááºáá»á¬ážá
- "á¡ááŒáá¯ááºáá¯á¶áž" áá±á«ááºážá ááºáá»á¬áž- vkontakteá áá¬áá jqueryá á¡á±á¬áºááá¬á cá htmlá áááºááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯á html5á cssá áááºáá®ááá¯ááºážá
- á¡áá»á¬ážáá¯á¶áž ááœá±ážááœá±ážáá¬ážáá±á¬ á¡ááŒá±á¬ááºážá¡áá¬áá»á¬áž- á¡á±á¬áºááá¬á Skypeá á¡ááœááºáááºážá vkontakteá ubuntuá á¡áá¯ááºá nokiaá nginxá arduinoá firefoxá
á
áá¬ážáá
ááºá áá»áœááºá¯ááºááẠá¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážááᯠááŸáá¯ááºážááŸááºáá±áá±á¬ááŒá±á¬áá·áº áááºážááá¯á·ááᯠááŒáááºááŸá¯ááºážááŒáá·áº á¡ááá·áºáááºááŸááºááá¯ááºááẠ(ááááºáá»á¬ážááŸáá·áº ááŸáá¯ááºážááŸááºááŒá®áž
- Habr áááºáááºážáá áºáá»áŸá±á¬ááºáá¯á¶ážááœáẠáá±áááºážá¡á á¬ážáá¯á¶áž (ááŒá®ážá ááºáááºááá¯ááº) áááºáá»á¬ážááẠgoogleá androidá javascriptá microsoftá linuxá phpá appleá javaá pythoná áááá¯ááááºážáááºážá startupsá developmentá iosá startupá social networks
- 2017 áá¯ááŸá áºááœáẠáá°ááŒáá¯ááºá¡áá»á¬ážáá¯á¶ážááŸá¬ javascriptá pythoná javaá androidá developmentá linuxá c++á programmingá phpá c#á iosá machine learningá information securityá microsoftá react
á€á¡ááá·áºáááºááŸááºáá»ááºáá»á¬ážááᯠááŸáá¯ááºážááŸááºáá±á¬á¡áá«á á¥ááá¬á Python áá¡á±á¬ááºááœá²áá¶áá»á®áááºááŸá¯ááŸáá·áº php ááá»áá¯ážáá¯ááºážááŒááºáž ááá¯á·ááá¯áẠstartup áá±á«ááºážá ááºáá»á¬ážá "áá±áááºáá»áááº" ááŸáá·áº machine learning ááœááºážáá¬ážáá¬ááŒááºážááá¯á·ááᯠá¡á¬áá¯á¶á áá¯ááºááá¯ááºáááºá
Habre áá±á«áºááŸá áááºá¡á¬ážáá¯á¶ážááœáẠááá¯áá²á·ááá¯á· áááá¬áááºááŸá¬ážáá±á¬ á¡ááŒá±á¬ááºážá¡áá¬á¡ááá¯áẠá¡áá±á¬ááºááŒááºááŒááºáž áááŸááá«á á¥ááá¬á¡á¬ážááŒáá·áºá á€áá±áá¬ááœáẠáá áºááŒáááºáá¬ááœá±á·áá°ážáá±á¬ ááá«áááºááŒá áºáá±á¬áºáááºáž áá»áœááºá¯ááºá¡ááœáẠáááºá áá¬áá±á¬ááºážáá¯á¶ááááºá ááá¯á·ááŒá±á¬áá·áº- "á áááºáá°ážááẠááá¯ážáááºááŸá¯á áá±á¬ááºážááŸááºá¡á¬áž"á "ááá±á¬áºáá®áá áºáá¯á¶á០á áááºááŒááºáž"á "á¡áá¯ááºá¡áá¯áá«ááŒááºáááº"á "ááá¬áá¬"á "superalesh"á "áá±ááœá±ážááœá±á·á¡ááºáá»ááº"á "á áá±áá±á·ááœáẠáá¯ááºá áá¬áá»á¬áž"á "áá«ááŸáááẠá¡áá¬ážááŒáááºá ááºáá²ááœáẠááŒá±ááœá±ážáá áºáá±á¬ááºá "á¡ááŒá²ááá¯ááᯠáá±á«áºáá¬áááº"á "áááºá áá¬áá±á¬ááºážáá±á¬ tags áá»á¬ážááŒáá·áº ááááºááá¯ááº"á ááá¯áá²á·ááá¯á·áá±á¬ áá±á¬ááºážáá«ážáá»á¬ážá áá¬áá¬áááºááᯠáá¯á¶ážááŒááºáááºá áááºáá»á¬áž ááá¯á¶áá±á¬ááºáá« - áá±á¬ááºážáá«ážáá»á¬ážá á á¬áá¬ážáá»á¬ážááᯠá¡ááŒá±á¬ááºážá¡áá¬á¡ááá¯áẠáá¯á¶á á¶áá¯ááºááŒááºáž áá¯ááºáá±á¬ááºááá«áááºá
áá±á¬ááºážáá«ážáá»á¬ážá á¡ááŒá±á¬ááºážá¡áá¬ááᯠá¡áá±ážá áááºááœá²ááŒááºážá áááºááŒá¬ááŒá®áž áá±á¬ááºááá¯á·á áºááœáẠáá±á¬áºááŒáá«áááºá ááááŠážá áœá¬á áááºážáá¡ááŒá±á¬ááºážá¡áá¬á¡áá±á«áºá¡ááŒá±áá¶á áá±á¬ááºážáá«ážáá áºáá¯ááºá¡ááœáẠá á¬áá»ááºááŸá¬ááŒáá·áºááŸá¯ááŸá¯á¡áá±á¡ááœááºááᯠááá·áºááŸááºážááá¯ááºáá±á¬ áá¯á¶á á¶áá áºáá¯ááᯠáááºáá±á¬ááºáá«áááºá áá¯áááá¡áá±áá²á·á Habr áá²á·á á¬áá±ážááá¬ááœá±ááᯠáá¯á¶á á¶áá° á á¬áá¬ážááœá±ááᯠáááºáá®ážááá¯á· á¡á¬áá¯á¶ááŒá±á¬ááœááºáááºááᯠáááºáá±ážáá»ááºáá«áááºá áá«ááᯠsubscribe áá¯ááºáá¬ážáá±á¬áºá
PS ááŒá®ážáá±á¬á· áá®ááŸá¬ á¡áá¶ááŒááºáááºá
source: www.habr.com