Pull to refresh
6
0
Ярослав Васильев @CodeDriller

User

Send message
Даже когда «из кожи вон», нужно делать как правильно. Этот алгоритм неминуемо приводит к искажению представления о пропорциях объектов, может привести к обезображиванию лиц, порче произведений искусства, и даже искажению важной топографической информации, диаграмм и графиков. Место этому алгоритму — среди курьезов информатики. Я уверен, через какое-то время все будут со смехом вспоминать эту идею, а здесь, на Хабре, будет статья: "… Представьте, в середине 2010-х нашлись 2 идиота, предложившие уменьшать изображение таким вот образом"…
image
Это безусловно очень изобретательный способ изменения размера изображений, и все же я не хотел бы видеть изображения, искаженные таким образом. Может быть я старомоден, но я все-таки хочу видеть изображение именно так, как его задумал фотограф или художник, и никак иначе.
Стрелять из пушки по воробьям так же глупо, как изобретать велосипед заново. (с)
Я хочу сказать, что сначала ставится и анализируется задача, а только потом под эту задачу выбираются наиболее подходящие для нее инструменты. Это важнейший инженерный принцип! А у Вас так получается, что Вы сначала подобрали себе набор наиболее модных и навороченных инструментов, а потом спрашиваете, что будем с этим делать. Хорошие системы не делаются таким образом.
Поддерживаю! Earth: Final Conflict (1997 – 2002)
Про «мудрость» я впервые слышу, но в психологии уже давно существует понятие «эмоциональный интеллект». Погуглите. Для его измерения также существуют тесты. Многие полагают, что эмоциональный интеллект более точно предсказывает жизненные успехи, чем интеллект академический, измеряемый IQ.
Поясните, пожалуйста, это место: «Цикл перебирает сокеты и, как только находит подходящий, возвращает клиента, а остальных просто игнорирует. И они висят по десять секунд, пока «карты благоприятно не лягут».» Что за проблема была в ходе перебора? В ходе перебора сокеты не закрывались должным образом?
Идея кажется правильной и полезной. Но почему-то большинство карт, которые я встречаю в качестве примеров, не несут никакой практической ценности, а иногда похожи больше на информационную свалку, чем на структурированную информацию — от таких карт в голове скорее возникнет путаница, чем понимание. В общем, пользоваться надо с умом, иначе вреда будет больше.
Я никогда не доверял TrueCrypt — эта программа в свое время очень подозрительно появилась из ниоткуда практически готовой и теперь так же подозрительно растворилась. Я уверен, что она создана с участием спецслужб. А то, что закладка не найдена — это еще не значит, что ее там нет.
Если бы я создавал свой подобный формат, я бы вообще обошелся без знака равенства. Первый пробел — вот вам и разделитель. И всё.
Редко комментирую посты, но просто не могу сдержаться. Я иногда чувствую себя инопланетянином.

Чтобы не спутать порядок параметров при вызове функции вы готовы написать три новых класса? Правда?!… Серьезно?!!! Вы собираетесь это делать для каждой функции с однотипными параметрами?

Вы понимаете, зачем нужен язык программирования — он нужен для того, чтобы точно и УДОБНО выражать мысли программиста. Если для такой простой задачи (которая в С++, кстати говоря, обычно решается изменением названия функции на createDate_DayMonthYear), если вместо этого вам нужно создавать три новых класса — это НЕ УДОБНО. Это ОЧЕНЬ ПЛОХО. Это грубое нарушение принципа KISS. В том числе потому, что вероятность ошибки при написании 3 новых классов и модификации исходной функции createDate в разы выше, чем вероятность спутать порядок параметров.
А, понятно. С SSIS я действительно не знаком, поэтому не представляю, как это там делается. При возможности ознакомлюсь. Спасибо. Вариант принимается.
В данном случае без курсора вы не обойдетесь. (Впрочем, если вы готовы что-то предложить, я с удовольствием ознакомлюсь.) И для выборки годичных записей не имеет значения статический курсор или динамический. Динамический чуть лучше, потому что он «видит» удаленных во время исполнения скрипта пользователей, а статический «не видит». Хотя это преимущество минимально.

Информации насчет курсоров достаточно (лучший, на мой взгляд, источник — книга «SQL Server Query Performance Tuning Distilled»), просто Microsoft не раскрывает детали внутренней реализации курсоров, видимо, считая эту информацию секретной. Может быть, я соберусь еще написать отдельную статью о курсорах и блокировках.

Насчет ознакомления с SQL Agent — благодарю, мэтр, это бесценный совет. :-)
Эта информация сохраняется автоматически. Я писал выше в статье, отправленные письма можно посмотреть таким SQL-запросом:
SELECT * FROM msdb.dbo.sysmail_sentitems
Я повторюсь. Вы сами выбираете поля для сортировки. Если вы собираетесь во время выполнения скрипта переприсваивать id пользователей, то вы можете либо сортировать по другому полю, либо вызвать блокировку искусственно. Всё в вашей власти. Хотя переприсваивать идентифицирующие поля я бы вам не рекомендовал — это очень плохая практика.
И пересортировка в режиме реального времени будет, на каждый FETCH. Какой вы ORDER для курсора укажете, такая и будет сортировка.
Изменения полей отражаются в динамическом курсоре тоже в режиме реального времени.

А если вам по какой-то причине будет нужна блокировка, вы можете вызвать ее искусственно.
Ну нет, рассылка была предназначена для тех, кто целый год не был на сайте, а не тех, кто зарегистрировался 0,87 секунды назад. :-)
Прошу прощения, не понял…?
Извините, пожалуйста, не в ту ветвь запостил ответ.
1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity