Здравствуйте, Ikemefula, Вы писали:
I>Ты не динозавр, ты просто д'Артаньян С твоей математикой уже давно положено продукт-овнером быть, а ты в девелоперах бегаешь от багадельни к багадельне.
Библию почитать послать?
Здравствуйте, Ikemefula, Вы писали:
I>Ты не динозавр, ты просто д'Артаньян С твоей математикой уже давно положено продукт-овнером быть, а ты в девелоперах бегаешь от багадельни к багадельне.
А так для продукта его сделать — это очень и очень мало. Это раз.
Два. В одиночку продукт сделать практически невозможно за разумное время.
Три. Даже, если что-то сделать, это еще нужно продать, раскрутить и т.д.
В реальности — это невозможно одному человеку, который разработчик. Реально, если есть кто-то, кто возьмет на себе поиск клиентов, заказов, продвижение и т.д. И даже в этом случае результат — всего-лишь место и время.
А если сюда добавить возрастные изменения с холестеринами, сердцем, сосудами, то все становится еще хуже. Что-то нужно успевать делать до 33-35.
Ну ладно, чей-то я расписался, смысла в оном никакого.
Здравствуйте, Undying, Вы писали:
U>Любую теорию, и ЦОС не исключение, пишут под конкретные задачи. Сбивать ракеты, к примеру, да, ей получается замечательно, лучше придумать сложно. А контролировать топливо ей в то время никто не собирался, не было технологических возможностей для этого тогда. Поэтому теория контроля топлива сейчас только создается. И создают ее не какие сверхчеловеки, а обычные инженеры, но умеющие и не боящиеся думать своей головой.
Лучше уж молчи и не позорься.
Здравствуйте, Ikemefula, Вы писали:
I>Для начала это знание помогло задетектить проблему. Скажем, большинство людей просто не в курсе особенностей быстрой сортировки и пока они будут таращить глаза и искать причину, пройдет много времени.
Даже под профайлером скорей всего источник проблемы будет виден. А уж трассировкой установить, что источник проблемы именно Sort точно удастся быстро.
I>Потом это знание помогло проанализировать причины и определиться с тем, в каком направлении копать — "стабильная сортировка с временем близком к линейному которая не будет требовать дополнительной памяти"
Полагаю, что гуглением такую информацию удалось бы найти достаточно быстро. И качество найденного решения главным образом определялось бы умениями разработчика, а не его начальными знаниями по теме сортировки.
I>К слову — до меня эта проблема висела несколько лет и фича была заморожена ибо "сортировка слишком долгая операция".
Просто люди работать не хотели или не умели. Твое принципиальное отличие от них это умение и желание решать проблемы, а вовсе не знание стопяцот методов сортировки.
Здравствуйте, Undying, Вы писали:
U>Что значит угадал с эмпирикой? А теория ЦОС по твоему откуда появилась? Ее бог что ли написал или марсиане? Ее писали такие же люди как я и ты, но в отличие от тебя не боявшиеся сами находить решения, а не пользоваться готовыми. Если бы все мыслили так как ты люди до сих пор бы с деревьев не слезли.
В науке два основных метода — эмпирический и теоретический. Эмпирический — эксперимент. ЦОС появилась из того, что ктото нашел что преобразования Фурье применимы к дискретным функциям. А вот Фурье в основном пользовался теоретическим методом.
Здравствуйте, Ikemefula, Вы писали:
I>В науке два основных метода — эмпирический и теоретический. Эмпирический — эксперимент. ЦОС появилась из того, что ктото нашел что преобразования Фурье применимы к дискретным функциям. А вот Фурье в основном пользовался теоретическим методом.
В ЦОС гораздо больше, чем Фурье. Это всего-лишь маленькая, но необходимая часть.
Здравствуйте, Vzhyk, Вы писали:
I>>Ты не динозавр, ты просто д'Артаньян С твоей математикой уже давно положено продукт-овнером быть, а ты в девелоперах бегаешь от багадельни к багадельне. V>Библию почитать послать?
Здравствуйте, Vzhyk, Вы писали:
V>А если сюда добавить возрастные изменения с холестеринами, сердцем, сосудами, то все становится еще хуже. Что-то нужно успевать делать до 33-35. V>Ну ладно, чей-то я расписался, смысла в оном никакого.
Смысл есть — теперь лучше понятны пораженческие настроения.
Здравствуйте, Undying, Вы писали:
I>>Для начала это знание помогло задетектить проблему. Скажем, большинство людей просто не в курсе особенностей быстрой сортировки и пока они будут таращить глаза и искать причину, пройдет много времени.
U>Даже под профайлером скорей всего источник проблемы будет виден. А уж трассировкой установить, что источник проблемы именно Sort точно удастся быстро.
Профайлер скажет тебе "сортировка слишком долгая операция". Если у тебя есть познания в алгоритмах, то ты скорее всего усомнишься в этом, если нет — тупо согласишься с профайлером.
I>>Потом это знание помогло проанализировать причины и определиться с тем, в каком направлении копать — "стабильная сортировка с временем близком к линейному которая не будет требовать дополнительной памяти"
U>Полагаю, что гуглением такую информацию удалось бы найти достаточно быстро. И качество найденного решения главным образом определялось бы умениями разработчика, а не его начальными знаниями по теме сортировки.
Гуглением найдешь что сортировка это в лучшем случае O(n*log(n)), а про конкретный случай тебе гугл ничего не скажет.
I>>К слову — до меня эта проблема висела несколько лет и фича была заморожена ибо "сортировка слишком долгая операция".
U>Просто люди работать не хотели или не умели. Твое принципиальное отличие от них это умение и желание решать проблемы, а вовсе не знание стопяцот методов сортировки.
Если буквально, то я не знаю наизусть ни одного алгоритма сортировки и никогда не знал.
Здравствуйте, Vzhyk, Вы писали:
I>>В науке два основных метода — эмпирический и теоретический. Эмпирический — эксперимент. ЦОС появилась из того, что ктото нашел что преобразования Фурье применимы к дискретным функциям. А вот Фурье в основном пользовался теоретическим методом. V>В ЦОС гораздо больше, чем Фурье. Это всего-лишь маленькая, но необходимая часть.
Здравствуйте, Undying, Вы писали:
U>Любую теорию, и ЦОС не исключение, пишут под конкретные задачи. Сбивать ракеты, к примеру, да, ей получается замечательно, лучше придумать сложно. А контролировать топливо ей в то время никто не собирался, не было технологических возможностей для этого тогда. Поэтому теория контроля топлива сейчас только создается. И создают ее не какие сверхчеловеки, а обычные инженеры, но умеющие и не боящиеся думать своей головой.
Теорию создают совсем не инженеры а большей частью математики. Но вообще странный вывод — раз раз теорию, по твоим словам, создают инженеры, значит там используется эмпирический метод
Почему инженер не может использовать теоретический метод ? Или подразумевается, что теоретический метод доступен только марсианам и богам ?
Здравствуйте, Ikemefula, Вы писали:
I>Посылай Библию, пусть будет.
Не проворным достается успешный бег, не храбрым — победа, не мудрым — хлеб, и не у разумных — богатство, и не искусным — благорасположение, но время и случай для всех их.
(Еккл. IX, 11)
Здравствуйте, Ikemefula, Вы писали:
I>Смысл есть — теперь лучше понятны пораженческие настроения. )))))))))))))) Это точно. За пивом я бы тебе мог много веселого рассказать. Если бы я не пытался, но... как там по эклезиасту.
Здравствуйте, Ikemefula, Вы писали:
I>Профайлер скажет тебе "сортировка слишком долгая операция". Если у тебя есть познания в алгоритмах, то ты скорее всего усомнишься в этом, если нет — тупо согласишься с профайлером.
Это если глуп (таких очень мало) или опыт пол-года(это студенты еще).
I>Если буквально, то я не знаю наизусть ни одного алгоритма сортировки и никогда не знал.
А "пузырек"? Его и самому придумать можно, если в школе не проходили.
Здравствуйте, Ikemefula, Вы писали:
I>Почему инженер не может использовать теоретический метод ? Или подразумевается, что теоретический метод доступен только марсианам и богам ? I>Поясни, а то непонятно.
Критерием истины является практика. Соответственно невозможно создать теорию не пользуясь эмпирическим методом. Умозрительно можно максимум сформулировать гипотезу.
Здравствуйте, Undying, Вы писали:
U>Критерием истины является практика. Соответственно невозможно создать теорию не пользуясь эмпирическим методом. Умозрительно можно максимум сформулировать гипотезу.
Вообще-то теория временных рядов и цос разраработаны вдоль и поперек и в твоем случае, только безграмотность предыдущих привела к плачевному результату. А, есть еще один момент, не безграмотность, а требование руководства: "прилепи чего побыстрее (вчера) и пофиг на клиента".
Здравствуйте, Ikemefula, Вы писали:
I>Профайлер скажет тебе "сортировка слишком долгая операция". Если у тебя есть познания в алгоритмах, то ты скорее всего усомнишься в этом, если нет — тупо согласишься с профайлером.
Насколько я понял проблема была не в том, что сортировка всегда работала медленно, а в том что она работала медленно иногда.
I>Гуглением найдешь что сортировка это в лучшем случае O(n*log(n)), а про конкретный случай тебе гугл ничего не скажет.
Даже статья в Википедии говорит, что нормальное время O(n*log(n)), а худшее — О(n2). Уже этого в купе с замерами времени достаточно, чтобы определиться в каком направлении копать.
I>Если буквально, то я не знаю наизусть ни одного алгоритма сортировки и никогда не знал.
А сколько названий методов сортировки с их нормальными и худшими случаями ты знал до того как сам столкнулся с проблемой порожденной сортировкой?
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, gandjustas, Вы писали:
I>>>Пудозреваю, если другие конторы начнут задавать такие же задачи, как у тебя, решений будет валом в интернете. G>>Не-а. На русском про SharePoint пишут человек пять. Один уехал, одн работает со мной, а еще двое были на собеседовании. I>А почему надо только русский язык учитывать ?
А по ангийски такой запрос даже не напишут.
I>>>Правильно,и с реверсом тоже самое — нет решения, не подходит. G>>Не правильно, разворот списка не имеет отношения к реальной программе. I>Объясняю еще раз — кроме ссыдлк-указателей и тд, в каждой программе всегда и везде будет уникальный код, который пишется практически каждый день.
И что?
I>Нужны способности писать этот уникальный код, а не пытаться всё свести к типовой задаче.
Нужны способности писать этот уникальный код, а не пытаться всё свести к развороту списка.
G>>Почему например людей не фильтруют по незнанию преобразования числа в строку? G>>Или по итеративному вычислению квадратного корня? I>Фильтруют, не переживай.
Не видел.
I>>>Это типовые задачи. Все что ты прверишь — умение решать типовые задачи. Это умение ни о чем. G>>Я же писал, что 80% задач на работе — типовые. Это у всех. Более того, люди сами стремятся так работать — сводить все к типовым задачам. Ибо так мозг меньше напрягается. I>Оставшиеся 20% задач как раз и создают бОльшую часть проблем. Если кандидат начнет сводить их к типовым, получится хаос.
Нет. Как раз проблемы возникают в совершенно типовом коде. То есть плотность ошибок примерно одинаковая, но типового кода тупо больше.
I>>>Потому, что это типовая задача. С такими нет никаких проблем разобраться, если есть некоторая база в программировании. G>>Практика показывает что есть. Раньше брали asp.net программистов, в надежде что разберутся. Увы, разбираться сложно, а писать на asp.net легко. Только value added получался отрицательным. I>Естественно, ты же и асп-нетчиков брал точно так же — по типовым задачам. А если человек умеет решать нестандартные задачи, то как правило ему разбираться будет легко.
Нет, как раз их брали по-другому.
I>>>Проблема с другими задачами, которые только похожи на типовые или вовсе уникальные. G>>Они обычно сводятся к типовым. Потому что так дешевле. I>Ты похоже начал сам с собой спорить: "человек может подойти к нетиповой задаче с типовым решением в голове, а потом долго биться. И даже не поймет где он неправ"
Да. Просто человек заранее не понял что задача нетиповая. Если бы заранее понял, то её проще к типовой свести, чем решать как есть.
I>>>Правильно ! Потому надо и проверять такое умение, как раз на уникальных задачах, которые только похожи на типовые. G>>Нет, это бессмысленно. Какой смысл решать уникальную задачу? Угадал — не угадал? Что это может сказать о человеке? I>Смысл в том, что типовые задачи создают меньше всего проблем в силу того, что они отработаны чуть не до автоматизма. А остальные задачи создают бОльшую часть проблем.
Нет, типовые задачи создают столько же проблем. Плотность ошибок одинаковая. Так как типовых задач больше, то и ошибок в них больше.
G>>Суть программирования — комбинирование решения из готовых кусочков. Для комбинирования надо понимать как кусочки устроены и собственно навык комбинирования. G>>Этот навык очень далек от разворота списка. Хотя и разворот списка можно через комбинирование написать, но это уже сложнее. I>Одним комбинированием новую задачу не решить.
С чего ты взял? Как раз большая часть любых задач решается именно комбинированием существующих кусочков.
Реализация алгоритма, который не разлагается на другие, требуется крайне редко.
I>>>Всего не перечислишь. Например нужна гарантия, что сортировка никогда не отработает за n^2. Как ты понимаешь, быстрая сортировка здесь неприменима, а вот фокус, в стандартных алгоритмах нужна именно она. G>>Я спросил сколько. 1-2-3-10-100 раз? I>В среднем раз в год, и кое какие даже сам писал.
Зачем?
G>>Выделенное кстати зачем? Value какой? I>Требования, естественно, на время отклика. Правда это было в проекте которым я не занимался.
Время отклика кого\чего?
I>>>Есть оптимизации основаные на свойствах конкретных данных и их количестве. Используя эти оптимизации можно получить время линейное или близкое к этому. G>>А зачем это все? Вставляй в сбалансированное дерево при получении данных, далее за o(n) доставай упорядоченное.
I> Операцией добавления N Элементов в дерево можно значит пренебречь ? у тебя уже на ровном месте O(n log(n)) + дополнительная память O(n) + отдавать данные вместо O(1) почему то O(n)
Конечно можно, потому что она делается бесконечно малое время, по сравнению с получением данных их внужного источника.
Например при загрузке программы построить дерево. При небольших изменениях в него даже вставлять можно за log(n).
I>Обожаю таких специалистов — никогда не задают вопросов ни про требования, ни про ограничения, ни про особенности модуля, но всегда знают лучше всех.
Ну ты как-бы сам шифруешься вечно. Уже было с десяток тем, где ты всегда уходил в "особенности", про которые никому не сказал.
Видимо не очень особенные эти особенности.
I>Предложи решение которое даст O(n) без дополнительной памяти.
Зачем?
G>>Вообще не пойму в чем поинт оптимизации алгоритмов, если большую часть времени процессор спит, а когда работает — клеит строки. I>Ты это, прекращай по себе мерить, а то ты выглядишь как вчерашний джуниор. Я про склеивание строк и спящий процессор нигде не говорил.
Это я говорю. В серверной разработке абсолютно нет смысла заниматься оптимизацией алгоритмов, которые работают быстрее нескольких часов.
I>Чисто как пример — рендеринг используется очень часто во всяких тулах которые чтото визуализируют. Тут всегда вагон оптимизаций. САПР, моделирование, визуализация, сложные вычисления — перечислять можно до понедельника.
Чувак, 90% компаний этим не занимается.
Здравствуйте, Vzhyk, Вы писали:
V>Вообще-то теория временных рядов и цос разраработаны вдоль и поперек и в твоем случае, только безграмотность предыдущих привела к плачевному результату.
Не сотвори себе кумира (с) Библия
Поклонение алгоритмам это новое слово в идолопоклончестве.
V>А, есть еще один момент, не безграмотность, а требование руководства: "прилепи чего побыстрее (вчера) и пофиг на клиента".
Телепат из тебя хреновый. Но зато можешь теперь порадоваться за наших клиентов, я уже забыл когда последний раз по контролю топлива вопросы возникали.