proglibrary | Technologies

Telegram-канал proglibrary - Библиотека программиста | программирование, кодинг, разработка

77043

Все самое полезное для программиста в одном канале. Список наших каналов: https://t.me/proglibrary/9197 Учиться у нас: https://proglib.io/w/a32a0d94 Обратная связь: @proglibrary_feedback_bot По рекламе: @proglib_adv Прайс: @proglib_advertising

Subscribe to a channel

Библиотека программиста | программирование, кодинг, разработка

Многопоточное программирование на С/С++

#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

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Небольшая шпаргалка по React

#web #cheatsheets

Читать полностью…

Библиотека программиста | программирование, кодинг, разработка

Серия семинаров по 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

Читать полностью…
Subscribe to a channel