Pull to refresh
14
0
Nikolay Rumyantsev @Dorgaliser

User

Send message

Устраиваемся программистом за рубежом

Reading time 16 min
Views 62K
Как часто вас посещала мысль о трудоустройстве за границей, будь то просто временная работа или переезд на постоянное место жительство? Какую страну выбрать? Возможно ли пройти собеседования за тысячи километров по телефону и получить джоб-офер? Как будет выглядеть переезд и жизнь в другой стране? В данной статье я бы хотел поделиться личным опытом и опытом многих моих друзей работающих за рубежом.
Читать дальше →
Total votes 208: ↑188 and ↓20 +168
Comments 160

Альтернативные крестики-нолики

Reading time 3 min
Views 91K
Однажды на пикнике я заметил математиков, толпящихся возле игры, интереса к которой я ожидал меньше всего: крестики-нолики.

Вы могли и сами заметить, что игра крестики-нолики смертельно скучна. В ней нет места творческой идее или внезапному озарению. Хорошие игроки всегда играют вничью. Игра неизбежно идёт примерно так:



Но математики на пикнике играли в более изощренную версию игры. В каждой из клеток на квадратном поле они нарисовали поле поменьше:
Читать дальше →
Total votes 244: ↑236 and ↓8 +228
Comments 104

Автоматизированное тестирование веб-приложения (MS Unit Testing Framework + Selenium WebDriver C#). Часть 1: Введение

Reading time 4 min
Views 63K
image

Введение

Всем Buenos Dias! В своей статье я хотел бы максимально лаконично и просто рассказать о том, как построить процесс автоматизированного тестирования web-приложения с нуля. Первым делом нужно правильно расставить приоритеты и выбрать приемлемое соотношение цена/качество. Сразу определимся — это будет не решение «на коленках» из зоопарка скриптов, которыми часто пользуются при ручном тестировании. В тоже время мы не будем тратить много усилий на проектирование нашего «фреймворка» для автоматизации. Наша цель — предоставить результаты своей бурной деятельности перед руководством в максимально короткие сроки, при этом система должна быть:
  • максимально простой, чтобы тесты могли писать даже специалисты по ручному тестированию
  • гибкой и расширяемой, поскольку мы не можем адекватно оценить весь объем работ на данном этапе
  • кроссплатформенной (Selenium WebDriver C# поддерживает Firefox, Chrome и IE)

В своем примере я буду успользовать .NET (Microsoft Unit Testing Framework) и Selenium WebDriver C#.
Читать дальше →
Total votes 25: ↑13 and ↓12 +1
Comments 15

Сетка в дизайне интерфейсов для Windows Phone: строгий учитель или добрый помощник? (Часть 1)

Reading time 6 min
Views 16K
Продолжаем публиковать статьи по следам Design Camp. Сегодня у нас на очереди доклад Егора Гилева (yegorg), который на момент кампа работал в компании Парксис, но в феврале 2013 г. ушел в свободное плавание и теперь вместе с ещё одним сооснователем студии Турбомилк Денисом Кортуновым работает над собственными проектами. Статья приведена как есть и отображает авторскую точку зрения на дизайн приложений под Windows Phone.

Я работаю дизайнером User Experience в компании Parcsis. В том виде, в каком она существует сегодня, она образовалась в результате слияния двух компаний: Parcsis и Турбомилк. Parcsis — это в некотором роде инкубатор, запускающий собственные интернет-проекты. Турбомилк — всемирно известная в узких кругах студия дизайна интерфейсов. Я являюсь сооснователем Турбомилка. Около полутора лет назад мы объединились, и команда дизайнеров Турбомилка стала отделом UX-дизайна объединённой компании.

В компании я слыву чудаком. Считается, что дизайнер должен работать на большом алюминевом маке и владеть айфоном, желательно последнего поколения. Я работаю на ноутбуке-трансформере с Windows 8, который купил в первый же день продаж Windows 8 в России. Телефоном у меня служит белая Lumia 710 — пока еще на Windows Phone 7.5. Вы не ошибётесь, если предположите, что я люблю Windows. Особенно новый интерфейс Windows, который раньше назывался Метро. Я его нежно люблю и как пользователь, и как дизайнер интерфейсов.

Возвращаясь к нашей компании. Один из основных проектов Парксиса называется «Право.ru». Этот проект в себя включает много всего интересного, но для сегодняшнего нашего разговора нам важна только одна его часть — та, которая является справочно-правовой системой, доступной как в вебе, так и на мобильных устройствах. Теперь и на Windows Phone:



Как вы понимаете, когда мы решили сделать мобильное приложение Право.ру для Windows Phone 7, задача по созданию его интерфейса естественным образом попала ко мне, чему я был очень рад. Во-первых, потому что мне было приятно его рисовать, а во-вторых, потому что это дало мне возможность разобраться с руководством по дизайну интерфейсов для Windows Phone в целом, и с правилами работы с сеткой в частности.
Читать дальше →
Total votes 48: ↑34 and ↓14 +20
Comments 14

Как стать ведущим разработчиком. Часть 2

Reading time 8 min
Views 40K
Продолжение перевода статьи Джона Оллспоу о личных качествах ведущих разработчиков.

Зрелые разработчики не жалуются просто так


Вместо этого они рассуждают, основываясь на наблюдениях, и предлагают варианты решения найденной ими проблемы. Один опытный менеджер сказал мне: «Никогда не приходи к своему начальнику с жалобами, если у тебя нет готового решения проблемы. И лучше, если решений будет несколько». Но даже если у вас не получилось найти ни одного решения — это уже лучше, чем жаловаться просто так.
Читать дальше →
Total votes 104: ↑98 and ↓6 +92
Comments 15

Разработка приложения «Шереметьево» для Windows Phone глазами разработчика

Reading time 9 min
Views 20K
Недавно, (хотя уже в прошлом году) было опубликовано приложение Шереметьево, которое было продемонстрировано на выставке «Транспорт России». Так как я был конструктором этого приложения, и Шереметьево попросило выделить разработчика для присутствия на выставке и для консультации в трудных вопросах, я согласился с большим удовольствием – не каждый день удается побывать на таких выставках (а тут еще и за счет рабочих дней.


На самой выставке был проявлен живой интерес к приложению и пришлось очень много общаться и рассказывать. Спрашивали по теме и не по теме. Неожиданно много пришлось рассказывать про сам Windows Phone, который некоторым был в новинку. Меня довольно часто принимали за сотрудника Шереметьево, а те, кто узнавали, что я один из разработчиков этого приложения интересовались и самой разработкой. Также я получал от друзей и коллег просьбы рассказать о разработке приложения Шереметьево и теперь, когда Аплана разрешила рассказать о разработке этого приложения, решил опубликовать статью с ответами на самые часто задаваемые вопросы.
Читать дальше →
Total votes 74: ↑56 and ↓18 +38
Comments 45

Управляем службами Windows с помощью PowerShell. Часть 3. Конфигурируем службы с помощью WMI и CIM

Reading time 4 min
Views 23K

Продолжаем публиковать переводы статей, выходящих на портале 4sysops.com, посвященных управлению службами Windows с помощью PowerShell. В двух предыдущих постах были рассмотрены вопросы получения статуса служб на локальном и удаленном компьютерах (здесь) и базовые моменты управления службами (запуск, остановка, пауза и прочее – здесь). В этом посте будет рассказано, как использовать WMI и CIM для целей конфигурирования служб на удаленных компьютерах.

Предыдущие статьи:
Управляем службами Windows с помощью PowerShell. Часть 1. Получаем статус служб
Управляем службами Windows с помощью PowerShell. Часть 2. Остановка, запуск, пауза

Читать дальше →
Total votes 17: ↑14 and ↓3 +11
Comments 0

О скраме, фокус-факторе и плюшках

Reading time 4 min
Views 30K
Навеяно очередной прочитанной книгой по управлению проектами. Это «Scrum и XP: заметки с передовой» Хенрика Книберга.

Скрам – это круто и красиво. Особенно красиво (и, на мой взгляд, реально применимо только в этом случае), когда решены все инфраструктурные проблемы, когда усилия всей компании (а не только скрам-команды) направлены на выпуск качественного продукта вовремя и когда задача программистов – именно разрабатывать ПО (т. е. никто не будет выдёргивать разработчика «из потока» для выполнения фантастически несвойственных ему задач).

Одна из фраз из книги Книберга: «В качестве значения по умолчанию фокус-фактора для новых команд мы обычно используем 70 %». Под «фокус-фактором» понимается некий коэффициент, отражающий отношение производительности существующей команды к производительности «идеальной» команды программистов. А как насчет программистов, которым постоянно приходится отвлекаться на решение хозяйственных проблем, техподдержку (ввиду страшной недоукомплектованности из-за экономии хозяйственного и суппортерского отделов) и прочие ужасно снижающие фокус-фактор проблемы?

В другой книге («Человеческий фактор…» Тома Демарко и Тимоти Листера) написано, что в идеальном рабочем помещении для программиста должно быть по окну на каждого сотрудника (чтобы он мог более вдохновенно заниматься разработкой и потому, что мы работаем, чтобы жить, а вовсе не наоборот). А как насчёт комнат на 10-20 человек с двумя окнами каждая (выходящими на промпейзаж, куда и смотреть-то лишний раз не захочется)?

Обсудим отечественные реалии, которые убивают теорию уважаемых Демарко и Листера и практику не менее уважаемого Книберга на корню. Начнем с соцпакета.

Недавно разговаривал с коллегой – руководителем PMO из соседней программерской фирмы (PMO – это Project Management Office, само его наличие говорит о том, что фирма придерживается современных взглядов на управление проектами; у нас вот – классическая функциональная структура, в лучшем случае – слабая матрица, нам PMO не светит). Так вот, они в ближайшее время будут завозить в офис и давать сотрудникам неограниченно потреблять всякие перекусы и питьё: чипсы/орешки, печенье/булки, соки и т. п. Как сказал коллега: «Предположим, нашему программисту ближе к вечеру захотелось перекусить. И у него возникает сложная дилемма: уйти поесть или поработать всё-таки еще пару часов. Плюшки в офисе склонят его в пользу поработать». А действительно, рассмотрим дилемму повнимательнее. Итак, таблица (цифры взяты «с потолка», но я в них почти уверен):
Читать дальше →
Total votes 56: ↑42 and ↓14 +28
Comments 52

Что нужно делать смолоду или как стать богатым айтишником

Reading time 7 min
Views 630K

Статья написана после прочтения статьи Копи деньги смолоду или пара утверждений, легко проверяемых в Excel.

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

Нужно заметить, что три года назад, я и сам не знал этого принципа, и мне даже пришлось продать свою машину, чтобы выплатить долги. Но я не расстроился – я уже знал этот принцип и был уверен, что у меня получится стать богатым. Ведь если ты действуешь исходя из этого принципа, то настоящее богатство – лишь вопрос времени. И я не ошибся.
Не важно, кто ты – дизайнер или программист, но я уверен, если ты тоже последуешь ему, то станешь богатым.
Ближе к делу
Total votes 389: ↑303 and ↓86 +217
Comments 578

Об идиоме RAII и блокировках

Reading time 5 min
Views 31K
Идиома RAII (Resource Acquisition Is Initialization) берет свое начало в языке С++ и заключается в том, что некоторый ресурс захватывается в конструкторе объекта, и освобождается в его деструкторе. А поскольку деструктор локальных объектов вызывается автоматически при выходе из метода (или просто из области видимости) не зависимо от причины (нормальное завершение метода или при генерации исключения), то использование этой идиомы является самым простым и эффективным способом написания сопровождаемого C++ кода, безопасного с точки зрения исключений.

При переходе к «управляемым» платформам, таким как .NET или Java, эта идиома в некотором роде теряет свою актуальность, поскольку освобождением памяти занимается сборщик мусора, а именно память была самым популярным ресурсом, о котором приходилось заботиться в языке С++. Однако поскольку сборщик мусора занимается лишь памятью и никак не способствует детерминированному освобождению ресурсов (таких как дискрипторы операционной системы), то идиома RAII все еще применяется и в .NET, и в Java, пусть мало кто из разработчиков знает об этом замысловатом названии.
Читать дальше →
Total votes 36: ↑33 and ↓3 +30
Comments 38

Истории про проектирование приложений для Windows 8

Reading time 3 min
Views 10K


Наши коллеги, ведущие блог Создание Windows 8 и пополняющие руководства по проектированию и разработке приложений для Windows 8 на MSDN, за последнее время выложили несколько интересных историй как по проектированию наших собственных приложений, так и по проектированию приложений для популярных сценариев. Ниже вы найдете подборку ссылок на эти истории.
Читать дальше →
Total votes 38: ↑31 and ↓7 +24
Comments 17

«Правильный» подбор программистов

Reading time 4 min
Views 21K

Начало


В самом начале необходимо определиться с уровнем кандидата на данную вакансию. Здесь я не буду оперировать понятиями Junior, Senior, Lead и т.д, так как в разных компаниях в эти понятия вкладывается разный смысл. Я буду использовать понятия “кандидат без опыта” (“новички”) и “кандидат с опытом” (“опытные”). От ответа на этот вопрос будет зависеть стратегия процесса найма. Я постараюсь уделить внимание именно различиям, которые необходимо учитывать при подборе. И типичные ошибки, которые необходимо избегать.
Читать дальше →
Total votes 73: ↑47 and ↓26 +21
Comments 155

FLAC-декодер на Javascript

Reading time 1 min
Views 5.8K
Ребята из Official.fm Labs задумали совершить настоящую звуковую революцию в вебе: две недели назад они выпустили FLAC.js — декодер аудиофайлов формата FLAC (Free Lossless Audio Codec), а также Aurora.js — фреймворк на CoffeeScript для простого подключения декодеров и создания веб-приложений, работающих со звуком. Таким образом, через Web Audio API теперь можно слушать музыку в идеальном качестве, и все веб-приложения могут обращаться к звуковой карте стандартным образом.

Демо

JavaScript уже так могуч, что браузер декодирует звук, потребляя менее 5% ресурсов CPU. Можно представить, какие крутые звуковые редакторы, миксеры и прочие аудиоприложения появятся в вебе в ближайшее время.
Total votes 97: ↑89 and ↓8 +81
Comments 62

Альтернативная проверка предусловий в Code Contracts

Reading time 4 min
Views 3.8K
При попытке использования библиотеки Code Contracts в реальном проекте может возникнуть небольшая сложность: хотя сам класс Contract с методами проверки предусловий и постусловий, располагается в mscorlib начиная с 4-й версии .NET Framework, но без установки самой библиотеки Code Contracts, они не попадают в результирующую сборку.

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

Однако Code Contracts поддерживает дополнительный «режим совместимости», который позволяет «жестко зашить» проверки предусловий в результирующий код, так что они будут видны всем, не зависимо от того, установлены контракты на машине разработчика или нет.
Читать дальше →
Total votes 22: ↑19 and ↓3 +16
Comments 0

Контракты vs Юнит тесты

Reading time 5 min
Views 7.7K
DISCLAIMER: Эта заметка подразумевает наличие у читателя базовых знаний о юнит тестах, в чем автор этих строк не сомневается, а также базовых знаний о проектирование по контракту, которые можно пополнить начиная отсюда.

На одном из выступлений, посвященных проектированию по контракту, один из моих коллег задал вполне резонный вопрос о связи контрактов и юнит тестов. Постусловия в контракте класса, как и юнит тесты говорят о гарантиях класса перед его клиентами, а поскольку юнит тесты являются в этом вопросе более мощным механизмом (сложные постусловия выразить в виде контрактов не всегда просто, а иногда и невозможно), то возникает вопрос о необходимости постусловий.

Итак, давайте вкратце рассмотрим, в каком именно месте находится пересечение контрактов и юнит тестов, и постараемся ответить на вопрос: являются ли постусловия избыточными при наличии юнит тестов?

Читать дальше →
Total votes 24: ↑22 and ↓2 +20
Comments 13

Крадущийся тигр, затаившийся дракон

Reading time 8 min
Views 33K
Java vs. C#… Что может быть лучше вечного спора? Нет, данная статья не посвящена очередному бенчмарку, и даже не является holy war, не стоит даже вопрос: «кто круче».

Для каждой задачи существует свой инструмент. Сравнивать C# и Ruby, например, не имеет смысла, т.к. их целевое предназначение совершенно разное, да и природа также. Однако именно C# и Java являются наиболее близкими по своей философии.

Очень часто коллеги, пишущие на Java, даже не подозревают о многих (!!!) вещах, которые предоставляет (или, наоборот не предоставляет) C#.

Если Вам интересно посмотреть на C# и Java без субъективизма, а также узнать внутреннее устройство той или иной возможности, тогда вперед.
Читать дальше →
Total votes 200: ↑129 and ↓71 +58
Comments 194

Erlang Factory Lite в Москве. 22 июня 2012

Reading time 1 min
Views 527
Erlang Factory Lite приезжает в Москву 22 июня 2012 года.

Erlang Factory Lite — это «миниконференция» на полдня-день на определенную тему или без темы (в то время как на полноценных конференциях выступления разделяются на несколько общих тем).

Московская конференция проводится при участии Яндекса. Если вы хотите выступить с докладом, заполните форму докладчика: http://www.erlang-factory.com/conference/Moscow2012/submit_talk

Если вы просто хотите прийти послушать, как выступают другие, зарегистрироваться можно тут: https://www.erlang-factory.com/conference/Moscow2012/register. Конференция бесплатна.

Взято тут: erlanger.ru
Total votes 21: ↑18 and ↓3 +15
Comments 3

Создание множества диаграмм на базе одной модели Entity Framework в Visual Studio 2012

Reading time 1 min
Views 8.8K
Это долгожданная функциональность, которую давно ждали любые разработчики или компании, которые используют визуальные модели Entity Framework со множеством сущностей.

Представьте себе модель данных, которая имеет сотни сущностей. Работа с диаграммой модели хотя бы на 200 сущностей может быть сильно затруднена, работа может быть медленной и такая диаграмма не очень управляема.



Но теперь, с появлением Entity Framework 5.0 и Visual Studio 2012, вы можете иметь множество раздельных диаграмм одной и той же модели данных. И это даже круче чем новая возможность раскрашивать различные сущности в разные цвета.
Читать дальше →
Total votes 17: ↑13 and ↓4 +9
Comments 9

Эффективное использование WebAPI: self hosting REST-сервисов

Reading time 5 min
Views 43K
С выходом ASP.NET WebAPI у разработчиков появилась возможность быстро создавать REST-сервисы в удобном виде, с одной стороны полностью реализуя принципы REST, а с другой используя всю мощь платформы ASP.NET.

Про возможности и применение WebAPI написано уже достаточно много статей, например, вы можете узнать о интересной функции самодокументирования API сервиса через ApiExplorer.

Существует еще одна замечательная возможность WebAPI, про которую написано не так много — это возможность WebAPI осуществлять самостоятельный хостинг сервиса (self hosting). В этой статье на примере разбирается, как создавать и запускать REST selfhosting-сервисы на базе WebAPI.

Self hosting REST-сервиса


Для предоставления доступа к API сервиса не всегда является целесообразным разворачивать его на базе сервера IIS. Если сервис не является частью какого-либо веб-приложения, имеет смысл запускать его на базе собственной инфраструктуры.

Другим вариантом использования механизма self hosting может быть запуск сервисов на платформах, которые не содержат сервер IIS либо на которых запуск IIS осложнен или излишен.

Так или иначе, WebAPI позволяет вам создавать сервисы независимые от IIS, доступ к которым может быть получен без установки веб-приложения на веб-сервер .
Читать дальше →
Total votes 17: ↑12 and ↓5 +7
Comments 36

Как убрать КАПС из меню Visual Studio 2012 RC

Reading time 1 min
Views 12K
Недавно была выпущена Visual Studio 2012 RC, в которой, наравне с многочисленными изменениями интерфейса, было представлено главное меню с элементами набранными капсом. Не всем это пришлось по душе (хотя, лично мне нравится, тут можно почитать где и когда применим капс). Ниже представлен способ приведения меню в старое состояние



Для возврата старого меню внесите следующие изменения в реестр Windows:

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\General\SuppressUppercaseConversion
REG_DWORD value: 1


Скачать новую версию Visual Studio 2012 RC можно по специальному короткому адресу vs11.ru. Приятной разработки!
Total votes 97: ↑69 and ↓28 +41
Comments 58
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity