Pull to refresh
292
0.3
Дмитрий Кашицын @Halt

Программист, линуксоид, паяльник-железячник

Send message

Разработка на PC и производительность — Memory Latency

Reading time7 min
Views11K
Herb Sutter (автор Exceptional C++, бывший глава ISO C++ standards committee, мистер Free Lunch Is Over и прочая, и прочая) работает в Microsoft и иногда по средам читает атомные лекции.

Я наконец-то на одну такую попал, и очень радовался. На умных мужиков всегда радостно поглядеть и послушать.
Для отчета — кроме Херба, видел живого Олександреску и живого Walter Bright (который "D").

Лекция называлась «Machine Architecture: Things Your Programming Language Never Told You» (здесь можно скачать презентацию и видео) и была про конкретную часть abstraction penalty — Memory Latency.

Я попытаюсь коротко рассказать о ключевой мысли лекции. Она простая, очевидная и тысячу раз сказанная. Думаю, еще раз повторить азбуку — никогда не повредит.
Читать дальше →
Total votes 142: ↑135 and ↓7+128
Comments70

Звук по сети

Reading time1 min
Views15K
Стоит у меня дома большой комп, используется в основном как телевизор. Кино смотрим на ноутбуке, ибо монитор не сильно больше, а стоит далеко от дивана. Поэтому приходится подключать к ноутбуку либо наушники, либо вторые колонки, либо ползать под стол и вытаскивать из компа шнур. Надоело.

Звуковые серверы в *nix есть давно, arts, esd — классика. Сейчас стандартом заслуженно становиться pulseaudio, в Ubuntu он устанавливается с релиза 8.04, а в Fedora с 8.
Читать дальше →
Total votes 53: ↑48 and ↓5+43
Comments26

Стэнфорд открыл учебные материалы по программированию и ИИ

Reading time1 min
Views6.1K
Стэнфордский университет выложил в открытый доступ под лицензией Creative Commons содержание десяти учебных курсов по программирование, искусственному интеллекту, линейным системам и оптимизации. Воспользоваться этими уникальными материалами могут преподаватели и студенты со всего мира.

Каждый курс содержит видеозаписи лекций, полные тексты и тезисы, а также практические задания и экзаменационные билеты. Материалы практически полностью совпадают с той программой, по которой учатся студенты-очники в Стэнфорде. Чтобы скачать материалы, не требуется никакой регистрации или специального запроса. Они просто выложены в открытый доступ в ZIP-архивах примерно по 300 МБ, а видеоролики ещё продублированы на YouTube.

Вот список открытых курсов:
Total votes 98: ↑96 and ↓2+94
Comments42

Визуальный компьютинг. Часть I

Reading time5 min
Views2.4K


Как это часто бывает в ИТ, у этого начинания исключительно академические корни. История началась в 1979 году Стэндфорде, где профессор Джеймс Кларк вместе со своими студентами вёл разработку «Геометрического движка». Задача на тот момент была совершенно фантастической — обеспечить рабочим станциям возможность оперировать трёхмерными изображениями.

Забегая вперёд, отмечу, что сейчас плод её решения вкушают пользователи всех известных мне современных операционных систем, предназначенных для персональных компьютеров. Итак, сегодня я расскажу об эре визуального компьютинга в UNIX и компании SGI, ответственной за её рождение и закат.
пройдёмте
Total votes 91: ↑86.5 and ↓4.5+82
Comments65

Обзор моделей работы с потоками

Reading time4 min
Views26K

Обзор моделей работы с потоками


Многие люди не понимают того, как многопоточность реализована в различных языках программирования. В наши времена многоядерных процессоров такое знание будет весьма полезно.
Вот вам небольшой обзор.
Читать дальше →
Total votes 73: ↑67.5 and ↓5.5+62
Comments56

Мал, да удал: Trojan-Downloader.Win32.Tiny

Reading time9 min
Views23K
Доброго дня всем.
В сегодняшнем выпуске много технических подробностей. Так что уж извините, если их слишком много :)

Письмо


Итак, начинаем. На входе у нас письмо с текстом «Journalist shot in Georgia! See attached video. Password is 123» и с приложенным файлом «Georgia.zip».

Для более или менее полного анализа нам понадобятся:
— Самый Лучший дизассемблер в мире IDA
— Неплохой Отладчик Windbg
— python 2.5 (строго говоря, подойдет любой, просто у меня 2.5)
— Visual Studio какая-нибудь и Microsoft SDK, чтобы собрать небольшую программу на с++.
— упаковщик программ upx
— ну и чего-то еще по мелочи.

Распаковываем присланный нам файл, и видим, что наши подозрения оправданы: видео там и рядом не ночевало.
joined.exe (md5:607af96b03addadf28cf9280701df191)
Dr.Web: Trojan.Packed.151
Kaspersky: Trojan-Downloader.Win32.Agent.abqe

Читать дальше →
Total votes 365: ↑351 and ↓14+337
Comments118

Подключаем TraceMonkey

Reading time1 min
Views816
Для начала переходим по следующей линке: ftp.mozilla.org/pub/firefox/nightly/latest-tracemonkey и забираем оттуда ночную сборку с TraceMonkey
(Быть может есть те, кто по каким-либо причинам пропустил анонс TraceMonkey, так вот: это новый движок для JavaScript, прямой конкурет v8 у Chrome)

Его-то мы, собственно, и будем «подключать».

Так же можно взять с http-зеркала тут. Вытягиваем файлик с версией 3.1b1pre)

Прошу меня простить за подобный вид ссылки, парсер Хабра нормально отображать её не захотел. Так же, забавы ради, стоит отметить, что получить доступ к ftp у меня получилось через хром, но не получилось через сам Firefox.

Далее, в новой вкладке свежевыкачанной лисички пишем about:config, соглашаемся с предупреждением, в фильтр вводим "jit" (без кавычек), переводим значения параметров javascript.options.jit.chrome и javascript.options.jit.content
в состояние true , перезпускаем FireFox и радуемся жизни сравниваем производительность «до» и «после».

От себя хочу добавить, что даже яндекс-карты стали работать ощутимо быстрее. Быстрее, чем в Хроме. Так же ускорилась работа самого интерфейса браузера, из-за того что он написан с использованием JavaScript при разработке основных элементов и его расширений. .
Total votes 94: ↑80 and ↓14+66
Comments67

SSH для частого использования

Reading time2 min
Views69K
Наверное, многие из читающих «Linux для всех» пользуются SSH. Я, например, администрирую большое количество UNIX-систем, и, чтобы быстро получить доступ к нужной машине, приходится использовать возможности протокола на уровне, отличном от примитивного.
Читать дальше →
Total votes 159: ↑145 and ↓14+131
Comments120

Сам себе антивирус

Reading time5 min
Views4.8K
Жизнь компьютера идет своим чередом, но в один прекрасный момент комп перезагружается, а потом на рабочем столе появляется надпись «У вас вирусы, антивирус качать тут». Кто-то скачивает и ставит, кто-то сносит винду, кому-то везет и его антивирус ловит заразу… А я вам попробую рассказать как решить проблему самому и зачем это нужно.

Читать дальше →
Total votes 120: ↑84 and ↓36+48
Comments139

Говноконторы. ООО «Прогниение»

Reading time1 min
Views2.4K
Обычно в нашей сфере говноконторами называют мелкие конторки, нанимающие студентов и старшеклассников «дизайнерами» по 15 баксов в месяц и продающими «сайты» за 6000 рублей. Заляпали они своими говнообъявлениями, кажется, все стены в Питере.

Есть в России на нашем рынке настоящие говноконторы. Знамениты они телефонным спамом, попытками увода клиентов у своих конкурентов путем клеветы на оных, а также, как выяснилось, ублюдочным отношением к сотрудникам. Набирают иногородних девочек-студенток, ведут двойную бухгалтерию, а недовольных «прессуют» бандюками.

Читать дальше →
Total votes 202: ↑164 and ↓38+126
Comments142

Digital Learners — о том, каким бы мог быть процесс нашего обучения

Reading time1 min
Views839
На западе существует понятие «Digital Learners», что на русский дословно переводится как «цифровые ученики». Не сложно догадаться, что речь идёт о молодых людях, таких как мы с вами. Людях, привыкших обучаться с помощью интернета: поисковики, подкасты, блоги, интернет энциклопедии… Список этот просто бесконечен. В связи с этим возникает справедливый вопрос — почему преподаватели не используют эти технологии, чтобы научить нас чему-то новому. Ведь если мы этим пользуемся и нам это нравится, то почему не использовать эти технологии для обучения в ВУЗах.

Хочу представить вашему вниманию клип подготовленный американской компанией «Transforming Teaching Through Technology» который произвёл на меня огромное впечатление. Пересматриваю его постоянно и каждый раз остаюсь под впечатлением. Не буду больше говорить, лучше посмотрите сами…
Знание английского обязательно!

Total votes 58: ↑43 and ↓15+28
Comments64

TraceMonkey — супер-производительный javascript

Reading time1 min
Views1.3K
firefox
Ура! Новое, фантастически быстрое, улучшение движка JavaScript(SpiderMonkey) в Mozilla было опубликовано.
Кодовое имя этого творения — TraceMonkey.
Этот движок использует метод добавления своего кода в реальном времени для ускоренной компиляции в SpiderMonkey новый метод трансляции байт-кода в машинный код на лету.
Читать дальше
Total votes 183: ↑117.5 and ↓65.5+52
Comments99

Если клиенты задерживают оплату

Reading time3 min
Views24K
Одна из мелких неприятностей, которую студии чаще всего получают от клиентов — это несвоевременная оплата счета. Иногда у клиентов «нет денег на счету», иногда «бухгалтер забыл оплатить», иногда «бумага потерялась». Иногда бывает так, что «мы хотели уточнить кое-что у вашего бухгалтера, но не знали, как с ним связаться». Некоторые особо одаренные бухгалтеры отправляют деньги «с НДС» юрлицу, работающему по «упрощенке».

Есть несколько «лайфхаков», которые реально уменьшают количество проблем со счетами и оплатой. Нацелены они, в большинстве своем, на то, чтобы ваш счет не терялся, а у бухгалтерии клиента не было возможности для отговорок.
Читать дальше →
Total votes 141: ↑127.5 and ↓13.5+114
Comments141

HTTP сервер на bash

Reading time1 min
Views15K
Вполне себе полноценный HTTP сервер, написаный на bash, одной строкой.

:;while [ $? -eq 0 ];do nc -vlp 8080 -c'(r=read;e=echo;$r a b c;z=$r;while [ ${#z} -gt 2 ];do $r z;done;f=`$e $b|sed 's/[^a-z0-9_.-]//gi'`;h="HTTP/1.0";o="$h 200 OK\r\n";c="Content";if [ -z $f ];then($e $o;ls|(while $r n;do if [ -f "$n" ]; then $e "`ls -gh $n`";fi;done););elif [ -f $f ];then $e "$o$c-Type: `file -ib $f`\n$c-Length: `stat -c%s $f`";$e;cat $f;else $e -e "$h 404 Not Found\n\n404\n";fi)';done

Автор сего извращения любопытного проекта — Alexey Sveshnikov.
Total votes 188: ↑168.5 and ↓19.5+149
Comments77

Супер-юзабильные формы

Reading time2 min
Views54K
super_form

Как-то на хабре разгорелся спор, как заставить пользователя вводить дату в правильном формате, было множество интересных решений, но заставлять пользователя совершенно не надо — пусть за пользователя основную работу делают машины :-).

На помощь приходит замечательный скрипт «Masked Input Plugin», который позволяет назначить для каждой формы маску, по которой данные будут заполнятся.

Возможно Вы не совсем поняли, но лучше один раз увидеть, чем сто раз услышать.
Читать дальше
Total votes 209: ↑164.5 and ↓44.5+120
Comments91

Почему у свободного программного обеспечения убогое юзабилити и как это исправить

Reading time11 min
Views3.7K
Предлагаю хабросообществу свой перевод статьи Мэттью Пола Томаса, которую он недавно опубликовал в своем блоге. Томас — программист из Новой Зеландии, работающий в команде разработчиков проекта Launchpad — детища компании Canonical, более известной как коммерческий спонсор самого популярного Linux-дистрибутива Ubuntu.
Что самое интересное:
первый вариант этой статьи вышел еще 6 (!) лет назад.
— скорее всего появление второго варианта навеяно недавним громким заявлением основателя компании Canonical Марка Шаттлворта, в котором он предложил сообществу свободного программного обеспечения создать в течении 2 ближайших лет интерфейс операционной системы, который был бы «приятнее» Mac OS X.
— в статье прослеживается четкое разделение между volunteer designers и dedicated designers, при этом первые не пользуются у автора особой лаской. Это интересно, потому что судя по словам Томаса, он таковым и является.
Читать дальше →
Total votes 75: ↑74 and ↓1+73
Comments222

Приручение py-rrdtool

Reading time4 min
Views13K
Как говорится в одной древней мудрости: можно вечно наблюдать три вещи: как горит огонь, как течёт вода и как рисует графики rrdtool. Этот пост как раз о последнем.
И так, что же такое rrdtool? rddtool — замечательная утилита, которая позволяет управлять данными, хранимыми в формать rrd (round-robin database). Данный формат примечателен тем, что изначально предназначен для хранения периодичной информации, причём так, что размер самой БД получается фиксированным (довольно небольшим) независимо от количества данных. При этом сохраняется возможность получать отчёты за продолжительные отрезки времени с произвольной точностью. Наибольшее распространение данная система нашла в системах мониторинга, где, как говорится, лучше один раз увидеть картинку, чем 7 раз прочитать логи. В конце статьи Вы сможете получить нечто, похожее на

пример


Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments12

Munin — мониторинг сети это просто!

Reading time3 min
Views110K

В жизни каждого системного администратора рано или поздно наступает момент, когда глаз и рук уже не хватает уследить за всеми серверами, то там, то там возникают какие-то проблемы, а для решения их очень хочется узнать что же было «до этого». И именно здесь на выручку приходят они — вел
икие и ужасные системы мониторинга. Долгое время я пользовался Nagios, и до сих пор, при всём удобстве, иначе как монстрообразным назвать не могу. В итоге реально использовались лишь 10% возможностей этой прекрасной системы. Всё изменилось, когда я наткнулся на Munin — прекрасное решение для мониторинга небольших сетей.
Обзор системы
Total votes 37: ↑33 and ↓4+29
Comments42

Information

Rating
1,855-th
Location
Алматы (Алма-Ата), Алма-Атинская обл., Казахстан
Date of birth
Registered
Activity