Архив метки: work

Мой первый день

Кому-то может быть интересно, как прошел мой первый день на новом месте. Можно сказать, моя вторая смена работы в жизни…

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

Добавлю, что решил поддержать традицию и использоваться Eclipse for PHP Developers. Кто знает, тот поймет. Пришлось переконфигурить немного и помаяться с установкой на Winx64.

За импровизированной стенкой в виде шкафа молодые ребята из другой компании весь день играли в настольные игры и запускали какие-то летающие аппараты на дистанционном управлении. Золотая работа. В 19 вроде там уже никого не было.

Работаю я в маленькой компании с соответствущей неформальной обстановкой, от которой я отвык уже со времен работы в АИСТе 5 лет назад. Приятно. Чувствуешь себя молодым. Завтра понесу кружку (есть кофе, чай и плюшки) и наушники (опенспейс). Пока не грущу по всем, новые ребята все в работе, особо не развлкеаются и за посторонним общением во всяких твиттерах и ФБ не были замечены. Надеюсь, что в их головах все-таки кроме работы есть еще что-то другое.

Одел сегодня рубашку с джинсами и чувствовал себя некомфортно, рубашка стесняла движения. Завтра одену майку и кеды. Все равно на машине, тепло и сухо.

таков вот лытдыбр сегодня, извините.

Ох уж эти обновления

Я люблю заниматься чем-то креативным, но иногда приходится делать рутину. Так и сегодня на одном из сайтов под управлением Netcat мне понадобилось поставить 28! обновлений системы. Человек не обновлялся несколько лет.
Ладно, черт с ним. Сделаю. Убил на это около часа времени. Еще полчаса ушло на выявление некоторых ошибок после установки. Но потом меня ждала засада.

Стоит сказать, что у меня нет всех обновлений, выпущенных на данный момент, есть еще 1-2 патча, которыми я не владею. Ну так вот, на сайте перестали работать урлы вида /news/2007, которые должны возвращать только новости за 2007 год. Я полчаса трейсил код, чтобы понять, где ошибка. Она оказалась в ядре системы. У меня есть все вышедшие патчи для другой редакции системы (Extra). Я туда заглянул и увидел, что эту ошибку исправили в последнем патче.

И вот я вынужден был из-за каких-то неведомых космических причин находить и исправлять ошибку сам. А надо было лишь за 1000 р купить клиенту поддержку на неделю, чтобы скачать все вышедшие патчи (ну или на просторах интернета порыться).

Печалька.

И все-таки это случилось

То, что я не смог осуществить, на что решиться, 10 месяцев назад, осуществилось сегодня. Мой последний день. Он был такой… непонятный. И по настроению тоже. Удивительно, как много новых людей в компании я каким-то образом смог заинтересовать, но сегодня всему этому пришел конец. Останется, видимо, только виртуальное общение. Очень хочется, чтобы ребятам, в комнате с которыми я провел не один год и которые стали как родные (потому что обсуждения создают впечатления, что я знаю все про их жизнь, а они про мою), на мое место/должность посадили более веселого и умного человека, чем я, чтобы все стало еще лучше.

Я не сказал многим «до свидания». Думаю, все меня поймут. Помню, в детстве на летних каникулах в деревне я читал книгу «Пеппи Длинный чулок». Читал я ее все лето, потому что никогда не любил читать, да и всегда было веселее пойти купаться на речку или на веранде порезаться в «дурачка». И вот, когда спустя 2-3 месяца я ее дочитал, мне стало грустно, даже, помню, проступили слезы, потому что история закончилась. Закончился такой большой для меня этап, пережитая совместно история уходит в прошлое. Сейчас я взрослый и реветь, безусловно, не собираюсь, но погрустить можно.

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

Оптимизация MySQL по индексам

Для оптимизации скорости работы SQL-запросов в MySQL лучше:

  • Создавать комбинированный индекс по колонкам, которые вы выбираете при помощи AND. Не забывайте при этом про «левую сторону». Выборка по (col2) или (col2, col3) не будет использовать комбинированный индекс (col1, col2, col3), т.к. он начинается с col1.
  • Создавать одиночные индексы на каждую колонку, выбираемую через OR (в этом случае будет задействован поиск по пересечению индексов, что медленней комбинированного индекса, который тут использоваться не может, но быстрее, чем без индексов вообще)
  • Если с помощью индексов не удается отсеить порядка 80% записей, то MySQL считает лучшим полное сканирование таблицы.
  • При JOIN очень важная последовательность выборки. Если вы джоините таблицу со значительно меньшим кол-вом записей, то (хотя, вероятно,это поймет и сам планировщик MySQL) логичней было бы выбрать записи в ней, а уже потом по выбранным записям подключить основную, более огромную таблицу. Если иначе, то сначала выбирается огромное кол-во данных из большой таблицы, а уже потом к ним подключается маленькая выборка по второй.
  • Всегда стоит использовать наиболее уникальные индексы (характеризумые мощностью данных, т.е. их уникальностью). Командой SHOW KEYS FROM table можно увидеть индексы, уникальность характеризуется колонкой Cardinality.
  • Почти всегда используется B-tree индекс, который очень хорош тогда, когда мощность данных большая. Можно также использовать пространственный индекс R-tree (для определенного типа данных) и хэш-индекс для таблиц типа Memory (хэш индекс хорош, когда используется точное сравнение и несколько хуже, когда используется больше меньше, потому что данные хранятся в виде значения хэш-функции и в этом же виде сравниваются).
  • B-tree индекс не будет использоваться в операторе LIKE, если его значение начинается со спецсимвола % или содержит другое поле.

Falling snow (мысли, фото, видео, Шелдон)

Немного потерялся в пространстве из-за поиска новой интересной работы на ближайшие годы. Борюсь с собственной самооценкой и пытаюсь донести до людей, что я беру планку несколько выше, чем могу и знаю сейчас, но мне это интересно и важно, я это осилю и познаю недостающие кусочки паззла. Надеюсь, что все понимают меня. Кто-то считает, что моя затея поработать программером на больших проектах безрассудна, а кто-то удивляется, как много противоположностей во мне борются. А от кого-то буквально сегодня я слышал, что я похож на персонажа Шелдона из ситкома Теория большого взрыва (последняя виденная серия, где он при помощи термических отпечатков, а затем и радиоактивных пытался определить ранее выбранную карту из колоды).

Пятница, вечер. Я наконец могу сесть и немного успокоиться от недельной беготни, которая непременно продолжится на следующей неделе. Могу вспомнить, как сидел там, смотрел на падающий снег, слушал шум воздуха и был совершенно один.