Рубрика «Программирование» - 1054

Оригинальная статья Джона Грэхем-Камминга.
Переведено и опубликовано с разрешения автора.

Я занимаюсь программированием уже более 30 лет, начиная с машин, уже устаревших (на процессорах Z80 и 6502) до современных, используя языки BASIC, ассемблера, C, C++, Tcl, Perl, Lisp, ML, occam, arc, Ruby, Go и многие другие.

Далее следует список того, чему я научился.
Читать полностью »

Цель этого поста рассказать про то, как я учусь понимать работу sql сервера, а не дать набор готовых инструкций.
Потому что именно через понимание того, как же это работает, можно написать оптимальный запрос. Когда же мы полагаемся на инструкции, советы, спец. средства или даже догадки, которые говорят нам: «в таком-то случае сделай так», но без понимания «почему и как это будет работать?» — это страшно, потому что это может сработать, да, сработать! Но, сработать только поначалу, а потом, когда в базу добавится миллион записей, все встанет колом, и, как на зло, во время презентации начальству.

Удивительно, но понимать такю сложную штуку, как SQL сервер, мне помогает… воображение.

Читать полностью »

В данной статье пойдет речь о том, как сделать трекинг контрастного объекта (маркера) в видеопотоке. Если требуется сделать нечто подобное как на видео, то добро пожаловать под кат.

Читать полностью »

Мне по работе часто приходится сталкиваться с высоконагруженными многопоточными или многопроцессными сервисами (application-, web-, index-server).
Достаточно интересная, но иногда неблагодарная работа — оптимизировать все это хозяйство.
Растущие потребности клиентов часто упираются в невозможность просто заменить железную составляющую системы на более современную, т.к. производительность компьютеров, скорость чтения-записи жестких дисков и сети растут много медленнее запросов клиентов.
Редко помогает увеличение количества нодов кластера (система как правило распределенная).
Чаще приходится запустив профайлер, искать узкие места, лезть в source code и править ляпы, которые оставили коллеги, а иногда и сам, чего греха таить, много лет назад.
Некоторые из проблем, связаных с синхронизацией, я попытаюсь изложить здесь. Это не будет вводный курс по многопоточному программированию — предпологается, что читатель знаком с понятием thread и context switch, и знает для чего нужны mutex, semaphore и т.д.
Читать полностью »

Недавно прочитал топик о выходе финальной версии Sublime text 2. Решив посмотреть на его возможности, я буквально влюбился в этот текстовый редактор. Он моментально получил статус моего основного инструмента разработки.

Работаю я на двух компьютерах и у меня возник вопрос: «Как синхронизировать настройки, плагины и темы редактора на всех рабочих машинах?».
Читать полностью »

Эта бесконечная гирлянда
Удивительно, что такая книга, как эта, до сих пор не была замечена на Хабре. Не могу не попытаться исправить этот недочет.
Итак, хочу представить вам книгу американского информатика Дугласа Роберта Хофштадтера «Гедель, Эшер, Бах: эта бесконечная гирлянда».

Ахилл: Вот если бы книга называлась «Гориллы, серебро, золото» или «Эму, золото…» — тогда бы я еще мог понять…
Черепаха: Может быть, вы предпочли бы «Медь, серебро, бабуины»?

Будучи написано более тридцати лет назад, это невероятное произведение ничуть не утратило своей интересности.

Читать полностью »

Я решил написать цикл статей, под названием «Сложно о простом». Этот цикл будет посвящён языку JavaScript. Почему «сложно о простом»? Потому что всё, что я буду рассказывать я буду рассказывать учитывая особенности работы интерпретатора, начиная с типов данных. Всё это будет делатья для того, что бы потом можно было рассказать просто о сложном, например, о способах наследования в JavaScript и прочих патернах.
Читать полностью »

Последний проект Джеймса Гослинга привлек к себе огромное внимание. Мы тоже активно следим за его развитием. Оказалось, что он использует Jelastic для своих разработок.

Океаны, роботы и JavaЧитать полностью »

Здравствуйтее, в этой статье я хочу рассказать о взаимодействии двух технологий MPI(mpich2) и NVIDIA CUDA. Упор я хочу сделать именно на саму структуру программы и настройку вышеописанных технологий для работы в одной программе. И так поехали…
Два гиганта в одной программе — Nvidia CUDA и MPI
Читать полностью »

image
Исследование проводилось в целях найти доказательство и отправную точку во времени, когда «мировая агрессия» начала расти. После анализа собранных данных оказалось, что она не просто не растёт, а наоборот. Как простой программист может это доказать? Какие данные использовались и где их брали?
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js