Re[22]: в очередной раз о собеседованиях
От: olegkr  
Дата: 03.12.08 21:09
Оценка:
Здравствуйте, SE, Вы писали:

SE>А доказать что этот регексп полностью соответствует RFC тоже легко? А написать его было тоже легко? Он получился простой для понимания?

Практически возможно. Доказано электроникой. Вопрос легко/тяжело не стоял.
Re[9]: Что напрягло лично меня
От: SE Украина  
Дата: 03.12.08 22:03
Оценка: :)
Здравствуйте, Erop, Вы писали:

Раз пошла такая пьянка, вот что родило мое извращенное воображение (это WPF и LINQ):

    public static class DrawExtensions
    {
        public static void DrawCircle(this Canvas canvas, double x0, double y0, double r, int n)
        {
            foreach (var line in Enumerable.Range(0, n).Line(x0, y0, r, n))
                canvas.Children.Add(line);
        }

        public static IEnumerable<Line> Line(this IEnumerable<int> enumeration, 
            double x, double y, double r, int n)
        {
            Func<double, double, double> f = (k, K) => 2.0 * Math.PI * k / K;
            foreach (var i in enumeration)
                yield return new Line() {Stroke = Brushes.Black, StrokeThickness = 2,
                    X1 = x + r * Math.Cos(f(i, n)), Y1 = x + r * Math.Sin(f(i, n)),
                    X2 = x + r * Math.Cos(f(i + 1, n)), Y2 = x + r * Math.Sin(f(i + 1, n))};

        }
    }


Пример использования:

Canvas1.DrawCircle(120, 150, 100, 50); // Центр (120, 150), радиус 100, отрезков 50

Вот что получилось



Правда, я на собеседовании такой изврат писать не решился бы — я только минут 10 просто синтаксис уточнял, зато потом написал за несколько минут и заработало сразу без отладки

E>Но эта вечная проблема всяких дурацких вопросов на интерьвю -- совершенно не понятна предполагаемая подробность проработки требуемого решения...

Ну обычно подробность проработки задается фразой "я выйду минут на десять, чтобы вам не мешать"
Re[23]: в очередной раз о собеседованиях
От: SE Украина  
Дата: 03.12.08 22:07
Оценка:
Здравствуйте, olegkr, Вы писали:

SE>>А доказать что этот регексп полностью соответствует RFC тоже легко? А написать его было тоже легко? Он получился простой для понимания?

O>Практически возможно. Доказано электроникой. Вопрос легко/тяжело не стоял.
При выборе способа решения у адекватного программиста всегда стоит вопрос легко/тяжело. Причем как в отношении сделать, так и в отношении понять.
Re[10]: Что напрягло лично меня
От: SE Украина  
Дата: 03.12.08 22:09
Оценка:
Здравствуйте, SE, Вы писали:

И самое главное таки допустил ошибку
Re[24]: в очередной раз о собеседованиях
От: olegkr  
Дата: 03.12.08 22:21
Оценка:
Здравствуйте, SE, Вы писали:

SE>При выборе способа решения у адекватного программиста всегда стоит вопрос легко/тяжело. Причем как в отношении сделать, так и в отношении понять.

Адекватному программисту и в голову не придет разбирать все варианты e-mail адреса по RFC. Если обойтись без экзотики и фанатизма, то регэксп получится на одну строчку. Речь шла о возможности вообще такового разбора.
Re[16]: в очередной раз о собеседованиях
От: Alexeyss  
Дата: 03.12.08 22:37
Оценка:
Здравствуйте, Erop, Вы писали:

E>Здравствуйте, AndrewVK, Вы писали:


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

AVK>>Я так понимаю, что логическое выражение вроде !(!(a && b) || (c && d)) это уже сложное, и нужно идти к математику?

E>А как и зачем ты собираешься его упрощать?


(a && b) && (! (c && d) ) так ?
When things get too complicated, make more types.
Re[21]: WP -- это классно! Я не шучу!
От: Erop Россия  
Дата: 03.12.08 23:34
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Но что важнее, структурирую код таким образом, что о нем можно рассуждать в таких терминах. Что делает код более понятным и управляемым.

Ну это, IMHO, просто обязательное требование
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[17]: в очередной раз о собеседованиях
От: Erop Россия  
Дата: 04.12.08 00:02
Оценка:
Здравствуйте, Alexeyss, Вы писали:

A>(a && b) && (! (c && d) ) так ?

Я не знаю. Мне a && b && ( !c || !d ) кажется более понятным условием

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

Я думаю, что можно придумать такие предикаты a, b, c, d, что каждая из трёх форм окажется естественной...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[25]: в очередной раз о собеседованиях
От: Pzz Россия https://github.com/alexpevzner
Дата: 04.12.08 01:05
Оценка: +1
Здравствуйте, olegkr, Вы писали:

SE>>При выборе способа решения у адекватного программиста всегда стоит вопрос легко/тяжело. Причем как в отношении сделать, так и в отношении понять.

O>Адекватному программисту и в голову не придет разбирать все варианты e-mail адреса по RFC. Если обойтись без экзотики и фанатизма, то регэксп получится на одну строчку. Речь шла о возможности вообще такового разбора.

Т.е., если программа не понимает половину корректных вариантов — это значит, "адекватный программист" приложил руку, и обошелся регулярным выражением на одну строчку?
Re[22]: WP -- это классно! Я не шучу!
От: Pzz Россия https://github.com/alexpevzner
Дата: 04.12.08 01:07
Оценка:
Здравствуйте, Erop, Вы писали:

Pzz>>Но что важнее, структурирую код таким образом, что о нем можно рассуждать в таких терминах. Что делает код более понятным и управляемым.

E>Ну это, IMHO, просто обязательное требование

А как вы это требование сформулируете в таких терминах, которые не оскорбляют нежный слух уважаемых "практиков", которые считают, что "теория" — не для нормальных людей?
Re[23]: WP -- это классно! Я не шучу!
От: Erop Россия  
Дата: 04.12.08 01:11
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>А как вы это требование сформулируете в таких терминах, которые не оскорбляют нежный слух уважаемых "практиков", которые считают, что "теория" — не для нормальных людей?


Я прошу подчинённых заботать что такое WP, и потом писать asserts в соответствующем духе...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[26]: в очередной раз о собеседованиях
От: Erop Россия  
Дата: 04.12.08 01:13
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Т.е., если программа не понимает половину корректных вариантов — это значит, "адекватный программист" приложил руку, и обошелся регулярным выражением на одну строчку?


Что-то как-то мне так кажется, что многие из тех "корректных" вариантов лучше бы и не поддерживать...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[27]: в очередной раз о собеседованиях
От: Pzz Россия https://github.com/alexpevzner
Дата: 04.12.08 01:17
Оценка:
Здравствуйте, Erop, Вы писали:

Pzz>>Т.е., если программа не понимает половину корректных вариантов — это значит, "адекватный программист" приложил руку, и обошелся регулярным выражением на одну строчку?


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


К сожалению, ребята, которые придумали синтаксис e-mail адресов, плохо подумали (или слишком хорошо умели программировать), и даже такая простая задача, как определить, где там имя-фамилиё, а где, собственно, адрес, требует определенной аккуратности. И регекспами, насколько я помню, не решается, т.к. там скобочная структура.

Я не говорю о совсем уж вычурных случаях, когда адрес внутри себя содержит uucp-routing, это действительно можно не поддерживать.
Re[24]: WP -- это классно! Я не шучу!
От: Pzz Россия https://github.com/alexpevzner
Дата: 04.12.08 01:19
Оценка:
Здравствуйте, Erop, Вы писали:

E>Я прошу подчинённых заботать что такое WP, и потом писать asserts в соответствующем духе...


Разговариваем, разговариваем... А что, кстати, значит сокращение WP, кроме как Washington Post?

P.S. Давайте пофлеймим еще о выкидывании ассертов из релизного кода. Я за то, чтобы не выкидывать.
Re[33]: Об инженерах...
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 04.12.08 08:39
Оценка: +1
Здравствуйте, Erop, Вы писали:

E>Да ничего я не путаюсь.


Ты или путаешься и получается сломаный телефон или вы там действительно накосячили с этим человеком.
Re[27]: в очередной раз о собеседованиях
От: ettcat США  
Дата: 04.12.08 08:44
Оценка:
Erop wrote:
> Здравствуйте, AndrewVK, Вы писали:

> Ну тогда тебе знание грамматик -- существенно. Но это же очень специфично для конкретно твоих задач...

> А мне вот одно время нужно было обрабатывать тексты на естественных языках, там грамматики в смысле LL(k) практически бесполезны

И что использовали, если не секрет? GLR? Или какие-нибудь link grammar?
Или просто рукава закатали, вручную справились ?
Posted via RSDN NNTP Server 2.1 beta
Re[20]: в очередной раз об "слишком умных" :)
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 04.12.08 09:24
Оценка: +2
Здравствуйте, Erop, Вы писали:

E>Дык поинт в том, что чотрудник должен сотрудничать, а иначе он нам не нужен.


Ты все таки хочешь вместо вопроса технической квалификации обсудить менеджеров? Ок, тогда ответь на второй вопрос — почему нежелание сотрудничать не было замечено во время испытательного срока?

E>Зато я писал. Было много разных менеджеров, которые пробовали разные варианты воздействия. IMHO самый компетентный уволил


Вы 10 месяцев тянули волынку.

E>Ну я считаю, что негодной, потому что очень большой


Ты так и не смог доказать, что проблемой была черезмерная квалификация.

E> Ну он повыпендривался и свалил в конце концов.


Я повторюсь — желание повыпендриваться это признак низкой квалификации.
... << RSDN@Home 1.2.0 alpha 4 rev. 1120 on Windows Vista 6.0.6001.65536>>
AVK Blog
Re[25]: WP -- это классно! Я не шучу!
От: Erop Россия  
Дата: 04.12.08 09:48
Оценка:
Здравствуйте, Pzz, Вы писали:


Pzz>Разговариваем, разговариваем... А что, кстати, значит сокращение WP, кроме как Washington Post?

Pzz>P.S. Давайте пофлеймим еще о выкидывании ассертов из релизного кода. Я за то, чтобы не выкидывать.

Этот оператор ввёл, кажется, Дейкстра. Weekest Precondition называется. Продвинутых прошу wlp ещё посмотреть

А asserts у нас есть трёх видов. Типа staticAssert, debugAssert и просто assert. При этом последний остаётся во всех версиях...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[4]: в очередной раз о собеседованиях
От: Roman Odaisky Украина  
Дата: 04.12.08 09:51
Оценка: 2 (2) +1 -1
Здравствуйте, Maxim S. Shatskih, Вы писали:

MSS>Для ваятеля веб-интерфейса достаточно вот каких познаний о площади круга — "то ли Пи-Эр-Квадрат, то ли Два-Пи-Эр, забыл, блин". И забыл не потому, что тупой, не потому, что и не знал — а потому, что _другие проблемы у человека в жизни, в т.ч. профессиональной_.


Если человек всерьез принимает 2πR за возможный вариант, то это и в самом деле говорит о проблемах с элементарной математикой. Если он сказал бы, например, «πR²/4», вот это говорило бы о том, что он просто забыл формулу.

Не станет же кандидат отнимать время у собеседующего расчетами вроде

верно? А вот не заметить, что вариант «2πR» не подходит по размерности, — грубая ошибка. Он с тем же успехом не заметит разницы между O(n²) и O(n³), а это даже для AJAX бывает важно.
До последнего не верил в пирамиду Лебедева.
Re[21]: в очередной раз об "слишком умных" :)
От: Erop Россия  
Дата: 04.12.08 09:53
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Ты все таки хочешь вместо вопроса технической квалификации обсудить менеджеров? Ок, тогда ответь на второй вопрос — почему нежелание сотрудничать не было замечено во время испытательного срока?

Потому, что оно было сильно неочевидным.

E>>Зато я писал. Было много разных менеджеров, которые пробовали разные варианты воздействия. IMHO самый компетентный уволил

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

E>>Ну я считаю, что негодной, потому что очень большой

AVK>Ты так и не смог доказать, что проблемой была черезмерная квалификация.
Черезмерная квалификация оказалась ресурсом, позволявшим морочить голову менеджерам.

E>> Ну он повыпендривался и свалил в конце концов.

AVK>Я повторюсь — желание повыпендриваться это признак низкой квалификации.
Ну я не знаю, что ты вкладываешь в понятие "квалификация", но он как разработчик не плох. У него же есть известная мне история за пределами нашей конторы...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.