Pull to refresh
10
0
Антон Меньшов @amenshov

User

Send message

Сотрудники Яндекса будут представлять Россию в комитете по стандартизации C++

Reading time4 min
Views26K


Хочу поделиться с вами радостной новостью: теперь мы можем влиять на развитие C++! Под «мы» я имею в виду всех российских программистов, работающих с C++.

Но обо всем по порядку.
Читать дальше →
Total votes 73: ↑68 and ↓5+63
Comments128

Автоматизированное создание NuGet-пакетов

Reading time15 min
Views32K

Коль захотел ты сборки передать
И с ними пламенный привет
Нугетом не забудь запаковать
В пакет!


Сразу оговоримся, что в этой статье речь пойдёт о стеке технологий Microsoft .NET.

Часто так бывает, что какое-то подмножество проектов начинает использоваться в разных решениях.

Как правило, программисты, разглядев в соседнем проекте что-то полезное, первое время не заморачиваются — создают папку lib (dll, assemblies и т.п.) и складывают туда скомпилированные сборки из оригинального решения. Со временем становится понятно, что это не самый удобный вариант и вот почему:

  • оригинальное решение начинает развиваться в свою собственную сторону, без учёта «потребителей»: добавляются новые зависимости, обновляются версии .net и т.п. «приколы»;
  • если даже о «потребителях» задумываются, то забывают обновить сборки у них, когда выходит критическое обновление или просто новая версия, а потом всё становится ещё хуже, когда сборок становится больше одной и между ними возникают некоторые зависимости — обновляя одну сборку, получаем проблемы в момент исполнения, т.к. другая сборка может оказаться не той версии;
  • оригинальное решение перестаёт дальше разрабатываться.

Ответом на все эти неприятности может служить вынесение проектов в отдельное решение и создание NuGet-пакета, включающего общие сборки, и смена парадигмы развития этих сборок. По большому счёту, всё это можно сделать и без NuGet, но удовольствия в этом гораздо меньше.Как сделать так, чтобы NuGet-пакет собирался сам автоматически вместе с компиляцией проекта на сервере построения и включал все необходимые свистелки и гуделки — об этом и будет наш рассказ.
Читать дальше →
Total votes 25: ↑24 and ↓1+23
Comments18

Google testing framework (gtest)

Reading time6 min
Views179K
Когда вставал вопрос о тестировании кода, я не задумываясь использовал boost::test. Для расширения кругозора попробовал Google Test Framework. Помимо всяких имеющихся в нем плюшек, в отличии от boost::test проект бурно развивается. Хотел бы поделиться приобретенными знаниями. Всем кому интересно прошу
под кат.
Total votes 62: ↑56 and ↓6+50
Comments23

Быстрый старт с Google Test

Reading time2 min
Views72K

Google Test — это фреймворк от Google для юнит-тестирования кода на С++. Общей архитектурой он слегка напоминает общепринятые boost::test и CppUnit, хотя слегка отличается в деталях (как по мне — в лучшую сторону). Большая обзорная статья этого фреймворка уже как-то пробегала на Хабре, но нынче она в каком-то побитом состоянии (код не отображается), да и кажется мне слишком сложной для начала работы. Поэтому я коротко опишу «Hello world» на Google Test, указав на несколько потенциальных проблем, с которыми вы можете столкнуться, используя Google Test при разработке под Visual Studio.
Читать дальше →
Total votes 37: ↑32 and ↓5+27
Comments10

Просто о make

Reading time6 min
Views445K
Меня всегда привлекал минимализм. Идея о том, что одна вещь должна выполнять одну функцию, но при этом выполнять ее как можно лучше, вылилась в создание UNIX. И хотя UNIX давно уже нельзя назвать простой системой, да и минимализм в ней узреть не так то просто, ее можно считать наглядным примером количество- качественной трансформации множества простых и понятных вещей в одну весьма непростую и не прозрачную. В своем развитии make прошел примерно такой же путь: простота и ясность, с ростом масштабов, превратилась в жуткого монстра (вспомните свои ощущения, когда впервые открыли мэйкфайл).

Мое упорное игнорирование make в течении долгого времени, было обусловлено удобством используемых IDE, и нежеланием разбираться в этом 'пережитке прошлого' (по сути — ленью). Однако, все эти надоедливые кнопочки, менюшки ит.п. атрибуты всевозможных студий, заставили меня искать альтернативу тому методу работы, который я практиковал до сих пор. Нет, я не стал гуру make, но полученных мною знаний вполне достаточно для моих небольших проектов. Данная статья предназначена для тех, кто так же как и я еще совсем недавно, желают вырваться из уютного оконного рабства в аскетичный, но свободный мир шелла.
Читать дальше →
Total votes 104: ↑98 and ↓6+92
Comments111

Akka.NET Bootcamp

Reading time4 min
Views13K


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

Учебный курс разделен на три части, в течение которых вы научитесь создавать полнофункциональные, реальные программы, используя Akka.NET акторы и множество других частей из Akka.NET framework.

Мы начнем с некоторых основных акторов и постепенно будем подходить к большим и более сложным примерам.

Этот курс для самостоятельного обучения — вы можете выполнять его в любом темпе на ваше усмотрение. Вы можете подписаться здесь и каждый день получать по одному уроку Akka.NET на ваш email (на английском языке — от перев.) если хотите.

ПРИМЕЧАНИЕ: На текущий момент учебный курс рассчитан на использование C# в качестве языка программирования.
Мы намерены добавить поддержку F# в будущем
(Также мы принимаем F# pull-реквесты)


Что вы узнаете


В учебном курсе Akka.NET вы изучите, как использовать акторы Akka.NET для создания реактивных, параллельных систем. Вы узнаете, как создать приложения, которые, возможно, казалось невозможным или очень-очень трудным до изучения Akka.NET. После учебного курса вы будете чувствовать себя более уверенно в решении сложных и больших проблем, чем раньше.
узнать больше
Total votes 8: ↑6 and ↓2+4
Comments0

Почему WPF живее всех живых?

Reading time9 min
Views62K
Я долгое время был разработчиком систем для десктопа. Сначала это был WinForms, потом более мощный и гибкий WPF. С тех пор прошло много времени и курсирует множество слухов и мнений о том, что WPF завершает свою жизнь, ведь сейчас столько разговоров о том, что можно писать настольные приложения на JS. А еще Microsoft усиленно двигает в массы платформу WinRT для разработки новых приложений. Это не могло меня и коллег оставить равнодушным.

Так почему же мы, команда GoSharp конференции (да, да, это о C#), решили сделать акцент на десктопной разработке в разрезе WPF? Далее я хочу показать какие светлые и темные моменты есть в существующем положении фреймворка и почему все же стоит в него вкладывать силы и время.



Существует мнение, что развитие десктопной разработки остановилось в своем развитии и для этого есть несколько предпосылок. Одна из них – остановка, или даже лучше сказать стагнация, в самой базе, в визуальном фреймворке WPF. Значительных обновлений для него не было вот уже лет 5, как может показаться. Официальный тулкит давно не обновлялся, точнее с февраля 2010 года, т.е. вот как раз те самые 5 лет. При этом компании, специализирующиеся на кастом-компонентах, как например DevExpress и Telerik успешно выпускают обновления и составляют планы на будущее относительно WPF. Даже если вы ориентированы на новинки, то компоненты для WinRT все равно используют концепции и общую структуру XAML, который никуда не уходит.
Далее мы хотим представить причины, по которым WPF некоторые считают неактуальным, и опровержение этих причин.

Подробнее про эти причины и опровержения
Total votes 32: ↑28 and ↓4+24
Comments65

Как я стал программистом. Путь от питерского бездомного до Senior Developer-а за 6 лет

Reading time6 min
Views229K
Всем привет! Меня зовут Андрей, я работаю в отделе разработки продуктов Veeam Software.

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



Сегодня я хочу рассказать свою историю.

Итак, начну с момента, когда мне исполнился 21 год, я уволился из рядов доблестной российской армии и оказался на серых и холодных улицах Санкт-Петербурга. Осень, отсутствие жилья и денег активировали все клетки головного мозга для ответа на вопрос: «Что делать?».
Читать дальше →
Total votes 168: ↑152 and ↓16+136
Comments87

Числа-гиганты

Reading time9 min
Views328K
В этой статье я хочу поделиться с вами некоторыми впечатляющими фактами из окружающего нас мира. Мы рассмотрим по-настоящему большие и даже гигантские числа, с которыми можем столкнуться либо в реальности (порой сами того не замечая), либо в расчетах, говорящих кое-что важное о нашей Вселенной. Некоторые числа настолько поражают воображение, что даже для того чтобы только их представить, уже необходимо приложить немало умственных усилий. Статья будет построена следующим образом. Мы будем двигаться по пути возрастания степеней десятки, начав от миллиона и дальше, насколько у нас хватит знаний, терпения и сил. Давайте же отправимся в путь.
Читать дальше →
Total votes 56: ↑54 and ↓2+52
Comments50

10 основных ошибок при разработке на Node.js

Reading time9 min
Views72K


C момента появления Node.js его и критикуют, и превозносят. Споры о достоинствах и недостатках этого инструмента не утихают и, вероятно, не утихнут в ближайшее время. Однако часто мы упускаем из виду, что критика любого языка или платформы основывается на возникающих проблемах, зависящих от того, как мы эти платформы используем. Вне зависимости от того, насколько Node.js усложняет написание безопасного кода и облегчает его распараллеливание, платформа существует уже довольно давно, и на ней создано огромное количество надёжных и сложных веб-сервисов. Все они хорошо масштабируются и на практике доказали свою устойчивость.

Но, как и любая платформа, Node.js не застрахован от ошибок самих разработчиков. В одних случаях падает производительность, в других — система становится практически непригодной к использованию. И в этом посте я хотел бы рассмотреть 10 наиболее частых ошибок, которые делают разработчики с недостаточным опытом работы с Node.js.
Читать дальше →
Total votes 85: ↑74 and ↓11+63
Comments45

Гугл-Цюрих глазами сибиряка-фрилансера

Reading time19 min
Views66K

Расскажи мне полуправду, как полуэльф полуэльфу...

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

Ни в коей мере не считая себя чем-то выдающимся (ну, разве что, пузом), решил ответить на вопросы «а как там?» и «а почему туда?» хоть и субъективно, но максимально объективно и, по возможности, информативно.
Читать дальше →
Total votes 63: ↑61 and ↓2+59
Comments104

Футболист опубликовал научную статью по математике

Reading time2 min
Views19K


Нападающий команды NFL Baltimore Ravens Джон Уршел (John Urschel), известный в твиттере как @MathMeetsFball, имеющий степень бакалавра по математике, опубликовал научную статью «Каскадный многосеточный алгоритм вычисления вектора Фидлера для матрицы Кирхгофа».
Читать дальше →
Total votes 56: ↑49 and ↓7+42
Comments30

Введение в ASP.NET 5

Reading time7 min
Views44K

Первый предварительный релиз ASP.NET 1.0 вышел практически 15 лет назад и с тех пор миллионы разработчиков использовали его чтобы создавать и запускать различные приложения., а мы на протяжении этих лет добавляли в совокупности колоссальное количество кода и возможностей.

Я сегодня сильно взволнован из-за того что пишу новость о новом релизе ASP.NET, над которым работает наша команда, и который называется ASP.NET 5. Этот релиз – одно из самых значимых обновлений архитектуры, которое мы делали когда-либо. В рамках этого релиза мы сделали ASP.NET более компактным, модульным и кросс-платформенным, а также ориентированным на облачные хостинги. ASP.NET 5 Preview доступна для скачивания в последнем Visual Studio 2015 CTP, которая стала доступна совершенно недавно.
Читать дальше →
Total votes 40: ↑37 and ↓3+34
Comments15

Невероятные нарко-субмарины из Колумбии

Reading time3 min
Views64K
Неделю назад я познакомил вас с невероятными нарко-танками, но если вы считаете, что это был верх инженерного гения картелей, то я вас разочарую. Встречайте! Нарко-субмарины прямиком из тропической Колумбии! И если вы думаете, что это плавающие ведра — вы ошибаетесь. Кокаин, или желание его продать в США, творит чудеса.

image
Читать дальше →
Total votes 84: ↑79 and ↓5+74
Comments38

Как я проходила собеседования в Яндекс: мой непростой, но успешный опыт

Reading time7 min
Views243K
Уже чуть больше полугода я работаю в поиске Яндекса релиз-инженером. И чуть ли не с первого рабочего дня хочу написать о том, как отзывалась на вакансию, как проходила собеседования, что мне в этом процессе понравилось, а что — не очень. Но сначала я входила в курс дела, а потом каждый день в моей работе появлялись такие интересные задачи, что я даже не была готов отвлечься от них на этот рассказ.

Вопрос для внимательных: сколько модулей отломится от корабля на старте?


А еще год назад у меня в жизни была вроде бы похожая, но в то же время совсем другая ситуация — времени на хобби не хватало, задач было много, но они не приносили мне никакого удовольствия. В итоге я решилась на перемены. На самом деле, эта позиция в Яндексе не была первой, которую я рассматривала. За то время, которое прошло до моего первого рабочего дня, я освежила в голове очень много тем. И перед финальным собеседованием мне пришлось взяться ещё за несколько. Сейчас я понимаю, какие ошибки совершила в этом процессе, поэтому хочу поделиться своим опытом с вами. Буду рада, если кому-то это будет полезно. Хочу сказать, что это не официальные рецепты от рекрутеров Яндекса, а только мои собственные выводы. В конце поста я поделюсь списком литературы, которая мне помогла в подготовке, и еще добавлю те источники, которые считаю полезными, оглядываясь назад.

Читать дальше →
Total votes 112: ↑87 and ↓25+62
Comments84

Водитель марсохода Curiosity отвечает Хабру

Reading time12 min
Views245K
Это свершилось! Долгожданные ответы «водителя» MSL Curiosity на вопросы, которые ему задал Хабр. Паоло Беллутта работал еще с Opportunity и Spirit, поэтому у него богатый опыт, а главное он не стесняется о нем рассказывать.

Этот замечательный перевод осуществлен Singerofthefall. Текст Паоло прислал объемный, так что мы разделили ответы напополам, и вторую часть опубликует сам переводчик. Поэтому можете его поблагодарить сейчас, а сможете и позже, когда он закончит работу над второй частью и выложит ее.[1]
[1]В квадратных скобках примечания переводчика.
Полный английский текст я выложил на гуглодоке и кто желает, может обратиться к нему, но, поверьте, в этом нет необходимости ибо перевод отличный.

Итак, начнем наше интервью:

Читать дальше →
Total votes 369: ↑364 and ↓5+359
Comments133

Космонавты, которые намного круче чем любой герой боевика

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

Читать дальше →
Total votes 229: ↑227 and ↓2+225
Comments46

Перестаньте называть себя программистом и другие карьерные советы

Reading time19 min
Views258K
Есть один курс, который я бы добавил в программу обучения по всякой инженерной специальности, и он не о компиляторах или сложности алгоритмов. Это “Введение в реальность индустрии”, ибо об этом не говорят и это приводит к никому не нужным обломам. Эта статья претендует стать README.txt для молодого инженера в деле построения карьеры. Ее цель — сделать вас счастливее, заполнив пробелы в образовании относительно того, как работает реальный мир. Я не призываю следовать написанному как подробному руководству, но я надеюсь, что эта информация окажется для вас более ценной, чем то ничто, что вам рассказали об этом в университете.
Читать дальше →
Total votes 251: ↑212 and ↓39+173
Comments175

Опыт удаленного поиска работы в Лондоне

Reading time4 min
Views46K
Год назад мне позвонил агент из Лондона — они искали Javascript программистов для Badoo. Смутно помня, что для работы в UK требуется сложная рабочая виза, я сообщил им сразу, что гражданство у меня только российское. Агент сообщил, что это не обязательно беда, и что у Badoo есть несколько квот для людей без права работать в Британии. Позже он правда перезвонил, извинился, и сказал что квоты закончились.

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

  • К поиску работы стоит подходить как к игре. Есть правила игры, есть победившие и проигравшие, и всегда можно сыграть другую игру. Не стоит воспринимать весь процесс слишком всерьез.
  • Правила поведения в интервью, технические задания и вопросы с большей вероятностью не будут иметь отношения к реальным проектам. Точно также финальное впечатления от тебя командой может не иметь отношения к тому, что ты на самом деле можешь.
  • Стоит предельно четко выяснить для себя на какие позиции вам охота попасть. Это сэкономит кучу времени — можно быстро отсеивать все ненужное. Я начинал поиск как фронтенд девелопер, потом очертил круг как фулл-стек девелопер с перспективой выхода на project manager.
  • Скайп интервью — ок. Техническое задание на выходные — ок. Слетать в Лондон на первое интервью или первое техническое задание — не ок. Лететь имеет смысл только когда уже все друг другу нравятся, и у обоих сторон есть положительное представление о том, как все может сложиться. Или просто если хочется посмотреть город.

Читать дальше →
Total votes 79: ↑64 and ↓15+49
Comments54

Information

Rating
Does not participate
Location
Россия
Registered
Activity