Чуть больше месяца назад я пересел с PHP на Ruby. Теперь хочу как-то резюмировать этот небольшой опыт и попытаться сформулировать плюсы и минусы.
Дмитрий Кашицын @Halt
Программист, линуксоид, паяльник-железячник
Разработка на PC и производительность — Memory Latency
7 min
11KHerb 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.
Я попытаюсь коротко рассказать о ключевой мысли лекции. Она простая, очевидная и тысячу раз сказанная. Думаю, еще раз повторить азбуку — никогда не повредит.
Я наконец-то на одну такую попал, и очень радовался. На умных мужиков всегда радостно поглядеть и послушать.
Для отчета — кроме Херба, видел живого Олександреску и живого Walter Bright (который "D").
Лекция называлась «Machine Architecture: Things Your Programming Language Never Told You» (здесь можно скачать презентацию и видео) и была про конкретную часть abstraction penalty — Memory Latency.
Я попытаюсь коротко рассказать о ключевой мысли лекции. Она простая, очевидная и тысячу раз сказанная. Думаю, еще раз повторить азбуку — никогда не повредит.
+128
Как сделать так, чтобы компьютер подчинялся человеку, а не наоборот
5 min
2.2KВсем привет.
Под катом — мысли о удобном пользовательском интерфейсе ОС.
Под катом — мысли о удобном пользовательском интерфейсе ОС.
+20
Звук по сети
1 min
15KСтоит у меня дома большой комп, используется в основном как телевизор. Кино смотрим на ноутбуке, ибо монитор не сильно больше, а стоит далеко от дивана. Поэтому приходится подключать к ноутбуку либо наушники, либо вторые колонки, либо ползать под стол и вытаскивать из компа шнур. Надоело.
Звуковые серверы в *nix есть давно, arts, esd — классика. Сейчас стандартом заслуженно становиться pulseaudio, в Ubuntu он устанавливается с релиза 8.04, а в Fedora с 8.
Звуковые серверы в *nix есть давно, arts, esd — классика. Сейчас стандартом заслуженно становиться pulseaudio, в Ubuntu он устанавливается с релиза 8.04, а в Fedora с 8.
+43
Стэнфорд открыл учебные материалы по программированию и ИИ
1 min
6.1KСтэнфордский университет выложил в открытый доступ под лицензией Creative Commons содержание десяти учебных курсов по программирование, искусственному интеллекту, линейным системам и оптимизации. Воспользоваться этими уникальными материалами могут преподаватели и студенты со всего мира.
Каждый курс содержит видеозаписи лекций, полные тексты и тезисы, а также практические задания и экзаменационные билеты. Материалы практически полностью совпадают с той программой, по которой учатся студенты-очники в Стэнфорде. Чтобы скачать материалы, не требуется никакой регистрации или специального запроса. Они просто выложены в открытый доступ в ZIP-архивах примерно по 300 МБ, а видеоролики ещё продублированы на YouTube.
Каждый курс содержит видеозаписи лекций, полные тексты и тезисы, а также практические задания и экзаменационные билеты. Материалы практически полностью совпадают с той программой, по которой учатся студенты-очники в Стэнфорде. Чтобы скачать материалы, не требуется никакой регистрации или специального запроса. Они просто выложены в открытый доступ в ZIP-архивах примерно по 300 МБ, а видеоролики ещё продублированы на YouTube.
+94
Визуальный компьютинг. Часть I
5 min
2.4KКак это часто бывает в ИТ, у этого начинания исключительно академические корни. История началась в 1979 году Стэндфорде, где профессор Джеймс Кларк вместе со своими студентами вёл разработку «Геометрического движка». Задача на тот момент была совершенно фантастической — обеспечить рабочим станциям возможность оперировать трёхмерными изображениями.
Забегая вперёд, отмечу, что сейчас плод её решения вкушают пользователи всех известных мне современных операционных систем, предназначенных для персональных компьютеров. Итак, сегодня я расскажу об эре визуального компьютинга в UNIX и компании SGI, ответственной за её рождение и закат.
+82
Обзор моделей работы с потоками
4 min
26KTranslation
Обзор моделей работы с потоками
Многие люди не понимают того, как многопоточность реализована в различных языках программирования. В наши времена многоядерных процессоров такое знание будет весьма полезно.
Вот вам небольшой обзор.
+62
Мал, да удал: Trojan-Downloader.Win32.Tiny
9 min
23KДоброго дня всем.
В сегодняшнем выпуске много технических подробностей. Так что уж извините, если их слишком много :)
Итак, начинаем. На входе у нас письмо с текстом «Journalist shot in Georgia! See attached video. Password is 123» и с приложенным файлом «Georgia.zip».
Для более или менее полного анализа нам понадобятся:
— Самый Лучший дизассемблер в мире IDA
— Неплохой Отладчик Windbg
— python 2.5 (строго говоря, подойдет любой, просто у меня 2.5)
— Visual Studio какая-нибудь и Microsoft SDK, чтобы собрать небольшую программу на с++.
— упаковщик программ upx
— ну и чего-то еще по мелочи.
Распаковываем присланный нам файл, и видим, что наши подозрения оправданы: видео там и рядом не ночевало.
В сегодняшнем выпуске много технических подробностей. Так что уж извините, если их слишком много :)
Письмо
Итак, начинаем. На входе у нас письмо с текстом «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
+337
Подключаем TraceMonkey
1 min
816Для начала переходим по следующей линке: 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 при разработке основных элементов и его расширений. .
(Быть может есть те, кто по каким-либо причинам пропустил анонс TraceMonkey, так вот: это новый движок для JavaScript, прямой конкурет v8 у Chrome)
Его-то мы, собственно, и будем «подключать».
Так же можно взять с http-зеркала тут. Вытягиваем файлик с версией 3.1b1pre)
Прошу меня простить за подобный вид ссылки, парсер Хабра нормально отображать её не захотел. Так же, забавы ради, стоит отметить, что получить доступ к ftp у меня получилось через хром, но не получилось через сам Firefox.
Далее, в новой вкладке свежевыкачанной лисички пишем about:config, соглашаемся с предупреждением, в фильтр вводим "jit" (без кавычек), переводим значения параметров javascript.options.jit.chrome и javascript.options.jit.content
в состояние true , перезпускаем FireFox и
От себя хочу добавить, что даже яндекс-карты стали работать ощутимо быстрее. Быстрее, чем в Хроме. Так же ускорилась работа самого интерфейса браузера, из-за того что он написан с использованием JavaScript при разработке основных элементов и его расширений. .
+66
SSH для частого использования
2 min
69KНаверное, многие из читающих «Linux для всех» пользуются SSH. Я, например, администрирую большое количество UNIX-систем, и, чтобы быстро получить доступ к нужной машине, приходится использовать возможности протокола на уровне, отличном от примитивного.
+131
Сам себе антивирус
5 min
4.8KЖизнь компьютера идет своим чередом, но в один прекрасный момент комп перезагружается, а потом на рабочем столе появляется надпись «У вас вирусы, антивирус качать тут». Кто-то скачивает и ставит, кто-то сносит винду, кому-то везет и его антивирус ловит заразу… А я вам попробую рассказать как решить проблему самому и зачем это нужно.
+48
Говноконторы. ООО «Прогниение»
1 min
2.4KОбычно в нашей сфере говноконторами называют мелкие конторки, нанимающие студентов и старшеклассников «дизайнерами» по 15 баксов в месяц и продающими «сайты» за 6000 рублей. Заляпали они своими говнообъявлениями, кажется, все стены в Питере.
Есть в России на нашем рынке настоящие говноконторы. Знамениты они телефонным спамом, попытками увода клиентов у своих конкурентов путем клеветы на оных, а также, как выяснилось, ублюдочным отношением к сотрудникам. Набирают иногородних девочек-студенток, ведут двойную бухгалтерию, а недовольных «прессуют» бандюками.
Есть в России на нашем рынке настоящие говноконторы. Знамениты они телефонным спамом, попытками увода клиентов у своих конкурентов путем клеветы на оных, а также, как выяснилось, ублюдочным отношением к сотрудникам. Набирают иногородних девочек-студенток, ведут двойную бухгалтерию, а недовольных «прессуют» бандюками.
+126
Digital Learners — о том, каким бы мог быть процесс нашего обучения
1 min
839На западе существует понятие «Digital Learners», что на русский дословно переводится как «цифровые ученики». Не сложно догадаться, что речь идёт о молодых людях, таких как мы с вами. Людях, привыкших обучаться с помощью интернета: поисковики, подкасты, блоги, интернет энциклопедии… Список этот просто бесконечен. В связи с этим возникает справедливый вопрос — почему преподаватели не используют эти технологии, чтобы научить нас чему-то новому. Ведь если мы этим пользуемся и нам это нравится, то почему не использовать эти технологии для обучения в ВУЗах.
Хочу представить вашему вниманию клип подготовленный американской компанией «Transforming Teaching Through Technology» который произвёл на меня огромное впечатление. Пересматриваю его постоянно и каждый раз остаюсь под впечатлением. Не буду больше говорить, лучше посмотрите сами…
Знание английского обязательно!
Хочу представить вашему вниманию клип подготовленный американской компанией «Transforming Teaching Through Technology» который произвёл на меня огромное впечатление. Пересматриваю его постоянно и каждый раз остаюсь под впечатлением. Не буду больше говорить, лучше посмотрите сами…
Знание английского обязательно!
+28
TraceMonkey — супер-производительный javascript
1 min
1.3KУра! Новое, фантастически быстрое, улучшение движка JavaScript(SpiderMonkey) в Mozilla было опубликовано.
Кодовое имя этого творения — TraceMonkey.
Этот движок использует
+52
Если клиенты задерживают оплату
3 min
24KОдна из мелких неприятностей, которую студии чаще всего получают от клиентов — это несвоевременная оплата счета. Иногда у клиентов «нет денег на счету», иногда «бухгалтер забыл оплатить», иногда «бумага потерялась». Иногда бывает так, что «мы хотели уточнить кое-что у вашего бухгалтера, но не знали, как с ним связаться». Некоторые особо одаренные бухгалтеры отправляют деньги «с НДС» юрлицу, работающему по «упрощенке».
Есть несколько «лайфхаков», которые реально уменьшают количество проблем со счетами и оплатой. Нацелены они, в большинстве своем, на то, чтобы ваш счет не терялся, а у бухгалтерии клиента не было возможности для отговорок.
Есть несколько «лайфхаков», которые реально уменьшают количество проблем со счетами и оплатой. Нацелены они, в большинстве своем, на то, чтобы ваш счет не терялся, а у бухгалтерии клиента не было возможности для отговорок.
+114
HTTP сервер на bash
1 min
15KВполне себе полноценный HTTP сервер, написаный на bash, одной строкой.
Автор сегоизвращения любопытного проекта — Alexey Sveshnikov.
:;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
Автор сего
+149
Супер-юзабильные формы
2 min
54KКак-то на хабре разгорелся спор, как заставить пользователя вводить дату в правильном формате, было множество интересных решений, но заставлять пользователя совершенно не надо — пусть за пользователя основную работу делают машины :-).
На помощь приходит замечательный скрипт «Masked Input Plugin», который позволяет назначить для каждой формы маску, по которой данные будут заполнятся.
Возможно Вы не совсем поняли, но лучше один раз увидеть, чем сто раз услышать.
+120
Почему у свободного программного обеспечения убогое юзабилити и как это исправить
11 min
3.7KПредлагаю хабросообществу свой перевод статьи Мэттью Пола Томаса, которую он недавно опубликовал в своем блоге. Томас — программист из Новой Зеландии, работающий в команде разработчиков проекта Launchpad — детища компании Canonical, более известной как коммерческий спонсор самого популярного Linux-дистрибутива Ubuntu.
Что самое интересное:
— первый вариант этой статьи вышел еще 6 (!) лет назад.
— скорее всего появление второго варианта навеяно недавним громким заявлением основателя компании Canonical Марка Шаттлворта, в котором он предложил сообществу свободного программного обеспечения создать в течении 2 ближайших лет интерфейс операционной системы, который был бы «приятнее» Mac OS X.
— в статье прослеживается четкое разделение между volunteer designers и dedicated designers, при этом первые не пользуются у автора особой лаской. Это интересно, потому что судя по словам Томаса, он таковым и является.
Что самое интересное:
— первый вариант этой статьи вышел еще 6 (!) лет назад.
— скорее всего появление второго варианта навеяно недавним громким заявлением основателя компании Canonical Марка Шаттлворта, в котором он предложил сообществу свободного программного обеспечения создать в течении 2 ближайших лет интерфейс операционной системы, который был бы «приятнее» Mac OS X.
— в статье прослеживается четкое разделение между volunteer designers и dedicated designers, при этом первые не пользуются у автора особой лаской. Это интересно, потому что судя по словам Томаса, он таковым и является.
+73
Приручение py-rrdtool
4 min
13KКак говорится в одной древней мудрости: можно вечно наблюдать три вещи: как горит огонь, как течёт вода и как рисует графики rrdtool. Этот пост как раз о последнем.
И так, что же такое rrdtool? rddtool — замечательная утилита, которая позволяет управлять данными, хранимыми в формать rrd (round-robin database). Данный формат примечателен тем, что изначально предназначен для хранения периодичной информации, причём так, что размер самой БД получается фиксированным (довольно небольшим) независимо от количества данных. При этом сохраняется возможность получать отчёты за продолжительные отрезки времени с произвольной точностью. Наибольшее распространение данная система нашла в системах мониторинга, где, как говорится, лучше один раз увидеть картинку, чем 7 раз прочитать логи. В конце статьи Вы сможете получить нечто, похожее на
И так, что же такое rrdtool? rddtool — замечательная утилита, которая позволяет управлять данными, хранимыми в формать rrd (round-robin database). Данный формат примечателен тем, что изначально предназначен для хранения периодичной информации, причём так, что размер самой БД получается фиксированным (довольно небольшим) независимо от количества данных. При этом сохраняется возможность получать отчёты за продолжительные отрезки времени с произвольной точностью. Наибольшее распространение данная система нашла в системах мониторинга, где, как говорится, лучше один раз увидеть картинку, чем 7 раз прочитать логи. В конце статьи Вы сможете получить нечто, похожее на
+28
Munin — мониторинг сети это просто!
3 min
110KВ жизни каждого системного администратора рано или поздно наступает момент, когда глаз и рук уже не хватает уследить за всеми серверами, то там, то там возникают какие-то проблемы, а для решения их очень хочется узнать что же было «до этого». И именно здесь на выручку приходят они — вел
икие и ужасные системы мониторинга. Долгое время я пользовался Nagios, и до сих пор, при всём удобстве, иначе как монстрообразным назвать не могу. В итоге реально использовались лишь 10% возможностей этой прекрасной системы. Всё изменилось, когда я наткнулся на Munin — прекрасное решение для мониторинга небольших сетей.
+29
Information
- Rating
- 1,855-th
- Location
- Алматы (Алма-Ата), Алма-Атинская обл., Казахстан
- Date of birth
- Registered
- Activity