Где-то с 20-х числе марта рынок начал расти, и к началу этой недели мои убытки сократились в два раза, а по облигациям и ETF FXIT и вовсе в плюс ушёл. Сначала я думал, что это просто отскок, который скоро прекратится и пойдём на второе дно. Но он всё не прекращался и не прекращался, что вызывало у меня недоумение: откуда, за счет чего растём, если вокруг всё так плохо. Стал даже думать, что оказался неправ, когда считал, что провал рынка затянется до лета и не стал срывать один из вкладов для покупки облигаций.
Наконец, вчера не выдержал и купил немного акций ФСК ЕЭС. Итог немного предсказуем: проснувшись сегодня, обнаружил, что рынок ощутимо просел. В частности, те акции, которые я брал по 0.178, сегодня стоили 0.171. Одно радует: наученный прежним опытом, я не стал закупаться на все деньги, которые были выделены для этого, а потратил примерно треть.
Был в Сети 30 окт. 2024 г., 09:34
Кратко о себе: Web-разработчик. Пишу на PHP, Python, JavaScript. Знаю Ruby и Go, со студенческих времён более-менее помню C и asm. Специализируюсь на ускорении загрузки сайтов и разработке ботов для Telegram. Linuxоид (использую Debian+LXDE). Сторонник IndieWeb, slow lifer.
- Перово, Москва, Россия
- me@4xpro.ru
- x4_pro
- XXXXPro
Новости сайта в Telegram
t.me/4x_proЛог жизни
Лог моей жизни, где я фиксирую наиболее эмоционально значимые для меня события и текущее настроение. Является продолжением блога, который я вел в ЖЖ с ноября 2004 по апрель 2018 года.
День «сноса потоком жизни»
Вчерашний день был просто образцово-показательным в плане «сноса потоком жизни», когда я планировал делать одно, а в итоге занимался совсем другим. Встал рано в состоянии жесткого недосыпа. Голова соображала плохо, поэтому решил начать с небольшой тренировки на Клавогонках. И даже открыл сайт. Но параллельно в другой вкладке открыл главную страницу Яндекса, вспомнил о том, что мне для некоторых целей хорошо бы создать и идентифицировать Яндекс.Кошелек на втором аккаунте. Тут вдруг из памяти всплыло то, что когда-то я верифицировал ГосУслуги через один из банков, и возник вопрос, нельзя ли сделать такое для Яндекс.Денег. Как выяснилось, можно — через Сбербанк.Онлайн. Точнее, так: в Яндексе делается запрос на идентификацию, после чего тот присылает запрос на перевод 10 рублей через сбербанковскую систему быстрых переводов по номеру телефона (не путать с межбанковской Системой Быстрых Платежей), после чего через несколько дней Яндекс.Деньги ставит статус, что кошелек подтвержден.
Но год назад я такие переводы отключил через чат техподдержки. Попытался было написать, чтобы включили обратно, но получил ответ бота, а потом — сообщение, что чат с поддержкой недоступен, звоните персональному менеджеру. Голосовые звонки, как известно, не мой путь, поэтому решил сделать иначе — попробовал то же самое сделать с планшета. Результат тот же самый. Решил подождать какое-то время, предполагая, что это какой-то сбой на сайте банка. Но, поскольку уже взял планшет, внимание переключилось на него — стал отвечать на сообщения в Telegram там, играть в Farmassone и т.д.
Потом, видя, что ситуация не решается, хотел написать по Email. Но и тут вылезла неприятность: единственный EMail с ФИО, который я указываю как контактный в банках, у меня на сервере Института, и его пару недель назад заблокировали. Причем до сих пор не знаю, то ли это результат того, что сам Институт ушел в удаленный режим, то ли заблокировали конкретно меня по каким-то причинам. Но в любом случае, пока ситуация не нормализуется, этот ящик мне недоступен. В общем, ситуация «повисла». Забегая вперед, скажу, что сегодня она решилась: я таки нашёл, где в настройках Сбера можно включить быстрые переводы самостоятельно: оказалось, там для этого есть очень маленькая и неприметная ссылка, которую я сначала принял за ссылку на условия обслуживания или что-то подобное.
Около полуночи, когда стало ясно, что день прошел мимо, а из-за недосыпа и плохо соображающей головы даже не имеет пытаться браться за что-то серьёзное, решил так: сейчас поиграю часик в Ultima IX, потом лягу спать пораньше, в надежде, что завтра и проснусь рано, и голова будет работать. Но получилось как всегда: внезапно пришло в голову что-то поискать в Интернете, наткнулся на тему с интересными и смешными жизненными историями на форуме guns.ru, и не мог оторваться от них до 2:30. И только потом сыграл в Ultima IX и в 4:30 лег спать. А до Клавогонок так за весь день и не добрался…
Но год назад я такие переводы отключил через чат техподдержки. Попытался было написать, чтобы включили обратно, но получил ответ бота, а потом — сообщение, что чат с поддержкой недоступен, звоните персональному менеджеру. Голосовые звонки, как известно, не мой путь, поэтому решил сделать иначе — попробовал то же самое сделать с планшета. Результат тот же самый. Решил подождать какое-то время, предполагая, что это какой-то сбой на сайте банка. Но, поскольку уже взял планшет, внимание переключилось на него — стал отвечать на сообщения в Telegram там, играть в Farmassone и т.д.
Потом, видя, что ситуация не решается, хотел написать по Email. Но и тут вылезла неприятность: единственный EMail с ФИО, который я указываю как контактный в банках, у меня на сервере Института, и его пару недель назад заблокировали. Причем до сих пор не знаю, то ли это результат того, что сам Институт ушел в удаленный режим, то ли заблокировали конкретно меня по каким-то причинам. Но в любом случае, пока ситуация не нормализуется, этот ящик мне недоступен. В общем, ситуация «повисла». Забегая вперед, скажу, что сегодня она решилась: я таки нашёл, где в настройках Сбера можно включить быстрые переводы самостоятельно: оказалось, там для этого есть очень маленькая и неприметная ссылка, которую я сначала принял за ссылку на условия обслуживания или что-то подобное.
Около полуночи, когда стало ясно, что день прошел мимо, а из-за недосыпа и плохо соображающей головы даже не имеет пытаться браться за что-то серьёзное, решил так: сейчас поиграю часик в Ultima IX, потом лягу спать пораньше, в надежде, что завтра и проснусь рано, и голова будет работать. Но получилось как всегда: внезапно пришло в голову что-то поискать в Интернете, наткнулся на тему с интересными и смешными жизненными историями на форуме guns.ru, и не мог оторваться от них до 2:30. И только потом сыграл в Ultima IX и в 4:30 лег спать. А до Клавогонок так за весь день и не добрался…
Мой темпористический конфликт Прошлого и Будущего
В ночь с четверга на пятницу много размышлял по поводу темпористического конфликта Прошлого и Будущего (я все же остановился на версии ПВБН). С одной стороны, первое Прошлое хочет жить в иньской модальности, без усилий и напрягов, просто собирая положительные эмоции, впечатления и интересный опыт. При этом куда двигаться — совершенно неважно. Но важно фиксировать этот опыт (хотя бы в этом блоге, стене ВК или записях Instagram). С другой стороны, третьему Будущему для того, чтобы было чувство того, что жизнь идёт не зря, что в ней есть какой-то прогресс: улучшение тех или иных показателей, продвижение по какой-то шкале, получение какого-то формального признания. Но для этого движение должно быть прямолинейным, а не хаотичным. А это требует уже не иньской модальности, а янской, которая для меня неприемлема по идеологическим соображениям. Причем Будущее хорохорится и строит планы «вот сейчас избавлюсь от всего лишнего и заставлю себя работать и быстро идти куда надо», которые я раньше часто озвучивал в блоге. А Прошлое, за счет того, что оно стоит на более сильной первой позиции, просто молча берет и делает по-своему, сворачивая меня туда, где с его точки зрения в данный момент интереснее. Исключением являются периоды, когда по каким-то причинам мне не попадается того, что вызывало бы интерес у Прошлого. В частности, так было в 2003—2005 годах или же сейчас, в момент самоизоляции. В этом случае Прошлое не вмешивается и позволяет Будущему на какой-то момент получить управление. А еще, похоже, Прошлое смотрит с позиции 6+7 уровней ТУАИ, а Будущее — с позиции 2+3.
Что интересно, этот конфликт я осознавал очень давно, в блоге писал о нем с 2007 года, но только сейчас понял, что он связан именно с проявлениями темпористического типа. Но основной вопрос остаётся открытым: как же примирить Прошлое и Будущее? Как получать ощущение движения вперед, живя в иньской модальности?
Что интересно, этот конфликт я осознавал очень давно, в блоге писал о нем с 2007 года, но только сейчас понял, что он связан именно с проявлениями темпористического типа. Но основной вопрос остаётся открытым: как же примирить Прошлое и Будущее? Как получать ощущение движения вперед, живя в иньской модальности?
Переживания по поводу ВК и избытка сообщений
В среду и четверг опять стал переживать по поводу того, что слишком уж много времени уходит на переписки ВК. Из-за этого вечером четверга даже поругался с Tellой и вообще хотел было удалиться из ВК. Но есть причины, которые сделать это не давали: в первую очередь, необходимость приглядывать за группами по соционике и группой IntB. Да? как это не прискорбно, всё же приходится признать: стена ВК всё же более эффективный способ оповещения о том, что происходит у меня в жизни, чем мой личный сайт, куда даже из тех, кто меня знает хорошо, доходят (тем более, регулярно) очень немногие. После бессонной ночи пришло другое решение: наглухо закрыть личные сообщения, которые и являются основным пожирателем времени, а также источником негатива по поводу того, что туда часто ломятся с вопросами, которые следовало бы задавать в группах или на форумах. В итоге так и сделал, а также повыходил из большинства чатов, кроме настолочных и личного. Потом еще много размышлял о конфликте темпористического Прошлого и Будущего, о чем будет отдельное сообщение.
В пятницу я проснулся уже в совсем другом эмоциональном состоянии. Какое-то время наслаждался полной тишиной (в смысле, отсутствием сообщений). Потом на связь вышла Tella через SMS, а затем Telegram. Мы помирились.
Затем поиграл в Farmassone, побегал на дорожке, и занялся тем, что откладывал почти всю предыдущую неделю: прошёл курс по Git на HexLet.io. Увы, на курсе даются только самые основы, так что я просто немного упорядочил то, что уже знал. Но всё равно, приятно получить то самое ощущение завершения и продвижения вперед, которое нужно Будущему. Потом хотел было еще пройти серию курсов по Node.Js, но увы, оказалось, что большая их часть доступна только в платном режиме. Так и пришлось бросить… Конечно, можно изучить всё самому по официальной документации, но там не будет самого главного — того самого индикатора прогресса, который мотивирует Будущее.
Сегодня поставил антирекорд сна: проснулся в 17 часов, проспав чуть меньше полусуток. Но зато с совершенно иным мировосприятием: теперь все происходившее в предыдущие дни, кажется каким-то малозначимым и не стоящим таких переживаний.
В пятницу я проснулся уже в совсем другом эмоциональном состоянии. Какое-то время наслаждался полной тишиной (в смысле, отсутствием сообщений). Потом на связь вышла Tella через SMS, а затем Telegram. Мы помирились.
Затем поиграл в Farmassone, побегал на дорожке, и занялся тем, что откладывал почти всю предыдущую неделю: прошёл курс по Git на HexLet.io. Увы, на курсе даются только самые основы, так что я просто немного упорядочил то, что уже знал. Но всё равно, приятно получить то самое ощущение завершения и продвижения вперед, которое нужно Будущему. Потом хотел было еще пройти серию курсов по Node.Js, но увы, оказалось, что большая их часть доступна только в платном режиме. Так и пришлось бросить… Конечно, можно изучить всё самому по официальной документации, но там не будет самого главного — того самого индикатора прогресса, который мотивирует Будущее.
Сегодня поставил антирекорд сна: проснулся в 17 часов, проспав чуть меньше полусуток. Но зато с совершенно иным мировосприятием: теперь все происходившее в предыдущие дни, кажется каким-то малозначимым и не стоящим таких переживаний.
Есть PostgreSQL в IntB!
В ночь со вторника на среду всё же собрался и доделал поддержку PostgeSQL в IntB. Со скрипом и скрежетом, но всё-таки теперь IntB работает на Postgres! Да и с поддержкой SQLite теперь, по идее, будет проще. Да и вообще, PostgreSQL мне всё больше нравится...
Единственная проблема, которую осталось решить — это как автоматизировать преобразование начального дампа, которым создается структура базы на этапе установки. В свое время писал про модуль Sqlt для Perl, который вроде бы умеет это делать, но, как выяснилось, очень криво. Во-первых, удаляет из дампа все INSERT-запросы, и приходится возвращать их вручную. Но это можно решить выносом их в отдельный файл, который будет общим для всех СУБД. Ещё есть мысль делать дамп в формат XML, и написать скрипт, который будет сравнивать структуру в дампе и реальной базе, и приводить в соответствие. Но это создаст дополнительное требование к хостингу: наличие SimpleXML, что не есть хорошо...
Ещё снова наткнулся на статью о Svelte. Возникла мысль попробовать сделать серию видеоуроков, транслируя только запись экрана. В этом случае я могу и текст не рассказывать по памяти, а читать по планшету, и свой дом не показывать на видео.
Ещё с подачи Ар.В. попробовал новую игру — Farmassone — чуть-чуть переделанную версию Каркассона. И, надо сказать, очень даже понравилось!
Единственная проблема, которую осталось решить — это как автоматизировать преобразование начального дампа, которым создается структура базы на этапе установки. В свое время писал про модуль Sqlt для Perl, который вроде бы умеет это делать, но, как выяснилось, очень криво. Во-первых, удаляет из дампа все INSERT-запросы, и приходится возвращать их вручную. Но это можно решить выносом их в отдельный файл, который будет общим для всех СУБД. Ещё есть мысль делать дамп в формат XML, и написать скрипт, который будет сравнивать структуру в дампе и реальной базе, и приводить в соответствие. Но это создаст дополнительное требование к хостингу: наличие SimpleXML, что не есть хорошо...
Ещё снова наткнулся на статью о Svelte. Возникла мысль попробовать сделать серию видеоуроков, транслируя только запись экрана. В этом случае я могу и текст не рассказывать по памяти, а читать по планшету, и свой дом не показывать на видео.
Ещё с подачи Ар.В. попробовал новую игру — Farmassone — чуть-чуть переделанную версию Каркассона. И, надо сказать, очень даже понравилось!
Опять увяз в болоте жизни
В субботу сделал еще один шаг вперед — описал свой алгоритм расчета социального доверия. И на этом, видимо, выдохся: с воскресенья почти на всех направлениях жизни началось застревание. Не помогло даже то, что решил, что в мессенджеры теперь захожу только с мобильных устройств. И в Ultima IX наглухо застрял на одном из подземелий, и не знаю, как его пройти.
Плюс еще опять всплыли задачи по freelance, от которых возникает чувство жизненного болота, вязкости: пытаюсь их столкнуть, но всё никак — возвращаются и возвращаются.
Не знаю, что делать с CodinGame. До окончания конкурса там осталось где-то около 10 дней, а я даже не начинал. И теперь вопрос стоит так: либо бросать всё, и попытаться за оставшиеся дни выйти хотя бы в серебряную лигу, либо наоборот, понадеяться, что тех, кто ни разу не делал submit code, в конце просто удалят из списка участников конкурса вообще.
Вчера еще обнаружил, что на ноутбуке не работает встроенная клавиатура (большую часть времени пишу с внешней клавиатуры, и только вчера попытался пересесть с ноутбуком на диван, где это и обнаружилось). Стал разбираться, и обнаружил, что при настройке ядра Linux выключил поддержку AT keyboard, так как думал, что встроенная тоже подключена через USB. Оказалось, что нет, — она работает как PS/2. Пришлось еще раз пересобрать ядро.
С режимом творится непонятно что: почти перешел на полифазный сон. На пару часов засыпаю около полуночи (и да, в это время качество сна гораздо лучше), потом сижу всю ночь, пытаюсь лечь спать утром, но не получается из-за слишком яркого солнечного света, и засыпаю только ближе к середине дня. Возможно, это и сказывается плохо на производительности, но зато даёт возможность видеть раннее утро, когда мир воспринимается совсем иначе.
И опять болтаюсь в полузаболевшем состоянии: то чихаю, то насморк. Видимо, простыл в воскресенье, когда лег спать с открытым окном. А еще тогда же заснул в неудачной позе, и потом два дня болела шея (да и сейчас даёт о себе знать иногда).
Плюс еще опять всплыли задачи по freelance, от которых возникает чувство жизненного болота, вязкости: пытаюсь их столкнуть, но всё никак — возвращаются и возвращаются.
Не знаю, что делать с CodinGame. До окончания конкурса там осталось где-то около 10 дней, а я даже не начинал. И теперь вопрос стоит так: либо бросать всё, и попытаться за оставшиеся дни выйти хотя бы в серебряную лигу, либо наоборот, понадеяться, что тех, кто ни разу не делал submit code, в конце просто удалят из списка участников конкурса вообще.
Вчера еще обнаружил, что на ноутбуке не работает встроенная клавиатура (большую часть времени пишу с внешней клавиатуры, и только вчера попытался пересесть с ноутбуком на диван, где это и обнаружилось). Стал разбираться, и обнаружил, что при настройке ядра Linux выключил поддержку AT keyboard, так как думал, что встроенная тоже подключена через USB. Оказалось, что нет, — она работает как PS/2. Пришлось еще раз пересобрать ядро.
С режимом творится непонятно что: почти перешел на полифазный сон. На пару часов засыпаю около полуночи (и да, в это время качество сна гораздо лучше), потом сижу всю ночь, пытаюсь лечь спать утром, но не получается из-за слишком яркого солнечного света, и засыпаю только ближе к середине дня. Возможно, это и сказывается плохо на производительности, но зато даёт возможность видеть раннее утро, когда мир воспринимается совсем иначе.
И опять болтаюсь в полузаболевшем состоянии: то чихаю, то насморк. Видимо, простыл в воскресенье, когда лег спать с открытым окном. А еще тогда же заснул в неудачной позе, и потом два дня болела шея (да и сейчас даёт о себе знать иногда).
Прекрасный рассвет и день отдыха
Вчера ненадолго заснул около полуночи, после чего случился приступ бессонницы. Часов до 6 занимался переводом IntB на PostgreSQL. В итоге удалось вывести главную страницу и еще несколько служебных, но затем застрял на получении last_insert_id (уже сегодня выяснилось, это делается через SELECT lastval(), а не через pg_last_oid, как я пытался изначально).
Потом попытался лечь спать, но заснуть не мог совершенно. Поворочавшись где-то час, решил встать. Раздвинул шторы на окнах и увидел, что за окном потрясающее зимнее утро! Свет заполнил всю комнату, даже те части, куда не достаёт обычно, и сразу всё показалось совсем иным, чем обычно. Пришло какое-то внутреннее спокойствие, и ощущение, что в итоге всё будет хорошо. Давно такого не было…
Потом решил оживить свою ленту в Instagram и снял через окно два каких-то травянистых растения, которые успели прорасти под окнами, но теперь, с временным возвращением зимы, оказались красиво засыпаны снегом.
А еще устроил себе день полуоффлайна: почти не заходил ВК, да и Telegram держал выключенным. Перепрошёл игру Rockman 4 полностью, и как всегда это вернуло мне ощущение спокойствия и внутренней гармонии, побегал на дорожке, почитал книгу. В общем, вспомнилась старая шутка про то, в каких случаях возникают положительные эмоции.
Вечером снова занялся доделками IntB. И есть очередное продвижение: удалось зарегистрировать пользователя, зайти в админку и создать раздел. Так что еще немного, и IntB будет полноценно работать на Postgres!
Потом попытался лечь спать, но заснуть не мог совершенно. Поворочавшись где-то час, решил встать. Раздвинул шторы на окнах и увидел, что за окном потрясающее зимнее утро! Свет заполнил всю комнату, даже те части, куда не достаёт обычно, и сразу всё показалось совсем иным, чем обычно. Пришло какое-то внутреннее спокойствие, и ощущение, что в итоге всё будет хорошо. Давно такого не было…
Потом решил оживить свою ленту в Instagram и снял через окно два каких-то травянистых растения, которые успели прорасти под окнами, но теперь, с временным возвращением зимы, оказались красиво засыпаны снегом.
А еще устроил себе день полуоффлайна: почти не заходил ВК, да и Telegram держал выключенным. Перепрошёл игру Rockman 4 полностью, и как всегда это вернуло мне ощущение спокойствия и внутренней гармонии, побегал на дорожке, почитал книгу. В общем, вспомнилась старая шутка про то, в каких случаях возникают положительные эмоции.
Вечером снова занялся доделками IntB. И есть очередное продвижение: удалось зарегистрировать пользователя, зайти в админку и создать раздел. Так что еще немного, и IntB будет полноценно работать на Postgres!
Долой мессенджеры, да здравствуют EMail и форумы!
Вылезла новая неприятность, совершенно неожиданная. Людям делать нечего, писать в мессенджерах стали гораздо больше, и я стал уставать уже от этого. Точнее, от постоянных переключений между потоком сообщений, на которые мне нечего ответить кроме «ясно», и основными задачами. Причем только начинает казаться «ну всё, затишье», тут же приходит что-то новое. Ненавижу синхронные средства связи! Долой мессенджеры, да здравствуют EMail и форумы! (И надо бы себе устроить пару дней если уж не полного оффлайна, то хотя бы отдыха от ВК.)
А еще обнаружил, что в PostgreSQL нет функции IF. Равно, впрочем, как и в SQLite. И теперь придется еще в IntB запросы и от нее чистить, а не только от кавычек.
А еще обнаружил, что в PostgreSQL нет функции IF. Равно, впрочем, как и в SQLite. И теперь придется еще в IntB запросы и от нее чистить, а не только от кавычек.
Восьмой день дома
Восьмой день дома (если не считать вынос мусора). Вчера внезапно пошёл снег, и теперь за окнами самая настоящая зима. Правда, если верить прогнозам, продлится недолго.
Вчера обсуждал с Kitsune то, что из-за кризиса вряд ли получится в этом году купить новый компьютер, так как покупать я его хотел из средств, полученных в качестве прибыли от акций. В итоге пришли к другому варианту: сделать апгрейд основного ноутбука, добавив оперативки и купив SSD большей емкости. Мне эта мысль понравилась, но потом вспомнил, что ноутбук у меня двухдисковый и SSD имеет очень редкий форм-фактор mSATA half size. В России сейчас такие, да еще и достаточной емкости, просто не продаются.
Теперь вот не знаю, что делать. То ли заказывать с AliExpress (там такое нашлось очень легко), но если оно и дойдёт в нынешних условиях, то только в мае. То ли купить SSD размером 1 Тб и поставить его вместо обычного жесткого диска, и вынести туда Linux. А потом, когда всё-таки куплю новый компьютер, переставить его туда. Но с другой стороны, в новый компьютер я хотел ставить вообще NVMe… В общем, не знаю, что делать.
Еще написал провокационное сообщение у себя на стене ВК про то, что сбылись мои мечты лицейских времен (ну и не упустил возможность негативно отозваться о самом лицее). Но увы, реакция пока вялая: 2 лайка, 0 комментариев.
В остальном же остаётся моя вечная проблема: трачу время совершенно неэффективно. Ни курс по машинному обучению не могу дослушать, ни книжки дочитать. И при этом не понимаю, куда это время девается…
Вчера обсуждал с Kitsune то, что из-за кризиса вряд ли получится в этом году купить новый компьютер, так как покупать я его хотел из средств, полученных в качестве прибыли от акций. В итоге пришли к другому варианту: сделать апгрейд основного ноутбука, добавив оперативки и купив SSD большей емкости. Мне эта мысль понравилась, но потом вспомнил, что ноутбук у меня двухдисковый и SSD имеет очень редкий форм-фактор mSATA half size. В России сейчас такие, да еще и достаточной емкости, просто не продаются.
Теперь вот не знаю, что делать. То ли заказывать с AliExpress (там такое нашлось очень легко), но если оно и дойдёт в нынешних условиях, то только в мае. То ли купить SSD размером 1 Тб и поставить его вместо обычного жесткого диска, и вынести туда Linux. А потом, когда всё-таки куплю новый компьютер, переставить его туда. Но с другой стороны, в новый компьютер я хотел ставить вообще NVMe… В общем, не знаю, что делать.
Еще написал провокационное сообщение у себя на стене ВК про то, что сбылись мои мечты лицейских времен (ну и не упустил возможность негативно отозваться о самом лицее). Но увы, реакция пока вялая: 2 лайка, 0 комментариев.
В остальном же остаётся моя вечная проблема: трачу время совершенно неэффективно. Ни курс по машинному обучению не могу дослушать, ни книжки дочитать. И при этом не понимаю, куда это время девается…
Продолжаю работу над IntB
Весь день работаю над Intellect Board. Решил добавить в него поддержку PostgreSQL. На первый взгляд, задача казалась простой: унаследовать от Database класс, необходимый для работы с БД, сконвертировать файл с созданием структуры базы и внести нужные изменения в install.php. С PostgreSQL я дела прежде почти не имел, поэтому вчера какое-то время ушло на сопоставление функций из mysqli и pgsql, установку расширения, восстановление пароля от хостинга ElephantSQL, где дают бесплатную базу, переустановку DBeaver (как выяснилось, я так его и не установил после переустановки OS) и т.п.
Но увы, оказалось, что MySQL и PostgreSQL очень по-разному работают с кавычками. В MySQL обычные кавычки и апострофы взаимозаменяемы, а в Postgres — нет. Обычные кавычки там используются для обозначения имени столбца или таблицы, строковые значения в них брать нельзя, обязательно должны быть апострофы. И теперь приходится исправлять просто огромное количество запросов, так как я везде использовал кавычки из соображений удобства. На данный момент удалось обеспечить работу только главной страницы и псевдостатического раздела. Интересно, с другими СУБД подобное не вылезет?
Но увы, оказалось, что MySQL и PostgreSQL очень по-разному работают с кавычками. В MySQL обычные кавычки и апострофы взаимозаменяемы, а в Postgres — нет. Обычные кавычки там используются для обозначения имени столбца или таблицы, строковые значения в них брать нельзя, обязательно должны быть апострофы. И теперь приходится исправлять просто огромное количество запросов, так как я везде использовал кавычки из соображений удобства. На данный момент удалось обеспечить работу только главной страницы и псевдостатического раздела. Интересно, с другими СУБД подобное не вылезет?
Страницы:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139