Pull to refresh
30
0.5

Погромист на csharp

Send message

Хороших книг пост

Reading time2 min
Views70K


А давайте давайте соберём здесь хорошие книги, которые просто стоило собрать.
Суть в том, что просто давно стоило сложить хорошие книги в одном посте, чтобы было что прочитать в дороге — или просто для души.
Читать дальше →
Total votes 84: ↑72 and ↓12+60
Comments392

Семейный бизнес в сфере IT. Мои три золотых правила

Reading time7 min
Views106K
image

Предисловие


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

То, чем мы тогда занимались, очень сложно назвать бизнесом. Это скорее была работа в паре. Мы никогда не договаривались: ты делаешь это, а я это. Разделение обязанностей сложилось само собой.

Вы спросите: «Кто же в вашей команде главный?». Скажем так, мы оба прекрасно понимаем, кто главный. Но вслух это не обсуждаем, потому как один из нас может обидеться, а вторая слишком много о себе возомнит…

Конечно я шучу. Все решения принимаются вместе. Я не буду врать, что мы всегда мыслим одинаково и никогда не расходимся во мнении. Однако, мы научились слушать и понимать друг друга. Научились договариваться. Я думаю, это важно для любых бизнес-партнеров, независимо от того, являетесь вы семьей или нет.
Читать дальше →
Total votes 168: ↑162 and ↓6+156
Comments65

Ускоряем понимание коммерческого или технического текста: как перестать бояться писать просто

Reading time9 min
Views91K


Читать молча мы научились относительно недавно. Раньше не было иного логичного способа читать, кроме как строго вслух. Фактический процесс чтения напоминает слушание двух голосов: один проговаривает слова текста, второй переводит их для нас на понятный нам язык.

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

Это имеет прямое отношение к коммерческим текстами и к техническим. Минимальные искажения при передаче информации означают большую конверсию. Больший охват. Большую силу призыва. Большую практическую понятность.

Поэтому сейчас я расскажу базовые вещи, которые можно делать прямо здесь и сейчас у вас на сайтах.
Читать дальше →
Total votes 117: ↑112 and ↓5+107
Comments51

Применяем MVVM в Unity3D с помощью NData

Reading time4 min
Views21K


Привет! В этом посте хотел бы рассказать тебе, мой любимый хабр, о плагине, который увеличил мою продуктивность в работе с UI в несколько раз. Связка с которой я работаю выглядит следующим образом: Unity3D + NGUI + NData. По желанию, можно использовать IoC+DI, но идеального варианта, чтобы работала под iOS, Android и WinPhone, пока не нашлось.

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

Информацию о плагине NData можно найти на сайте . И да, он стоит 45$)

(на картинке выше одна из последних игр, которую собрал с помощью Unity3d+NGUI+NData)
Читать дальше →
Total votes 19: ↑10 and ↓9+1
Comments5

Список вкладок и просмотр печати в Opera Developer 26

Reading time2 min
Views18K
Сегодня у нас есть два вас интересная сборка Opera Developer 26. В ней впервые появляется список вкладок, предпросмотр печати и новые возможности по импорту данных. Обо всём по порядку.

Список вкладок




Теперь по сочетанию клавиш Ctrl K или Cmd K на OS X вы можете вызвать список открытых вкладок. Если вы открыли одновременно много вкладок (да ещё и на одном сайте), то это должно помочь найти нужную. Теперь:

  • По заголовкам вкладок теперь удобно ориентироваться.
  • Вызвать список и передвигаться по нему можно с клавиатуры (стрелками вверх-вниз).
  • Список работает вместе со снимками вкладок: если задержаться ненадолго после открытия списка, то появится снимок выбранной вкладки.
  • Список доступен в полноэкранном режиме, так что вы больше не потеряетесь, даже если вкладки скрыты.
Больше!
Total votes 37: ↑32 and ↓5+27
Comments125

Потокобезопасные события в C# или Джон Скит против Джеффри Рихтера

Reading time11 min
Views69K


Готовился я как-то к собеседованию по C# и среди прочего нашел вопрос примерно следующего содержания:
«Как организовать потокобезопасный вызов события в C# с учетом того, что большое количество потоков постоянно подписываются на событие и отписываются от него?»


Вопрос вполне конкретно и чётко поставлен, поэтому я даже не сомневался в том, что ответ на него можно дать также чётко и однозначно. Но я очень сильно ошибался. Оказалось, что это крайне популярная, избитая, но до сих пор открытая тема. А еще заметил не очень приятную особенность — в русскоязычных ресурсах этому вопросу уделяется очень мало внимания (и хабр не исключение), поэтому я решил собрать всю найденную и переваренную мной информацию по данному вопросу.
До Джона Скита и Джеффри Рихтера тоже дойдем, они то, собственно, и сыграли ключевую роль в моем общем понимании проблемы работы событий в многопоточной среде.

Особо внимательный читатель сможет найти в статье два комикса в стиле xkcd.
(Осторожно, внутри две картинки примерно по 300-400 кб)
Читать дальше →
Total votes 71: ↑68 and ↓3+65
Comments120

Всё о Visual Studio 2013 Update 3 + вебинар

Reading time5 min
Views23K
Разработчики уже заметили, что ритм выпуска Visual Studio претерпел значительные изменения, и обновления для RTM выходят с значительно большей частотой, нежели это было в предыдущие годы. При этом в обновления входят не только исправления обнаруженных ошибок, но и новые функции. В этом посте будут перечислены наиболее интересные функции третьего обновления и предоставлены ссылки на материалы более подробно рассказывающие о том, как их использовать. Так же, у вас есть возможность подключиться к вебинару который пройдет 17 октября в 11 часов, и задать дополнительные вопросы, если они у вас появятся.
Читать дальше →
Total votes 36: ↑31 and ↓5+26
Comments4

Доступна для скачивания ранняя версия ReSharper 9

Reading time6 min
Views15K
Как многие могли заметить, в мире .NET сейчас происходят значительные изменения. Появление Roslyn, C# 6, ASP.NET vNext, Visual Studio «14» и других технологий вдохновляют ReSharper на новые шаги в своем развитии и поддержке различных языков и платформ.

В связи с этим мы приглашаем всех присоединиться к программе раннего доступа для ReSharper 9. В этом посте мы обсудим основные фичи новой версии.

TL;DR в ReSharper 9 добавлена поддержка VS «14», C# 6 и регулярных выражений, улучшена поддержка JS/TS и глобальных изменений (bulk fixes), добавлен новый редактор для форматирования кода и новые возможности навигации, а также все наши .NET продукты переезжают на новую общую платформу.

Если интересно...
Total votes 40: ↑36 and ↓4+32
Comments61

Задачник.NET

Reading time3 min
Views117K
Этот пост предназначается всем любителям платформы .NET и языка C#. Думаю, многие встречали на просторах сети разнообразные задачки на понимание тех или иных особенностей платформы или языка. Я большой любитель подобных задачек и головоломок. Они помогают глубже понять определённые области и повысить собственные программистские навыки. Однажды я решил сделать подборку подобных задачек, чтобы можно было показывать другим людям и обсуждать нюансы работы с .NET/C#. Когда задачек накопилось достаточное количество, появилась новая мысль — оформить мою подборку в виде книжки. Вашему вниманию предоставляется текущий вариант этого сочинения под названием «Задачник.NET».

Cover
Читать online
Скачать PDF-версию
Исходные коды на GitHub
Читать дальше →
Total votes 55: ↑51 and ↓4+47
Comments23

Backblaze обновила статистику по надёжности HDD

Reading time2 min
Views110K
В январе этого года компания Backblaze впервые опубликовала статистику использования дисковых накопителей в своих серверах. Backblaze предоставляет услугу дешёвого облачного бэкапа и поэтому закупается недорогими HDD потребительского класса, которые в 2-2,5 раза дешевле, чем HDD класса Enterprise. За четыре года собрана большая статистика по надёжности дисков Seagate, Hitachi и Western Digital.

Пришло время сентябрьского обновления статистики.

Читать дальше →
Total votes 69: ↑65 and ↓4+61
Comments104

Поиск жилья без посредников в 21-м веке

Reading time6 min
Views168K
Полагаю, все мы однажды искали себе жилье. Кто-то — в собственность, большинство, вероятно, в аренду. Все, кто хоть раз пытался найти реальные предложения на досках объявлений, знают — это нереально. Такого количества спама нет, пожалуй, ни в одной другой сфере. После того, как окунешься в этот ад, обычно руки начинают чесаться применить свою IT-шность на благо ближнему. Результатом для меня стал проект Sobnik, о котором я и хочу рассказать.

Sobnik — это плагин для Chrome, который помечает посредников на досках объявлений. Пока работает только с Avito.ru, в ближайшем будущем я добавлю Irr.ru и другие крупные доски. Всех, кто сидит на чемоданах и кому не терпится попробовать, прошу в Google Web Store. Под катом я расскажу о технической стороне проекта, о его перспективах и о моих наблюдениях за противником посредниками. Любители критиковать чужой JS-код также велкам, исходник клиентской части плагина доступен на github.

Читать дальше →
Total votes 106: ↑104 and ↓2+102
Comments103

Улучшаем LINQ для работы с IReadOnly-коллекциями

Reading time7 min
Views16K
Как известно, при использовании интерфейса IEnumerable<> там, где подразумевается коллекция, могут случаться проблемы (см. например Проблемы использования IEnumerable и LINQ против LSP). К счастью, в .NET v4.5 в 2012-м году (немного поздновато, но лучше поздно, чем никогда), появились интерфейсы IReadOnlyCollection<>, IReadOnlyList<>, IReadOnlyDictionary<> (далее буду их обобщённо называть IReadOnly-интерфейсы). В отличие от IEnumerable<>, IReadOnly-интерфейсы дают возможность достаточно и без лишних требований обозначать функциональность коллекции, что и позволяет их рекомендовать для использования вместо IEnumerable<> везде, где подразумевается чтение коллекции. Но тут встречается одно затруднение. Одним из важных компонентов, потребляющим и создающим коллекции, является LINQ и, особенно, его часть «LINQ к объектам». К сожалению, IReadOnly-интерфейсы появились через 5 лет после LINQ, и в нём не используются. Все входные и выходные коллекции LINQ-операций имеют базовый тип IEnumerable<>, исходя из ограниченных возможностей которого, многие операции подразумевают лишние затраты: полный последовательный перебор или даже создание промежуточных копий входных коллекций. Более того, возвращая из операций тот же IEnumerable<>, LINQ требует при дальнейшем использовании результата опять использовать полный перебор и создание промежуточных копий. В связи с этим, у меня давно зрела мысль «подружить» LINQ с IReadOnly-интерфейсами.
Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments12

Бета Opera 25: закладки и новая экспресс-панель

Reading time2 min
Views75K


Сегодня мы хотим показать вам бету Opera 25. Начиная с этой версии, тестовые сборки, которые уже вот-вот станут финальными, снова называются бетами, а не Opera Next. Оказалось, что слово «бета» гораздо понятнее обычному пользователю и не вызывает сомнений, как называется сам браузер.
Подробнее о новом
Total votes 66: ↑53 and ↓13+40
Comments253

Улей: маленькая война, глубокая стратегия, странный GameDev

Reading time8 min
Views86K


В одной из школ Подмосковья психолог столкнулся с тем, что у детей очень плохо с концентрацией внимания. По тестам 90-х годов, разработанным для нормальных учеников СССР, наши современные дети справлялись чуть лучше чем никак. Учительский состав тоже на это жаловался, виня компьютерные, консольные и планшетные игры. Кидать свиньёй в птицу, очевидно, приятнее, чем доказывать равенство треугольников.

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

Я рассказал об этом Джону Янни, разработавшему Улей. И тем самым ввёл его в приступ умиления и ностальгии. И он поделился историей разработки игры от первых настольных шагов в 1982 году до неожиданного рывка на Steam, Android и iOS в современности. Ниже — уютная сказка про гика, который внезапно встретился с реальностью, и немного моих заметок по этой истории.
Читать дальше →
Total votes 98: ↑95 and ↓3+92
Comments87

Опрос: вы работаете лучше чем ваш среднестатистический коллега?

Reading time1 min
Views28K
Лет 7 назад мне на глаза попались результаты исследования по преподавателям ВУЗов США. По некоторый выборке уважаемым преподавателям задавали простой вопрос: считаете ли вы, что вы работаете лучше чем ваш среднестатистический коллега?

94% преподавателей ВУЗов сказали, что ДА, они работают лучше.

(Перед написанием статьи пытался найти источник, но не удалось. Такое ощущение, что читал в бумажном Harvard Business Review, но полной уверенности нет.)

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

Короче говоря, решили провести мега-опрос у нас. Понятно, что понимание, что такое «среднестатистический» — у каждого свое, но как считаете, так и отвечайте. Простой опрос — заранее большое спасибо!
Как менялся тренд голосования при изменении текста опроса
Total votes 60: ↑52 and ↓8+44
Comments60

Consulo — IDE где Java и C# живут вместе

Reading time3 min
Views52K
Здравствуйте. Прошло много времени после моих постов на хабре (тык, тык) на тему Consulo. Ниже расскажу, что изменилось за это время.

Для тех, кто пропустил мои посты:
Consulo — это форк IntelliJ IDEA Community Edition, который имеет поддержку .NET(C# на текущий момент), Java, Javascript(NodeJS), и многое другое. Проект собрал множество открытых плагинов в себе. При этом код остался открытым.



Читать дальше →
Total votes 127: ↑124 and ↓3+121
Comments50

Как мы выслеживали брак в реальном мире и отлаживали производство настольных игр

Reading time5 min
Views46K


У нас на каждой физической игре есть отладочные коды, «зашитые» в разные компоненты. Я помню, что обещал топик про дебаг нашего производства в реальном мире. Вот он. Заодно может пригодиться интернет-магазинам.
Читать дальше →
Total votes 121: ↑115 and ↓6+109
Comments65

Dropbox ввёл единый тарифный план: 1TB — $9.99/месяц, $99/год

Reading time2 min
Views38K
image


Компания Dropbox обновила линейку тарифных планов. С сегодняшнего дня доступен только 1 тарифный план PRO: 1TB за $9.99/месяц или $99 в год.

А также были добавлены новые функции для PRO-юзеров: установка пароля на общую ссылку, установка срока действия общей ссылки, настройки доступа для общих папок и удалённое стирание файлов с потерянного устройства.
Читать дальше →
Total votes 50: ↑44 and ↓6+38
Comments64

Cuckoo – собственная автоматизированная лаборатория анализа вредоносных файлов

Reading time21 min
Views62K
image
Месяц назад портал на моей новой работе был взломан. Руководство задалось вопросом «Как?». В ходе недолгих поисков и анализу подключений к серверам, был найден ПК сотрудника, с которого устанавливалось подключение примерно в то самое время. Сотрудник ничего о взломе не знал, но в ходе беседы вспомнил один случай, ему незадолго до взлома пришёл документ от «сотрудника фирмы», который не открылся. Файл был в формате exe, с этого и началась вся история.
Читать дальше →
Total votes 58: ↑56 and ↓2+54
Comments26

Диктофон как папка «Входящие» в системе GTD

Reading time4 min
Views14K
GTD – самая проверенная временем система тайм-менеджмента. Но есть в ней одно тонкое место…

GTD требует вносить в папку «Входящие» все: мысли, контакты, дела и т. д… Люди записывают что-то более-менее важное, а мелкие дела и информацию оставляют в голове. Здесь и начинаются проблемы.
Читать дальше →
Total votes 8: ↑6 and ↓2+4
Comments11

Information

Rating
1,430-th
Location
Ижевск, Удмуртия, Россия
Registered
Activity