Обновить
@Trixonread⁠-⁠only

Не проходите мимо, стадо хомячков, ставьте диз! :D

Отправить сообщение

Очень много YouTube-каналов для прокачки английского языка для программистов

Время на прочтение4 мин
Охват и читатели62K
Привет, Хабр!

С помощью YouTube можно ощутимо и сравнительно быстро улучшить английский.
Понимание на слух как минимум. Истина не нова, но мало кто смотрит английский YouTube, потому что легко потеряться в бесконечности каналов. Но для вас я собрал самые стоящие каналы!

Добавляйте в закладки и подписывайтесь на меня!
Дальше вас ждет много крутых статей.

Поучить английский


AJ Hoge. На его канале есть всё: от базовых слов до размышлений о важности языка тела в общении. Чувак пилит видосы уже много лет, материальчик накопился.

EngVid. Если бы можно было выбрать что-то одно для улучшения английского, то это оно. Разные преподы и тематики, постоянное обновление, бездонный ресурс. Ещё сайт одноимённый крутой, с удобной навигацией — можно найти очень узкую тему по интересам.
Читать дальше →

Решето Сундарама

Время на прочтение4 мин
Охват и читатели13K
Решето Сундарама в сети представлено большим количеством источников краткой справочной информации. Тем не менее, я решил изложить то, что хотел бы прочитать сам в начале изучения теоретико-числовых алгоритмов.

Решето Сундарама входит в тройку известнейших методов генерации простых чисел. Сейчас к нему принято относиться как к некоторой экзотике по причине плохой вычислительной сложности: O(N(logN)). Однако асимптотика – асимптотикой, а на практике в 32-битном диапазоне просеивания Аткин, например, перегоняет Сундарама только при тщательной оптимизации.

Реализации решета Аткина, имеющие хождение в интернете, не превосходят решето Сундарама ни по временным характеристикам, ни по эффективности использования памяти. Так что метод Сундарама вполне можно использовать как вспомогательный инструмент при экспериментах с более продвинутыми алгоритмами.
Читать дальше →

ValueTask<TResult> — почему, зачем и как?

Время на прочтение16 мин
Охват и читатели20K

Предисловие к переводу


В отличие от научных статей, статьи данного типа сложно переводить "близко к тексту", приходится проводить довольно сильную адаптацию. По этой причине приношу свои извинения, за некоторую вольность, с моей стороны, в обращении с текстом исходной статьи. Я руководствуюсь лишь одной целью — сделать перевод понятным, даже если он, местами, сильно отклоняется от исходной статьи. Буду благодарен за конструктивную критику и правки / дополнения к переводу.


Введение


Пространство имен System.Threading.Tasks и класс Task впервые были представлены в .NET Framework 4. С тех пор, этот тип, и его производный класс Task<TResult>, прочно вошли в практику программирования на .NET, стали ключевыми аспектами асинхронной модели, реализованной в C# 5, с его async/await. В этой статье я расскажу о новых типах ValueTask/ValueTask<TResult>, которые были введены с целью повышения производительность асинхронного кода, в тех случаях, когда ключевую роль играют накладные расходов при работе с памятью.


Читать дальше →

Инструментарий для анализа и отладки .NET приложений

Время на прочтение6 мин
Охват и читатели23K

Заглянуть «под капот» кода или посмотреть на внутреннее устройство CLR можно с помощью множества инструментов. Этот пост родился из твита, и я должен поблагодарить всех, кто помог составить список подходящих инструментов. Если я пропустил какие-то из них, напишите в комментариях.


Во-первых, я должен упомянуть, что хороший отладчик уже присутствует в Visual Studio и VSCode. Также существует множество хороших (коммерческих) профилировщиков .NET и инструментов мониторинга приложений, на которые стоит взглянуть. Например, недавно я попробовал поработать с Codetrack и был впечатлён его возможностями.


Однако оставшийся пост посвящён инструментам для выполнения отдельных задач, которые позволят лучше понять, что происходит. Все инструменты имеют открытый исходный код.


5 полезных плагинов для webpack

Время на прочтение5 мин
Охват и читатели23K
Привет, Хабр!

У webpack'а есть много полезных плагинов, о которых многие не знают и не используют в своих проектах. Под катом я собрал 5 таких, они могут здорово упростить вам жизнь!


Читать дальше →

Разработка приложения для потокового вещания с помощью Node.js и React

Время на прочтение21 мин
Охват и читатели58K
Автор материала, перевод которого мы сегодня публикуем, говорит, что работает над приложением, которое позволяет организовывать потоковое вещание (стриминг) того, что происходит на рабочем столе пользователя.

image

Приложение принимает от стримера поток в формате RTMP и преобразует его в HLS-поток, который может быть воспроизведён в браузерах зрителей. В этой статье будет рассказано о том, как можно создать собственное стриминговое приложение с использованием Node.js и React. Если вы привыкли, увидев заинтересовавшую вас идею, сразу же погружаться в код, можете прямо сейчас заглянуть в этот репозиторий.
Читать дальше →

Обход дерева в несколько потоков

Время на прочтение3 мин
Охват и читатели12K
Всем привет, хочу поделиться с общественностью некоторым объемом информации, который как мне показалось трудно найти в интернете.

Что такое дерево, смотрим Википедию.


Рис.1 Пример дерева.
Читать дальше →

Восемь именных законов в UX дизайне (часть 2)

Время на прочтение8 мин
Охват и читатели16K


Эта статья является продолжением опубликованной ранее первой части. Если вы еще не успели ознакомиться с ней, рекомендую начать именно с нее.

Самые редкие и самые дорогие языки программирования. Часть II

Время на прочтение5 мин
Охват и читатели53K
Недавно для читателей Habr я провела небольшое исследование языков программирования, таких как Rust, Dart, Erlang, чтобы выяснить, насколько они являются редкими на российском рынке IT.

В ответ на мое исследование посыпалось больше количество комментариев и вопросов касательно других языков. Я решила собрать все ваши комментарии и провести еще один анализ.

В исследование вошли языки: Forth, Ceylon, Scala, Perl, Cobol, а также некоторые другие языки. В общем и целом я проанализировала 10 языков программирования.

Чтобы вам было удобно воспринимать информацию, я условно разделила языки на две группы: редкие (нет спроса и невысокое предложение) и популярные (язык востребован на российском IT рынке).
Читать дальше →

Осторожный переезд в Нидерланды с женой и ипотекой. Часть 1: поиск работы

Время на прочтение12 мин
Охват и читатели109K
На Хабре да и вообще в русскоязычном Интернете есть немало инструкций о том, как перебраться в Нидерланды. Я и сам немало полезного почерпнул из одной статьи на Хабре (ныне, видимо, скрытой в черновике уже нет, вот она). Но я все-таки расскажу о своем опыте поиска работы и переезда в эту европейскую страну. Помнится, и когда я только собирался рассылать резюме, и когда уже проходил собеседования, мне было очень интересно почитать об аналогичном опыте других коллег по цеху.

image

В общем, если вам интересен рассказ о том, как C++ программист из Подмосковья искал работу в Европе, желательно в Великобритании, а нашел-таки в Нидерландах, переехал туда сам и привез жену, все это с непогашенной ипотекой в России и с небольшими приключениями — добро пожаловать под кат.
Читать дальше →

Как Microsoft отсекает шум, чтобы создавать полезный и красивый звуковой мир

Время на прочтение9 мин
Охват и читатели6.2K
Вы никогда не думали о звуках, которые издает ваш компьютер, когда приходит сообщение, садится батарея или появляется напоминание о встрече? А вот Мэттью Беннетт думал. Много думал.

Беннетт сочинил, исполнил и обработал более 900 версий звука оповещения календаря Windows 10, прежде чем выбрал идеальную.

«Это было долго, зато хорошо получилось», — вспоминал Беннетт, пожав плечами, во время недавнего визита в свою студию звукозаписи в Редмонде. В звукоизолированной комнате, освещенной свечами, расположены микшер, несколько высококачественных студийных мониторов и больших ЖК-экранов, а в центре — полнооктавная клавиатура синтезатора.

Как композитор и звукорежиссер, работающий над многими приложениями и устройствами Microsoft, Беннетт уже 15 лет играет важную роль в звуковом дизайне компании. У него твердые убеждения и сложившаяся философия относительно звука, и он отлично владеет профессиональной терминологией для обсуждения этих вопросов.

image

Как работает конфигурация в .NET Core

Время на прочтение9 мин
Охват и читатели75K

Давайте отложим разговоры о DDD и рефлексии на время. Предлагаю поговорить о простом, об организации настроек приложения.


После того как мы с коллегами решили перейти на .NET Core, возник вопрос, как организовать файлы конфигурации, как выполнять трансформации и пр. в новой среде. Во многих примерах встречается следующий код, и многие его успешно используют.


public IConfiguration Configuration { get; set; }
public IHostingEnvironment Environment { get; set; }

public Startup(IConfiguration configuration, IHostingEnvironment environment)
{
   Environment = environment;
   Configuration = new ConfigurationBuilder()
            .AddJsonFile("appsettings.json")
            .AddJsonFile($"appsettings.{Environment.EnvironmentName}.json")
            .Build();
}

Но давайте разберемся, как работает конфигурация, и в каких случаях использовать данный подход, а в каких довериться разработчикам .NET Core. Прошу под кат.

Читать дальше →

Мифы про удалённых сотрудников, которые мы разрушили сами

Время на прочтение5 мин
Охват и читатели27K
image

Привет, Хабр. Я редактор в компании Ratio, мы делаем веб-разработку на заказ и с начала 2018 года все наши сотрудники работают удалённо. От Таллина до Комсомольска-на-Амуре, семь часовых поясов.

Наши разработчики всегда трудились из дома, но также был офис в Москве, в котором сидела часть менеджеров. Мы настроили бизнес-процессы так, чтобы работать на удалёнке было удобно, так что со временем офис опустел сам собой — закрыли его без проблем с дисциплиной и дедлайнами.

Сейчас в команде 20 человек и больших трудностей с управлением нет. В статье я расскажу, какие мифы про удалённых сотрудников мы разрушили.
Читать дальше →

ObjectRepository — .NET in-memory repository pattern для ваших домашних проектов

Время на прочтение6 мин
Охват и читатели8K

Зачем хранить все данные в памяти?


Для хранения данных сайта или бекэнда первым желанием большинства здравомыслящих людей будет SQL база данных. 


Но иногда в голову приходит мысль что модель данных не подходит для SQL: например, при построении поиска или социального графа нужен поиск по сложным связям между объектами. 


Хуже всего ситуация, когда работаете в команде, и коллега не умеет строить быстрые запросы. Сколько времени вы потратили на решение проблем N+1 и на построение дополнительных индексов, чтобы SELECT на главной странице отрабатывал за разумное время?


Другим популярным подходом является NoSQL. Несколько лет назад был большой хайп вокруг этой темы — для любого удобного случая разворачивали MongoDB и радовались ответам в виде json-документов (кстати, сколько костылей пришлось вставить из-за циклических ссылок в документах?).


Почему бы не попробовать хранить все данные в памяти приложения, периодически сохраняя в произвольное хранилище (файл, удаленная база данных)? 

Читать дальше →

Ищем работу за границей: 7 простых советов для IT специалистов

Время на прочтение3 мин
Охват и читатели22K
Ищете работу за границей? Будучи в сфере IT-рекрутинга уже более 10 лет, я часто даю айтишникам советы о том, как быстро найти работу за рубежом. В этой статье приведены самые распространенные из них.



Читать дальше →

Как написать сопроводительное письмо при поиске работы в США: 7 советов

Время на прочтение7 мин
Охват и читатели15K


На протяжение многих лет в США была распроcтранена практика требовать претендентов на различные вакансии не только резюме, но еще и сопроводительное письмо (cover letter). В последние годы важность этого аспекта начала снижаться – уже в 2016 году сопроводительные письма требовали только около 30% работодателей. Это нетрудно объяснить – у HR-специалистов, проводящий первоначальный скрининг, обычно слишком мало времени, чтобы читать письма, на анализ самих резюме по статистике уходит всего несколько секунд.

Однако, опросы показывают, что явление сопроводительного письма еще полностью не ушло в прошлое, особенно это касается позиций, связанных с креативом, где важен навык письма. Программист может найти работу и с одним резюме в виде прокачанного профиля на GitHub, а вот тестировщикам, аналитикам, маркетологам стоит уделить время составлению письма – их будут читать уже не «эйчары», а менеджеры, которые подбирают людей к себе в команду.

Я нашла интересный пост о том, как сегодня следует подходить к написанию cover letter при поиске работы в США, и подготовила его адаптированный перевод.
Читать дальше →

Пять ошибок, которые люди совершают при подготовке к рабочей иммиграции в США

Время на прочтение5 мин
Охват и читатели32K


Миллионы людей со всего мира мечтают переехать на работу в США, на Хабре полно статей о том, как конкретно это можно сделать. Проблема в том, что обычно это истории успехов, о возможных ошибках мало кто рассказывает. Я нашел интересный пост на эту тему и подготовил его адаптированный (и немного дополненный) перевод.
Читать дальше →

Сытые философы или конкурентное программирование на .NET

Время на прочтение14 мин
Охват и читатели16K


Давайте посмотрим как устроено конкурентное и параллельное программирование в .Net, на примере проблемы обедающих философов. План такой, от синхронизации потоков/процессов, до модели акторов (в следующих частях). Статья может быть полезна для первого знакомства или для того, чтобы освежить свои знания.


Зачем вообще уметь это? Транзисторы достигают своего минимального размера, закон Мура упирается в ограничение скорости света и поэтому рост наблюдается в количестве, транзисторов можно делать больше. При этом количество данных растет, а пользователи ожидают немедленной реакции систем. В такой ситуации "обычное" программирование, когда у нас один выполняющий поток, уже не эффективно. Нужно как-то решать проблему одновременного или конкурентного выполнения. Причем, проблема эта существует на разных уровнях: на уровне потоков, на уровне процессов, на уровне машин в сети (распределенные системы). В .NET есть качественные, проверенные временем, технологии для быстрого и эффективного решения таких задач.

Пообедаем...

Восемь золотых правил Шнейдермана помогут вам создать лучший интерфейс

Время на прочтение8 мин
Охват и читатели17K


Восемь золотых правил Шнейдермана помогут вам создать лучший интерфейс


Следуйте «Восьми золотым правилам дизайна интерфейса» Бена Шнейдермана, если вы хотите создавать великолепные, производительные и не вызывающие разочарований пользовательские интерфейсы. Apple, Google и Microsoft являются одними из самых успешных компаний, чьи хорошо продуманные продукты отражают правила Шнейдермана. Характеристики, полученные из золотых правил Шнейдермана, могут быть признаны в различных руководствах по пользовательскому интерфейсу, разработанных корпоративными гигантами, такими как упомянутые выше компании. Визуальное воплощение этих правил становится еще более очевидным в создаваемых ими популярных интерфейсах. Эта статья научит вас улучшать свою работу, интегрируя 8 золотых правил.
Читать дальше →

Быстрорастворимое проектирование

Время на прочтение25 мин
Охват и читатели51K
Люди учатся архитектуре по старым книжкам, которые писались для Java. Книжки хорошие, но дают решение задач того времени инструментами того времени. Время поменялось, C# уже больше похож на лайтовую Scala, чем Java, а новых хороших книжек мало.

В этой статье мы рассмотрим критерии хорошего кода и плохого кода, как и чем измерять. Увидим обзор типовых задач и подходов, разберем плюсы и минусы. В конце будут рекомендации и best practices по проектированию web-приложений.

Эта статья является расшифровкой моего доклада с конференции DotNext 2018 Moscow. Кроме текста, под катом есть видеозапись и ссылка на слайды.


Читать дальше →

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность