[#]
Легкость питона
Peter(harbor:club.syscall.ru) — All
2017-04-10 17:47:00
Ради образования начал читать книжку по питону. Как большинство книг, она начинается с убеждений о легкости языка.
Я уже не 1й раз пытаюсь подружиться с питоном, и знаю, что меня обманывают. :) По моему, самые простые языки: луа, си, ассемблер. От сложного к простому. А питон мной воспринимается просто как сборник рецептов. Не могу почувствовать язык. Не могу понять его логику. :) Но я надеюсь :)
[#]
Re: Легкость питона
spline(harbor:club.syscall.ru) — Peter
2017-04-10 18:41:40
Действительно не самый простой язык. Почему-то принято синтаксический сахар и обширность стандартной библиотеки называть простотой языка, но на деле всё совсем не так =)
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — spline
2017-04-10 20:51:06
После обновления из гита:
Traceback (most recent call last):
File "caesium.py", line 1621, in <module>
load_colors()
File "caesium.py", line 233, in load_colors
curses.init_pair(11, colors.index(param[1]), colors.index(param[2]))
_curses.error: init_pair() returned ERR
До этого долго безуспешно пытался завести его. :) Фетчер срабатывает, пишет новые сообщения, но ... все по 0 остается в списке.
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — Рома
2017-04-10 21:48:21
Ну, надо двигать новое тоже.
Вот ii/idec есть, но ты же пишешь gk11. ;) Так и тут, совместим приятное с полезным, spline пофиксит или расскажет, где я не прав.
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Peter
2017-04-10 22:06:46
gk11 это не новое, это исправленное под другие реалии. там изменена сама концепция, если ii это было для накопления эх по годам-месяцам, где каждая эха - целостная, которая потом уезжает в архив и ты можешь запросить эху за нужный год - то gk11 она больше для болтания, а не накопления архива информации за 140 лет, и заточена уже под это. потому что *непригодилось*, нет пока таких серьёзных нужд :) но саму ii никто не отменяет, её можно тоже запросто скачать
если какая-то вещь устраивает - то зачем её менять? я вот с ужасом жду, когда выйдет 9-й дебиан, потому что не хочу менять свой 8-й, и ещё бы много лет на нём прожил :)
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — Рома
2017-04-10 22:13:45
Да про разницу gk11 и ii я прочитал и визуально ощутил.
[#]
Re: Легкость питона
spline(gk,11) — Рома
2017-04-11 03:08:02
> самый нормальный цезий - это старый, до сих пор им пользуюсь. работает, как часы
И конечно у тебя есть весомые аргументы. Так зачем же ты их от нас скрываешь?
> http://git.gk11.ru/gk11/ii-clients-gk11/src/master/old-caesium
Слишком старый. Проще его вообще не использовать, чем любиться с этой древней версией.
[#]
Re: Легкость питона
spline(gk,11) — Peter
2017-04-11 03:08:02
> После обновления из гита:
> До этого долго безуспешно пытался завести его. :) Фетчер срабатывает, пишет новые сообщения, но ... все по 0 остается в списке.
Что-то ты сломал, похоже. Попробуй на чистую склонированную накатить базу и конфиг.
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — spline
2017-04-11 03:14:43
> И конечно у тебя есть весомые аргументы. Так зачем же ты их от нас скрываешь?
он простой, понятный и просто работает
новые версии, сколько не пробовал - неудобно и всё тут
[#]
Re: Легкость питона
spline(gk,11) — Рома
2017-04-11 03:57:12
>> И конечно у тебя есть весомые аргументы. Так зачем же ты их от нас скрываешь?
> он простой, понятный и просто работает
Ты сейчас разницу между гк и ii описал =)
> новые версии, сколько не пробовал - неудобно и всё тут
С учётом того, что в используемой тобой части ничего не поменялось, утверждение весомое.x
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — spline
2017-04-11 04:10:23
я только когда увидел, что фетчер вызывается через shell, а не через import - уже за голову схватился :) у меня может запросто не быть python-а в PATH, или он может называться своим именем
[#]
Re: Легкость питона
spline(gk,11) — Рома
2017-04-11 05:03:50
Рома> я только когда увидел, что фетчер вызывается через shell, а не через import - уже за голову схватился :) у меня может запросто не быть python-а в PATH, или он может называться своим именем
А поправить конфиг тебе религия мешает?
Импортируй ка нативный бинарь, например. Отчего бы не использовать такой фетчер в перспективе?
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — spline
2017-04-11 05:41:36
> Импортируй ка нативный бинарь, например. Отчего бы не использовать такой фетчер в перспективе?
просто я никогда такого способа не видел. раз и то и то через python3, лучше как модуль импортировать
[#]
Re: Легкость питона
spline(gk,11) — Рома
2017-04-11 06:02:44
>> Импортируй ка нативный бинарь, например. Отчего бы не использовать такой фетчер в перспективе?
> просто я никогда такого способа не видел. раз и то и то через python3, лучше как модуль импортировать
Сделано на вырост. Тем более нынче мне очень понравился golang и я некоторый софт хочу на нём реализовать. Например, уже есть нода без веб-интерфейса
http://spline-online.tk:4242/
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — spline
2017-04-11 06:16:21
Сначала надо с падениеи разобраться. Я делал git status, стирал все лишнее. Не помогло. Вечером еще попробую.
Ребята, не ссорьтесь. :)
Я как сторонний человек утверждаю, что все из разработанных технологий меня заинтересовали (уже давно), а сейчас хочу пощупать в реальности.
[#]
Re: Легкость питона
gl00my(harbor:gk11.ru) — Рома
2017-04-11 06:25:10
Откровенно говоря, у вас обоих есть косяки, например: :)
У сплайна в ноде если не написать завершающий /. Вчера минут 15 на этом застрял. :)
У тебя: фетчер не оформлен никак (ни параметров, ни конфига). Да и run.py не особенно в демона оформлен. :)
Разобраться стороннему человеку не так просто. Хотя вроде бы все т просто.
Это не критика, но все же дооформить и выложить публично, как законченный "продукт" было бы неплохо.
[#]
Re: Легкость питона
Peter(gk,11) — gl00my
2017-04-11 06:57:11
gl00my> Это не критика, но все же дооформить и выложить публично, как законченный "продукт" было бы неплохо.
Проверка из цезия. :)
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — gl00my
2017-04-11 07:10:56
> У тебя: фетчер не оформлен никак (ни параметров, ни конфига).
его можно вообще в лоб пускать, и он будет по /discover всю ноду синхронизировать
не понимаю, зачем там нужен конфиг :)
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — Рома
2017-04-11 07:35:37
Можно. Но если я хочу забирать с нескольких разных нод. С разных нод, разные эхи -- вполне нормальная ституация. Нужно делать копипаст. Вообще, копипаст нельзя допускать. Такой пакет, где нужно менять код для конфигурации -- я не знаю, можно ли в дистр какой-то протолкнуть?
Впрочем, у всех свой балланс между простотой и функциональностью.
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Peter
2017-04-11 07:49:01
> Нужно делать копипаст.
это экономия на спичках. наличие проверок значительно усложнит наглядность кода - проще для каждой ноды делать свою копию, и всё. хотя я могу сделать версию, которая будет sys.argv слушать :)
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — Рома
2017-04-11 07:54:40
Я понял твою позицию. Но для меня, минусы значительны. Хотя я тоже сторонник простоты (возможно, не такой экстремальной) Например, после git pull мне придется менять несколько файлов. Самый критический минус я озвучил -- скрипт может вообще не быть доступен для записи ( если он в рамках дистрибутива оказался).
А так тебе решать, просто вопрос цели. Если цели нет -- распостранять технологию -- то можно ничего не делать. Мне не критично точно, но в таком виде не могу "рекомендовать" поставить ноду друзьям, если только сам не поставлю.
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Рома
2017-04-11 07:52:13
кстати, чёт я не вижу, чтобы в фетчере где-то LIMIT использовался. забыл, что ли, добавить его :) вспомнить бы ещё, как оно там работает
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — gl00my
2017-04-11 08:11:00
да, кстати, после того, как сольёшь всю эху - у сообщений будет новёхонький accepted и они зальют тебе всю главную - не страшно, но неаккуратно. в таком случае лучше тоже запустить тот трёхстрочник, который меняет accepted на date, но уже для эхи obsd
from bbdata.dbj import msg
for n in msg.select().where(msg.echoarea == 'obsd'):
n.accepted = n.date
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — Рома
2017-04-11 08:17:56
Понял. Я собирался кстати фечить не все (мне старые сообщения не особенно важны), или по какой то причине лучше все?
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Peter
2017-04-11 08:22:55
лучше все. чтобы была полная копия на случай... да случаи разные бывают :) там всего-то менее 700 сообщений
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — Рома
2017-04-11 08:25:48
Ок, заберу все. Добавить эху на главную -- это просто текстовый файл? В базе вроде нет ничего?
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Peter
2017-04-11 08:29:08
чтобы появилась кнопка сбоку - да, надо написать её в public.txt
на главной появляются все новые сообщения со всех эх, независимо от прописанности их в public.txt, и заходить в них тоже можно по адресу - единственое различие это наличие кнопки
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Peter
2017-04-11 09:40:19
Что то скрипт со сбросом даты не помог :)
попробуй в конце скрипта дописать строчку
msg.save()
[#]
Re: Легкость питона
gl00my(harbor:gk11.ru) — Peter
2017-04-11 10:01:27
В общем, все странно.
добавил n.save (а не msg.save)
В базе теперь времена совпали, но сортировка - все равно убитая.
Пока откатил базу назад
[#]
Re: Легкость питона
gl00my(harbor:gk11.ru) — gl00my
2017-04-11 10:03:42
А скрипт в виде простого цикла - который ты дал ранее - не меняет дату. Просто проходит все записи и все.
В принципе, логично. Надо как то сохранить изменения..
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — gl00my
2017-04-11 10:06:27
Нужен скрипт, который для всех сообщений сбрасывает дату на время создания. :)
Сможешь в виде sql запроса оформить?
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — gl00my
2017-04-11 10:15:28
> А скрипт в виде простого цикла - который ты дал ранее - не меняет дату.
у меня - меняет. вообще, по умолчанию, в peewee стоит автокоммит, если не задать обратное
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Peter
2017-04-11 10:17:04
для всех не надо, надо только для конкретной эхи, чтобы лишние сообщения не торчали на главной
хотя на самом деле, и на это пофиг
именно этот скрипт я тебе и дал - почему он не работает, я не знаю
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Peter
2017-04-11 10:37:29
у тебя, по-моему, на других эхах что-то сбилось :) а с openbsd всё нормально
только базы больше не убивай, а то сообщения пропадают раньше, чем я их захватить успею :)
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — Рома
2017-04-11 10:43:59
вообще, по идее, это надо в фетчер *право первого синка* ввести, чтобы оно accepted не проставляло
просто в ii вообще не было ленты (точнее, был один отдельно стоящий сервис, который собирал сообщения со всех и формировал из них ленту), поэтому там можно было синкаться, как угодно. а сейчас, наверное, лучше при особом ключе LIMIT снимать этот самый limit и при этом не добавлять accepted, а проставлять дату
потом этим займусь
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — Рома
2017-04-11 10:45:42
Ладно, что то похожее на правильные даты у нас получилось вроде. Хоть и не совсем. :) Но жить можно...
[#]
Re: Легкость питона
gl00my(harbor:gk11.ru) — Рома
2017-04-11 10:58:37
Может, лучше 0? ;) Или -1? А то как то 999999 как то совсем магически.
[#]
Re: Легкость питона
Рома(harbor:gk11.ru) — gl00my
2017-04-11 11:01:13
зато меняется в полстрочки. если 0 - то надо будет ещё делать перебитие лимита, либо менять в сервере
всё равно это делается один раз в жизни, и больше такой лимит не нужен. да и непринципиально это, разве что лента чуть засоряется, если много сообщений сразу. хотя, можно тогда и 0 перебивать на 999999 - ща приделаем
[#]
Re: Легкость питона
Peter(harbor:club.syscall.ru) — Рома
2017-04-11 11:09:57
Да я про это и говорю, безлимит -- это -1 или 0. Оба варианта красивее по моему чем 999999 :)