Search
Write a publication
Pull to refresh
0
@0x2d7e21read⁠-⁠only

User

Send message

oDesk (Upwork). Мой опыт за полтора года

Reading time12 min
Views445K
Вот уже полтора года я зарабатываю фрилансом на бирже oDesk. За это время у меня накопилось много материалов по данной теме. В данном топике я собрал все в одну статью и адаптировал для аудитории хабра.
image
Читать дальше →

Улучшаем производительность: полезные советы и приёмы в .NET

Reading time8 min
Views32K
Эта статья входит в серию статей по улучшению производительности в .NET. Первую статью можно найти здесь.

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

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

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

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

Организация памяти процесса

Reading time8 min
Views146K
image
Управление памятью – центральный аспект в работе операционных систем. Он оказывает основополагающее влияние на сферу программирования и системного администрирования. В нескольких последующих постах я коснусь вопросов, связанных с работой памяти. Упор будет сделан на практические аспекты, однако и детали внутреннего устройства игнорировать не будем. Рассматриваемые концепции являются достаточно общими, но проиллюстрированы в основном на примере Linux и Windows, выполняющихся на x86-32 компьютере. Первый пост описывает организацию памяти пользовательских процессов.
Читать дальше →

Медицинская анатомическая иллюстрация — история изучения тела человека в атласах 5 столетий. Часть 2

Reading time6 min
Views21K


Итак, новая часть истории анатомических атласов. В прошлом посте Андреас Везалий совершил анатомическую революцию, не только создав удивительные пособия, но и воспитав талантливых учеников, продолжавших прорывные исследования. В этом посте мы дойдем до анатомических иллюстраций эпохи барокко и потрясающего атласа голландского анатома Говарда Бидлоо, а также покажем иллюстрации из первого русского анатомического атласа, которые нам достались благодаря любезности сотрудников медицинской библиотеки Нью-Йорка.
Читать дальше →

Переезд электронщика в Шэньчжэнь

Reading time5 min
Views82K
Очередная история переезда на чужбину в нескольких частях.

Кратко об авторе


30 лет. Специальность — радиофизик. Специализация — Компьютерная электроника. Основное направление — разработка электроники и встраиваемого программного обеспечения. Опыт работы — 10 лет. Опыт фриланса — 4 года.


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

Как правильно показывать клиенту интерактивный прототип сайта в первый раз

Reading time4 min
Views34K
Возьмём понятный всем пример. Интернет-магазин. Вот вы встретились с клиентом в первый раз, обсудили, что должен и не должен делать их будущий проект. После этого сформировали список функциональных требований и сопроводили его предварительной картой сайта. Всё это дело будет потом помещено в приложение номер один к договору на проектирование, но сегодня речь не об этом. Давайте для начала взглянем на карту сайта, которая у нас получилась.
Читать дальше →

Путь фрилансера. Часть 1. Советы новичкам

Level of difficultyEasy
Reading time11 min
Views246K


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

Заметив тенденцию на спрос постов по тематике фриланса подумал, что, пожалуй, пора и мне внести свою лепту по этой тематике. Много чего уже было сказано, но, на мой взгляд, не всегда конкретизировано в конкретные пункты.

Вкратце в двух словах о себе и прочем чтобы пост имел некоторую большую содержательность: на фрилансе 3 последних года с копейками. Работаю не один. Команда. Объединены интернетом и рамками СНГ. Большинство никогда не видел и даже с ними ни разу не созванивался. Офиса нет. С одним из таких граждан общаюсь и работаю уже лет 5-6. Как это ни странно барьером это не послужило. Знакомых, друзей, бывший сотоварищей по работе в команде нет и никогда не было, как и не было этой самой другой работы. Да, есть и такие странные люди на свете, кто никогда не работал в офисе и ничем иным не занят и это ни разу мне не помешало, а скорее наоборот.

Как я «докатился до такой жизни» и всю иную историю, предысторию и реалии опишу как-нибудь в другой раз, если сообщество посчитает это нужным (на этот случай предусмотрен опрос). А сейчас перейдём к тому, что и было запланировано.
Читать дальше →

Memory management в ядре Linux. Семинар в Яндексе

Reading time4 min
Views66K
Привет! Меня зовут Роман Гущин. В Яндексе я занимаюсь ядром Linux. Некторое время назад я провел для системных администраторов семинар, посвященный общему описанию подсистемы управления памятью в Linux, а также некоторым проблемам, с которыми мы сталкивались, и методам их решения. Большая часть информации описывает «ванильное» ядро Linux (3.10), но некоторая часть специфична для ядра, использующегося в Яндексе. Вполне возможно, семинар окажется интересен не только системным администраторам, но и всем, кто хочет узнать, как в Linux устроена работа с памятью.



Основные темы, затронутые на семинаре:
  • Задачи и компоненты подсистемы управления памятью;
  • Аппаратные возможности платформы x86_64;
  • Как описывается в ядре физическая и виртуальная память;
  • API подсистемы управления памятью;
  • Высвобождение ранее занятой памяти;
  • Инструменты мониторинга;
  • Memory Cgroups;
  • Compaction — дефрагментация физической памяти.

Под катом вы найдете более подробный план доклада с раскрытием основных понятий и принципов.
Читать дальше →

6 мифов, мешающих разработчикам использовать Git

Reading time6 min
Views81K


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

Аутентификация и авторизация в ASP.NET Web API

Reading time5 min
Views79K
Вы создали WebAPI и теперь хотите контролировать доступ к нему? В этой серии статей мы рассмотрим несколько вариантов защиты WebAPI от неавторизрованых пользователей. Серия будет охватывать обе стороны, и аутентификацию и авторизацию пользователей.

  • Аутентификация — позволяет однозначно идентифицировать пользователя. Например, Алиса входит в систему со своим логином и паролем, и сервер использует эти данные для аутентификации Алисы.
  • Авторизация решает может ли пользователь выполнить те или иные действия. Например, Алиса может иметь право на чтение ресурса, но не может создать новый ресурс.


Первая серия статей дает общий обзор аутентификации и авторизации в ASP.NET Web API. Другие статьи описывают общие сценарии аутентификации для WebAPI.
Раскрыть тему

Как откликаться на проекты на фрилансе

Reading time2 min
Views68K


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

Цель — начать получать чуть больше адекватных ответов на свои проекты. Есть ощущение, что я часто не сотрудничал с крутыми специалистами только из-за их некачественного отклика.

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

Эволюция веб-фреймворков Microsoft. ASP.NET vNext

Reading time11 min
Views48K


Предпосылки к переменам


Новость о выходе ASP.NET vNext в сети распространилась достаточно быстро вместе с анонсом наиболее интересных новшеств, предложенных в обновлении. ASP.NET MVC 6 получил новое имя и позиционируется как что-то действительно новое в среде web фреймворков Microsoft (MS).
Читать дальше →

Начало работы с ASP.NET Identity

Reading time4 min
Views98K
Многие из вас должны знать, что выход ASP.NET MVC 5 ознаменовался переходом на новую систему авторизации под названием ASP.NET Identity. Разработчики фреймворка настоятельно рекомендуют переходить на новую систему, называя основными ее преимуществами возможность внедрения в абсолютно любой проект (ASP.NET MVC, Web Forms, Web Pages, Web API и SignalR), простую социальную интеграцию, работу на OWIN, установку и обновление посредством NuGet и другие. Присмотревшись внимательнее к ASP.NET Identity, можно без зазрения совести сказать, что это — следующий этап в развитии веб-программирования на ASP.NET. В данном посте я размещу простой туториал для начала работы с ASP.NET Identity.
Читать дальше →

Обзор расширений Visual Studio для веб-разработчиков

Reading time4 min
Views38K
На конференции //build/ у меня был доклад о Visual Studio Web Tools и расширении Web Essentials. Вы можете найти этот доклад онлайн на сайте Channel9. Во время доклада я использовал несколько расширений, которые будут полезными для любого веб-разработчика Visual Studio 2013. Ниже вы найдете список этих расширений.

Web Essentials


logoСайт: http://vswebessentials.com
Загрузить: Web Essentials в галерее VS

Это расширение команды ASP.NET и Web Tools, которое является неофициальной площадкой для тестирования и обкатки функций. Само расширение развивается opensource-сообществом. Web Essentials предлагает огромное число новых возможностей для веб-разработчиков, такие как компиляторы LESS/Sass/CoffeeScript, дополнительные возможности работы с кодом JavaScript/CSS/HTML/JSON, валидаторы, генераторы спрайтов изображений и многое другое.

SideWaffle


imageСайт: http://sidewaffle.com
Загрузить: SideWaffle в галерее VS

Очень вкусное дополнение для Visual Studio. Это отличный набор шаблонов, который содержит как шаблоны проектов, шаблоны элементов, так и сниппеты для широкого круга сценариев: от создания приложений Angular.js, проектов Nancy FX и до плагинов Browser Link, расширений Chrome и многого другого.
Читать дальше →

Удаленное тестирование. Советы бывалого фрилансера

Reading time21 min
Views171K


Всем привет, меня зовут Алексей Петров. Я работаю в Mail.Ru Group директором по качеству в бизнес-юните «Почта и Портал». Сегодня я расскажу о такой интересной и привлекательной во всех отношениях деятельности, как фриланс в тестировании. Как таковым тестированием я начал заниматься в 2005 году. Я любил играть в компьютерные игры и параллельно их тестировал. Я был фанатом «Tony Hawk — American Wasteland», и когда игра попала ко мне за 1,5 месяца до официального мирового релиза, и я мог ее пройти, я был счастлив. После пятидесятого прохождения, когда мне дали диск с релизом, я его сжег, честно. Настолько мне это осточертело! Я до сих пор могу сказать, в какой миссии и какой квест нужно выполнить, все хинты и так далее.
Читать дальше →

Делаем настольное устройство для изготовления печатных плат в один клик

Reading time5 min
Views279K
В очередной раз отмывая раковину от рыжих пятен хлорного железа, после травления платы, я подумал, что пришло время автоматизировать этот процесс. Так я начал делать устройство для изготовления плат, которое уже сейчас можно использовать для создания простейшей электроники.

image

Ниже я расскажу о том, как делал этот девайс.
Читать дальше →

Дюжина логических задач с собеседований

Reading time2 min
Views323K
image

Не знаю, как у вас, но у меня любимая часть интервью — логические задачи.
Довелось пройти немало собеседований на вакансию разработчика, поэтому набралась небольшая коллекция.
Спешу поделиться с вами!

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

Что не нужно кодить самостоятельно

Reading time6 min
Views74K
Недавно написал свой велосипед и выложил его на хабре. Вот он: «Простейший Connection pool без DataSource в Java». Статья не из самых удачных, только прошу больше не минусовать. Итак, чтобы не повторять такие ошибки самому и, возможно, предостеречь кого-то от таких ошибок, решил перевести статью «Seven Things You Should Never Code Yourself» достаточно известного в среде open-source деятеля IT-области — Andy Lester'а. Итак, кому интересно, прошу под кат.
Читать дальше →

3 самые плохие вещи, которые можно сделать с помощью Linq to Database

Reading time3 min
Views40K
Дисклеймер: Под Linq to Database здесь и далее понимаем самые распространенные .NET библиотеки для доступа к реляционным СУБД с использованием Linq запросов. Такие как Linq2SQL, Entity Framework, NHibername, Linq2db и подобные
С момента появления IQueryable провайдеров для доступа к базам данных писать запросы стало гораздо легче. С одной стороны это хорошо, потому что приложения стало делать гораздо легче. С другой стороны качество запросов сильно упало. И дело не в том, что провайдеры генерируют плохой SQL, а в том, что люди пишут запросы, не понимая как оно работает под капотом. Для многих C# программистов IQueryable является магией, и появляется естественное желание уменьшить влияние магии на приложения, изолировать магию от остального кода. Такой подход не только не исправляет ситуацию, а усугубляет её…
Читать дальше →

Оставьте ссылку на свой профиль — и добавьте к себе одного хабражителя

Reading time3 min
Views30K
image Привет!
Всё просто. Вы берёте и пишете, кто вы, что делаете, и оставляете ссылку на свой профиль. Или на свой проект.

Причин две:
  • Во-первых, меня регулярно просят посоветовать дизайнера, художника, разработчика и так далее. Я не знаю другого способа сделать это лучше.
  • Во-вторых, я что-то реально опасаюсь перспектив развития Рунета, и поэтому хочу соединить друг с другом напрямую как можно больше людей. Добавляйтесь в профили к тем, кто вам близок.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity