to post messages and comments.

← All posts tagged Python

TWIMC: с нового месяца решил начать новую жизнь.
В общем, непредсказуемость стартаперской жизни надоела до жути, да заодно и расхлябанность Python-а задрала, хочется чего-то более mature. А следовательно: ищу работу в офисе, с белой зарплатой, чтобы от моей станции метро (нижняя часть серой ветки) добираться не больше часа, и чтобы писать на Visual C++ и Microsoft SQL Server. Вебдванольные стартапы не рассматриваются (даже на условиях кофаундерства/опционов), под хипстерские макоси и школолошные линупсы писать не предлагать.

Первоначальная эйфория от возможностей SQLAlchemy сменяется досадой. То оно INSERT FROM SELECT не умеет, то в него нельзя нормально большой комплект VALUES передать...
... И вообще, хочу ORM, который умел бы из описанных в нём SQL-выражений делать prepared statements и реюзать их потом!

Ну фиг ли в Питоне @total_ordering обеспечивает отношение порядка и добавляет пять операторов сравнения при наличии хотя бы одного из них, но не обеспечивает антисимметричность и не добавляет __ne__ при наличии __eq__?

Поигрался с re2 и его биндингом к Python-у.
r1 = re.compile(длинный_регексп_с_несколькими_альтернативами)
r2 = re2.compile(длинный_регексп_с_несколькими_альтернативами)
%timeit r1.match('invoices/qCMSrSo5aBcQ6rqS3a6J1VQvRx9PRAec/BVGqqoiA92ws2BqaAZNh0YagTpRUUvyZ')
100000 loops, best of 3: 6.57 us per loop
%timeit r2.match('invoices/qCMSrSo5aBcQ6rqS3a6J1VQvRx9PRAec/BVGqqoiA92ws2BqaAZNh0YagTpRUUvyZ')1000 loops, best of 3: 272 us per loop

Нихрена не понял, а где же хвалёная производительность и выигрыш от FSA. Ну да ладно. От добра добра не ищут.

Посмотрел «Голодные игры» (кстати, ничо так, боялся, что будет хуже).
На фоне этого мой текущий рабочий вопрос, как обозвать переменную, обозначающую момент, все родившиеся после которого сущности выживут, а до которого — умрут, ощущается особенно аутентично.

Таки натравил python-epydoc на наш проект (после того, как разобрался, как в нём отключить любые попытки импорта нашего кода, весьма динамичного и извращённого, и оставить только парсинг синтаксиса).
Что ж, активное использование python-dbc (если кто не знает, epydoc-совместимого) для формирования docstring-ов принесло свои плоды. В виде 48 мегабайт отборной, нажористой документации кода в формате HTML.

Как я уже писал в #1897672, 19-20 июня в Нижнем Новгороде будет «социальный стартап-хакатон» с возможностью выставить свою идею полезного обществу сервиса и, если повезёт, реализовать её.
Как выяснилось, я там буду не только в жюри, но и членом одного из проектов (фактически, вне конкурса, ибо команда — без шуток, фактически dream team — уже собрана).
Я надеюсь, что количество голосов для нас в конкурсе не принципиально, ибо мы в любом случае самоорганизуемся, придём, напишем и зарелизим ☺ — но вот интерес людей к нашему проекту нас наверняка мотивирует.
В общем, «с гордостью представляем»: проект «Госдума2», nn.te-st.ru

Самое неожиданное открытие этого месяца — что в стандартной библиотеке Python, прямо в модуле регекспов, есть (недокументированный) сканер грамматик: code.activestate.com
Прям руки чешутся.