неділю, 23 грудня 2012 р.

Встановлення MySQL Workbench

Більшість замовлень на розробку веб-сайтів містять вимогу про використання баз даних. Типовою є MySQL, що її встановлено на моєму тестовому майданчику і яку просять використовувати для дрібних проектів. Роботу з цією БД можна організувати за допомогою консольних запитів (mysql-client) або ж за допомогою графічних утиліт. Основними вимогами до такої утиліти є:
  • кросплатформність (бо краще так);
  • зручність використання;
  • підтримка всього, що тільки може бути;
  • хороші відгуки на різних форумах.

суботу, 1 вересня 2012 р.

Підсвітка синтаксису у Vim


Типово vim має підтримку синтаксису лише англійської мови. Інших мов у дистрибутиві я не знайшов, однак довідка vim (:help spell) підказала, що це є файли з розширенням spl.
Невеликий пошук з гуглом, показав, що файли з перевіркою синтаксису, а також файли ймовірних замін знаходяться на http://ftp.vim.org/vim/runtime/spell/

Для перевірки синтаксису, використовуються такі команди як:
  • 'runtimepath' - перелік шляхів, де буде здійснено пошук файлу з перевіркою. Окремі шляхи розмежовуються комою.
  • 'encoding' - кодування файлу.
  • 'spelllang' - мова, за якою здійснюється перевірка.

Якщо ми припустимо, що потрібно здійснити перевірку україномовного тексту, у файлі, який має кодування utf-8, то це можна зробити за допомогою наступних комад:
:set encoding=utf-8
:set spelllang=uk
Тоді vim буде шукати файл uk.utf-8.spl. Якщо ж цей файл є відсутнім у шляху runtime, то vim автоматично спробує його завантажити.

Для перегляду можливих варіантів «правильного» слова - використовуємо комбінацію «z=».

середу, 6 червня 2012 р.

Нові курси від Udacity


Ще тепленька новина. Компанія Udacity розпочинає реєстрацію на нові курси:
1) Вступ до фізики
2) Вступ до статистики
3) Основи алгоритмів
4) Логіка та дискретна математика
5) Тестування програмного забезпечення

Усі курси читаються англійською мовою, до кожної лекції є завдання та конспект.

Особисто я слухав курс з програмування автомобілів на Пайтоні і мені сподобалось. Тому просто рекомендую тим, хто хоче підтягнути знання як із зазначених предметів, так і з англійської.

Успіхів.

Огляд наплечника HP BP849AA

«Сьогодні до нашої тестової лабораторії потрапили декілька наплечників для 17" ноутбуків.» Десь такий текст мав би бути у огляді наплечників, який я шукав кілька днів тому. Причиною такого нестандартного зацікавлення стала остаточна смерть старенького наплечника Wenger SwissGear Pegasus, який я купив у 2009 році в Штатах. Оскільки, компанія не постачає свою продукцію до України, а також не має у поточній лінійці моделі під 17" ноутбуки - довелося топати на hotline.ua та шукати щастя там.
Свій вибір я зупинив на HP BP849AA - наплечнику для 17" ноутбуків від HP, як такому, що має бути сумісним з моїм другом HP Pavilion DV7-4130er. Принаймні таку сумісність декларує виробник :o) Зваживши всі плюси і мінуси, я замовив дану через Fotomag.com.ua, оскільки вони пропонували привезти мені все до центру міста, звідки я міг забрати у зручний час і оплатити товар без вартості доставки імені Нової пошти та інших альтернативних перевізників.

середу, 30 травня 2012 р.

LaTeX, BibTeX та ДСТУ 7.1-2006

В процесі написання дисертації виникає декілька питань, на які я (як і годиться порядному аспіранту) шукав відповіді, і пробував всякі граблі. Наслухавшись багато про LaTeX - я запалився ідеєю зробити свою дисертацію саме в даній системі. Якихось особливих вимог не ставив, окрім автоматичної нумерації таблиць та формул, літератури зі списку використаних джерел тощо. Звісно, що для цього підходить і MS Word і (підозрюю) LibreOffice, але хотілося чогось незвичайного. В ролі редактора тексту було обрано Vim (бо Vim), і робота по трошки почала кипіти.

середу, 7 березня 2012 р.

Network-Manager та автоматичне вимкнення бездротового адаптера

Уже декілька разів стикався з тим, що нові дистрибутиви включають типово режим „у літаку“. Спроби відключити його через графічну утиліту не завжди приводять до успіху, а тому доводиться лізти в термінал, що для недосвідченого користувача є суцільним жахіттям. Насправді все не так страшно, як виглядає, просто потрібно трішки більше знати про обладнання на якому працюємо.

Основними засобами для перевірки параметрів мережевого з’єднання є утиліти ifconfig, iwlist та rfkill (пакунки net-tools, wireless-tools та rfkill, які в принципі є встановлені). Перша - налаштовує мережеві адаптери, друга - дозволяє сканувати мережі, третя - показує поточний стан мережевого безпровідного адапетра. Але про все по-порядку.

Перш за все, слід дізнатися модель мережевого адаптера. Для цього існує утиліта сканування PCI-пристроїв lspci (для USB-пристроїв lsusb відповідно). Її запуск видає повний перелік пристроїв, які наявні у системі, який я скоротив до прийнятного розміру. Мережевий адаптер для безпровідних мереж, який нас цікавить виділено товстим шрифтом. Важливо не сплутати його із Ethernet controller, який теж є мережевим адаптером, але для дротових мереж.

$ lspci
01:00.0 VGA compatible controller: ATI Technologies Inc Madison [Radeon HD 5000M Series]
01:00.1 Audio device: ATI Technologies Inc Redwood HDMI Audio [Radeon HD 5600 Series]
02:00.0 Network controller: Ralink corp. RT3090 Wireless 802.11n 1T/1R PCIe
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)

Якщо пристрій відсутній у даному переліку, можливо його просто немає, а тому слід переконатися, що він підключений. Оскільки Network-Manager керує даним адаптером, то він найбільш ймовірним він є деактивованим, що можна перевірити командою ip link:
$ ip link
1: lo: mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether 60:eb:69:6d:c5:58 brd ff:ff:ff:ff:ff:ff
3: wlan0: mtu 1500 qdisc mq state UP qlen 1000
    link/ether e0:2a:82:12:df:7d brd ff:ff:ff:ff:ff:ff
4: vboxnet0: mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether 0a:00:27:00:00:00 brd ff:ff:ff:ff:ff:ff

Як згадувалось вище, за допомогою утиліти rfkill можна управляти блокуванням безпровідного адаптера. Одним з параметрів є list, задача якого, друк списку поточних адаптерів та статусів блокування :
$ rfkill list
0: hp-wifi: Wireless LAN
    Soft blocked: no
    Hard blocked: no
1: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
32: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no


Інформація про безпровідний пристрій має наступні поля, які розділені двокрапкою: індекс пристрою, фізичну адресу, опис.
З цих полів індекс використовується при доступі до окремого елементу пристрою. М’яке та жорстке блокування є відповідно програмним та апаратним блокуванням.
У тому випадку, коли rfkill показує щось на кшалт Hard blocked: yes слід шукати відповідну кнопку на ноутбуці, яка вмикає адаптер. Після цього, запуск команди iwlist scan повинен вивести на екран (терміналу) перелік доступних Wi-Fi мереж. Якщо такий перелік є, а Network-Manager не показує перелік доступних мереж, ймовірною є проблема конфлікту кількох модулів бездротових адаптерів.

Перегляд списку адаптерів дозволяє виявити проблематичний модуль. Напр.:
0: tpacpi_bluetooth_sw: Bluetooth
    Soft blocked: no
    Hard blocked: no
1: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
2: acer-wireless: Wireless LAN
    Soft blocked: yes
    Hard blocked: no

3: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

Конфліктуючим пристроєм є acer-wireless, а відповідним модулем - acer_wmi. Для того, щоб його видалити з системи назавжди треба додати відповідний запис до теки /etc/modprobe.d/<назва_файлу>.conf, який буде містити один рядок:
blacklist acer_wmi

неділю, 19 лютого 2012 р.

Курси від Стенфорду

На цьому тижні отримав два листи. Перий лист від Себастіана про те, що курси з використання штучного інтелекту у роботехнічних системах починаються з 20-го лютого. Для участі в курсах необхідно володіти Пітоном (короткий огляд). Дозаписатися на курси можна до 27-го лютого.

Другий лист стосувався курсу з проектування та аналізу алгоритмів. Курс затримується до кінця лютого або й початку березня, що пов’язано із проблемами з ліцензуванням та адміністрацією (мабуть не могли погодити що саме читати і коли).

Чекаю.

суботу, 18 лютого 2012 р.

Відключаємо F10 у GNOME3

Нав’язлива прив’язка F10 до кнопки меню у Gnome3 таки поборола мою лінь. Відповідно до запису на форумі ArchLinux, щоб зняти прив’язку - треба відредагувати файл ~/.config/gtk-3.0/gtk.css . Таким чином послідовність дій є наступною:

mkdir -p  ~/.config/gtk-3.0/

cat >> gtk.css

@binding-set NoKeyboardNavigation {
 unbind "F10"
}

* {
 gtk-key-bindings: NoKeyboardNavigation
}

^D

понеділок, 6 лютого 2012 р.

Η μύξα μου

Ξεχάστε. Μπορίτε να μου πείτε εκατό φορές ότι δεν κάνω σωστά. Μπορείτε να μου πείτε χίλια φορές ότι κάνω λάθη. Μπορείτε να μου πείτε εκατομμύρια φορές ότι πρέπει να αφήσω όλα.

Και μόνο εκείνος που δεν θέλει να διορθώσει είναι ο γάιδαρος.  Τα υπόλοιπα είναι οι ήρωες :)

Και στους ήρωες σήμερα αφιερωμένο:

пʼятницю, 27 січня 2012 р.

День 27012012

День пройшов тихо. Прокинувся о 6:30. До 7:00 просидів в душі. До 8:20 на кухні - смажив бліни. Вийшло непогано. О 10:00 був на роботі. О 13-ій на обіді. О 20:00 вдома. В проміжках між 10:00 та 20:00 дописав другу частину програми для створення тренувального набору для нейронних мереж на основі зібраних даних. Таким чином наразі програма коректно обробляє вхідні дані арифметично-логічних інструкцій та інструкцій тестування. На вечір залишаються інструкції переносу. Тут таки вилізла помилка (майбутня), що стосується аналізу вхідних даних, тобто треба перевіряти дані не лише на наявність максимальної довжини кінцевого набору бітів, але і на приналежність до однієї групи.
Паралельно витягнув для себе таку джазову панєнку як Юлія Рома. Пісні можна слухати на сайті.

Τελείωσα με την Άσκηση 4 Μαθήματος 5, Επικοινωνήστε Ελληνικά. Βιβλίο ασκήσεων.
Δεν είχα διάθεση για τίποτα άλλο. Όλα τα συνηθισμένα.

Αποφάσισα να βάζω κάθε μέρα ένα καινούργιο βίντεο εδώ, για να μαθαίνω περισσότερα για την Ελλάδα.
Δηλαδή σήμερα έχω αυτό τραγούδι του Μανόλη Ματσία:


Τα λέμε αύριο. 

пʼятницю, 20 січня 2012 р.