Dec 16

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

  1. Возможность на один график наносить два разных типа “линий”, например гистограмма + линия, линия + точки
  2. Бесплатность
  3. Работа с Java SE 6 (ну не хочу я ставить, например, пятую яву только для того, чтобы графики можно было рисовать)
  4. Очень хотелось бы иметь совместимость с JavaBeans для возможности интеграции графиков в Swing-приложения через GUI Builder-ы (да, я ими пользуюсь, они здорово экономят время, хотя и периодически приходится переопределять немало сгенерированного кода)
  5. Наличие нормальной документации (бесплатной!)

Сейчас я использую JFreeChart, но она не устраивает отсутствием 1, 4 и 5. И хотя поддержка 4 добавляется с помощью установки враппера Orson для этой библиотеки, а 5 можно найти в торрентах (для JFreeChart отсутствует бесплатная документация по использованию, т.е. developer’s guide, есть только JavaDoc), но неприятный осадок все равно остается. К тому же о ней (а точнее о её коде) очень нелестно отзывался Вадим Войтюк.

В общем, хотелось бы узнать, на какие альтернативы стоит обратить внимание.

written by fxposter \\ tags: ,

Dec 16

Это уже, наверное, стандарт для Укртелекома - радовать своих пользователей новыми тарифами на ADSL-интернет (в том году было то же самое). Собственно, чего-то подобного я и ожидал - на старыее тарифы цены снизились на 50 грн, а также увеличили вдвое канал от пользователя + добавили новые тариф на 8Мбит. Всё вполне прогнозируемо.

Полез менять себе тариф (до этого был 2Мбит/512Кбит за 200 грн) и увидел удручающую картину:

Доступные тарифы Укртелекома

После чего на странице тарифов было найдено следующее замечание:

Перелік доступних споживачу тарифних планів послуги «ОГО!» визначається технічними характеристиками абонентської телефонної лінії.

Обидно, я был не прочь поставить себе 4Мбита. Ну да ладно, зато теперь платить буду за интернет на 50 грн меньше.

written by fxposter \\ tags:

Sep 12

С днем программиста, коллеги. :)

written by fxposter \\ tags:

Sep 07

Предыдущий пост про DIR-400.

Итак, я собрасля перепрошивать свой рутер неофициальной прошивкой… что я, собственно, и сделал. Между гарантией и стабильной работой я выбрал последнее и ни разу не пожалел о содеянном.

Установка прошивки DD-WRT v24 SP1

Инструкция по установке была взята отсюда, я приведу её здесь в вольном переводе и с моими комментариями:

  1. Скачиваем все файлы отсюда, всё кладем в одну директорию, и распаковываем tftpsrv.zip в ту же директорию. После чего в ней должно находиться минимум 3 файла: tftpsrv.exe, dir400-firmware.bin, linux.bin.
  2. Скачиваем Putty.
  3. Изменяем IP рутера на 192.168.0.1 (по умолчанию оно на этот IP и так настроено, но если это не так - нужно поставить ), а IP вашего компьютера на 192.168.0.2. А маску подсети ставим в обоих случаях в 255.255.255.0.
  4. Выключаем рутер из сети (но оставляем подключенным к компу). Запускаем Putty и настраиваем на telnet-сессию с ip = 192.168.0.1 и port = 9000, но еще не коннектимся.
  5. Запускаем в консоли ping 192.168.0.1 -n 900 и подключаем рутер к сети.
  6. Консоль отводим на задний план, но так, чтобы её было видно, на передний выводим Putty. Когда в консоли выведется два успешных пинга к рутеру - запускаем telnet-сессию в Putty (какая-то ерунда, в общем, до двух или после трех пингов к рутеру уже сконнектится будет нельзя). После того, как сконнектились - можно отключать пингование (Ctrl-C).
  7. Если не получилось сконнектится - переходим к пункту 4.
  8. Запускаем tftpsrv.exe (если не помним, что это такое - переходим к пункту 1).
  9. Теперь мы будем работать исключительно с Putty.
  10. Вводим ip_address -l 192.168.0.1/24 -h 192.168.0.2 (когда я перепрошивал в этой строке был бок). Enter:
    RedBoot> ip_address -l 192.168.0.1/24 -h 192.168.0.2
    IP: 192.168.0.1/255.255.255.0, Gateway: 0.0.0.0
    Default server: 192.168.0.2
  11. Вводим fis init и Enter:
    RedBoot> fis init
    About to initialize [format] FLASH image system - continue (y/n)?
  12. Вводим y и снова нажимаем Enter. Ждем-с…
    About to initialize [format] FLASH image system - continue (y/n)? y
    *** Initialize FLASH Image System
    And a descriptor for the configuration data size = 10000
    ... Erase from 0xbffe0000-0xbfff0000: .
    ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: .
  13. Вводим load -r -b 0x80041000 linux.bin. Enter.
    RedBoot> load -r -b 0x80041000 linux.bin
    Using default protocol (TFTP)
    Raw file loaded 0x80041000-0x803bafff, assumed entry at 0x80041000
  14. Вводим fis create linux. Enter. Снова ждем. :)
    RedBoot> fis create linux
    ... Erase from 0xbfc40000-0xbffba000: ........................................................
    ... Program from 0x80041000-0x803bb000 at 0xbfc40000: ........................................................
    prog_ok
    flash_addr = 0xbfc40000
    mem_addr = 0x80041000
    entry_addr = 0x80041000
    length = 0x37a000
    img_size = 0x37a000
    ... Erase from 0xbffe0000-0xbfff0000: .
    ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: . 
  15. Вводим fconfig. Enter.
    RedBoot> fconfig
    Run script at boot: true
  16. Enter.
    Run script at boot: true
    Boot script:
    .. fis load -l linux
    .. exec
    Enter script, terminate with empty line
  17. Вводим fis load -l linux. Enter.
    >> fis load -l linux
  18. Вводим exec. Enter.
    >> exec
  19. Enter.
    >>
    Boot script timeout (1000ms resolution): 2
  20. Enter.
    Use BOOTP for network configuration: false
  21. Enter.
    Gateway IP address:
  22. Enter.
    Local IP address: 192.168.0.1
  23. Enter.
    Local IP address mask: 255.255.255.0
  24. Enter.
    Default server IP address: 192.168.0.100
  25. Enter.
    Console baud rate: 9600
  26. Enter.
    GDB connection port: 9000
  27. Enter.
    Force console for special debug messages: false
  28. Enter.
    Network debug at boot time: false
  29. Enter.
    Update RedBoot non-volatile configuration - continue (y/n)?
  30. Вводим y. Enter.
    Update RedBoot non-volatile configuration - continue (y/n)? y
    ... Erase from 0xbffe0000-0xbfff0000: .
    ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: .
  31. Вводим reset. Enter.
    RedBoot> reset

Рутер начнет перезагружаться, но Putty остается “висеть”. Я на всякий случай подождал 2 минуты и выключил Putty.

Рутер будет доступен по адресу 192.168.1.1, соответственно, нужно будет изменить настройки сети на компьютере (например, изменить IP на 192.168.1.2).

Всё. Перед нами полноценно работающий рутер, доступный как по веб интерфейсу, так и через telnet (потом можно будет настроить SSH) по адресу 192.168.1.1, а также имеющий полноценный линукс внутри. :)

Пользуйтесь. Был рад помочь.

Вышеописанные действия приведут к потери гарантии на рутер. Пользуйтесь инструкцией на свой страх и риск. Автор не несет ответственности за приход в негодность Вашего оборудования в связи с выполнением вышеописанных действий.

written by fxposter \\ tags:

Aug 26

На Хабре появилась замечательная статья “Наследование шаблонов в Smarty“. Впервые эта штука мне встретилась в Django, теперь вот есть и для Smarty. Посмотрел на систему view в Symfony… Эх… Для реализации подобного, навскидку, прийдется довольно сильно переделать внутренности этого фреймворка.

written by fxposter \\ tags: , , ,

Aug 22

Начало.

Прошивка 1.02 beta 8

Когда я ставил себе прошивку 1.02 beta 1, тогда же была доступна и прошивка 1.02 beta 7, но ставить её нужно было не через веб-интерфейс, а несколько по-иному (по telnet, но это пофиг, главное, что не было нигде инструкций - как конкретно грузить это всё), с чем мне было влом париться. Но вот две недели назад вышла очередная beta, на этот раз восьмая, которую можно было ставить как обычно.

Недолго думая - поставил. Запускаю торрент - работает. Думаю - “Замечательно”, и вижу, что закачка прекращается, а рутер опять наглухо виснет. Сука!

Итог был таков: рутер был отключен до появления очередной прошивки… и продолжалось это вплоть до появления на форуме этого сообщения:

А не конец заключается в том, что на самом деле из DIR-400 очень даже неплохая штука, когда на нее ставишь линукс… Работает - безотказно, как автомат Калашникова…

Скорость повышается реально… Я уже перепробовал все что только можно было перепробовать… После перехода на другого прова - даже коннектиться перестал… У Длинка на сайте выложена новая прошивка… Встать то она встала у меня - пропало радио. Вернее, саму точку вижу, но передачи данных нет…

Откатиться на предыдущую прошивку еле удалось…

Пришлось много гуглить, прежде чем решил проблему… Теперь - с Длинком нет проблем!

ВЫВОД: Разработчики выпустили неплохую железку, умную… Но вот их программеры - никуда не годятся…

P.S. - Если бы так строители строили дома как программисты от Длинка пишут программы, то первый бы залетевший воробей разрушил бы всю цивилизацию!!!

Оно заставило меня забросить всё и… начать думать, что бы это могло значить… Через пару минут меня осенило и я полез искать другую прошивку, неофициальную, в англоязычном интернете. И я её нашел!

Прошивка DD-WRT v24 SP1

Поподробнее о том, что это за прошивка (а точнее - серия прошивок) можно узнать на сайте DD-WRT, а конкретнее - в About. Сразу скажу, что это не прошивка к конкретно моему модему, эти прошивки работают на куче устройств, так что возможно на Ваш рутер её тоже можно поставить, создаются эти прошивки энтузиастами, и качество их заслуживает всяких похвал.

В общем, почитав о прошивке, поговорив с автором вышеприведенного сообщения я был готов перепрошить этот рутер, потерять на него гарантию, и обрести взамен качественно работающий продукт…

Продолжение следует…

written by fxposter \\ tags:

Aug 21

Млять, ну вот нахера я купил этот грёбанный рутер!

Еще несколько дней назад ничего лучше этой фразы я о своём новом рутере D-Link DIR-400 сказать не мог - настолько всё было плохо, но обо всём попорядку.

Где-то три-четыре недели назад я всё-таки решился купить себе рутер. Главными требованиями были:

  • 4 LAN-порта
  • Wi-Fi

На одной из фирм мне посоветовали (месяца два назад) взять DIR-400, но тогда мне хотелось взять не рутер, а модем с вышеописанными характеристиками и я отказался. Но так как D-Link DSL-2640U мне у нас в продаже найти так и не удалось - я всё-таки передумал и решил взять модем. Недолго думая - поехал в магазин и взял этот DIR-400, даже не повсмотрев в интернете, что это такое и какие о нём отзывы… Я офигенно лоханулся…

Прошивка 1.00

Просто пиздец! Короче говоря, при попытке открыть QIP и законнектится в Google Talk - модем тупо подвисал и иногда перезагружался, а иногда приходилось тупо его перегружать вручную путём передергивания кабеля питания. Иногда подобное приходилось делать еще в случае отправки POST-запросов в браузере.

Полез на форум D-Link’а… И нашел это (вкратце - 30 страниц о том, что это не рутер, а хрень полнейшая). Опечалился, но попробовал поставить новую прошивку…

Прошивка 1.01

В D-Link работают сплошные уёбки! По сравнению с предыдущей прошивкой не изменилось, ровным счетом, ничего.

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

Прошивка 1.02 beta 1

О чудо! Google Talk заработал! QIP перестал “ложить” рутер! Браузер работает замечательно! Я уже возрадовался, но… Радость моя продлилась вплоть до первого запуска uTorrent - рутер успешно попытался что-то грузить, но через пол минуты сдался и ушел гулять висеть.

Всё-таки уёбки!

Продолжение следует…

written by fxposter \\ tags:

Aug 18

Сегодня узнал, что в Приватбанке среди программистов пропагандируют подход, описанный в Getting Real, более того - все программисты обязательно должны прочитать эту книгу и знать принципы, изложенные в ней. Удивлён. Очень удивлён. Приватбанку респект.

written by fxposter \\ tags: ,

Aug 15

… но как-то необычно. Если в предыдущие разы просто переставали учитываться читатели, использующие Google Reader, то в этот раз такие читатели есть, но их количество по непонятным причинам уменьшилось ровно в 10 раз:

FeedBurner 13/08/2008


Никто не знает, что случилось в этот раз?

written by fxposter \\ tags:

Aug 10

PS. dimm, спасибо. :)

written by fxposter