Select orthographic mistake with the mouse pointer and press Ctrl+Enter. Let’s make our language cleaner!
Якщо помітите помилку на цій сторінці, будь ласка, виділіть її вказівником миші та натисніть Ctrl+Enter. Зробімо наше мовлення чистішим!
Показ дописів із міткою робота. Показати всі дописи
Показ дописів із міткою робота. Показати всі дописи

2009-07-30

git-p4 — знахідка тижня

Ото як все підприємство використовує систему контролю версій p4, нікого не переконаєш в її обмеженості. Що робити, як доробка в один день не вкладається? Як перервати поточну роботу і зробити термінове виправлення? Та й взагалі, без мережі працюєш на свій страх і ризик.

Інша справа git: швидкий, нелінійний (одночасно можна працювати з кількома гілками), та й постійного доступу до мережі не вимагає. До хорошого звикаєш швидко!

Виявляється є проста можливість скористатися найкращим із двох світів: централізованість та політики безпеки p4 та зручність локальної розробки з допомогою git. Скрипт git-p4, що постачається разом із git, дозволяє витягнути з депо якийсь проект і створити для нього локальний репозитарій git, час від часу синхронізувати його із центральним сховищем, відсилати туди свої зміни тощо. Разом із тим локальна копія — це повноцінний репозитарій.

Git — геніальний продукт!

2009-04-08

Книжка про ДАО

Виклянчив на роботі двотомник за три сотні талярів. Не пройшло й півроку, як цей фоліант прилетів із самої Гамерики. Це ж яким розумним буду, як прочитаю!

2008-10-09

Закривайте транзакції!

Переробили деякий пітонівський скрипт, він став рідше робити зміни і проявилася несподівана проблема: при переконфігурації він наполегливо відмовлявся бачити зовнішні зміни. Тобто, хтось зовні змінює параметр, а скрипт геть ігнорує ці нововведення.

Несподівано для себе зробив відкриття, що в межах транзакції результат вибірки завжди один і той самий (для одного запиту):

mysql> start transaction;
mysql> select * from table; -- якийсь результат
mysql> -- в цей час хтось змінює записи таблиці table
mysql> select * from table; -- повертає початкову вибірку без змін
mysql> commit;
mysql> select * from table; -- тепер вже видно зміни з іншої транзакції

А почалася ця проблема саме через розширення пітона MySQLdb. Він автоматично для нового з’єднання починає нову транзакцію, а закрити її пропонує самостійно викликом

conn.commit()

Саме його й бракувало у коді після вибору з бази даних…

2008-07-22

Будую автомат

Треба зробити складнющий автомат, та ще й з жорсткими вимогами дійсного часу. Пішов кроїти boost::statechart, може, спростить життя у наступні півроку.

2008-06-27

Відрядження у Тель-Авів

Коли зберуся з думками, напишу про поїздку більш детально. А зараз просто фото.

Ізраїль