Многопоточное программирование на С/С++
#concurrency #cpp
1. Пролог
2. Контейнеры. Умные указатели. Аллокаторы
3. Сокеты Беркли. Мультиплексирование
4. Асинхронная работа с сетью
5. Процессы. Каналы. Сигналы
6. Очереди сообщений. Семафоры. Общая память
7. Потоки. Средства синхронизации
8. Параллельное программирование
9. Эпилог
Обсуждение и плейлист: https://vk.com/wall-54530371_102969
Подборка логических задач с собеседований
#job #puzzles
Добавляйте свои — https://proglib.io/puzzles/
1. У вас 50 мотоциклов, с заполненным топливом баком, которого хватает на 100 км езды.
Вопрос: Используя эти 50 мотоциклов, как далеко вы сможете заехать (учитывая, что изначально они находятся в условно одной точке пространства)?
Решение: https://goo.gl/RQcQxU
2. У вас бесконечный запас воды и два ведра — на 5 литров и 3 литра.
Вопрос: Как вы отмерите 4 литра?
Решение: https://goo.gl/qRCsrS
3. У вас два отрезка веревки. Каждый таков, что если поджечь его с одного конца, он будет гореть ровно 60 минут.
Вопрос: Имея только коробку спичек, как отмерить с помощью двух отрезков такой веревки 45 минут (рвать веревки нельзя)?
Решение: https://goo.gl/OWWHIU
4. У вас имеется 8 шариков одинакового вида и размера.
Вопрос: Как найти более тяжелый шарик, используя весы и всего два взвешивания?
Решение: https://goo.gl/HkGAaV
5. Предположим, у нас происходит 10 пакетных передач данных по беспроводной сети. Канал не очень качественный, так что есть вероятность 1/10, что пакет данных не будет передан. Трансмиттер всегда знает, удачно или неудачно был передан пакет данных. Когда передача неудачная, трансмиттер будет передавать пакет до тех пор, пока не преуспеет.
Вопрос: Какую пропускную способность канала получаем?
Решение: https://goo.gl/Rn1khh
Небольшой курс "A11ycasts" от официального канала Google Chrome Developers
#web
Небольшая серия уроков, в которых автор Род Додсон расскажет о доступности и рассмотрит часто встречающиеся ошибки при разработке сайтов.
1. Introducing A11ycasts
2. Inert Polyfill
3. What is Focus?
4. Controlling focus with tabindex
5. Just use button
6. Roving tabindex
7. Screen Reader Basics: VoiceOver
8. Why do semantics matter?
9. Screen Reader Basics: NVDA
Все 10 видео доступны по ссылке: https://vk.cc/65mQAc
Обсуждение: https://vk.com/wall-54530371_102698
Что такое глубинное обучение, и с чем его едят? Что смотреть и читать по теме, чтобы в ней освоиться? Подробности о современном ответвлении машинного обучения по ссылке.
#data_analysis
https://proglib.io/p/intro-to-deep-learning/
10 лучших бесплатных книг по машинному обучению по версии ThePixelBeard
#data_analysis #book
1. The Elements Of Statistical Learning : Data Mining, Inference and Prediction
Книга позволит получить концептуальные основы в машинном обучении. Авторами данной книги являются T.Hastie, R. Tibshirani, J.Friedman.
2. Inductive Logical Programming
Индуктивная логика является темой машинного обучения. Она используется в области исследований на пересечении машинного обучения и логического программирования.
3. Reinforcement Learning : An introduction by Richard S. Sutton, Andrew G. Barto
С помощью этой книги пользователь сможет получить основные знания в машинном обучении.
Читать онлайн: https://vk.cc/64ADVb
4. Information Theory, Inference and Learning Algorithms
Это электронная книга David J.C. Mackay, в которой вы найдете арифметическое кодирование для сжатия данных, разреженные графовы коды коррекции ошибок и многое другое.
5. Gaussian Processes for Machine Learning
С помощью этой книги можно узнать принципиальный, практический, вероятностный подход в обучении ядра машин в довольно простым способом.
6. The LION Way
Авторы данной книги Roberto Battiti и Mauro Brunato. Данная книга была написана таким образом, что она помогает пользователям в машинном обучении и интеллектуальной оптимизации.
7. Bayesian Reasoning and Machine Learning
Это книга написана David Barber и содержит такие темы, как линейная алгебра и исчисление. Эта книга помогает пользователям узнать передовые технологии в рамках графических моделей.
8. A Course In Machine Learning
Эта книга включает в себя вводный материал, охватывающий различные аспекты современного машинного обучения.
9. Machine Learning, Neural And Statistical Classification
Книга направлена на обзор различных современных подходов и классификаций.
10. Introduction To Machine Learning
Книга включает в себя различные темы машинного обучения, которые помогают людям проводить золотую середину между теорией и практикой.
К ссылке прикреплены книги на английском языке: https://vk.com/wall-54530371_102437
Тут есть те, кто проходил стажировку в Google/Facebook/Apple/Amazon/Яндексе? Отпишите, пожалуйста, мне @theasder или на почту ruproglib@gmail.com. Нам очень интересен ваш рассказ для дальнейшей публикации на сайт.
Картинка для привлечения внимания.
10 бесплатных книг по JavaScript для начинающих
#javascript #novice #collections #book
Ссылки на книги и описание к ним: https://vk.com/page-54530371_52105286
Обсуждение: https://vk.com/wall-54530371_102253
Игра от Google, в которой можно отточить свои хакерские навыки
#security
https://xss-game.appspot.com/
Подробнее о XSS и игре можно почитать в статье от наших коллег: https://vk.cc/5STcYd
10 лучших видеокурсов для изучения Linux
#linux #unix
https://proglib.io/p/linux-courses/
Теперь можно подписаться на push-уведомления в браузере (кнопка снизу слева).
Визуальный путеводитель по CSS со множеством примеров работы свойств: от align-content до z-index
#web
http://cssreference.io
Статья для тех, кто мечтает стать хакером и не нарушать закон
#security
https://proglib.io/p/ethical-hacking/
Доклад из двух частей: «Оптимизация SQL-запросов»
#sql #db
Рассматриваются такие вопросы как:
— жизненный цикл запросов — механизм подготовки, кеширования и исполнения запросов в MS SQL;
— основы чтения планов выполнения запросов;
— влияние внешних ключей, кластерных представлений и вычислимых столбцов на производительность запроса;
— проблема неявного преобразования типов;
— статистика сервера и как она может влиять на скорость исполнения запроса.
Материал для доклада собран из реальных проектов и задач. Многие примеры выстраданы долгими часами, днями (а то и месяцами) напряженной работы. Доклад будет полезен всем, кто работает с базами данных.
https://vk.com/wall-54530371_101511
LearnGitBranching
#git
LearnGitBranching — это приложение созданное, чтобы помочь новичкам постичь мощные возможности работы с git без необходимости читать кучу книг. Сайт доступен как на английском так и на русском языках.
http://learngitbranching.js.org/
Дополнительные материалы по Git:
— Подборка материалов по Git и Github: https://vk.com/wall-54530371_101084
— Русскоязычный онлайн учебник по Git: https://vk.com/wall-54530371_97011
— 10 бесплатных ресурсов для изучения Git: https://vk.com/wall-54530371_96421
27 популярных GitHub репозиториев для веб-разработчика в 2016 году.
#web
Несколько github репозиториев, которые могу быть полезными для веб-разработчиков. Репозитории набрали свои первые 1500 звезд в 2016 году
https://vk.cc/62pcxW
Самые популярные статьи, опубликованные в этом году
#happynewyear
Как стать программистом: руководство от Google
https://proglib.io/p/google-guide-for-studying/
27 сайтов с задачками для оттачивания навыков программирования
https://proglib.io/p/27-puzzle-websites-to-sharpen-your-skills/
6 open-source проектов для практики новичка
https://proglib.io/p/open-source-for-novice/
9 идей для начинающих программистов по созданию игр-клонов
https://proglib.io/p/9-ideas-for-games/
20 потрясающих CSS3 техник, библиотек и примеров
https://proglib.io/p/20-impressive-css3-techiques/
Полезные навыки для начинающего программиста
https://proglib.io/p/good-habits-for-beginner-developer/
Машинное обучение для самых маленьких
https://proglib.io/p/the-simplest-introduction-to-machine-learning/
32 Youtube-канала для изучения программирования
https://proglib.io/p/youtube-coding-channels/
Как научиться программировать?
https://proglib.io/p/let-us-learn-program/
8 лучших YouTube-каналов для изучения Java
#java #novice
https://proglib.io/p/java-coding-channels/
Обширная Linux-энциклопедия, в которой подробно рассказывается о ядре и прочих низкоуровневых аспектах Linux.
#linux
Ссылка на ресурс: https://goo.gl/52CccQ
Рекомендуем ознакомится со списком 10 лучших видеокурсов для изучения Linux: https://proglib.io/p/linux-courses/
Конструируем роботов на Arduino. Первые шаги (2016) / Arduino for Beginners: Essential Skills Every Maker Needs (2014)
#embed_systems #novice #book
Это практическое руководство для тех, кто делает первые шаги в робототехнике на платформе Arduino. С этой книгой вы разберетесь в основах электроники, научитесь программировать в среде Arduino IDE, работать с печатными платами Arduino, инструментами, паяльником, соблюдать правила безопасности и многому другому. Вы также примете участие в разнообразных проектах и оцените невероятный потенциал Arduino, который вдохновит вас на творчество и изобретения, ограниченные только вашим воображением.
Для молодых изобретателей и программистов, а также всех тех, кто увлекается робототехникой.
Ссылка на пост с книгой: https://vk.com/wall-54530371_102646
Так же рекомендуем ознакомится с книгой Джона Бокселла "Изучаем Arduino. 65 проектов своими руками": https://vk.com/wall-54530371_95715
Python 3 и PyQt 5. Разработка приложений (2016)
Авторы: Владимир Дронов, Николай Прохоренок
#python #book
Описан язык Python 3: типы данных, операторы, условия, циклы, регулярные выражения, функции, инструменты объектно-ориентированного программирования, работа с файлами и каталогами, часто используемые модули стандартной библиотеки. Приведены основы базы данных SQLite, интерфейс доступа к базе и способы получения данных из Интернета. Особое внимание уделено библиотеке PyQt 5, позволяющей создавать приложения с графическим интерфейсом на языке Python. Рассмотрены средства для обработки сигналов и событий, управления свойствами окна, разработки многопоточных приложений, описаны основные компоненты (кнопки, текстовые поля, списки, таблицы, меню, панели инструментов и др.), варианты их размещения внутри окна, инструменты для работы с базами данных, мультимедиа, печати документов и экспорта их в формате Adobe PDF. На сайте издательства приведены все примеры из книги.
К посту прикреплен фрагмент книги на русском языке:
https://vk.com/wall-54530371_102512
10 лучших ресурсов для изучения Django
#python
Напомним, что Django -- один из наиболее популярных фреймворков для создания веб-приложений на Python.
https://proglib.io/p/django-sources/
Подборка логических задач с собеседований
Добавляйте свои — https://proglib.io/puzzles/
#job #puzzles
1. У вас есть два одинаковых стеклянных шарика. Вы можете бросать их с любого этажа 100-этажного дома.
Вопрос: Какое наименьшее количество бросков понадобится, чтобы определить этаж, начиная с которого шарик разобьётся?
Решение: http://amp.gs/1YB9
2. С какой силой надо натягивать веревку, чтобы она не провисала?
Решение: http://amp.gs/1YBR
3. Что необычного в предложении "The quick brown fox jumps over the lazy dog"?
Решение: http://amp.gs/1YBU
4. Один рыбак купил себе очередную удочку. И длина была подходящая - 5 футов. Когда он садился в автобус, чтобы ехать домой, водитель попросил его выйти, так как запрещается в автобусе перевозить предметы длиной более 4 футов. Как рыболову нужно упаковать удочку, чтобы уехать домой на автобусе не нарушая правил?
Решение: http://amp.gs/1YBV
5. Однажды Эрудит попал на необитаемый остров.
Из-за долгой засухи вся растительность на острове сильно пересохла.
Внезапно на одном конце острова возник пожар, и ветер погнал огонь в сторону Эрудита.
Спастись в море Эрудит не может, так как в море у самого берега плавает множество акул, да и Эрудит, если честно, не умеет плавать!
Берегов без растительности на острове нет.
Но умный Эрудит спасся от огня и выжил, а на следующий день его увезла с острова миссис Брэйн, и Эрудит рассказал ей о пожаре.
Так как же всё-таки удалось Эрудиту спастись от верной гибели?
Решение: http://amp.gs/1YB4
Самые популярные посты за прошедшую неделю
#weekly
1. Ninja JavaScript
https://vk.com/wall-54530371_101364
2. Серия семинаров по Java от МФТИ
https://vk.com/wall-54530371_101613
3. Уроки JavaScript Практика.
Первая часть: https://vk.com/wall-54530371_100422
Вторая часть: https://vk.com/wall-54530371_101858
4. Видеоуроки по основам Python
https://vk.com/wall-54530371_101558
5. LearnGitBranching
https://vk.com/wall-54530371_101301
6. Полный курс по объектно-ориентированному программированию на PHP
https://vk.com/wall-54530371_101970
7. Архитектура Windows. Программирование в ядре Windows
https://vk.com/wall-54530371_101315
8. Алгоритмы интеллектуальной обработки больших объемов данных
https://vk.com/wall-54530371_101684
Подборка сайтов для поиска удаленной работы
#job #collections
Самые популярные
Weblancer.net — крупная биржа удаленной работы в Рунете. После регистрации обязательно заполните портфолио — поможет получить больше заказов.
Freelance.ru — одна из крупных бирж фриланса в Рунете. Изначально была форумом.
FL.ru — биржа для фрилансеров разных специализаций. Для эффективного продвижения своих услуг необходимо покупать PRO-аккаунт.
Freelancehunt.com — биржа труда для программистов, дизайнеров, копирайтеров, иных специалистов.
FreelanceJob.ru — позиционируется как биржа для профессиональных фрилансеров с хорошим портфолио.
Для программистов
1clancer.ru — удаленная работа для специалистов 1С. Много заданий с хорошими бюджетами.
Devhuman.com — новый сервис для ИТ-специалистов, стартаперов и компаний из ИТ-индустрии. Позволяет быстро собрать команду любых специалистов для выполнения любого ИТ-проекта.
Modber.ru — биржа работы для 1С-программистов.
Freelansim.ru — биржа преимущественно для ИТ-специалистов, особенно программистов. Много интересных проектов.
Сайты для веб-мастеров и блогеров
Telderi.ru — на бирже можно купить или продать сайт, в том числе приносящий доход. Стоимость сайтов составляет от нескольких сотен до более чем миллиона рублей.
Sape.ru — на бирже можно сдать в аренду ссылки со своего сайта и получать стабильный ежемесячный доход.
Блогун — биржа для блогеров. Через биржу можно продать размещение постовых и рекламных публикаций в своем блоге.
GoGetLinks.net — биржа покупки / продажи вечных ссылок. Веб-мастера могут заработать на размещении ссылок в новостях и статьях на своем сайте.
Для студентов
Vsesdal.com — помогайте студентам выполнять работы и получайте за это деньги.
Help-s.ru — помогайте решать задачи, писать рефераты и зарабатывайте на этом!
Author24.ru — интернет-биржа авторов и заказчиков курсовых, контрольных работ, рефератов.
Иностранные ресурсы
Freelancer.com — одна из крупнейших западных бирж, объединяет более 8 млн фрилансеров со всего мира. Интерфейс переведен на русский язык.
Odesk.com — американская биржа с вакансиями и предложениями разовой работы от IT до бухучета. Оплата — MoneyBookers, PayPal, oDesk debit MasterCard.
Elance.com — одна из ведущих бирж зарубежного фриланса по онлайн-работе. Предложения в области веб-дизайна, переводов, SEO и др. Предоставляет оплату только за результат.
Projectlance.com — биржа для программистов, график- и веб-дизайнеров.
Proz.com — международная биржа для переводчиков.
Поиск по вакансиям удаленной работы
(агрегаторы проектов с сервисов удаленной работы)
Ayak.ru — удобный просмотр проектов на разных биржах удаленной работы.
Donanza.net — поиск проектов для фрилансеров по западным биржам.
Уроки JavaScript Практика.
Часть вторая (2/2)
#javascript@proglib
Первая часть: https://vk.com/wall-54530371_100422
11. Как работать с API
12. Делаем модальные изображения
13. Прогресс бар. Как управлять?
14. Как сделать Popup
15. Пишем сами Accordion
16. Простой Конвертер валют самому
17. Пишем To Do приложение на js
18. Toggle Hide/Show своими руками. Alert
19.Адаптивное меню на Js
Полный курс в видеоальбоме: https://goo.gl/khj8Q6
Обсуждение: https://vk.com/wall-54530371_101858
Серия семинаров по Java от МФТИ.
#java #concurrency
1. Многопоточность
2. Кодировки
3. Контракты equals() и hashCode()
4. Форматы файлов: JSON, YAML, CSV
5. Dynamic proxy, аннотации, логгирование
6. Git: rebase, редактирование истории, bisect, diff/apply
Плейлист: https://www.youtube.com/playlist?list=PLzQrZe3EemP7hx6NKGA26yr3HJ-RF4iwT
Обсуждение: https://vk.com/wall-54530371_101613
Самые популярные посты за прошедшую неделю
#weekly
1. 32 Youtube-канала для изучения программирования
https://proglib.io/p/youtube-coding-channels/
2.Технический английский для IT-специалиста
https://vk.com/wall-54530371_101099
3. Взлом сайтов на практике
https://vk.com/wall-54530371_101130
4. Уроки JavaScript. Практика
https://vk.com/wall-54530371_100422
5. Подборка 10 отличных ресурсов для изучения взлома с помощью Kali Linux
https://proglib.io/p/kali-linux-hacking/
6. 8 самых полезных книг по JavaScript
https://vk.com/wall-54530371_101212
7. Подборка видео по ООП
https://vk.com/wall-54530371_101116
8. Как запомнить информацию через повторения?
https://vk.com/wall-54530371_101052
Подборка логических задач с собеседований
Добавляйте свои задачи сюда — http://amp.gs/1YGk
#job #puzzles
1. У вас есть два одинаковых стеклянных шарика. Вы можете бросать их с любого этажа 100-этажного дома.
Вопрос: Какое наименьшее количество бросков понадобится, чтобы определить этаж, начиная с которого шарик разобьётся?
Решение: http://amp.gs/1YGG
2. С какой силой надо натягивать веревку, чтобы она не провисала?
Решение: http://amp.gs/1YGf
3. Что необычного в предложении "The quick brown fox jumps over the lazy dog"?
Решение: http://amp.gs/1YGC
4. Один рыбак купил себе очередную удочку. И длина была подходящая - 5 футов. Когда он садился в автобус, чтобы ехать домой, водитель попросил его выйти, так как запрещается в автобусе перевозить предметы длиной более 4 футов. Как рыболову нужно упаковать удочку, чтобы уехать домой на автобусе не нарушая правил?
Решение: http://amp.gs/1YGn
5. Однажды Эрудит попал на необитаемый остров.
Из-за долгой засухи вся растительность на острове сильно пересохла.
Внезапно на одном конце острова возник пожар, и ветер погнал огонь в сторону Эрудита.
Спастись в море Эрудит не может, так как в море у самого берега плавает множество акул, да и Эрудит, если честно, не умеет плавать!
Берегов без растительности на острове нет.
Но умный Эрудит спасся от огня и выжил, а на следующий день его увезла с острова миссис Брэйн, и Эрудит рассказал ей о пожаре.
Так как же всё-таки удалось Эрудиту спастись от верной гибели?
Решение: http://amp.gs/1YGx
12 бесплатных ресурсов: Научиться программировать во время игры.
#common #collections
Данная подборка представляет собой набор ресурсов, которые вы можете использовать, чтобы научиться программированию во время игры.
Были отобраны 12 лучших сайтов, которые предназначены как для начинающих, так и продвинутых программистов, чтобы узнать множество компьютерных языков, таких как JavaScript, Java, Python, PHP, C # и т.д.
CodinGame — https://www.codingame.com/
Поддержка большого количества языков программирования.
Code Combat — https://codecombat.com/play
CodeCombat — это общественный проект. Сайт является платформой для студентов, чтобы узнать компьютерные науки через игры. Поддержка Java, JavaScript, Python, Lua, CoffeeScript.
Screeps — https://screeps.com/
Учитесь программировать на JavaScript играя в игру.
Check iO — https://checkio.org/
Check iO — это браузерная игра, в которой вам нужно решать задачи на Python для продвижения.
Vim Adventures — http://vim-adventures.com/
Обучение Vim во время игры.
Cyber DoJo — http://www.cyber-dojo.org/
Поддержка JavaScript, Java, Python, PHP, Ruby и многое другое.
Code Monkey — https://www.playcodemonkey.com/
Научитесь программировать, пытаясь поймать бананы. В основном используются учителями, чтобы научить детей программированию.
Elevator Saga — http://play.elevatorsaga.com/
Решать сложные задачи, шаг за шагом. Например, первое задание: перевезти 15 человек в 60 секунд или меньше.
Codewars — http://www.codewars.com/
Совершенствуйте свои навыки путем обучения с другими на реальные вызовы кода. Поддержка JavaScript, Python, C #, Java, Python и др.
Ruby Quiz — http://rubyquiz.com/
Еженедельная викторина для Ruby-программистов. На данный момент архив содержит 156 тестов.
Hacker Org — http://www.hacker.org/
Представляет собой серию головоломок, тестов и задачек, предназначенных для исследования глубин ваших навыков взлома.
Курс по программированию на Python
#python
1. Начало
2. Всё, что вы хотели знать о функциях в Python
3. Декораторы и модуль functools
4. Строки, байты, файлы и ввод/вывод
5. Встроенные коллекции и модуль collections
6. Классы (часть 1-я)
7. Исключения и менеджеры контекста
8. Итераторы, генераторы и модуль itertools
9. Модули, пакеты и система импорта
Плейлист: https://www.youtube.com/watch?v=5V7XG1mGiHc&list=PLlb7e2G7aSpTTNp7HBYzCBByaE1h54ruW
Обсуждение: https://vk.com/wall-54530371_101092