Как стать автором
Обновить
46
0
Дмитрий Мельник @mitro

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

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

Короткая шпаргалка по блокировкам при чтении и изменении данных в зависимости от уровня изоляции транзакции в MSSQL

Время на прочтение3 мин
Количество просмотров37K
Read Uncommitted

  • если в одной транзакции поменять данные — селект этих данных (в другой транзакции или без транзакции) не будут ждать окончания первой транзакции и вернут записанные данные незакомиченных транзакций
  • если в одной транзакции считать данные — апдейты этих данных в другой транзакции не будут ждать окончания первой транзакции
  • шаред локи не используются. Что аналогично установке NOLOCK хинта во все селекты в Read Commited
  • эксклюзивные локировки устанавливаются в процессе выполнения стейтмента и снимаются по окончанию транзакции


Read Committed + read_committed_snapshot off

(alter database xxx set read_committed_snapshot off)

  • если в одной транзакции поменять данные — селект этих данных (в другой транзакции или без транзакции) будут ждать окончания первой транзакции. Селект с NOLOCK хинтом вернёт изменённые, но не закомиченные данные.
  • если в одной транзакции считать данные — апдейты этих данных в другой транзакции не будут ждать окончания первой транзакции
  • шаред локировки устанавливаются в процессе работы стейтмента и снимаются по окончанию стейтмента
  • эксклюзивные локировки устанавливаются в процессе выполнения стейтмента и снимаются по окончанию транзакции


Дальше
Всего голосов 19: ↑19 и ↓0+19
Комментарии26

Как Валера взял в команду стажера и начал учить его проектированию

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

Начало


Валера по-прежнему работает тимлидом в одной большой IT-компании одной большой среднеазиатской страны. В работе находится несколько крупных проектов и, судя по сияющим лицам специалистов по маркетингу и продажам, в скором времени их станет значительно больше. На эту же мысль Валеру наводит приглашение на совещание, которое он получил от технического директора. Тема совещания — расширение направления образовательных систем.

На следующее утро в зале для совещаний собрались ключевые сотрудники направления. Технический директор (для тех, кто с ним еще не знаком, — его зовут Иван) сразу перешел к сути вопроса: «Приветствую всех! Как вы знаете, некоторое время назад мы поставили перед собой цель расширить присутствие на рынке и для этого открыли новый офис продаж. Так вот, эта стратегия сработала. Через месяц мы подписываем договор на разработку и внедрение платформы дистанционного образования. Проект очень интересный, но пока не об этом. Чтобы его потянуть, нам нужно срочно формировать новую команду в направлении образовательных систем.»
Читать дальше →
Всего голосов 69: ↑58 и ↓11+47
Комментарии38

Умей говорить «нет» и умей говорить «да»

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

Умей говорить «нет»


Старший разработчик Валера работает в роли тимлида на большом и важном проекте для большого и важного заказчика. За окном шумит жаркое лето, по пыльным улицам бегут по своим делам прохожие, голуби крутят пируэты в необъятном казахстанском небе. Жизнь прекрасна – пилотный запуск намечен на конец ноября, команда набрала хороший темп и идет по графику. И тут Валера боковым зрением замечает, как на иконке Скайпа появилась желтая точка – кто-то о нем вспомнил и написал сообщение. Это руководитель проекта: «Зайди ко мне…»
Читать дальше →
Всего голосов 193: ↑183 и ↓10+173
Комментарии34

Карьера менеджера проекта vs организация

Время на прочтение17 мин
Количество просмотров67K
В предыдущей статье «Медовый месяц менеджера: как его провести с пользой» мы говорили о том как происходит назначение на позицию менеджера и что может делать новый менеджер первые месяцы работы в должности. Давайте продолжим разбираться в этой теме.

Как построить карьеру менеджера проектов?


Нужно ли расти из технического специалиста или целенаправленно, с нуля учиться на менеджера? Смогу ли я управлять коллективом, не умея выполнять задания, которые я даю своим сотрудникам? Что ждет меня через 3-5-7 лет? Что предпринять сейчас, чтобы приблизиться к собственной мечте (и какова вообще она — карьерная мечта руководителя проектов)?

Я больше 10 лет занимаюсь проектным менеджментом и такие вопросы слышу часто (да что там — задаю их и сам себе). Единственно-верных ответов, конечно, не существует, а вот собственными соображениями я поделиться могу.

Сам я давно пришел к убеждению, что ни у специалистов по кадрам, ни у тех, кто занимается проф. ориентацией, нет ответов ни на эти, ни на более конкретные вопросы. Например, «Может ли менеджер проектов перейти из сферы ИТ, скажем, в строительство?».

Мы знаем, примеры есть. Однако, когда и почему такие переходы оказываются успешны — ответить затрудняемся.

Часто работодатели не ограничиваются в вакансии требованиями к знаниям проектного управления и общему стажу, а обязательно требуют релевантный опыт (например — 5 лет в управлении разработкой сайтов или внедрения ERP и т.п.). Сами менеджеры тоже стараются строить карьеру с таким прицелом, чтобы развиваться в наиболее симпатичной области. Но это на уровне интуиции. А можно ли подвести под нее какие-либо правила?
Читать дальше →
Всего голосов 38: ↑33 и ↓5+28
Комментарии9

Практическая холакратия. Нарезаем круги и готовим роли

Время на прочтение15 мин
Количество просмотров49K
В середине лета мы впервые услышали слово «холакратия». За пару дней отвадили себя от неправильного написания (холОкратия) и научились отличать эту модель организации бизнеса от почившей в бозе формы правления с созвучным названием «охлократия». Дальше началось самое интересное: мы решили попробовать холакратию в деле. Момент был подходящим, не хватало только информации. Пришлось изучать скудно описанный опыт западных коллег, призывать на помощь менторов из Амстердама и нырять в бездны поисковиков. Спустя полгода новая концепция начала приживаться, а у нас появился опыт, которым не стыдно поделиться.



В предыдущей статье мы писали о том, что такое холакратия и почему она вам не нужна. Сегодня разбавим сладкую теорию горькой практикой и посмотрим, как это работает в Кнопке. Не обойдём стороной опыт Zappos, Medium, David Allen Company и поспорим в комментах о ситуации в GitHub. Вы с нами? :)
Читать дальше →
Всего голосов 21: ↑14 и ↓7+7
Комментарии25

ASP.NET MVC. Урок 0. Вступление

Время на прочтение2 мин
Количество просмотров782K
Я пишу сайты на asp.net mvc. В этих 16 главах я хочу рассказать, как я это делаю. Это некий учебник-справочник всех тех знаний, которые я накопил в течение трех лет.

Почему именно asp.net mvc

ASP.NET MVC я люблю потому что:
  • Это .net. Я знаю .net и С#.
  • Это компилируемый код.
  • Это не ASP.NET WebForms, я работаю с html-кодом.
  • Используется MVC-паттерн.
  • Visual Studio – самое популярное средство разработки, в котором есть IntelliSense.
  • Отличные инструменты отладки.


Читать дальше →
Всего голосов 290: ↑215 и ↓75+140
Комментарии67

Разработка механизма извлечения DTO из БД с помощью LINQ

Время на прочтение9 мин
Количество просмотров7K
Постановка задачи

В этой статье я опишу механизм создания DTO, реализованный в одном из проектов нашей компании. Проект состоит из серверной части и нескольких клиентов (Silverlight, Outlook, iPad). Сервер представляет собой ряд сервисов, реализованных на WCF. Раз есть сервисы, то надо обмениваться с ними какими-то данными. Вариант, когда клиенты знают о сущностях доменной области и получают их с сервера, отпал сразу по ряду причин:

  1. Не все клиенты реализованы на .NET
  2. Возможные проблемы сериализации сложных графов объектов
  3. Избыточность передаваемых данных

В принципе, все эти недостатки давно известны и для их устранения умные люди придумали паттерн Data Transfer Object (DTO). То есть, классы сущностей доменной области известны только серверу, клиенты же оперируют классами DTO и экземплярами этих же классов обмениваются с сервисами. В теории все прекрасно, на практике же среди прочих возникают вопросы создания DTO и записи в них данных из сущностей. В небольших проектах с этой работой отлично справится оператор "=". Но, когда размер проекта начинает расти и повышаются требования к производительности и сопровождаемости кода, возникает необходимость в более гибком решении. Ниже я опишу эволюцию механизма, который мы используем для создания и заполнения DTO.
Читать дальше →
Всего голосов 7: ↑4 и ↓3+1
Комментарии12

Почему проекты в IT занимают в 2-3 раза дольше, чем планируется?

Время на прочтение3 мин
Количество просмотров24K
Мы с другом решаем пойти в поход от Сан Франциско до Лос Аджелеса, чтобы заскочить в гости к нашим друзьям на Ньюпорт Бич. Посмотрим на карту и примерно прикинем путь по берегу:

image

Путь займёт около 400 миль, в день мы можем пройти 4 мили в час по десять часов, так что придём мы туда примерно через 10 дней. Мы звоним друзьям и бронируем столик на 6 вечера в воскресенье.

Читать дальше →
Всего голосов 278: ↑262 и ↓16+246
Комментарии181

Прототип Lane Departure Warning или как напомнить водителю о том, что жить ему осталось не очень долго

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

Почитал я немного про автовыставку в Детройте, про то, что Lane Departure Warning становится все более и более популярным и решил, что надо бы поделиться своим опытом изготовления прототипа этой системы из нехитрых компонентов в виде веб-камеры, Питона, OpenCV и пары дней усердной медитации:)

Историю создания прототипа можно почитать и посмотреть под катом… (там картинки, много...)
Читать дальше →
Всего голосов 179: ↑178 и ↓1+177
Комментарии101

Информация

В рейтинге
Не участвует
Откуда
Астана, Акмолинская обл. (Целиноградская обл.), Казахстан
Дата рождения
Зарегистрирован
Активность