Pull to refresh
63
0
Илья Лахин @eliah_lakhin

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

Send message

Reinforced.Typings — больше деталей

Reading time17 min
Views8.9K
И снова здравствуйте.
Кто о чем, а я снова о Reinforced.Typings — своей библиотеке для генерации TypeScript-ового glue-кода из C#-сборок, краткое введение в которую я сделал в предыдущем посте. После чего немедленно получил ряд вопросов и комментариев (не только на Хабрахабре, к слову — многие из заинтересовавшихся просто на нем не зарегистрированы). За это, конечно, всем огромное спасибо, но исходя из проанализированной информации, я понял что одного краткого поста не достаточно, чтобы описать как и что реализуется. Получается что люди задают вопросы «а вот это вот поддерживается?» и каждому приходится объяснять раз за разом, одно и то же. Так что в этой статье я сделаю небольшой cheatsheet по атрибутам, fluent-конфигурации и расскажу про дополнительные возможности. В общем, милости просим. Осторожно, лонгрид и справочная информация!
Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments2

Reinforced.Typings — библиотека для автоматической генерации TypeScript-тайпингов и не только

Reading time7 min
Views8.3K
Я написал небольшую, но полезную библиотечку для любителей TypeScript и ASP.NET MVC. Очень хотелось бы про нее рассказать — возможно какому-то разработчику на вышеупомянутой комбинации технологий (а возможно и целой команде) она существенно облегчит жизнь. Писать полноценную документацию на английском пока что времени нет. К ней вообще нужно подходить осмысленно, с чувством, толком и расстановкой. Поэтому я решил написать статью на Хабрахабр, и вот прямо сейчас, под катом, я сделаю краткий обзор и покажу какую магию можно делать этой штукой. Добро пожаловать.
Читать дальше →
Total votes 15: ↑13 and ↓2+11
Comments32

Google признал Палестину

Reading time1 min
Views53K


Что-то новое происходит в международном праве — если раньше право на признание государств было только у других государств, то теперь такое право есть и у Google. На самом деле компания просто поменяла на своей поисковой странице для Палестины логотип «Google Палестинские территории» на «Google Палестина», пишет The Verge, однако это стало целым международным инцидентом.

Пресс-секретарь израильского министра иностранных дел заявил: «Это изменение вызывает вопросы о причинах этого удивительного вмешательства в принципе частной интернет-компании в международную политику».

Как известно, против признания независимости Палестины выступают и Израиль, и США, однако в Google заявили, что проконсультировались с рядом источников и решили следовать принципам именования ООН, ICANN, ISO и других международных организаций.
Читать дальше →
Total votes 66: ↑47 and ↓19+28
Comments65

Выдуманная история открытия собственного дела с печальным концом

Reading time13 min
Views3.5K
Вечер, пятница. Почему бы не почитать одну историю с печальным концом? На Хабре ведь не приняты такие?

На днях мной был оставлен комментарий, в котором я в двух словах написал, что мой бизнес уничтожили в зачаточном состоянии. Судя по вопросам в личку на Хабре и в vk тема актуальная. Что-ж, попробую написать о том, как все было, хотя точности не обещаю. Писать о том, что я Д'Артаньян, а все негодяи — не буду, ведь вам нужна поучительная история, а не история-оправдание еще одного неудачника.

Сразу оговорюсь, я не помню о каком городе/районе идет речь, и в каком государстве это происходило, если было. Также не могу вспомнить имен и точных должностей. А потому любые совпадения случайны и не имеют никакого отношения ни к какой власти — официальной и неофициальной.
Читать дальше →
Total votes 167: ↑151 and ↓16+135
Comments157

Как я искал работу в славном городе Нью-Йорк

Reading time5 min
Views137K
Несколько месяцев назад я сменил работу. Весь процесс от принятия решения о поиске и первого интервью в первой подвернувшейся компании до принятого предложения занял 8 месяцев. Перед началом марафона я имел за душой опыт смены работы 8-летней давности, но в России. Этот рассказ о том, как мои ожидания встретились с американской действительностью.

Прежде чем уйти в детали – краткий обзор меня. Я – разработчик с примерно 10-летним стажем, пишу для .NET платформы. Первые семь лет я базировался в Санкт-Петербурге и 3 года назад переехал в штаты.

Итак, поехали!
Читать дальше →
Total votes 172: ↑163 and ↓9+154
Comments167

Профессиональная эмиграция — Часть 1 — Проблема курицы и яйца и как с ней бороться, а также развенчание мифов

Reading time4 min
Views59K
Здравствуйте, Хабраюзеры.

Этим постом я хотел бы начать цикл (если позволит время и будет интересно аудитории) про профессиональную эмиграцию, особенно без привязки к работодателю.
Читать дальше →
Total votes 228: ↑208 and ↓20+188
Comments337

SRP-6: аутентификация без передачи пароля

Reading time5 min
Views33K
Как и было обещано в соседней теме, где рассказывался велосипед, выкладываю описание алгоритма SRP RFC2945 — способе регистрации и аутентификации пользователей безопасным образом по небезопасному каналу. Вот только в процессе подготовки статьи я обнаружил более свежую версию протокола, SRP-6, вместе с реализацией, в связи с чем решил выбросить свои архаичные наработки по SRP-3, и просто дать ссылки на имплементацию новой версии.
Читать дальше →
Total votes 48: ↑47 and ↓1+46
Comments28

Почему программистам не удается заработать: многомерность и нескончаемое бремя Haskell

Reading time9 min
Views54K
Обсуждение начну с весьма печального твита Криса Аллена (Chris Allen, @bitemyapp):
«Мне немного грустно от того, что некоторые организации твердят мантру „Вы сможете использовать haskell“, чтобы заполучить толковых инженеров подешевке».
Untyped is unsane ( @bitemyapp) 3 июня 2014 г.

Для тех, кто не знает: Haskell — продуктивный и мощный язык, позволяющий программистам, по крайней мере талантливым, быстро писать правильный код. По сравнению с разработкой на Java скорость возрастает в 2–5 раз при сопоставимой производительности и меньшем количестве ошибок. Крис совершенно верно заметил, что разработчик, использующий Haskell, чаще всего не получает достойного вознаграждения. Если вы твердо решили использовать функциональное программирование, то будете зарабатывать меньше коллег, которые разгребают базы кода C++ в банках, накопленные за 30 лет. Как-то это все неправильно. Почему к программистам, применяющим более мощные инструменты, применяются экономические санкции? В отличие от управленцев, ставящих во главу угла выгоду, программисты действительно хотят сделать свою работу как можно лучше. Почему же вместо «пряника» за благие намерения они получают «кнут»?
Читать дальше →
Total votes 104: ↑78 and ↓26+52
Comments37

Мультиклеточный процессор — это что?

Reading time18 min
Views52K
Многие слышали о мультиклеточной архитектуре, процессорах и даже первых устройствах на них. Особенно продвинутые пользователи опробовали свои алгоритмы. Были проведены первые простые тесты производительности, а также пользователь Barsmonster, вытравил кристалл процессора Р1. Сейчас уже проходит первые проверки процессор R1 и скоро будет доступен всем. Но ответ на вопрос о том, как работает мультиклеточная архитектура и в чём её отличие, знают не все. Попытаемся сейчас ввести в курс дела.
Читать дальше →
Total votes 44: ↑43 and ↓1+42
Comments37

Демо: Инкрементальный парсер для Web IDE

Reading time3 min
Views14K


Уважаемые коллеги,

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

А под катом я расскажу, о том, как работают современные IDE. И как проект, над которым я сейчас работаю, может помочь вывести индустрию разработки веб-редакторов на новый уровень.
Как сделать настоящую IDE для Java, работающую полностью в вебе
Total votes 57: ↑55 and ↓2+53
Comments19

Почему программисты не работают охранниками

Reading time2 min
Views47K
Я вебмастер
Представляю пятничные размышления на тему программирования как процесса.
В борьбе с прокрастинацией фрилансеры всё больше тяготеют к труду за пределами родного дома. Смена контекста позволяет настроиться на рабочий лад и быстрее войти в «поток». В качестве места деятельности раньше выбирались кафе, в летнее время беседки в парках, а сейчас несомненным трендом являются АнтиКафе и прочие коворкинги. Последние при этом подразумевают почасовую или помесячную оплату.
Оказывается, некоторые фрилансеры подходят к вопросу выбора места ненормально творчески — устраиваются в хорошие офисы охранниками с минимальными обязанностями.
Читать дальше →
Total votes 135: ↑82 and ↓53+29
Comments80

Шлюз между IRC и Google Hangouts

Reading time4 min
Views7.5K
Преамбула

Так уж получилось, что «по долгу службы» мне каждый день нужен IRC. Используемый клиент — irssi в tmux'е на Debian'овском сервере. В 99% случаев я подключаюсь по ssh (putty) к серверу, там перехожу в окно irssi и читаю/пишу в нужные мне каналы. Оставшийся 1% — это подключение к проксируемым каналам irssi с помощью Mirand'ы.

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

Но не так давно, в связи с некоторым изменением образа жизни, мирандой я перестал пользоваться, и возникла необходимость чтения/записи в один канал со смартфона.
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments13

Практика работы «в белую» с иностранными заказчиками

Reading time4 min
Views108K
Итак, тут уже была серия статей про то как открыть ИП, как вести бизнес с иностранцами и так далее.
Я хочу всё систематизировать и поделиться реальной практикой.

Для начала введём определения и ограничения:
1. вы уже должны быть зарегистрированы как ИП и вы ознакомились со статьями: habrahabr.ru/blogs/freelance/132232, habrahabr.ru/blogs/freelance/132360, habrahabr.ru/blogs/Dura_Lex/114069
2. мы хотим вести бизнес честно, платить с этого налог и делаем это в России;
3. всё что написано ниже в статье применимо только к ИП, возможно что-то применимо и к ООО, но я ИП и рассказываю про ИП;
4. ИП рассматривается на упрощённой системе налогообложения (УСН) со схемой уплаты налогов в 6% от дохода и без наёмных работников – то есть вы сами по себе;
5. вы предоставляете услуги в области ИТ (программинг, дизайн, консультации и т. п.).

Читать дальше →
Total votes 65: ↑64 and ↓1+63
Comments145

Boids — простой алгоритм перемещения групп юнитов

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



Под катом описание алгоритма с примерами кода.

Читать дальше →
Total votes 63: ↑60 and ↓3+57
Comments23

О применении $.Deferred в работе с асинхронными задачами

Reading time15 min
Views21K
Привет всем!

В данной статье я хотел бы поделиться с вами соображениями о том, как на практике можно использовать механизм работы с асинхронными процессами, предоставляемый библиотекой jQuery с версии 1.5 под названием deferred, «отложенный» (jQuery.Deferred), а также со связанными объектами и методами.

Разумеется, уже написан не один десяток статей на тему работы с парой deferred/promise. Своей же я задался целью предоставить такой набор знаний, который дал бы новичку, во-первых, возможность забыть о своих страхах перед непонятным и сложным и, во-вторых, сделать еще один шаг к написанию понятного и хорошо структурированного кода, работающего с асинхронными процессами. Я бы хотел сосредоточить свое и ваше внимание на проблемах, которые легко разрешаются ипользованием deferred, на предпосылках и типовых схемах использования этого объекта.
Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments6

Яндекс посвятил страницу плееру Winamp

Reading time1 min
Views79K
Сегодня, 20 декабря прекратилась поддержка Winamp — самого узнаваемого и родного для многих музыкального плеера. Последней стала версия Winamp 5.66. В память о времени, проведённом вместе, мы сделали тематическое оформление для страницы Яндекс.Музыки. Найти его можно здесь — music.yandex.ru/oldschool.

image

Мы разложили треки в папки с жанрами: панк, рок, металл, эстрада, поп, классика, кантри, регги, джаз и т.д. В папке с музыкой 90-х — E-Type и Иванушки International, Haddaway и Игорь Тальков, R.E.M и тот самый ранний «Мумий Тролль», Matchbox Twenty и ЧайФ. Остальные папки тоже не пустые. Мы собрали даже музыку «на будильник». Будем пользоваться и вспоминать.
Total votes 319: ↑304 and ↓15+289
Comments182

Проектируем макет корпоративного сайта

Reading time8 min
Views90K


Привет, Хабраюзер! В интернете полно статей на тему, каким должен быть идеальный дизайн сайта, много примеров уже отрисованных макетов, но почти никогда ты не увидишь, как именно этот макет рисовался, какие правки переносил и насколько изначально был далек от финального варианта. Сегодня я приглашаю тебя разобрать процесс отрисовки главной страницы корпоративного сайта фирмы, с нуля. Мы рассмотрим 13 промежуточных вариантов, предшествовавших финальной версии главной страницы и подробно разберем все вводимые в макеты изменения.
Поехали!
Total votes 59: ↑47 and ↓12+35
Comments61

Нанотехнологии для всех. Часть 1: Как и чем измерить наномасштаб? Сканирующая туннельная микроскопия

Reading time6 min
Views31K
Приветствую вас, славные жители Хаброгорода!

Плюсы в комментариях в посте IBM и ответы на мой вопрос в Тостере а еще карма, выросшая за ночь в 3 раза обозначили яркое желание Хабра читать научно-популярные статьи: достаточно глубокие, но написанные человеческим языком и с прозрачными аналогиями. Заранее определим, как и о чем мы будем писать.

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

В публикациях будет:
  • упор на техническую и инженерную часть;
  • много вопросов. Мне хотелось, чтобы читатель включил свой мозг и пытался бы думать как исследователь;
  • большое количество наглядных картинок.

Материала очень много и для усиления усваивания лучше начать с инженерной статьи. Итак, как же понять, что за технология перед нами, нано или нет? Давайте измерим ее.
Перестать рассматривать котиков и погрузиться в науку
Total votes 50: ↑49 and ↓1+48
Comments66

Почему я ненавижу virtualenv и pip

Reading time9 min
Views101K
Я не разделяю всеобщей любви к virtualenv (далее — venv) и pip. Я считаю, что они лишь вносят неразбериху и более того — вредят. Python-программисты чаще всего не соглашаются со мной, да и venv+pip де-факто считается стандартом в python-сообществе. Так как я понимаю, насколько голословными звучат мои высказывания, решил написать сей трактат. Конечно, я иногда пускаюсь спорить на эту тему и в реальной жизни: и ну нравится мне заводить людей и наблюдать, как страстно они остаивают свою позицию. Но при этом мне всегда кажется, что словесно я не могу обосновать свою позицию в полной мере. Поэтому вместо того, чтобы постоянно пытаться вербально доказывать свою точку зрения, я решил написать эту статью, дабы потом просто показывать её людям. Может быть тогда некоторые со мной согласятся, потому что сейчас не согласен почти никто. А может наоборот, как только мои доводы будут всецело поняты, найдутся те, кто их аргументированно опровергнет. Так или иначе, я буду рад любому варианту развития событий.
Читать дальше →
Total votes 86: ↑68 and ↓18+50
Comments61

О летней стажировке в JetBrains

Reading time7 min
Views24K
Привет, Хабр!

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

C годами у нас появилось много образовательных программ, которые мы поддерживаем (Computer Science Center, программа магистров при АУ РАН, Лаборатория JetBrains при Математико-механическом факультете СПбГУ и пр.) и много студентов, которые хотят пройти стажировку у нас. В результате этим летом мы провели масштабный проект летних практик.

Читать дальше →
Total votes 40: ↑33 and ↓7+26
Comments15

Information

Rating
Does not participate
Date of birth
Registered
Activity