The ExtremeCode Times – Telegram
The ExtremeCode Times
40.2K subscribers
594 photos
47 videos
5 files
521 links
IT punks.

❤️ YouTube
https://youtube.com/ExtremeCode

💸 Реклама
@Mshvyag / eaa@extremecode.studio

Для РКН: № 5025353650
Download Telegram
Channel created
Raz dva tri
🤡29👍7🎄3😱2🎉2💩2💯1🍌1👻1🆒1
Короче, буду тут постить информацию о проектах которыми я занимаюсь в свободное время (чтоб типа было видно что мы не просто так выпускаем видосы раз в дохрена времени :D)

В планах на эту неделю написать парсер GitHub, и собрать максимально полную БД о репозиториях по различным ЯП.

Тут конечно есть пару нюансов, чтобы было не скучно:

1. БД развернуть в контейнере Docker, дабы пощупать ручками mssql под Linux. И тут уже первые траблы :D. Лагает инет, а Docker при загрузке образов не имеет менеджера подгрузки. Ну получаем следующую вещь - обрывается коннект с сервером, идем загружать образ по новой, не смотря на то что он состоит из нескольких файлов - гениально :D

2. В самом парсере никаких изысков, просто C# + реализаця github api - octokit.net. Задача - сделать максимально оптимальным в плане многопоточности, дабы парсить информацию быстрее. Тут типа тоже не все так просто, 85% репозиториев - мусор. И тут дилема, либо парсить все полностью, и потом уже фильтровать. Либо собрать наиболее полную базу о репозиториях, но потом уже в дальнейшем филтровать, хз на самом деле

3. Обработка данных - в идеале хотелось бы поковырятся на R. Но ес чо, обойдусь просто решеткой :D. Сама цель - собрать информацию о популярности ЯП и активности среди отдельных коммьюнити в процентном соотношении.
В конце постараюсь выложить дампы бд необработанной инфы, обработанной, и собственно самого парсера.

Отчетики и скриншотики буду тут постить по мере продвижения.
👍8🤡21🤮1
Оу, короче, с утречка пришла бредовая мысль забахать анализ на F#. Чтоб интереснее было. По поводу анализа - есть такая вещь R Provider которая позволяет использовать R прям из F#, так что почти все по плану.

Составил список материалов по теме -
Basics:
https://www.tutorialspoint.com/fsharp/
https://fsharpforfunandprofit.com/posts/concurrency-async-and-parallel/
https://blogs.msdn.microsoft.com/visualstudio/2011/04/04/f-code-first-development-with-entity-framework-4-1/

Analysis:
http://bluemountaincapital.github.io/FSharpRProvider/

Parsing:
http://www.quanttec.com/fparsec/tutorial.html#

Там походу может еще чего накину
🤡6👍2🎉1
Это была плохая мысль
🤡2👏1
Блин, я ж забыл про лайки, интерактивность как никак 👌
🤡7
Okay, на этот полупарсер у меня ушло пол дня, прогресс есть :D
Завтра думаю допишу уже окончательно, плюс там еще прикручивать Entity Frame, и БД в докере развернуть
🤡5👍1
P.S.
Оператор ?. теперь больше не мой любимый оператор, его место занял волшебный |>
🤡41
Окееей, сегодня прям день разочарований

Во-первых, ограничение GitHub API на количество запросов - 10 в минуту - пролетаем с многопоточностью

Во-вторых, не хватило оперативки на MsSql в докере :D

В-третьих, ограничение по поиску во всем том же API на поисковую выдачу, в итоге обошел поиском по дате создания репозитория - по каждому дню, большие разбросы дат не катят, потому что в день создается почти 1к репозиториев на популярных языках

Но в любом случае уже все готово и тихо мирно данные парсятся, этот процесс займет дохрена времени, так что о результатах буду сообщать, и из-за слишком большого количества данных планирую таки парсить до начала 2017-го года, инфы актуальной для анализа будет предостаточно

P.S.
Парсер что-то больно заливать на гитхаб, поэтому обойдемся просто pastebin'ом
https://pastebin.com/N7xBQcVy
🤡4
Okay, парсил с перерывами, на данный момент 157 757 репозиториев,
готовы следующие языки: csharp, c, java, javanoscript, php, typenoscript, сейчас парсится C++
🤡4
325k
🤡4
Окей, финальные результаты после парсинга наиболее рейтинговых репозиториев по языкам в период 29 августа 2017 по 1 января 2017-го, после чистки от пустышек

C# — 24 621
Java — 26 827
C — 23 988
C++ — 24 683
JS — 29 463
TS — 24 600
PHP — 24 595
F# — 1 997
Python — 27 072
Haskell — 9 838
Ruby — 23 901
Swift — 25 073
Objective-C — 24 361
R — 23 640

Общее количество — 324 857
🤡5👍2
Бекап исходной не фильтрованной БД
http://bit.ly/guthub_mssql
🤡1
Ладушки, как будем делать отчет? Либо я заливаю порциями, либо готовлю крупный отчет и вываливаю все разом?
anonymous poll

Полный отчет – 72
👍👍👍👍👍👍👍 88%

По частям – 10
👍 12%

👥 82 people voted so far.
🤡1
This media is not supported in your browser
VIEW IN TELEGRAM
🤡5
Решил отдохнуть эти 2 денька от кода, так что ожидаем отчет на следующей неделе, всем бобра!
🤡1