четверг, 15 декабря 2011 г.

Классы vs Кластеры

Долгое время не понимал отличия двух понятий - классификация и кластеризация.

Но теперь в одной из статей нашел простое определение:

"Классификацией называется отнесение каждого элемента в определенный класс с заранее известными параметрами, полученными на этапе обучения. При этом число классов строго ограничено. Кластеризация - это разбиение множества данных на кластеры."


воскресенье, 6 марта 2011 г.

Написание курсового проекта


Все, кто когда-либо получал или получает высшее образование, имели такую головную боль, как курсовой проект. Простым языком, курсовая работа – это углубление в одну из изучаемых в университете тем. Предполагается, что студент должен проявлять инициативу для более глубокого исследования темы.

Я уже кое-что писал о теме своей курсовой. Не знаю хорошо это или нет, но на моем факультете курсовые начинаются только на третьем курсе – так что мне предстоит писать свою первую курсовую :) На моей кафедре предоставляется полная свобода в выборе темы и преподавателя, но таких студентов, которые приходят и уже знают, чем хотят заниматься, увы, уже почти нету. Забавно, что на написание есть почти два семестра и хочется пораньше начать, чтобы не торопясь всё сделать, но в конце концов остается месяц (а у кого-то и неделя), а ничего ещё не сделано. Уже знал тему в середине прошлого семестра, но всё как-то не хватало времени на неё. Надо делать.

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

Теперь подробнее:

Введение должно содержать пару абстрактных абзацев – что-то вроде истории или характеристики исследуемой области. Потом туда же кидаем абзац содержащий фразу «Актуальность данной темы заключается …». Тут же необходимо кратко определить основные цели работы, а так же то, на что она опирается (например, законодательные акты). Основные вопросы введения: «Что?» и «Для чего?»

Основная часть… это, пожалуй, самое трудное. Тут надо страниц на 20-30 расписать что же мы наисследовали! Что же делать… Обычно вся необходимая информация уже существует, но раскидана по книгам. Берем кучу книг и статей по теме, выдираем из них необходимое, собираем это все вместе. Используем имеющийся у нас интеллект для обработки этой информации, чтобы сделать какие-то выводы. Дальше анализируем эти выводы, пробуем найти изъяны – в процессе нарастают какие-то новые мысли, и мы далее стараемся вырастить из этого комка что-то более менее практически полезное.

Заключение определяет причины-следствия, полученные в ходе исследование. И конечно же мы должны получить ответ на вопрос «Кому же всё это нужно?» - пусть никто не назовет вашу курсовую бессмысленной.

Звучит вроде всё просто. Основная проблема найти те самые источники, упомянутые в «Основной части», а потом всё это понять и вникнуть.


воскресенье, 6 февраля 2011 г.

Шифрование. Криптография

Я начал изучать шифрование данных. Т.к. криптонаука является довольно объёмной, то планирую посвятить ей целый цикл постов.

Изучаю не только из интереса, сколько ещё и из-за необходимости готовить курсовой проект.


В создании постов мне будет помогать товарищ Брюс Шнайер с помощью свой книги «Прикладная криптография. Протоколы, алгоритмы и исходные тексты на языке Си». Книга написана в приятном изложении – это сразу бросается в глаза когда начинаешь читать введение:

«Криптография бывает двух типов: криптография, которая помешает читать ваши файлы вашей младшей сестре, и криптография, которая помешает читать ваши файлы дядям из правительства. Эта книга о втором типе криптографии.»

Немного истории. С давних времен человек один человек старался скрыть информацию, другой наоборот получить доступ к ней – так рождались различные ухищрения, но криптография, которая нас интересует была замечена только в начале двадцатого века. Была даже изобретена специальная роторная машина – устройство на котором основывалась военная криптография в течение почти 50 лет. После первой мировой войны почти все разработки по криптографии велись в засекреченном виде и только в 1949 появилась работа Клода Шэннона “The Communication Theory of Security Systems” и до 67 года снова затишье. Ну а дальше уже история получила свое развитие.

Появились также соответствующие организации от Международной ассоциации криптологических исследований до NSA (National Security Agency) – криптографический орган США, который в свое время даже попытался подавить общественный интерес возникший к криптографии. В настоящее время с криптографией тоже не всё однозначно – во многих странах ею запрещено заниматься без специального разрешения.


Дадим пару терминов.

Криптография – наука о методах обеспечения конфиденциальности.

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

Криптоанализ – наука о методах получения исходного значения зашифрованной информации, не имея доступа к секретной информации (ключу), необходимой для этого.

Шифрование – способ преобразования открытой информации в закрытую и обратно.

Дешифрование – получение открытых данных по зашифрованным.

Все эти определения есть в википедии более подробно

Думаю почерпнуть привычку у paveldev.blogspot.com вставлять демотиваторы, но буду вставлять не демотиваторы, а что попадет под руку интересного – может иногда и демотиваторы :)

воскресенье, 5 сентября 2010 г.

Одесса-мама

Такие дела, что у меня во второй половине августа таки удалось почти по-человечески отдохнуть. Ездили в Одессу - это уже вторая поездка в этот город. Вся легендарная слава Одессы, в том числе уголовная - всё правда! Одесситы народ ушлый и не применут случаем вас обдурить - потому надо быть постоянно внимательным. Было поначалу непривычно после Минска - там ВСЁ отличается. Если совершаешь сделку, то непременно надо поторговаться - это такой одесский ритуал - все одесситы ставят цены с расчетом на торг, и если ты не поторговался, то что им останется, как взять с тебя то, что берется :)

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

Покатались на канатной дороге - на вид очень хлипкое строение - в кабинку можно только по двое садиться, и всё это качается, цепляется за ветки деревьев ))

Одесская канатная дорога

 Одесса - кузница талантов. Проходили мимо оперного театра - говорят внутри там вообще фантастика, но и на классику влияет политика и теперь в нем не пойми кто и как правит.

Фотографий как-то маловато получилось, а сейчас вот сижу и думаю, что следовало бы многое пофотографировать, чтобы хотя бы сюда выложить - на той же Деребасовской есть что посмотреть.

Куда-то сюда приезжает наша белорусско-венесуэльская нефть :)

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

понедельник, 26 июля 2010 г.

Блоггерство нынче полезно и выгодно

Тут крутой мануал как делается настоящий перспективный блог - http://bablorub.blogspot.com/2010/07/blog-post_05.html - это дабы я не потерял запись в ридере.

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

Сегодня была попытка затащить меня на дружеский ресурс Белорусский аниме-форум "Кампай" в качестве пользователя/флеймера. Не стоит пытаться вклиниться туда, где у вас нет перспектив. Да и вообще говоря, сайт мне на первый взгляд "не очень". Ну, думаю со временем будут развиваться и исправят все недочеты - флаг вам ребята.

Ещё один дружеский, но более близкий ресурс -  это конечно же Лулзы и brain'факерства.

Довелось поставить pidgin - очередной мессенджер для всевозможных протоколов обмена быстрыми сообщениями. Добавил туда пока только аккаунт "Вконтакте" и gtalk. Pidgin прост - ничего лишнего, но кажется слегка неудобным - наверное всё дело в привычке к qip. Пробовал и miranda - приятная штука, но последний навороченный pack мне жутко не понравился. Похоже, оставляю Qip.

воскресенье, 11 июля 2010 г.

Вижла!

Вот и у меня добрались руки установить себе Visual Studio 2010! Практики с вижуалом у меня не было ещё, так как всё что мы изучали в университете это Java и C++.

С первого курса на моем компьютере имелась только Microsoft Visual C++ v6.0 - даааа старенький добрый C++ без всяких примочек - на первом курсе этого хватало, и за два семестра тааак к нему привык и полюбил... Впрочем, в третьем семестре тоже приходилось писать на С++ лабы по Численным методам - аккуратненькое консольное программирование. Но теперь, чтобы дать возможность установиться вижле пришлось изрядно почистить диск Ц и удалить и шестую версию MSVC++ и MATLAB и ещё куча всего.

Теперь о '10 версии:

Как установить Visual Studio 2010 - видим, что нет ничего проще, необходимо только некоторое время подождать и пару раз перезагрузить компьютер. Ставим, запускаем и видим аккуратненькую среду разработки, предлагающую широкие возможности для творчества.

Среда разработки действительно классная - ещё бы, лицензия стоит больших денег (что-то вроде $12k). Изначально вы выбираете на чем хотите писать код из списка мелкософтовских разработок - тут и C#, и, Visual Basic, и C++, и прочие ещё неизвестные мне штуки, но вроде как есть возможность добавить и немайрософтовские языки - тот же Java - но для этого у меня уже есть любимый эклипс и менять я его не хочу.

воскресенье, 4 июля 2010 г.

Примочки C#

Начал читать книгу Лабора по C#. После изучения Java, C# изучать легче - постоянно встречаются логические совпадения в конструкциях. Однако уже встречаю и различия - в шарпе есть довольно интересные примчки, которые придуманы для облегчения жизни разработчика, хотя впринципе и в Яве проблем не возникало без них =)

Уже были встречены:

  1. Индексаторы
  2. Использование свойств полей

Индексаторы фактически позволяют иметь массив объектов одного класса. В Java в этом случае вы просто тупо создаете массив, а тут вы получаете доступ к как бы готовому массиву определенному классом.

Свойства полей шарпа помогают облегчить доступ к полям класса - избавляют от использования "геттеров" и "сеттеров", хотя принцип интерпретации в обоих языках остается одинаковый, и это просто некоторое удобство для программистов C#

Обращение к полям:

  1. Java - class.getField,  class.setField, где в классе Class определено поле public type field
  2. C# - class.Field - используется и для получения и для редактирования значения field

Обращу внимание, что имя свойства с большой буквы пишется