Культура программирования

Здесь обсуждаются проблемы мироустройства.
ujos
Posts: 220
Joined: Fri 27 Apr, 2012 15:10
Has thanked: 10 times

Культура программирования

Post by ujos »

Всем привет.

Пишу этот пост, потому что наболело.

Ребята, те кто занимается разработкой FAR. Я понимаю что вы это делаете бесплатно, в личное свободное время. Но нельзя так писать код. Одно добавляете, другое вылазит и так постоянно. Один баг фиксите - два появляется.

Займитесь наконец-то обучением. Переведите количество в качество. Научитесь писать автоматизированные тесты. Это ведь проект не на одну неделю.
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: Культура программирования

Post by t-rex »

ujos
За 100,000$ напишу.
User avatar
HaRT
Moderator
Posts: 10866
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Культура программирования

Post by HaRT »

ujos
Конструктивная позиция звучала бы “как сынтегрировать в сборку написанные мною автоматизированные тесты?”.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Docent1
Posts: 561
Joined: Thu 31 Mar, 2005 23:13
Been thanked: 1 time

Re: Культура программирования

Post by Docent1 »

А вы не пробовали найти финансирование? Есть много путей. Только тогда это не будет OpenSource...
---------
Могу помочь...
Docent1
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: Культура программирования

Post by t-rex »

Нас не интересует финансирование, разработка введётся в кайф. Хватит лечить нас.
ujos
Posts: 220
Joined: Fri 27 Apr, 2012 15:10
Has thanked: 10 times

Re: Культура программирования

Post by ujos »

HaRT wrote:ujos
Конструктивная позиция звучала бы “как сынтегрировать в сборку написанные мною автоматизированные тесты?”.
Уже думал о том, чтобы паралельно писать тесты. Получится мартышкин труд:

1. Я не успею за новым функционалом. При таком подходе, тесты потеряют свою актуальность.
2. Но самое главное, для написания юнит тестов часто приходится делать рефакторинг кода. Наприрмер, отделать гуй то бизнес модели, убирать работу с socket подсистемой, уменьшать зависимости кода. А это серьёзные переделки, которые надо делать всем вместе.
ujos
Posts: 220
Joined: Fri 27 Apr, 2012 15:10
Has thanked: 10 times

Re: Культура программирования

Post by ujos »

t-rex wrote:Нас не интересует финансирование, разработка введётся в кайф. Хватит лечить нас.
Уважаю ваше стремение делать доброе дело безвозмездно, но честно, лучше не надо. Лучше никак, чем так. Возмитесь за написание бесползеной софтины, которую никто не пользует и делайте с ней что вам угодно. В случае с FAR, тут нужно чувствовать огромную ответственность за то, что ты делаешь.
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: Культура программирования

Post by t-rex »

ujos
Ты долбоёб? Фар 1.8 офф. нестабильная версия в которой всё меняется из за дня на день и вообще ни кто не гарантирует что что то будет работать а у тебя претензии нах.
Умеешь лучше, иди пиши а то пиздеть мы все умеем.
ujos
Posts: 220
Joined: Fri 27 Apr, 2012 15:10
Has thanked: 10 times

Re: Культура программирования

Post by ujos »

t-rex wrote:ujos
Ты долбоёб? Фар 1.8 офф. нестабильная версия в которой всё меняется из за дня на день и вообще ни кто не гарантирует что что то будет работать а у тебя претензии нах.
Умеешь лучше, иди пиши а то пиздеть мы все умеем.
Та не надо так огорчаться. Я не хотел тебя ничем обидеть. Я прекрасно понимаю, что в release отдавать 1.8 еще рано. Но это не означает, что regression и базовые функциональные тесты не нужно писать.

Я могу помочь в разработке, если идея с автоматическим тестирвоанием будет одобрена всеми учасниками проекта.

Да, и перестать ругаться. Мне не приятно.
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: Культура программирования

Post by t-rex »

ujos
Однако надо не тока чтоб тебе приятно было.
User avatar
zg
zero-gravity
Posts: 6035
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Re: Культура программирования

Post by zg »

я вот не понимаю, кто-то кого-то заставляет пользоваться фаром?
User avatar
WARP ItSelf
Самый умный
Posts: 1011
Joined: Tue 15 Mar, 2005 23:19
Contact:

Re: Культура программирования

Post by WARP ItSelf »

ujos

Большое спасибо, что обратились. С удовольствием послушал ваше мнение. Нам безусловно (случайно выражаю общее мнение), очень обидно, что мы такие тупые. Даже несмотря на то, что за последние лет 5 ситуация с разработкой Far радикально поменялась (чего вы, безусловно, не заметили). Мы с большим удовольствием прослушаем ваше мнение, о принципах разработки, unit-тестах и других штуках, о которых мы не знаем. Лично я с нетерпением жду лекции про паттерны проектирования (zg вот в курсе). Специально для того, чтобы продвинутые люди не мешали нам заниматься чепухой мы открыли исходный код Far 1.8 под максимально прозрачной лицензией. Мы будем несказанно рады, когда вы и команда таких же профессионалов своего дела возьмет его и буквально за месяц-два создаст новый простой и безопасный продукт (бесплатно, на голом энтузиазме). Однако до сих пор пока всех ваших способностей хватило только на то, чтобы учить нас как нам жить дальше и как строить сферических коней в вакууме. Я лично, буду очень рад, если вы действительно не поленитесь и напишете те самые unit-тесты несмотря на детские отмазы про "я не успеваю за вашими изменениями". В противном случае - читайте комментарии Алекса. Потому что вы ничего не знаете ни о том "как мы дошли до жизни такой", ни о том, чему еще нам надо учиться, ни о личных обстоятельствах, помогающих и мешающих нам в разработке. Однако имеете об этом свое "мнение". Несмотря на которое, мы, в отличии от вас, что-то делаем. И, что удивительно, собираемся продолжать. Можете лучше - сделайте лучше.
Никто не знал, а я...
ujos
Posts: 220
Joined: Fri 27 Apr, 2012 15:10
Has thanked: 10 times

Re: Культура программирования

Post by ujos »

WARP ItSelf wrote:ujos
Большое спасибо, что обратились. С удовольствием послушал ваше мнение. Нам безусловно (случайно выражаю общее мнение), очень обидно, что мы такие тупые. Даже несмотря на то, что за последние лет 5 ситуация с разработкой Far радикально поменялась (чего вы, безусловно, не заметили). Мы с большим удовольствием прослушаем ваше мнение, о принципах разработки, unit-тестах и других штуках, о которых мы не знаем. Лично я с нетерпением жду лекции про паттерны проектирования (zg вот в курсе). Специально для того, чтобы продвинутые люди не мешали нам заниматься чепухой мы открыли исходный код Far 1.8 под максимально прозрачной лицензией.
Мы будем несказанно рады, когда вы и команда таких же профессионалов своего дела возьмет его и буквально за месяц-два создаст новый простой и безопасный продукт (бесплатно, на голом энтузиазме). Однако до сих пор пока всех ваших способностей хватило только на то, чтобы учить нас как нам жить дальше и как строить сферических коней в вакууме.
К чему этот сарказм?

Я не сказал ничего сверхестественного. Написание unit тестов - это не сферические кони в вакуме. Это практика, которая уже работает. Это инвестиции во время, которые окупаются сторицей.
Я лично, буду очень рад, если вы действительно не поленитесь и напишете те самые unit-тесты несмотря на детские отмазы про "я не успеваю за вашими изменениями". В противном случае - читайте комментарии Алекса. Потому что вы ничего не знаете ни о том "как мы дошли до жизни такой", ни о том, чему еще нам надо учиться, ни о личных обстоятельствах, помогающих и мешающих нам в разработке. Однако имеете об этом свое "мнение". Несмотря на которое, мы, в отличии от вас, что-то делаем. И, что удивительно, собираемся продолжать. Можете лучше - сделайте лучше.
К сожалению, не знаю вас лично, чтобы тратить время на поднятие вам настроения. И не могу знать "как вы дошли до жизни такой", потому что это ваше личное дело. Я знаю только то, что вы делаете очень полезную работу и только по этому рад оказать посильную помощь. Смотри атач.

Для начала я решил написать тест на самый простой класс UnicodeString. Я сделал небольшой рефакторинг, чтоб собрать и слинковать проект
1. выделил методы работы с памятью в farmem.cpp
2. перенес __digit_cnt_0 в local.cpp
3. Многие хидер файлы не компилятся. Не хватает дополнительных инклудов.
4. добавил UnicodeString::GetData() const. GetBuffer - меняет состояние объекта а кастить к wchar_t const* не всегда удобно.

Комментарии:
1. Мне кажется вызов метода Inflate для создания отдельной копии объекта не очевидный.
2. Если класс используется в паралельных потоках, то инкрементирование счетчика нужно выполнять с помощью Interlocked функций. Я заводил вроде на это баг в мантисе.
3. Я сделал тесты на реакцию на недопустимые параметры. Сейчас это валит приложение. Нужно или добавить проверки в UnicodeString и возвращать false (Pos, RPos) или добавить assert'ы.

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

ЗЫ. По паттернам есть куча литературы.
Attachments
unicode_far.7z
Проект юнит тестов. Бросить в ту же папку, что и файл проекта фара.
(28.46 KiB) Downloaded 229 times
ujos
Posts: 220
Joined: Fri 27 Apr, 2012 15:10
Has thanked: 10 times

Re: Культура программирования

Post by ujos »

zg wrote:я вот не понимаю, кто-то кого-то заставляет пользоваться фаром?
А вы только для себя пишете?
User avatar
zg
zero-gravity
Posts: 6035
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

Re: Культура программирования

Post by zg »

ujos wrote:А вы только для себя пишете?
для вас это новость? даже рошал писал для себя.
Post Reply

Return to “О тщете всего сущего”