Archive for May, 2009
Google datastore sucks…
Ну, не так щоб взагалі, але сьогодні сівши після півторатижневої перерви (співбесіди і все таке) за згаданий нещодавно новий веб-проект остаточно зрозумів, що для моєї задачі воно абсолютно не підходить. Google App Engine – непогана штука, але для простих проектів типу того ж Jaiku. У мене ж структура даних досить насичена відношеннями many-to-many та ще й має велику ієрархічну структуру, яку легко можна описати засобами Datastore, але працювати практично нереально із-за відсутності хоча б якоїсь подоби join’ів. Плюс до того, я під час написання минулого проекту на Django став вельми балуваним і те, що тут інтеграція з цим фреймворком через дупу і з купою обмежень мене кумарить. Сама робота полягає більше в тому як так ви**нутись, щоб хоч якось отримати отримати в Datastore те, що за допомогою Django Models робиться в один рядок. Коротше кажучи, мну вирішив вибиратись з цього болота, поки не пізно. Буду портувати те, що понаписував на нормальну Джангу. Сподіваюсь, на наступному тижні буде достатньо вільного часу і я встигну до кінця місяця швиденьку портувати код. Потім проект розгорну на тому ж хостингу, де і цей блог. Щойно перевірив: воно чудово працює і через mod_python, так що поки буду розробляти можна навіть не доплачувати за FastCGI (правда треба буде не забути сам хостинг проплатити, а то це, здається, останній місяць). Отаке… :-/
Приклад використання Twitter REST API
Вчора вночі щось мене пробило і я до 2-ї ночі сидів писав одну штуку собі в допомогу, а сьогодні вранці, коли хотів вже залити виявилось, що це вже зробили до мене, причому найцікавіше, що виглядає все один в один як те, що зробив мну. Не розумію, правда, як я не знайшов його вчора – мабуть вже заспаний був, але суть не втому. Щоб робота марно не пропадала поділюся парою коротких сніпетів на пітоні.
Правильне використання просторів імен
Переклад статті Using Namespaces Properly від Dejan Jelovic
Простори імен – дуже потужна особливість мови C++. Ця стаття не вчитиме синтаксису просторів імен, вона просто покаже як їх варто використовувати.
Простори імен лише обгортають всі імена, що в нього входять в якесь інше ім’я. Наприклад:
namespace net {
class Socket {
...
};
}
...
net::Socket socket;
Завдяки цьому ми впевнюємося, що якщо дві бібліотеки матимуть свої реалізації класу Socket, то якщо вони назвуть свої простори імен по-різному, ваша програма зможе їх використовувати без яких би то не було конфліктів.
Але це викликає ще одне питання: якщо дві незалежні компанії вирішать писати мережеві бібліотеки, то який шанс, що вони будуть робити реалізацію класу з назвою Socket? Я так думаю, що вірогідність цього відсотків 100.
Нам також подобається, коли простори імен легко набираються, що означає, що вони мають бути довжиною в 2-4 символи. З урахуванням цього, який шанс, що обидві компанії назвуть свій простір імен “Net”? 5 відсотків? 10 відсотків?
Як би там не було, це показує, що простори імен не вирішують цю проблему повністю – вони просто зменшують вірогідність її виникнення.
Read the rest of this entry »
CДурнеІм’яКласу
Вирішив на всяк випадок зібрати свої переклади кількарічної давнини на цьому блозі, щоб не загубились якщо що. Нижче – перша ластівка – переклад статті “CStupidClassName” від Dejan Jelovic. За пару годин ще пару перепощу – може комусь стане в нагоді.
Read the rest of this entry »
Потроху про різне
Щось писальна муза мене знову покинула (або це негативний вплив клятого Твітера
) і це при тому, що останні пара тижнів були вельми насичені різноманітними приємними і не дуже подіями. Тож щоб розім’яти пальці та трохи самому привести думки до ладу (на папері чи екрані вони набагато чіткіші, аніж коли живуть лише в голові) вирішив зробити такі собі підсумки…
Read the rest of this entry »







![[EXPLORED] Blonde in black latex in a box.](http://farm8.staticflickr.com/7029/6692580047_9a3775aa56_s.jpg)













