Как стать автором
Обновить
3
0
Дмитрий Шинелев @Dimshin

Пользователь

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

Инфраструктура System.Transactions в мире .NET

Время на прочтение33 мин
Количество просмотров29K

Встречали ли вы в C# конструкцию типа using (var scope = new TransactionScope(TransactionScopeOption.Required))? Это значит, что код, выполняющийся в блоке using, заключается в транзакцию и после выхода из этого блока изменения будут зафиксированы или отменены. Звучит понятно, пока не начинаешь копать глубже. И чем глубже копаешь, тем «страньше и страньше» становится. Во всяком случае, у меня при более близком знакомстве с классом TransactionScope и вообще транзакциями .NET возникла целая уйма вопросов.

Что за класс TransactionScope? Как только мы используем конструкцию using (var scope = new TransactionScope()), все в нашей программе сразу становится транзакционным? Что такое «управляющий ресурсами» (Resource Manager) и «управляющий транзакциями» (Transaction Manager)? Можно ли написать свой управляющий ресурсами и как он «подключается» к созданному экземпляру TransactionScope? Что такое распределенная транзакция и правда ли, что распределенная транзакция в SQL Server или Oracle Database — это то же самое, что и распределенная транзакция .NET?

В данной публикации я постарался собрать материал, помогающий найти ответы на указанные вопросы и сформировать понимание транзакций в мире .NET.
Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии44

Шпаргалка для алгособеса — алгоритмическая сложность, структуры данных, методы сортировки и Дейкстра

Уровень сложностиСредний
Время на прочтение33 мин
Количество просмотров106K

Привет, Хабр!

Так уж повелось, что любой уважающий себя работодатель перенимает передовые^✻ методики FAANG — по этой причине практически во всех IT-собесах есть она: секция алгоритмов. Кто-то ей рад, кто-то не очень, но секция есть и уходить пока не планирует. Поэтому нужно закатать рукава и достойно встретить суровую реальность.

Читать далее
Всего голосов 187: ↑185 и ↓2+212
Комментарии77

Зарплата по результатам собеседования — лучший способ сократить отклики на вакансию, а тестовые задания — избыточны

Время на прочтение7 мин
Количество просмотров75K

Почему ИТ специалисты на самом деле не любят выполнять тестовые задания? Почему меньше откликов на вакансии без указания зарплаты? Простые ответы на сложные вопросы.

Читать далее
Всего голосов 130: ↑105 и ↓25+103
Комментарии387

Электронный конструктор, не бьющий током

Время на прочтение13 мин
Количество просмотров38K

Дайте угадаю: вы в детстве заворожённо рассматривали печатные платы? Вам было любопытно узнать, как работает этот мини-город из разноцветных деталек? Возможно, у вас был опыт сборки электронных схем по книгам Борисова и Свореня? Советский сорокаваттный паяльник, кусочек канифоли в спичечном коробке? А ещё штаны с намертво влипшей в ткань каплей припоя?

Современные программные средства иллюстрируют процессы, происходящие в электрических цепях, с недосягаемыми для радиолюбителей недавнего прошлого наглядностью и интерактивностью. Они визуализируют протекающие по схеме токи и показывают напряжения в её различных частях. Это снижает порог понимания для людей, которым сложно даются абстрактные знания и язык формул.
Читать и смотреть картинки
Всего голосов 163: ↑163 и ↓0+163
Комментарии153

Насколько круто иметь свой сервер в комнате

Время на прочтение6 мин
Количество просмотров114K

Некоторые олды часто вспоминают эпоху до смартфонов, когда в студенческие времена или в школе у них был любимый настольный компьютер. Он стоял прямо в комнате, рядом с кроватью, и работал как личный ассистент в режиме 24/7: играл фоновую музыку (со специальным плейлистом, когда в гости приходили девушки), показывал фильмы, будил уведомлением из аськи или ирки, скачивал сайты ночью по диалапу и т. д.

Но кажется, что эта эпоха возвращается. Только на новом уровне. Сейчас опять стало очень круто иметь в комнате свой сервер, только он выглядит иначе и выполняет другие функции.
Читать дальше →
Всего голосов 117: ↑116 и ↓1+146
Комментарии317

Руководство по созданию облачного приложения под Microsoft Azure на основе опенсорсных технологий. Часть 1

Время на прочтение22 мин
Количество просмотров3.4K

Эта статья научит вас создавать облачные приложения, шаг за шагом демонстрируя все этапы разработки на приближенном к реальным сценариям учебном примере.

Читать далее
Всего голосов 8: ↑7 и ↓1+7
Комментарии2

12 лучших книг для Project Manager

Время на прочтение4 мин
Количество просмотров39K

Недавно проводила в Линкедине опрос, есть ли на рынке хорошие курсы для опытных Project Manager. Как и предполагала, их крайне мало.

Поэтому решила решила заняться саморазвитием по книгам.

Перебрав 10+ разных подборок, составила свой рейтинг 12+9 лучших книг по управлению проектами.

Получившаяся подборка одобрена уже 360+ менеджерами проектов.

Встречайте: 12 лучших зарубежных и 9 российских книг по управлению проектами

Читать далее
Всего голосов 12: ↑6 и ↓6+3
Комментарии16

Мои вопросы работодателю, когда подаюсь на разработчика

Время на прочтение9 мин
Количество просмотров86K

За последние 10 лет я поменял 3 работы, прособеседовался с 10+ компаний на позицию разработчика (software engineer) и вел переписку с HR/рекрутерами из нескольких десятков фирм. По ходу дела заметил, что вопросы, которые я задаю на собеседовании с менеджером/командой или с HR, повторяются, и решил их структурировать. Некоторые из них являются общими, и их может задать кандидат на почти любую вакансию; другие касаются только вакансий для программистов. В этой статье поделюсь с вами наиболее типичными и важными вопросами, которые, на мой взгляд, может задать соискатель потенциальному работодателю.

Читать далее
Всего голосов 72: ↑66 и ↓6+78
Комментарии70

Остров Русь — инструкция по импортозамещению

Время на прочтение6 мин
Количество просмотров91K

Надейся на лучшее, готовься к худшему. Этот девиз никого и никогда не подводил, воспользуемся им и мы в условиях медленно опускающегося железного занавеса.

Что наихудшее может случиться в плане софта и коммуникаций?

И что делать?

Читать далее
Всего голосов 62: ↑53 и ↓9+66
Комментарии142

Как создать голосовой навык для Яндекс.Алисы, используя Spring Boot и Яндекс.Облако

Время на прочтение23 мин
Количество просмотров10K

В статье рассказывается, как разработать навык для платформы Яндекс.Диалоги, используя Java и фреймворк Spring Boot, а затем развернуть его в Яндекс.Облаке.

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

Читать далее
Всего голосов 2: ↑1 и ↓10
Комментарии4

Разработка с Docker на Windows Subsystem for Linux (WSL)

Время на прочтение4 мин
Количество просмотров98K



Для полноценной работы с проектом на docker'е в WSL необходима установка WSL 2. На момент написания заметки ее использование возможно только в рамках участия в программе предварительной оценки Windows (WSL 2 доступна в сборках 18932 и выше). Так же отдельно стоит упомянуть, что необходима версия Windows 10 Pro для установки и настройки Docker Desktop.


Важно! В WSL 2 пропала острая необходимость в Docker Desktop для Windows 10. Как обходиться без него описано в пункте Про Docker в Ubuntu.


Читать дальше →
Всего голосов 24: ↑18 и ↓6+12
Комментарии76

Экзамен 1z0-819 Oracle Certified Professional: Java 11 Developer — заметки о сдаче

Время на прочтение5 мин
Количество просмотров25K


В начале октября Oracle упростил получение сертификации по Java — вместо двух экзаменов теперь нужно сдать один, при том что цена за экзамен не изменилась. Кому интересен уровень задач и больше подробностей про экзамен прошу под кат — опишу почему решил сдать, как готовился, какие вопросы были и собственно какие выводы сделал.
Читать дальше →
Всего голосов 3: ↑2 и ↓1+3
Комментарии3

Оформить ИП — единственный путь

Время на прочтение9 мин
Количество просмотров49K
К каждой статье на Хабре, касающейся преимуществ или недостатков оформления ИТ-шника, как ИП, пишутся сотни комментариев сторонников и противников этой схемы. Такое ощущение, будто у рынка еще остался выбор. А я вот уверен, что с развитием удаленной работы, всякими agile-подходами и практиками, которые сложились при взаимодействии с удаленными командами, в ИТ просто нет иного пути. ИП — единственная форма взаимоотношений, которая соответствует реальности, а не с трудом на нее “натягивается” (если не рассматривать более «хитрые» случаи — ООО, ЗАО).

image

Карикатура «Без вариантов» Андрея Абрамова

Под катом изложено исключительно мое ИМХО — опыт человека, более 15 лет отработавшего в России (с российскими заказчиками и работодателями) с самыми разными формами отношений.
Читать дальше →
Всего голосов 61: ↑51 и ↓10+41
Комментарии460

Нескучный туториал по NumPy

Время на прочтение19 мин
Количество просмотров223K
Меня зовут Вячеслав, я хронический математик и уже несколько лет не использую циклы при работе с массивами…

Ровно с тех пор, как открыл для себя векторные операции в NumPy. Я хочу познакомить вас с функциями NumPy, которые чаще всего использую для обработки массивов данных и изображений. В конце статьи я покажу, как можно использовать инструментарий NumPy, чтобы выполнить свертку изображений без итераций (= очень быстро).

Не забываем про

import numpy as np

и поехали!
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии19

Введение в Git

Время на прочтение17 мин
Количество просмотров149K

Оглавление


Предисловие
1. Настройка git
....1.1 Конфигурационные файлы
....1.2 Настройки по умолчанию
....1.3 Псевдонимы (aliases)
2. Основы git
....2.1 Создание репозитория
....2.2 Состояние файлов
....2.3 Работа с индексом
....2.4 Работа с коммитами
....2.5 Просмотр истории
....2.6 Работа с удалённым репозиторием
3. Ветвление в git
....3.1 Базовые операций
....3.2 Слияние веток
....3.3 Rerere
4. Указатели в git
....4.1 Перемещение указателей
5. Рекомендуемая литература

Предисловие


Git — самая популярная распределённая система контроля версиями.[1][2]

Основное предназначение Git – это сохранение снимков последовательно улучшающихся состояний вашего проекта (Pro git, 2019).
Читать дальше →
Всего голосов 40: ↑34 и ↓6+28
Комментарии27

Подготовка к собеседованиям в IT-гиганты: как я преодолела проклятье алгоритмического собеседования

Время на прочтение12 мин
Количество просмотров204K

Дисклеймер:


Я не программирую с трёх лет, не знаю наизусть Кнута, не являюсь призёром олимпиад по информатике и чемпионатов по спортивному программированию, не училась в MIT. У меня за плечами образование по информатике и 6 лет опыта в коммерческой разработке. И до недавнего времени я не могла пройти дальше первого технического скрининга в IT-гиганты из FAANG (Facebook, Amazon, Apple, Netflix, Google и подобные), хотя предпринимала несколько попыток. 

Но теперь всё изменилось, я получила несколько офферов и хочу поделиться опытом, как можно к этому прийти. Речь пойдёт о позиции Software Engineer в европейских офисах перечисленных компаний.
Читать дальше →
Всего голосов 155: ↑150 и ↓5+191
Комментарии342

Микросервисы со Spring Boot. Часть 1. Начало работы

Время на прочтение7 мин
Количество просмотров63K
Это первая часть серии статей по основам микросервисных архитектур.

В ней вы познакомитеь с концепцией микросервисов и узнаете, как создавать микросервисы с помощью Spring Boot и Spring Cloud.

Это руководство поможет вам изучить основы микросервисных архитектур. Мы также начнем рассматривать базовую реализацию микросервиса со Spring Boot.

Мы создадим пару микросервисов и заставим их общаться друг с другом с помощью сервера имен Eureka (Eureka Naming Server) и Ribbon для балансировки нагрузки на стороне клиента.

Это статья входит в серию статей «Микросервисы со Spring Boot»:


Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии7

'Hello World' вам в облако

Время на прочтение69 мин
Количество просмотров25K

Мир сходит с ума, заталкивая калькулятор для 2+2 в облака. Чем мы хуже? Давайте Hello World затолкаем в три микросервиса, напишем пару-тройку тестов, обеспечим пользователей документацией, нарисуем красивый пайплайн сборки и обеспечим деплой в условный облачный прод при успешном прохождении тестов. Итак, в данной статье будет показан пример того, как может быть построен процесс разработки продукта от спецификации до деплоя в прод. Инетересно? тогда прошу под кат

Всего голосов 51: ↑50 и ↓1+64
Комментарии47

LinkedIn: просто ещё одна площадка для резюме

Время на прочтение7 мин
Количество просмотров45K
Утечки баз данных с паролями и личной информацией пользователей уже стали неким фоном жизни интернета. И фоном крайне неприятным. Естественно, любая компания старается скрыть факты нарушения её периметра безопасности и кражи данных. В крайнем случае, если информация просочилась наружу — а так чаще всего и бывает — пострадавшая сторона старается преуменьшить масштабы ЧП, в попытке снизить хотя бы репутационный ущерб.

Но, как говорится, всё тайное когда-нибудь становится явным. Выяснилось, что представители соцсети LinkedIn, помогающей людям расширять свои бизнес-связи, несколько лукавили, когда в 2012 году сообщили о краже 6,5 млн паролей своих пользователей — их было украдено 117 млн. То есть 27% всей текущей базы данных LinkedIn. Сейчас украденные данные всплыли на чёрном рынке. Учитывая, что это сеть не просто для общения, а для поиска и установления деловых контактов, то и ожидания пользователей относительно качества услуг сервиса всё-таки выше. В свете этого возникает вопрос: насколько привлекательным сегодня представляется LinkedIn с точки зрения налаживания бизнес-связей?
Читать дальше →
Всего голосов 38: ↑25 и ↓13+12
Комментарии18

Информация

В рейтинге
Не участвует
Откуда
Воронеж, Воронежская обл., Россия
Зарегистрирован
Активность