Re[13]: Ууу, как все запущено
От: Vzhyk  
Дата: 11.08.11 08:55
Оценка:
10.08.2011 23:21, DorfDepp пишет:

>

> И светлое будущее ждет именно таких разносторонних людей, а не
> "экспертов по С++" или "гуру Оракла", удел которых — ходить по
> собеседованиям и мучительно выбивать себе прибавку к зарплате.
Ты один из этих "гуру Оракла", что так уверенно по "светлое будущее" и
большинство этих гуру твои друзья?
Posted via RSDN NNTP Server 2.1 beta
Re[9]: Ууу, как все запущено
От: Vzhyk  
Дата: 11.08.11 08:56
Оценка:
11.08.2011 0:13, ishare пишет:

> V>Когда он становиться самоцелью — это признак глупости.

> Да, и что ? Предлагаешь отказаться от разделения труда потому что может
> найтись какой-нибудь идиот, который сделает это самоцелью ?
Предлагаю этих идиотов бить сильно.
Posted via RSDN NNTP Server 2.1 beta
Re[19]: Люди, а кому и зачем вообще нужны кодеры?
От: Vzhyk  
Дата: 11.08.11 08:59
Оценка:
11.08.2011 7:12, sacha пишет:

>

> А вот тестеры точно нафиг не нужны !
Еще один с непониманием необходимых и достаточных условий. Господи, чему
теперь в ВУЗах учат?
Posted via RSDN NNTP Server 2.1 beta
Re[4]: Мне нужны
От: Handie  
Дата: 11.08.11 09:57
Оценка:
U>А вредители это те кто использует стандартные библиотеки без оберток над ними. Т.к. сами по себе стандартные библиотеки в плане удобства использования редкостное убожество.

Примеры в студию.
1) STL
2) Qt
3) Boost

Все три либы в разной степени "стандартны" и используются крайне широко. Объясните мне к чему здесь обертки?
Объясните мне трудоемкость создания обертки вокруг Qt или Boost, а также цель оной.

Чувака который бы написал класс MyString поверх QString я бы на работу не взял (про std::string еще поверю что надо добавить туда перекодировку в разные кодировки и функционал типа str.printf("Hello %s", name)).
Re[5]: Мне нужны
От: Undying Россия  
Дата: 11.08.11 10:41
Оценка:
Здравствуйте, Vzhyk, Вы писали:

>> А вредители это те кто использует стандартные библиотеки без оберток над

>> ними. Т.к. сами по себе стандартные библиотеки в плане удобства
>> использования редкостное убожество.
V>Вообще-то подобные утверждения требуют доказательства.

Существует три универсальных способа упрощения использования библиотек:

1) Все стандартные библиотеки, которые я видел, использовали построение логики на сеттерах. Проблема сеттерного подхода в том, что при увеличении количества взаимодействий между сущностями сложность кода очень быстро возрастает. Эту проблему решает геттерный подход. Соответственно скрывая с помощью оберток сеттерную суть библиотеки и используя геттерный подход получаем резкое упрощение использования, тем большее, чем более сложные задачи решаем.

2) Стандартные библиотеки обязаны быть универсальными, т.е. для решения конкретной задачи являются избыточными как по функционалу, так и по вариативности. Скрытие избыточного функционала и вариативности позволяет значительно упростить использование.

3) Нередко стандартные библиотеки написаны (как минимум кусками) либо индусами, либо ООП-ударенными любителями лишних сущностей. Скрытие таких мест под обертками с более простым и прозрачным и интерфейсом опять же значительно упрощает использование.

Неумение разработчиками применять первый способ меня не удивляет, т.к. хотя в принципе он простой, но в книжках о нем не пишут, а самому додуматься до него сложно. Но если вы не умеете применять для упрощения использования второй и третий подход, то вы и есть те самые кодеры. Т.к. основным отличием инженера от кодера (т.е. рабочего) является способность делать сложное простым, в частности сложное использование библиотеки — простым.
Re: Люди, а кому и зачем вообще нужны кодеры?
От: Mystic Украина http://mystic2000.newmail.ru
Дата: 11.08.11 11:05
Оценка:
Здравствуйте, DorfDepp, Вы писали:

DD>Ну не является же код самоцелью. Никогда не был и никогда не будет.

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

С другой стороны, программный продукт без кода не создашь. Значит надо писать код, значит нужны кодеры
Re[6]: Мне нужны
От: Handie  
Дата: 11.08.11 11:34
Оценка: :)
U>1) Все стандартные библиотеки, которые я видел, использовали построение логики на сеттерах. Проблема сеттерного подхода в том, что при увеличении количества взаимодействий между сущностями сложность кода очень быстро возрастает. Эту проблему решает геттерный подход. Соответственно скрывая с помощью оберток сеттерную суть библиотеки и используя геттерный подход получаем резкое упрощение использования, тем большее, чем более сложные задачи решаем.

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

U>2) Стандартные библиотеки обязаны быть универсальными, т.е. для решения конкретной задачи являются избыточными как по функционалу, так и по вариативности. Скрытие избыточного функционала и вариативности позволяет значительно упростить использование.


Избыточный функционал при правильном проектировании не мешает. Я просто не использую "избыточные" методы классов Qt или STL

U>3) Нередко стандартные библиотеки написаны (как минимум кусками) либо индусами, либо ООП-ударенными любителями лишних сущностей. Скрытие таких мест под обертками с более простым и прозрачным и интерфейсом опять же значительно упрощает использование.


А в Вашей конторе работают я так понимаю гении способные "исправить" недостатки Qt или Boost путем "правильных" оберток?

U>Неумение разработчиками применять первый способ меня не удивляет, т.к. хотя в принципе он простой, но в книжках о нем не пишут, а самому додуматься до него сложно. Но если вы не умеете применять для упрощения использования второй и третий подход, то вы и есть те самые кодеры. Т.к. основным отличием инженера от кодера (т.е. рабочего) является способность делать сложное простым, в частности сложное использование библиотеки — простым.


Я чего-то не понимаю. По мне так обертки вокруг Qt, boost и STL — это более чем сложный путь. Прямое использование этих библиотек — простое решение.

Обертки иногда создаются для упрощения интерфейса. Например либа freetype2 весьма хороша по дизайну, но ее прямое использование заставит знать слишком много о TrueType, шрифтах, полиграфии, глифах. Часто обертки делают вокруг C либ для предоставления С++ интерфейса.

Делать обертки для либ — болезнь детского возраста. Чаще всего надо не обертывать либы, а использовать их напрямую.
Re[14]: Люди, а кому и зачем вообще нужны кодеры?
От: Ulitka США http://lazarenko.me
Дата: 11.08.11 12:29
Оценка:
Здравствуйте, Vzhyk, Вы писали:

V>10.08.2011 19:01, Ulitka пишет:


>> V>Да ты ошибаешься. Выше по тексту у тебя дикая мешанина мыслей, все

>> V>свалил в одну кучу.
>>
>> Дак все и есть одна большая куча — все связано. Нельзя взять и вырвать
>> звено из цепи, себя из общества, etc. Я уж и не знаю, как тут
>> аргументировать.
V>Не обижайся. Но тебе следует почитать внимательно философскую
V>литературу, хотя бы ту, что давали в институтском курсе философии. Потом
V>про "науку", начни отсюда http://ru.wikipedia.org/wiki/Наука. Затем
V>классиков психологии. Очень многое станет на свои места.

>> Да и расизмом попахивает, нет? Я на этом же форуме часто вижу, как

>> многие ненавидят черных. И это не смотря на то, что в России их
>> практически нет, а если и есть, то уж точно безобидные ребята из Африки,
>> но никак не ребята из американских гетто. Ну как это называется?

V>Бррр.

V>Первое и самое главное успокойся. Смотри на мир спокойнее. В нем
V>случается много и разного. И все люди различны (посему обобщения без
V>должных на то оснований вредны).

Кроме размазаных ссылок о науке и школьных курсов филофии аргументы иссякли и оппонента нужно немедленно успокоить? Браво
Re[15]: Люди, а кому и зачем вообще нужны кодеры?
От: Vzhyk  
Дата: 11.08.11 12:47
Оценка:
11.08.2011 15:29, Ulitka пишет:

>

> Кроме размазаных ссылок о науке и школьных курсов филофии аргументы
> иссякли и оппонента нужно немедленно успокоить? Браво
Просто в учителя тебе я не нанимался. И, имхо, каждый должен сам учиться.
Posted via RSDN NNTP Server 2.1 beta
Re[5]: Мне нужны
От: MxMsk Португалия  
Дата: 11.08.11 12:47
Оценка:
Здравствуйте, Handie, Вы писали:

H>Доить клиента несколько лет — это что угодно, только не своя либа для клепания формочек под винду. Это удовлетворение потребностей клиента, откаты, политика, личные отношения, что угодно... только не некие мифические системные библиотеки которые сильно облегчают девелопмент.

H>Все конторы, которые переключались с потребностей клиента на собственный доморощенный инструментарий долго не жили.
Вы скорее всего о разных уровнях спорите. Речь не идет написать аналог Qt или Windows Forms. Речь о том, чтобы приблизить их к типовым решениям, которые продает компания.
Re: Люди, а кому и зачем вообще нужны кодеры?
От: elmal  
Дата: 11.08.11 13:09
Оценка: +2
Здравствуйте, DorfDepp, Вы писали:

DD>Откуда появилась в России эта идея, что задачей программиста является написание кода?

DD>Почему конторы требуют образцы кода и тестовые задания?
Хм... Чет не наблюдаю я такого. Образцы кода интересует максимум 10% контор. Я вот лично говорю на собеседованиях — хотите покажу свой код, и вы сравните со своим, чтоб оценили уровень реальный, а не опирались на словеса? Все говорят, что им это нахрен не надо. Тестовые задания обычно даются на листочке, назвать то, что реально в таких условиях написать за короткое время кодом ну никак не поворачивается.

DD>При этом в других странах кодом не озабочены, и при этом создают отличные вещи, и специалисты у них более развитые и высокоуровневые.

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

DD>Откуда в России такое помешательство на коде?

В России помешательство на менеджменте я наблюдаю. Считается, что тот, кто пишет код — лузер. Правильный пацан должен таски назначать и контролировать их выполнение, стремиться развести заказчика на как можно большую команду, а также отчетики строить о том, как команда типа сработала.
Re[11]: Ууу, как все запущено
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 11.08.11 19:51
Оценка:
Здравствуйте, BulatZiganshin, Вы писали:

BZ>расписание

BZ>10:00 разгон туч
BZ>11:00 совершение подвига
BZ>12:00 обед
BZ>(с) тот самый мюнхгаузен

10:30 — объявить войну англии
Маньяк Робокряк колесит по городу
Re[13]: Ууу, как все запущено
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 11.08.11 20:00
Оценка: :)
Здравствуйте, avpavlov, Вы писали:

A>Собственно и прославился он своим балабольством, а не разгоном туч или какой-либо полезной деятельностью


"Поймите же, что Мюнхгаузен славен не тем, что летал или не летал, а тем, что не врет." (с) Григорий Горин
Маньяк Робокряк колесит по городу
Re[7]: Мне нужны
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 11.08.11 20:14
Оценка:
Здравствуйте, Handie, Вы писали:

H>Обертки иногда создаются для упрощения интерфейса. Например либа freetype2 весьма хороша по дизайну, но ее прямое использование заставит знать слишком много о TrueType, шрифтах, полиграфии, глифах. Часто обертки делают вокруг C либ для предоставления С++ интерфейса.


H>Делать обертки для либ — болезнь детского возраста. Чаще всего надо не обертывать либы, а использовать их напрямую.

А как это сочетается с вышесказаным?
Что если в либе обнаруживается фатальный недостаток? А другая либа имеет абсолютно другой интерфейс? Без адаптеров будет плохо.
Маньяк Робокряк колесит по городу
Re[7]: Мне нужны
От: Undying Россия  
Дата: 12.08.11 09:57
Оценка:
Здравствуйте, Handie, Вы писали:

U>>1) Все стандартные библиотеки, которые я видел, использовали построение логики на сеттерах. Проблема сеттерного подхода в том, что при увеличении количества взаимодействий между сущностями сложность кода очень быстро возрастает. Эту проблему решает геттерный подход. Соответственно скрывая с помощью оберток сеттерную суть библиотеки и используя геттерный подход получаем резкое упрощение использования, тем большее, чем более сложные задачи решаем.


H>Ничего не понял. поясните пожалуйста что такое библиотека с "геттерным" и "сеттерным" подходами, приведите примеры оных.


Простенькие примеры геттерного подхода:

http://www.rsdn.ru/forum/philosophy/4302973.1.aspx
Автор: Undying
Дата: 08.06.11

http://rsdn.static.corbina.ru/forum/design/3612218.1.aspx
http://www.rsdn.ru/forum/philosophy/4303525.1.aspx
Автор: Undying
Дата: 08.06.11


H>А в Вашей конторе работают я так понимаю гении способные "исправить" недостатки Qt или Boost путем "правильных" оберток?


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

H>Обертки иногда создаются для упрощения интерфейса. Например либа freetype2 весьма хороша по дизайну, но ее прямое использование заставит знать слишком много о TrueType, шрифтах, полиграфии, глифах.


Это второй способ упрощения использования из тех что я перечислил.

H>Делать обертки для либ — болезнь детского возраста. Чаще всего надо не обертывать либы, а использовать их напрямую.


Неумение упрощать (в частности использование стандартных библиотек) говорит о разработчике как о кодере. Т.к. главным отличием инженера от кодера (т.е. рабочего от программирования) является умение делать сложное простым.
Re[8]: Мне нужны
От: Handie  
Дата: 12.08.11 12:20
Оценка: 3 (1) :)
U>Простенькие примеры геттерного подхода:
U>http://www.rsdn.ru/forum/philosophy/4302973.1.aspx
Автор: Undying
Дата: 08.06.11

U>http://rsdn.static.corbina.ru/forum/design/3612218.1.aspx
U>http://www.rsdn.ru/forum/philosophy/4303525.1.aspx
Автор: Undying
Дата: 08.06.11


Я так понимаю, что "геттерный подход" это Ваше собственное изобретение, в мировой литературе до сих пор не применявшееся и единственным источником мудрости "геттерного подхода" является RSDN. В ссылках наверху муть полная, если я правильно понял, то речь идет о аналоге Key-Value Observing в Cocoa или о Qt Properties с notify. Но что-то мне говорит что за новым словоблудием выдаются древние вещи и премию Тьюринга автору "геттерного подхода" не дадут по причине полной неизвестности оного за пределами RSDN.

U>Ты серьезно считаешь, что стандартные библиотеки пишут гении? Вынужден тебя огорчить, их пишут обычные люди. Соответственно для упрощения использования библиотек гением быть не нужно, для начала достаточно уметь видеть дублирование кода и иногда думать о том как от него можно избавиться.


API Qt или Cocoa делали весьма талантливые люди, в основном названия классов и методов выверены до "интуитивной" понятности. In-house либы как правило делают наспех и плохо продуманными, причем люди далекие от уровня архитекторов "взрослых" либ.

U>Неумение упрощать (в частности использование стандартных библиотек) говорит о разработчике как о кодере. Т.к. главным отличием инженера от кодера (т.е. рабочего от программирования) является умение делать сложное простым.


Введение дополнительного абстрактного слоя упрощением не является. Это чаще усложнение системы. несмотря на то, что интерфейс обертки может быть проще интерфейса оригинальной либы, сложность всего решения только растет.

Большинство in-house либ сделаны куда хуже "открытых" библиотек. Большинство из них только ухудшает использование оригинальной либы. Сколько я повидал "company common lib" как правило являющимися кучей дерьма скомпоновованного десятком людей без единого видения библиотеки.

Знание Qt или Boost повышает мою рыночную стоимость, знание Pupkin Supper Puper Template Library совершенно бесполезно и только забивает голову дерьмом.
Re[2]: Люди, а кому и зачем вообще нужны кодеры?
От: Доктор ТуамОсес Гондурас Мой новый проект "ВЕПРЬ-1"
Дата: 12.08.11 12:46
Оценка:
Здравствуйте, aik, Вы писали:
aik>Если серьезно, код то, конечно, не самоцель, но писать то его надо, а умеет мало кто.
===========================================
Скажем так: код — это не самоцель, код — это конечный продукт/результат процесса программирования.
Мой новый проект "ВЕПРЬ-1"
Re: Люди, а кому и зачем вообще нужны кодеры?
От: Basil2 Россия https://starostin.msk.ru
Дата: 12.08.11 13:23
Оценка: +1
Здравствуйте, DorfDepp, Вы писали:

DD>Откуда появилась в России эта идея, что задачей программиста является написание кода?

DD>Почему конторы требуют образцы кода и тестовые задания?

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

Я, например, обхожу стороной фирмы, не требующие при приеме писать код. Бо, скорее всего, все балаболы именно там и окажутся.
Проект Ребенок8020 — пошаговый гайд как сделать, вырастить и воспитать ребенка.
Re[9]: Мне нужны
От: Undying Россия  
Дата: 12.08.11 14:07
Оценка:
Здравствуйте, Handie, Вы писали:

H>Я так понимаю, что "геттерный подход" это Ваше собственное изобретение, в мировой литературе до сих пор не применявшееся и единственным источником мудрости "геттерного подхода" является RSDN. В ссылках наверху муть полная, если я правильно понял, то речь идет о аналоге Key-Value Observing в Cocoa или о Qt Properties с notify. Но что-то мне говорит что за новым словоблудием выдаются древние вещи и премию Тьюринга автору "геттерного подхода" не дадут по причине полной неизвестности оного за пределами RSDN.


Какая разница? Ценность идеи определяется ее способностью упростить решение практических задач. Геттерный подход позволяет ускорить решение реальных задач в разы и уменьшить количество багов на порядок. Это важно. Кто, когда и зачем этот подход изобрел впервые мне совершенно по барабану.

U>>Ты серьезно считаешь, что стандартные библиотеки пишут гении? Вынужден тебя огорчить, их пишут обычные люди. Соответственно для упрощения использования библиотек гением быть не нужно, для начала достаточно уметь видеть дублирование кода и иногда думать о том как от него можно избавиться.


H>API Qt или Cocoa делали весьма талантливые люди, в основном названия классов и методов выверены до "интуитивной" понятности.


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

H>In-house либы как правило делают наспех и плохо продуманными, причем люди далекие от уровня архитекторов "взрослых" либ.


Значит, ты не работал с программистами серьезного уровня. Тебе не повезло.

H>Введение дополнительного абстрактного слоя упрощением не является. Это чаще усложнение системы. несмотря на то, что интерфейс обертки может быть проще интерфейса оригинальной либы, сложность всего решения только растет.


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

Абстрактные слои это инструмент, используешь по делу сложность уменьшается, используешь бестолку сложность возрастает. К библиотекам инструменты можно применять точно также как и к бизнес-коду, ничем они принципиально не отличаются.

H>Большинство in-house либ сделаны куда хуже "открытых" библиотек. Большинство из них только ухудшает использование оригинальной либы. Сколько я повидал "company common lib" как правило являющимися кучей дерьма скомпоновованного десятком людей без единого видения библиотеки.


Это как раз следствие отсутствия разделения труда. Вместо того, чтобы для написания библиотек выделить часть времени программистов с лучшими архитектурными и технологическими навыками, библиотеки пишут все кому не лень. И пишут не потому что заняться не чем, а из-за того что хочешь не хочешь, а дублирующийся код выносить куда-то надо. Но естественно в результате не получается ни единой концепции (т.к. пишет толпа людей), ни качества (т.к. пишут люди с совершенно разной квалификации), ни возможности повторного использования (т.к. каждый пишет под свою конкретную задачу). Поэтому и нужен специальный человек, который и будет этим заниматься, т.е. технолог. Если есть толковый архитектор и технолог, то сразу выясняется, что от толкового кодера пользы зачастую много больше, чем от иных типа творцов.
Re[2]: Люди, а кому и зачем вообще нужны кодеры?
От: ishare  
Дата: 12.08.11 14:09
Оценка: 12 (1)
Здравствуйте, Basil2, Вы писали:

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


DD>>Откуда появилась в России эта идея, что задачей программиста является написание кода?

DD>>Почему конторы требуют образцы кода и тестовые задания?

B>Потому что людей, способных на собеседовании чесать языком, гораздо больше, чем умеющих писать качественный код.


B>Я, например, обхожу стороной фирмы, не требующие при приеме писать код. Бо, скорее всего, все балаболы именно там и окажутся.

+500

Сколько раз уже нарывались на такое — на собеседовании кандидат ну просто весь из себя. Берем. А он такое г. начинает писать, что волосы дыбом становятся. А все почему ? Он не кодер ! Он разработчик и (в душе) архитектор, а код писать это тривиально, этим пусть быдлокодеры занимаются.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.