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