Startup Crash Piter #2

Спустя ровно месяц после первого наступил второй СКТ Piter. О том, что это такое и что было в первый раз я писал ранее.

В этот раз крэш тест проходил в БЦ "Телеком", на Б. Сомпсоневском, д 60 (гуглокарта) и состоялся 6го марта в 14.30, за 2 дня до его объявления.

Read more

CPU load indicator

Что это?

Этот проект может стать хорошим начальным опытом в разработке устройств на микроконтроллере и программировании его, как прошивки мк так и создании управляющей программы.

Собственно это очень простое устройство, плавно показывающее текущую нагрузку процессора меняя яркость светодиода(ну или по желанию можно использовать другую нагрузку). Людям, которые занимаются моддингом особо думаю понравится - нужно только приложить фантазию :) Работает через USB, причём программный, реализованный с помощью прооекта V-USB. В качестве мк выбран Atmega8

Read more

Java: Скачать страницу или файл с веба

Самый простой способ скачать страницу или картинку или ещё что-то в вашем приложении - воспользоваться вот таким классом с одним статическим методом.


/**
* Fetch url
* @author rux
*/
public class Fetcher {

public static String get(String urlString) {
StringBuilder result = new StringBuilder();
String line;
try {
URL url = new URL(urlString);
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));
while ((line = reader.readLine()) != null) result.append(line);
reader.close();
} catch (Exception e) {
// ...
}

return result.toString();
}

}

Read more

Экскурсия в Яndex

Нашему предпреимчивому преподавателю inxaoc удалось организовать студентам нашего универа (СПбГНИУ ИТМО) факультета КТиУ кафедры ПКС в составе 10 человек культурный поход в сердце Питерского Яндекса, находящегося в бизнес-центре Бенуа(около Финляднского вокзала)

Read more

MySQL: Выборка повторяющихся записей

Чтоб получить количество записей, в которых одно или несколько полей одинаковы, можно воспользоваться такой конструкцией:
SELECT `fhash_low`, `fhash_high`, COUNT( * ) `cnt`
FROM `mt_tfiles`
GROUP BY `fhash_low`, `fhash_high`
HAVING `cnt` > 1

Read more

Dosemu: Disk-device/file [..] doesn’t exist

Очень давно у меня в генте был dosemu, который со временем снёс за ненадобностью. Сейчас он снова понадобился, emerge dosemu прошёл успешно, а вот запускать отказался:

$ xdosemu
In file included from built-in global.conf:677
from built-in global.conf:634
Error in built-in global.conf: (line 672)
Disk-device/file /var/lib/dosemu/drives/k doesn't exist.
1 error(s) detected while parsing the configuration-file

И вот чё прикопался?!

10 минут вдумчивого вкуривания конфига /etc/dosemu/global.conf показали что путь к дискам относительный, т.е. был (у меня строка 73)

$_hdimage = "drives/*"

Поменял на

$_hdimage = "/etc/dosemu/drives/*"

Ошибка ушла :)

Kohana & firePHP: nginx выдаёт 502 при включённом debugToolbar

Те, кто следит за количеством запросов, потребляемой памяти, временем выполнения и другими важными показателями при использовании debugToolbar также наверняка используют firePHP - плагин к плагину fireBug для Firefox позволяющий дебажить работу своего веб-приложения.

По понятным причинам, на сайте после apache поставлен nginx. Наверное кто нибудь пытался сделать дамп большого объекта или массива и запихать его в firePHP. PHP скрипт отрабатывает удачно, в логах также всё нормально(код 200):

123.123.123.123 - - [31/Jan/2010:15:08:44 +0300] "GET /somepage/o.O HTTP/1.0" 200 66939 "-" "Mozilla/5.0 (X11; U; Linux x86_64; ru; rv:1.9.1.6) Gecko/20091216 Iceweasel/3.5.6 (like Firefox/3.5.6; Debian-3.5.6-1) FirePHP/0.4"

А вот nginx в браузер выдаёт

502 Bad Gateway

nginx

Так и в моём случае: всё работало нормально, казалось бы изменил совсем чуть-чуть: добавил ещё один вызов метода у модели. И на тебе - 502 Bad Gateway.

Read more

avrdude: прошивка в низкоскоростном режиме USB CDC

Мне дали попользоваться в кампусе программатором avr910 с USB интерфейсом. Он мне был просто необходим для сборки своего программатора(USBAsp).

Проблемма

Простая комманда для чтения флеш памяти:
avrdude -P /dev/ttyACM0 -p m8 -c avr910 -U flash:r:flash.hex:i
Неожиданно выдала:

avrdude: ser_send(): write error: Invalid argument

Cудя по lsusb программатор определился: Bus 004 Device 002: ID 16c0:05e1 VOTI.
Появился соответствующий файл устройства /dev/ttyACM0. Права rw также есть.
Всё казалось бы хорошо..

Read more