Я совсем недавно обратил внимание на SmallTalk, да и квалифицированным программистом не являюсь (самостоятельно освоил несколько языков и успешно их применяю время от времени для собственных нужд), но заметил одну интересную вещь, которой хотел поделиться.
Часто вижу в обсуждениях, как люди страдают о низкой популярности St, сетуют на отсутствие учебного материала, статей и живого сообщества. Позвольте, но ведь это все зависит от вас самих!
У нас всех на глазах за пару лет раскрутили с нуля и популяризировали новый язык программирования - golang. Да, за ним стоял "великий и ужасный" Google, но обратите внимание, как именно шло распространение информации в самом крупном русскоязычном IT-сообществе - на хабре. Сперва появились небольшие, но практические заметки об окружении, компиляторе и базовом синтаксисе - то есть самые основы, причем без отрыва от практики. В этих заметках легко разобраться новичку.
Недавно я начал искать инструмент для реализации своих задумок. Требуется гибкая, легкая в управлении и достаточно мощная система графического интерфейса. По всем параметрам подходят St-системы. Однако, проблемы возникли с учебными материалами на русском языке (с английским не очень - хватает на небольшие куски текста, но книгу осилить никак). При этом нет даже простых How-to по работе с системой Squeak или Pharo. Приходится ковырять систему самому методом тыка, изучая единственную более-менее новую книгу "Кирютенко Ю.А., Савельев В.А. - Объектно-ориентированное программирование. Язык Smalltalk" 2006 года, написанную совсем для другой системы. Перевод "Pharo by Example", который собрали в этой ветке, не гуглится, а ссылки за давностью лет уже все битые. В итоге получаем практически полное отсутствие нормального учебного материала по современным свободным системам.
А что же на сайте самого большого русскоязычного IT-сообщества? Да практически ничего. Всего с десяток статей общего характера - то юбилей Алана Кея, то ностальгическое брюзжание, то рассказ, что St используется на производстве (но без каких-либо подробностей), то как систему пишут... А того, что может быть полезно при первом знакомстве, попросту нет.
Вернемся к вопросу о популяризации языка. С подобными трудностями столкнется любой, кто заинтересуется St и после некоторых мытарств, естественно, плюнет на все это. Так почему бы не начать исправлять эту ситуацию? Все присутствующие здесь уже осилили эти системы. Вы обладаете знаниями, которые нужно донести в виде простых наглядных How-to, примеров создания полезных утилит, приемов создания новых виджетов, описания классов систем / подсистем и т.д.
А учитывая количество лет, в течение которых Squeack+Pharo существуют и Multihread FFI так и не имеют, можно только удивляться этому community.
Диалекты Cincom, Instantiations, GemStone (забыл, как сейчас та фирма называется) совсем другое дело, но в России я их шансов не вижу. Тут, извините, деньги надо платить. Или пиратить/нарушать лицензию. Когда уже есть хорошо знакомые, бесплатные инструменты...
--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+unsubscribe@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
4. Какой диалект можно было бы пропагандировать в РФ? Одно из требований - он должен быть бесплатным для коммерческого применения. Выбор ровно один = Pharo, но учитывая отсутствие Multihread FFI, выбор равен 0.
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+unsubscribe@googlegroups.com.
Отсутствие многонитевости не мешает обращаться, оно всего лишь мешает выполнять относительно длительные запросы к СУБД параллельно. Причём для какого-нибудь малонагруженного вебформума с его элементарными запросами, которые длятся сотые доли секунды, тоже может быть без разницы. А у меня это не так. И ещё, насколько я помню, TCP/IP у Pharo неблокирующий, так что если написать драйвер СУБД, не пользуясь FFI, целиком на Smalltalk, то могло бы быть более-менее. Но написание подобного драйвера для СУБД вроде Oracle и DB2 наверняка будет непростой работой. Придётся заниматься декомпиляцией и реверсным инжинирингом Java-драйверов и т.д. Нормальный, относительно простой, документированный способ - это через DLL, то бишь FFI.
--
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
Для того, чтобы на нём быстро прототипировать, нужно поучаствовать в реальных проектах не меньше года. Я вот не смогу никому объяснить зачем выкидывать это время впустую, тратя его на тупиковую ветвь. А если, того хуже такой опыт появится, будете потом плеваться и программировать на всех остальных жабаскриптах и питонах с кислой физиономией.
19 июня 2017 г., 20:27 пользователь Alexander Kogan <abk...@gmail.com> написал:
Почему - это вообще вопрос сложный. Стандартный ответ - быстрая прототипизация и абстракция.Pharo и Gemstone дружат врозь. На сегодняшний день нет реального фреймворка для репликации обьектов между Pharo и Gemstone. Естественно это связно с деньгами. Для VA и VW такая вещь есть - GBS. Поэтому обычный ответ: делаем в Pharo, скажем seaside app, а потом переселяем в Gemstone в production. Идеально, просто сразу делаем в Gemstone. Хотя в настоящий момент есть движуха, на ESUG расскажут. У Gemstone нет своего собсвенного IDE, поэтому Pharo это один из инструментов, поглядеть что же там внутри происходит. Наиболее свежий вариант в активной разработке это https://github.com/feenkcom/gt4gemstoneальтернативно https://github.com/jgfoster/Jade
2017-06-19 10:37 GMT-07:00 Dmitry Zamotkin <zamo...@gmail.com>:
Главная засада с ключевым вопросом: Why Smalltalk? 17 лет назад я на него мог ответить. Сейчас нет.
19 июня 2017 г., 19:18 пользователь Nikolay Kleptsov <kleptsov...@gmail.com> написал:
Если длительные запросы не удается индексировать тогда без многонитевости никак. У различных баз данных разные протоколы, тоже не могут выработать общий протокол.Отдельный драйвер для GemStone в Pharo есть?
19 июня 2017 г. 23:25 пользователь "Victor Metelitsa" <vvm...@gmail.com> написал:
Отсутствие многонитевости не мешает обращаться, оно всего лишь мешает выполнять относительно длительные запросы к СУБД параллельно. Причём для какого-нибудь малонагруженного вебформума с его элементарными запросами, которые длятся сотые доли секунды, тоже может быть без разницы. А у меня это не так. И ещё, насколько я помню, TCP/IP у Pharo неблокирующий, так что если написать драйвер СУБД, не пользуясь FFI, целиком на Smalltalk, то могло бы быть более-менее. Но написание подобного драйвера для СУБД вроде Oracle и DB2 наверняка будет непростой работой. Придётся заниматься декомпиляцией и реверсным инжинирингом Java-драйверов и т.д. Нормальный, относительно простой, документированный способ - это через DLL, то бишь FFI.--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
--Дмитрий Замоткин
--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
--Дмитрий Замоткин
1. Приличный IT-шник обязан знать английский по определению, а кто не знает, должен изучать. Таким образом, проблем с учебными материалами нет.
2. Успех или неуспех в русскоязычном сообществе вторичен. Первичен успех в международном, англоязычном, сообществе. Если в англоязычном успеха нет, откуда взяться в русскоязычном?
1. Приличный IT-шник обязан знать английский по определению, а кто не знает, должен изучать. Таким образом, проблем с учебными материалами нет.
Неправы Вы батенька. В настоящее время достаточно доступных переводчиков, и других способов общения и чтения документации. Я например считаю себя неплохим IT-шником, отличным АСУ-шником - разработчиком, и каким - никаким программистом (по крайней мере пару серьёзных проектов имею за плечами и в текущий момент разрабатываю то же немаленький проект). Английский знаю на очень начальном уровне, но между тем прекрасно общаюсь с несколькими сотнями зарубежных пользователей. Даже перевёл свою программу на английский язык (FLProg). Яндекс переводчик рулит. Ну а если им не нравится мой перевод - пускай они изучают русский. Надо иметь гордость за свою страну и за свой язык.2. Успех или неуспех в русскоязычном сообществе вторичен. Первичен успех в международном, англоязычном, сообществе. Если в англоязычном успеха нет, откуда взяться в русскоязычном?
Ну а это уже зависит от того лижеш ты пиндосовскую задницу или нет (извините за грубость, но такое уничижительное мнение нашего сообщества меня бесит). Так же прекрасно можно добиться успеха и в нашем сообществе. Опять таки по собственному опыту - сначала мой проект стрельнул в России (поскольку изначально создавался для нашей страны и только в русском варианте), а потом уже ко мне обратились иностранцы с просьбой сделать английскую версию. Причём обратились сами, и готовы даже платить за мой корявый перевод. Так что если ориентироваться на свою страну, и не смотреть с надеждой в глазах на запад, то успеха можно добиться и здесь. А если мечтать как бы сдрыснуть за бугор, тогда да, надо себе имя там делать. А как же страна в которой ты родился. Или посрать на неё?
воскресенье, 18 июня 2017 г., 19:56:23 UTC+5 пользователь Victor Metelitsa написал:1. Приличный IT-шник обязан знать английский по определению, а кто не знает, должен изучать. Таким образом, проблем с учебными материалами нет.
2. Успех или неуспех в русскоязычном сообществе вторичен. Первичен успех в международном, англоязычном, сообществе. Если в англоязычном успеха нет, откуда взяться в русскоязычном?
3. В чём смысл и важность успеха ST? В наличии соответствующих рабочих мест.
4. Какой диалект можно было бы пропагандировать в РФ? Одно из требований - он должен быть бесплатным для коммерческого применения. Выбор ровно один = Pharo, но учитывая отсутствие Multihread FFI, выбор равен 0.
--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+unsubscribe@googlegroups.com.
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
--Дмитрий Замоткин
--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу Russian Smalltalk User Group.
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+unsubscribe@googlegroups.com.
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Во-первых -- кому нужно? Какие есть доводы в пользу этого мнения? Или
это только мнение? Но тогда вся остальная аргументация рассыпается.
Именно поэтому я считаю, что переводы документации на локальные языки
это одно из наиболее бестолковых вложений людских сил на свете.
Проблему эти переводы не решают, потому что устаревают за считанные
дни. А вот создают уйму, потому что любой перевод содержит ошибки.
Никогда не понимал вот этой позиции. Во-первых -- при чём тут вообще
страна? Речь идёт о языке, на котором говорит ВЕСЬ МИР, а не только
ужасные американцы. На английском говорят, например, китайцы, когда
хотят поговорить с не-китайцами. Всё научное сообщество говорит на
английском, весь IT мир на нём говорит.
А во-вторых, я родился с карими глазами, должен ли я гордиться этим?
Я вообще не представляю программиста без знания английского языка (ну кроме 1С, хаха).
И сильно буду удивлен, если вам когда приходилось совместно над кодом.
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
--Дмитрий Замоткин
--
--
http://groups.google.ru/group/sugr
---
Вы получили это сообщение, поскольку подписаны на группу "Russian Smalltalk User Group".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+unsubscribe@googlegroups.com.Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес sugr+uns...@googlegroups.com.
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
--Дмитрий Замоткин
У нас всё импортное - и компьютеры, и средства разработки, и СУБД, и ОС.