3
Karma
0.9
Rating
Константин @symbix

User

Лайфхак – пишем и бесплатно хостим в облаке вебсайт с гостевой книгой

+1

О, я когда-то делал свой сайт с гостевой книгой на перле, на бесплатном хостинге. В 2001 году, кажется.


Есть же GitHub pages, зачем такие сложности? Даже домен можно не покупать.

Интервью с веб-разработчиком Pornhub

+4

"Вот лежишь ты на пляже, загораешь, а там станки, станки, станки" :-)


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

Какой код нужно показывать на собеседовании

Какой код нужно показывать на собеседовании

0

Вопрос привычки, наверное. Я все эти map-reduce-ы легко воспринимаю, хотя по функциональщине особо не упарываюсь. Мне stateful подход с императивщиной больше когнитивной нагрузки создает, особенно в нетривиальных случах, когда за всеми переменными еще следить надо.


Хотя, возможно, я просто привык ко всяким redux-ам с rxjs. Но порог вхождения в них особо сложным не был, насколько помню.

Какой код нужно показывать на собеседовании

0

а, ну руками я и через итераторы могу :)


но либа прикольная, этакий rxjs но без асинхронщины

Какой код нужно показывать на собеседовании

0

И что, какой-то там v8, который даже оптимизацию хвостовой рекурсии не осилил, может сделать такую оптимизацию приведенного кода? Не верю!


Про правильные языки понятно, вопрос не в них :-)

Какой код нужно показывать на собеседовании

0

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

Какой код нужно показывать на собеседовании

0

Ну вот за минут 7-8 получилось так:


const getRanges = arr =>
    arr.reduce(
        (intervals, value) => {
            const currentInterval = intervals.length && intervals[intervals.length - 1];
            if (currentInterval && (currentInterval.length === 1 || value - currentInterval[1] === 1)) {
                currentInterval[1] = value;
            } else {
                intervals.push([value]);
            }
            return intervals;
        },
        []
    ).reduce(
        (formattedString, interval, index) =>
            formattedString + (index ? ',' : '') + interval.join('-'),
        ''
    );

Какой код нужно показывать на собеседовании

Какой код нужно показывать на собеседовании

Не судите чужой код строго

+1

Купить вам клавиатуру — это копейки, а регрессии из-за сложностей с мержем могут бизнесу обойтись в миллионы.


Если вы пишете опенсорс или свой собственный проект, то, конечно, дело ваше. А если вы получаете зарплату, то ее вам платят не за ваши личные хотелки, а за то, что нужно бизнесу. А стандартизация всегда бизнесу выгодна, любое нестандартное решение это всегда дополнительный cost of ownership. Любое нестандартное решение должно чем-то компенсировать этот рост TCO. Нестандартный code style не компенсирует это вообще никак, хоть убейся.


(И, да, если вы печатаете вслепую, то вам все равно, какие где буковки написаны, а если нет, то хоть какая там раскладка, все равно плохо. :-)

Не судите чужой код строго

0

Не нанимать людей, которые еще не повзрослели (ментально, а не физически).


Это еще на собеседовании сразу видно. Если не смогли разглядеть на собеседовании — на испытательном сроке точно проявится.

Не судите чужой код строго

0

Пусть тогда и на компилятор обижаются, когда он warning-и выводит.


Детский сад, штаны на лямках.


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


Другое дело, если бы я переходил на личности, типа "что за дерьмо ты написал" — я так, конечно, никогда не делаю. Если надо помочь — всегда по возможности помогаю, типа, давай расшарим экран и устроим сессию парного программирования. Главное, чтобы это привело к результату.

Не судите чужой код строго

0

В любой нормальной IDE нет никакой разницы.


Лично для меня нет вообще никакой разницы. Главное, чтобы в проекте был code style и все его придерживались. Какой именно — по барабану. Но если есть общепринятый стандарт, всегда выгоднее его придерживаться: если понадобится форкнуть какую-то стороннюю библиотеку, с вероятностью 99% она оформлена в соответствии с общепринятым стандартом, и не понадобится ее реформатить, что упростит последующие мерджи с апстримом.

Не судите чужой код строго

0

А почему я должен испытывать какие-то эмоции? Это обычный контроль качества. Я спокойно описываю необходимые изменения, аргументирую, и тыкаю кнопочку request changes.


Если разработчик воспринимает сухую аргументированную критику кода как личное оскорбление — это его проблемы, не мои.

Не судите чужой код строго

+1

У меня никакого раздражения, я, будучи спокоен, как удав, пишу комментарий и жму request changes.

Универсальная защита от xss-атак и sql-инъекций

0

Судя по рекламе, размещенной в профайле автора, в данном случае все органично.

Десктоп мертв, да здравствует десктоп! Собираю хабрастатистику

0

А, вот откуда столько десктопов в опросе!
Я не стал выбирать десктоп, потому что иногда ноут от дока отключаю и иду с ним… ну, скажем, на кухню.


Работа от дома отличается… ничем (точнее, тем, что я в данный момент делаю), так что тут одинаково выбрал.


Мне кажется, это одна из наиболее популярных конфигурацией сейчас. И между "ноутбуком" и "десктопом" они поделились поровну :-)

Исповедь docker хейтера

+1

Категорически присоединяюсь! Я с этим делом недавно совсем дошел до ручки — сделал промежуточный контейнер, который пробует getent hosts host.docker.internal, а если не получается — берет default gateway, и NAT-ит на полученный IP весь диапазон портов через iptables. :-)

Переезд программиста в Эстонию: работа, деньги и стоимость жизни

0

Тут надо делать скидку на политическую обстановку.


Я для себя не считаю зазорным выучить несколько фраз на языке, чтобы хотя бы сказать "здравствуйте, извините, не говорю на ****, вы говорите на английском или русском?" С таким подходом все вежливо отвечают вне зависимости от политических взглядов.

Переезд программиста в Эстонию: работа, деньги и стоимость жизни

+4

Если внаглую спросить по-русски, полагая, что его обязаны знать — неудивительно, что ответ будет таким. Но это скорее истории времён полураспада СССР или начала девяностых.


Бывает и в другую сторону смешно. Как-то был в Таллинне, зашёл в магазин, поздоровался с продавщицей и задал вопрос по-английски, на что она повернулась и крикнула в подсобку: Вась, тут, это, иностранец е***ый, поговори с ним!

Как перестать бояться Upwork и начать зарабатывать в валюте

0

Теоретически могут.


Вообще я бы не советовал все эти серые схемы, 6-7% это совсем небольшой налог, риски не стоят того.


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

Как перестать бояться Upwork и начать зарабатывать в валюте

0

За копейки и не надо. Надо за те деньги, которые вы другим способом тут вряд ли сможете заработать, работая программистом.


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

Как перестать бояться Upwork и начать зарабатывать в валюте

0

Попробуйте пройти на Toptal. C++-разработчиков, конечно, ищут не так много, как всякий веб или мобайл, но есть (вот прямо сейчас вижу 8), заказчики на 99% адекватные.

Вся мощь IntelliJ IDEA на примере одного языка (в картинках)

+1

Да, IDE семейства IDEA шикарны, говорю как бывший vim'ер, умеющий из vim-а сделать все что угодно. (IdeaVIM плагин, конечно, мне все равно строго необходим :-)


Может, напишете статью о разработке плагина? Было бы очень интересно!

Расследование: странные программы в Реестре отечественного ПО

+6

Разработка-то в России в основном. Просто владельцы бизнеса — не дураки

Как перестать бояться Upwork и начать зарабатывать в валюте

+1

Один знакомый платил админу за аптайм серверов фиксированную сумму (приличную причем), а за время простоя вычитал за каждую минуту. По вашему примеру понимаю, что он все делал правильно :)

Конференцию PHP Central Europe отменили из-за того, что среди выступающих не оказалось женщин

0

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


Думаю, у каждого такой момент настанет, ведь мы ж не железные. Я вот еще года 5 назад вряд ли бы подумал, что начну спортом заниматься, скажем (умеренно, конечно).

Как перестать бояться Upwork и начать зарабатывать в валюте

Как перестать бояться Upwork и начать зарабатывать в валюте

Какое главное отличие Dependency Injection от Service Locator?

0

Ни разу не видел, чтобы в yii типизировали по интерфейсу :) так то конечно ничего не мешает.

Лайк, если читаешь логи!: запускаем Hotspot 2.0 на сети Wi-Fi в метро

Лайк, если читаешь логи!: запускаем Hotspot 2.0 на сети Wi-Fi в метро

0

Вот это правильный подход. В Казахстане MITM провалился из-за жёсткого навязывания, а тут желающие халявы сами все поставят, добровольно и с песней! :-)

Как перестать бояться Upwork и начать зарабатывать в валюте

0

У самозанятых смешной лимит годового дохода, на 3-4 месяца хватит только. Смысла нет.

Конференцию PHP Central Europe отменили из-за того, что среди выступающих не оказалось женщин

Конференцию PHP Central Europe отменили из-за того, что среди выступающих не оказалось женщин

Какое главное отличие Dependency Injection от Service Locator?

0

Мы, видимо, по-разному понимаем, что такое DIP.


По определению Роберта Мартина:


  1. High-level modules should not depend on low-level modules. Both should depend on abstractions.
  2. Abstractions should not depend on details. Details should depend on abstractions.

В Yii я кругом вижу жесткие связки. (Хотя, допускаю, что на Yii можно писать более-менее нормально, просто этого никто не делает, можно тогда пример?)

Конференцию PHP Central Europe отменили из-за того, что среди выступающих не оказалось женщин

0

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

Конференцию PHP Central Europe отменили из-за того, что среди выступающих не оказалось женщин

0

Я утрирую, конечно. Но каждый может представить, как бы он расходовал свое время более эффективно. Дело не столько в том, чтобы не прокрастинировать (хотя и это тоже), сколько в том, чтобы четко сконцентрироваться на цели и не отвлекаться на побочные мысли.


Большинство из тех, кто работает по 12-14 часов, просто не умеют делать это эффективно. К самообучению это тоже относится.

Какое главное отличие Dependency Injection от Service Locator?

0

SL, не реализующий SIP — это практически любой SL (иначе бы его называли DI). Как Yii::app() в Yii, скажем.

1 There