Проект на Smalltalk (Pharo)

52 views
Skip to first unread message

Сергей Ларин

unread,
Sep 12, 2017, 11:31:59 AM9/12/17
to su...@googlegroups.com
Добрый день.

Я никогда не разрабатывал на Smalltalk. (Да и не разработчик уже очень давно.)
Но, в 2011 году столкнулся с продуктом, сделанным на Smalltalk.
Средством разработки было Pharo.
По этой причине подписался на рассылку этой группы.
И с тех пор наблюдаю за жизнью в ней.
Особенной активности нет...
Но периодически вижу попытки по поднятию интереса к теме.
Есть подобное предложение и у меня.

В 2011 году в одной из организаций досталось мне реализация ПО платежного терминала на Smalltalk (Pharo). ПО на тот момент уже эксплуатировалось в нескольких банках.
Однако, в дальнейшем, в организации программное обеспечение было переписано на C#.
Разработка на Smalltalk (Pharo) была закрыта.

Сейчас, уже в другой организации, у меня аналогичный проект. Это снова платежный терминал. И команда разрабатывает его на C#. Это основное, на данный момент направление.
Но есть возможность для запуска некоторого "экспериментального проекта".
Проекта не по разработке нового ПО, а по адаптации существующего.
Бюджета большого на это нет, но некоторые средства имеются.

Для чего это нужно? Для того, чтобы создать конкуренцию между командами и иметь план "Б" на случай не успеха одной из них. (Правда не понятно пока, что делать в случае не успеха обеих команд.)

Программное обеспечение терминала на Smalltalk никак не регистрировалось и не лицензировалось. И 6 лет как уже нигде не эксплуатируется (, ну, насколько мне известно).
Главный разработчик этого ПО - Денис Кудряшов.
И, если автор не будет против, то можно попробовать стартовать работы на имеющемся фундаменте.
Исходные коды есть. Серверную часть, работающую по протоколу ПО терминала поднять не сложно.

У Дениса, полагаю, сейчас уже не найдется времени на эту задачу.
Но, возможно, найдутся желающие взяться за это дело.
Работа предполагает и оплату, а не только энтузиазм.

Тут у Pharo есть некоторая фора.
На C# работы еще идут, а тут есть готовый вариант реализации ПО терминала, по функционалу соответствующий ожиданиям на 90%.
Это могло бы стать примером удачного проекта на Smalltalk.

--

Сергей Ларин

skype: serg.n.larin

Vladimir Musulainen

unread,
Sep 12, 2017, 2:09:20 PM9/12/17
to su...@googlegroups.com
Здравствуйте, Сергей

Идея хорошая.
Единственный момент - как мне кажется, конкуренции не получится.
В команду C# вы можете нанять  специалистов высокого уровня (сеньоров) поскольку коммьюнити большое, и людей пишущих на нем более, чем достаточно.
Прием не просто пишущих, а даже , возможно, найти людей с нужным бэкграундом и техническим  стеком.
Программистов на Smalltalk мало, в России еще меньше, специалистов уровне сеньор десятки и уж с нужным бэкграундом единицы.

Итого будет соревнование между двумя командами, где в одной команде сеньоры и с бэкграундом, а с другой стороны middl-level и без бэкграунда.
Кто выиграет - понятно.

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




--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.

Denis Kudriashov

unread,
Sep 12, 2017, 2:53:14 PM9/12/17
to sugr
Здравствуйте, Сергей.

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

Судя по письму, Pharo - это ваша инициатива. Неужели зацепила вас технология? Насколько я помню, вы первый раз познакомились со смолтолком через этот проект?
А еще интересно, откуда могут быть сомнения в C#? Представляю лица сишарперов, когда им рассказали о Pharo :)   

12 сентября 2017 г., 17:31 пользователь Сергей Ларин <serg.n...@gmail.com> написал:

--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+unsubscribe@googlegroups.com.

Victor Metelitsa

unread,
Sep 13, 2017, 3:23:27 PM9/13/17
to Russian Smalltalk User Group
Последний раз я видел некую статейку (сохранённая копия - http://habrahabr.net/habr/332650/ ) - негативный фидбак был такой, что с хабра статья исчезла.
Ну, а я смотрю на этих жаб, питонов и т.п. и плююсь - господи, ну что за фигня, ну что за убожество, почему нельзя на нормальном языке программировать. Угораздило, да.
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.

Артём Прокопов

unread,
Sep 14, 2017, 6:36:19 AM9/14/17
to Russian Smalltalk User Group
Дело в том, что Smalltalk, концептуально отличен от всех перечисленных вами языков, и поэтому ему очень трудно, как в прочем не менее замечательным по концепции языкам Lisp, SML и прочим.

среда, 13 сентября 2017 г., 22:23:27 UTC+3 пользователь Victor Metelitsa написал:

Victor Metelitsa

unread,
Sep 14, 2017, 8:12:51 AM9/14/17
to Russian Smalltalk User Group
По мне, JavaScript, Python и даже Kotlin (улучшенная Java) по концепции от Smalltalk'а не очень далеко. Какое-никакое ОО-программирование, особенно если не связывать кложуры-лямбды с функциональным (в java зачем-то связали и в честь ФП изуродовали своё "новшество"). Но они непоследовательны и переусложнены, и с каждым годом становятся сложнее, добавляется всё больше новых "фич". Народ считает, что это и есть "развитие" и "прогресс". А не-С/Pascal(Algol)-синтаксис - это непреодолимая преграда для многих, не иначе как. Но и я в своё время (конец 90х) намучался. Причём потому, что после привычки к (вынужденно) переусложнённым вещам оказалось, что простые вещи было трудно понять. Ну как же штаны можно надевать не через голову с одновременной молитвой, запершись в шкафу? Невероятно.

Артём Прокопов

unread,
Sep 14, 2017, 8:31:36 AM9/14/17
to Russian Smalltalk User Group
Да Kotlin это самое прекрасное и целостное, что сделали в мире JVM,и еще Clojure. Однако кроме последнего в меньшей степени все языки ждет одно и тоже, это усложнение фичями, языки сейчас стремятся к фичастости в ущерб всему, но так требуют лозунги этого времени "стильно, круто, молодежно". Сколько фреймворков нарожали, ужос и в них нужно еще разобраться, а еще если учитывать, что внутри особенно Java фреймворков происходит "магия" то  вызывает даже удивление, что как-то работает.

четверг, 14 сентября 2017 г., 15:12:51 UTC+3 пользователь Victor Metelitsa написал:

Сергей Ларин

unread,
Sep 15, 2017, 5:26:00 AM9/15/17
to su...@googlegroups.com
Добрый день.

Владимир, команда на C# только готовиться начать работы.
А на Pharo есть уже работающее приложение, которое эксплуатировалось в нескольких банках несколько лет.
В которое необходимо внести, примерно, следующие изменения:
добавить прокрутку на три панели в интерфейсе (сейчас область на экране растягивается, а должна иметь фиксированный размер),
устранить некоторые недостатки размещения элементов интерфейса,
реализовать печать двух экземпляров чека.
И это, пожалуй, все.
Готовых разработчиков, которые все знают и умеют, и готовы взяться за проект немедленно не существует.
Нет их в C# и в Java.
Так что тут команда на C#, скорее, в уязвимом положении.

Денис, увы, к технологиям я равнодушен...
Не только к Pharo, но и к иным. Средства разработки для меня все на одно лицо. Не отличу и Foxpro от Python. Это только инструменты.
Интерес у меня другой. Если бы удалось запустить проект в эксплуатацию не за полгода, а за месяц - это было бы интересно.
Вот какая возможность привлекает.



14 сентября 2017 г., 15:31 пользователь Артём Прокопов <art...@gmail.com> написал:
Да Kotlin это самое прекрасное и целостное, что сделали в мире JVM,и еще Clojure. Однако кроме последнего в меньшей степени все языки ждет одно и тоже, это усложнение фичями, языки сейчас стремятся к фичастости в ущерб всему, но так требуют лозунги этого времени "стильно, круто, молодежно". Сколько фреймворков нарожали, ужос и в них нужно еще разобраться, а еще если учитывать, что внутри особенно Java фреймворков происходит "магия" то  вызывает даже удивление, что как-то работает.

четверг, 14 сентября 2017 г., 15:12:51 UTC+3 пользователь Victor Metelitsa написал:
По мне, JavaScript, Python и даже Kotlin (улучшенная Java) по концепции от Smalltalk'а не очень далеко. Какое-никакое ОО-программирование, особенно если не связывать кложуры-лямбды с функциональным (в java зачем-то связали и в честь ФП изуродовали своё "новшество"). Но они непоследовательны и переусложнены, и с каждым годом становятся сложнее, добавляется всё больше новых "фич". Народ считает, что это и есть "развитие" и "прогресс". А не-С/Pascal(Algol)-синтаксис - это непреодолимая преграда для многих, не иначе как. Но и я в своё время (конец 90х) намучался. Причём потому, что после привычки к (вынужденно) переусложнённым вещам оказалось, что простые вещи было трудно понять. Ну как же штаны можно надевать не через голову с одновременной молитвой, запершись в шкафу? Невероятно.

--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+unsubscribe@googlegroups.com.

Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.

Denis Kudriashov

unread,
Sep 15, 2017, 6:07:16 AM9/15/17
to sugr
Интересно, что у вас за терминалы. Прокрутка крайне не удобная штука на "уличных" устройствах: 
Во первых, никто не хочет водить пальцем по грязному стеклу. Во вторых, сами используемые дисплеи не слишком хорошо для этого приспособлены: просто неудобно скролить пальцем.
Поэтому обычно делают страницы, либо кнопки вперед, назад.   

15 сентября 2017 г., 11:25 пользователь Сергей Ларин <serg.n...@gmail.com> написал:

Сергей Ларин

unread,
Sep 15, 2017, 7:46:17 AM9/15/17
to su...@googlegroups.com
Предполагаемый список платежей, кроме прочего, - это платежи в пользу государства: штрафы, гос.пошлины и подобное. Также оплата услуг ЖКХ.
В этих платежах большое число полей, по 14, 17, 21, 25.
А также очень длинные тексты чеков, названия гос.органов полные очень длинные.
И очень длинные списки значений возможных значений полей, например поля ОКТМО из платежного поручения.
В результате в имеющемся сейчас интерфейсе это не помещается на экране.

Термин "прокрутка" я использовал, вероятно, не удачно.
Это было сделано для краткости.
Да, скорее подойдет "постраничный вывод".
То есть когда в списке 48 значений, на экране отображается страница с 16 значениями, а также кнопки "следующая", "предыдущая страница" и/или "номер страницы".

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


15 сентября 2017 г., 13:06 пользователь Denis Kudriashov <dioni...@gmail.com> написал:
Reply all
Reply to author
Forward
0 new messages