Товарищи инженеры, как и было обещано в анонсе, половина лекций (а это 51) уже доступны для просмотра на ютюбе и я продолжу их записывать в 2019 году. Часть из нужно будет перезаписать, потому, что в первых лекциях не самый лучший звук и потому, что очень простые темы у меня пока не очень хорошо получаются. Лучше вышли сложные и актуальные темы, которые мне и самому более интересно рассказывать. Я бы не сказал, что это курс для начинающих, скорее, это курс для тех, кто уже знает синтаксис. За это время поступило множество предложений, как улучшить способ подачи материала: делить на более короткие лекции, подготовить задачи для практического освоения, записывать семинары и ответы на вопросы студентов, добавить в программу разбор целого ряда спорных и холиварных тем. Но не все сразу, я и так посвящаю этому треть жизни.
User
Йода из Кремниевой долины
Дональд Кнут, мастер алгоритмов, размышляет над 50 годами работы над своим главным творением, книгой «Искусство программирования», которую не прекращает дополнять
Дональд Кнут в своём доме в Стэнфорде, Калифорния. Жуткий перфекционист, назначил награду за нахождение ошибки в своих книгах.
Уже полвека стэнфордский специалист по информатике Дональд Кнут, немного напоминающий Йоду – хотя ростом он 193 см и носит очки – занимает доминирующее положение духовного учителя в области алгоритмов.
Как стать React разработчиком в 2018 году
Несмотря на то что пост написан в этом году, изучить всю предложенную программу за оставшиеся месяцы вы, вероятно, не успеете. Поэтому карту разработчика можно смело брать с собой в год следующий.
Адам Голаб, эксперт по React и JS, составил пошаговый учебный план, который поможет вам стать разработчиком с нуля либо укажет направление для дальнейшего повышения навыков в профессии.
План Адама представляет собой список основных пунктов, которые вам нужно изучить самостоятельно. Мы добавили описание, а в некоторых сложных моментах указали ссылки на дополнительные справочные материалы, с помощью которых вы получите ответ на вопрос: «Что я должен узнать как React-разработчик?».
bytes.Buffer в Go: оптимизации, которые не работают
Многие Go программисты знакомы с bytes.Buffer. Одно из его преимуществ состоит в том, что он позволяет избегать выделений памяти в куче по той же схеме, что и "оптимизация коротких строк" (small buffer/size optimization):
type Buffer struct {
bootstrap [64]byte // для избежания аллокации малых слайсов в куче
// ... другие поля
}
Есть только одна проблема. Эта оптимизация не работает.
К концу этой статьи вы узнаете, почему эта оптимизация не работает и что мы можем с этим сделать.
Песочница и шпаргалка по изучению Python
Изучать Python3 я начал с документации на официальном сайте. Мне понравились примеры кода, но, к сожалению, они были там не интерактивными. Хотелось попробовать выполнить код самостоятельно, с разными входными данными и посмотреть на выводимый результат. Так же мне лично легче запоминаются конструкции языка, если я их набрал несколько раз вручную. Python консоль для этого подходит отлично, но хотелось так же иметь своего рода шпаргалку, к которой можно было бы вернуться при написании программ в дальнейшем, если, например, возникнет вопрос, как в Python-е написать цикл for
и т.п. И последней каплей стало желание автоматической проверки стиля написания кода в соответствии с существующими стандартами. Читать и вникать в них было лень, поэтому хотелось чтобы проверка кода была автоматической и подсказывала какие ошибки я делаю и как их исправить.
В итоге все свои эксперименты я вылил на GitHub.
Реализация оператора in в С++
std::unordered_map<std::string, std::string> some_map =
{
{ "black", "white" },
{ "cat", "dog" },
{ "day", "night" }
};
if (auto res = "cat" in some_map)
{
res->second = "fish";
}
Как освоить иностранный язык без преподавателя. Часть 2. «Пошаговая стратегия»
Это статья для тех, кто хочет свободно разговаривать на иностранном языке. Неважно, начинаете вы с нуля или уже учите язык годами, но до сих пор испытываете сложности с восприятием беглой речи на слух или стресс при необходимости поговорить с носителем языка, здесь вы найдёте пошаговую стратегию освоения разговорного языка.
Примечание: Материалы статьи опираются на исследования Е.Д. Авериной, Д.Б. Никуличевой, Э.В. Гуннемарка и П.Нейшна, пропущенные через призму моего восприятия и опыт изучения 3 иностранных языков.
Где и как изучать машинное обучение?
Всем привет!
Ни для кого не секрет, что интерес к машинному обучению и искусственному интеллекту растет в лучшем случае по экспоненте. Тем временем мой Яндекс Диск превратился в огромную свалку пейперс, а закладки в Google Chrome превратились в список, длина которого стремится к бесконечности с каждым днем. Таким образом, дабы упростить жизнь себе и вам, решил структурировать информацию и дать множество ссылок на интересные ресурсы, которые изучал я и которые рекомендую изучать вам, если вы только вначале пути (буду пополнять список постоянно).
Путь для развития новичка я вижу примерно так:
11 лучших шрифтов для программирования
Я ранжировал шрифты по следующим показателям:
- Насколько различимы схожие символы, такие как
0O
,1lI
. - Легко ли читается шрифт (ширина строк, ширина/высота символов).
- И мои личные предпочтения!
Все скриншоты сделаны в VSCode на одном фрагменте кода. Если не обозначено иное, то везде установлен размер
"editor.fontSize": 14
.Хватит терпеть жару в квартирах
Предисловие:
На написание данной публикации меня вдохновила, ставшая культовой, статья "Прекратите скручивать". Скрутки — это бич современности, которые не смотря на то, что они давным давно запрещены, все еще повсеместно используются электриками, особенно электриками из ЖЭКа. Поскольку я являюсь членом правления в нескольких ТСЖ, то мне приходится много контактировать с представителями рабочего класса, обслуживающими наши многоквартирные дома. И если в электрике бич — это скрутки, то в сантехнике, таким бичом являются полипропиленовые трубы! Но, обо всем по порядку.
Последние несколько недель многие жители нашей необъятной Родины умирали от жары. Днем на улице тепло, а отопление еще не выключили. Знакомая ситуация? Невозможно спать, нечем дышать, воздух сухой. Мало того, что это самая большая статья расходов в платежках за коммунальные услуги, так и при этом мы вынуждены жить в антисанитарийных условиях, когда температура воздуха в квартирах достигает 30 градусов жары. По нормативам СанПиН 2.1.2.2645-10 максимальная температура в жилых комнатах не должна превышать 24 градуса:
Все что выше — это уже антисанитарные условия проживания. Но к сожалению, ровно в таких условиях проживает огромная часть населения нашей страны, особенно в период межсезонья, когда на улице уже тепло, а систему отопления еще пока не отключили. И да, повторюсь, за такую жару мы все платим из своего кармана. Речь, конечно же, о домах подключенных к системе центрального отопления.
Go: Хороший, плохой, злой
У Go есть некоторые замечательные свойства, которым посвящён раздел «Хороший». Но когда речь заходит о применении этого языка не для создания API или сетевых серверов (для чего он и был разработан), а для реализации бизнес-логики, то я считаю Gо слишком неуклюжим и неудобным. Хотя даже в рамках сетевого программирования найдётся немало подводных камней как в архитектуре языка, так и в реализации, что делает Go опасным, несмотря на его кажущуюся простоту.
Введение в алгоритм A*
Для поиска этого пути можно использовать алгоритм поиска по графу, который применим, если карта представляет собой граф. A* часто используется в качестве алгоритма поиска по графу. Поиск в ширину — это простейший из алгоритмов поиска по графу, поэтому давайте начнём с него и постепенно перейдём к A*.
Go 1.10 Release Party @ Badoo: как это было. Видео, фото, отзывы
Привет, Хабр!
24 февраля мы устроили Go 1.10 Release Party @ Badoo по случаю свежего релиза. Спасибо всем, кто был с нами! Если вы пропустили встречу сообщества, под катом — видео выступлений, слайды, немного отзывов и фотоотчет.
Blockchain на Go. Часть 2: Proof-of-Work
Содержание
- Blockchain на Go. Часть 1: Прототип
- Blockchain на Go. Часть 2: Proof-of-Work
- Blockchain на Go. Часть 3: Постоянная память и интерфейс командной строки
- Blockchain на Go. Часть 4: Транзакции, часть 1
- Blockchain на Go. Часть 5: Адреса
- Blockchain на Go. Часть 6: Транзакции, часть 2
- Blockchain на Go. Часть 7: Сеть
Вступление
В предыдущей статье мы построили очень простую структуру данных, которая является основой для базы данных блокчейна. Также мы сделали добавление в нее блоков с цепной связью между ними: каждый блок связан с предыдущим. Увы, наша реализация блокчейна имеет один существенный недостаток: добавление блоков в цепочку слишком простое и дешевое.
Одним из краеугольных камней Биткоина и блокчейна является то, что добавление новых блоков должно быть достаточно сложной работой. И сейчас мы собираемся исправить этот недостаток.
Как не стать Python-разработчиком
Полгода я искал ответы на эти вопросы, тщательно исследуя предметную область. Я обнаружил много полезных советов. Особенно в заметке Василия Большакова и на Хекслете. Но мне не хватало структуры. Знания нарастали со всех сторон и превращались в кучу. Чтобы структурировать процесс обучения и оценить его масштаб, я собрал план.
Как найти компанию спонсора визы в США. Tips and Tricks
Статья для тех, кто хочет переехать работать в США. На Хабре есть несколько хороших статей про поиск работы в Америке. Тут я постараюсь добавить к ним собственный опыт и поделиться несколькими приемами, которые помогли мне получить долгожданный джоб оффер.
Сперва расскажу про рабочие визы, а потом как и где искать работодателя.
Топ-10 распространенных ошибок в английском произношении, которые вы можете совершать
Перформанс: что в имени тебе моём? — Алексей Шипилёв об оптимизации в крупных проектах
Под катом — расшифровка его доклада.
Как правильно хешировать пароли в высоконагруженных сервисах. Опыт Яндекса
Attacker & Defender
Прежде чем переходить к алгоритмам и построению схемы хеширования, надо вообще понять, от чего же мы защищаемся и какую роль в безопасности веб-сервиса должно играть хеширование паролей. Обычно сценарий таков, что атакующий ломает веб-сервис (или несколько веб-сервисов) через цепочку уязвимостей, получает доступ к базе данных пользователей, видит там хеши паролей, дампит базу и идет развлекаться с GPU (и, в редких случаях, с FPGA и ASIС).
GitLab CI для непрерывной интеграции и доставки в production. Часть 1: наш пайплайн
Итак, GitLab CI: что можно ещё рассказать о нём? На хабре уже есть статьи про установку, про настройку раннеров, про командное использование, про GitLab Flow. Пожалуй, не хватает описаний того, как используется GitLab CI в реальном проекте, где задействовано несколько команд. А в современном мире разработки ПО это действительно так: ведь есть (как минимум) разработчики, тестировщики, DevOps- и релиз-инженеры. С подобным разделением на команды мы работаем уже несколько лет. В этой статье я расскажу о том, как мы, используя и улучшая возможности GitLab CI, реализовали и применяем в production для коллектива из нескольких команд процессы непрерывной интеграции (CI) и отчасти доставки приложений (CD).
Information
- Rating
- Does not participate
- Location
- Одесса, Одесская обл., Украина
- Registered
- Activity