• Плюсы и минусы лицензий открытого ПО

      Свободное программное обеспечение — широкий спектр программных решений, в которых права пользователя («свободы») на неограниченные установку, запуск, а также свободное использование, изучение, распространение и изменение (совершенствование) программ защищены юридически авторскими правами при помощи свободных лицензий.

      Характеристики лицензий:
      1. Apache Software License
      2. Лицензия BSD
      3. GNU General Public License
      4. Лицензии MIT
      5. Mozilla Public License
      6. Консорциум Всемирной паутины

      Читать дальше →
    • Имитация статических переменных в JavaSctipt

        Статическими переменными называются переменные которые сохраняют свое значение между вызовами функции. Javascript не поддерживает статические переменные и нет ключевого слова static.
        Но так как функции в javascript также являются объектами, мы можем имитировать статические переменные. Все что надо сделать, так это создать переменную которая будет членом функции и частью объекта соответственно, и ее значение тогда будет сохраняться между вызовами.

        Читать дальше →
      • Тест Тьюринга

          Итак сегодня мы поговорим о самом известном тесте для оценки говорящего бота — это тест Тьюринга.
          Тьюринг
          Тест Тьюринга — эмпирический тест, идея которого была предложена Аланом Тьюрингом в статье «Вычислительные машины и разум» (англ. Computing Machinery and Intelligence), опубликованной в 1950 году в философском журнале «Mind». Тьюринг задался целью определить, может ли машина мыслить.
          Стандартное звучание закона: «Если компьютер может работать так, что человек не в состоянии определить, с кем он общается — с другим человеком или с машиной, — считается, что он прошел тест Тьюринга»
          Читать дальше →
        • Пол Экман «Психология лжи»

            Пол Экман. Психология лжи
            Вероятно, многие видели американский сериал «Lie to me». На бит-торрент трекерах он распространяется под названием «Теория лжи», а первый канал его показывает отчего-то под названием “Обмани меня”. Сериал рассказывает о команде суперпрофессиональных психологов, занимающихся расследованиями самого разного рода: от брачных дел до поимки маньяка-убийцы. Объединяет эти расследования только одно: всегда нужно выявить лжеца, узнать в чем он лжет, что скрывает – и тем самым решить дело. Именно распознавание лжи – профессиональная область героев сериала, именно для решения этой задачи их нанимает ФБР, полиция, пожарные и многие другие.

            Однако, немногие видевшие сериал знают, что у доктора Кэла Лайтмана, главного героя, блестяще исполненного Тимом Ротом, есть вполне реальный прототип – выдающийся психолог, профессор Калифорнийского Университета Пол Экман. Манипуляции, микровыражения, техники выявления лжи, столь ярко демонстрируемые в каждом эпизоде, стали известны именно благодаря многолетним исследованиям доктора Экмана и его коллег. В 1985 году он написал книгу «Telling Lie», в которой подробно, почти скрупулезно рассказал о своих работах, разобрал виды и классифицировал признаки лжи, изложил техники выявления обмана в самых различных обстоятельствах: повседневной жизни, уголовных расследованиях и политике. Как оказалось, в закрытых и секретных организациях, вроде ЦРУ, АНБ и ФБР, психологических журналов особенно не читали, а книга, напротив, стала известна, а вместе с ней и её автор. Доктора Экмана начали приглашать для проведения тренингов и семинаров; выяснилось, что люди, стоящие на страже национальных интересов разбираются во лжи ничуть не лучше нас с вами. Т.е. они, как и большинство простых обывателей, думают, что способны выявить обман, но в действительности их результаты в среднем не лучше случайного угадывания, более того они часто просто не знают куда смотреть – таковы результаты исследований Экмана и его коллег.

            В 1992 году «Telling Lie» была переиздана и дополнена с учетом опыта работы с секретными службами, а в 2009 году в издательстве «Питер» эта книга вышла в русском переводе под названием «Психология лжи». Найти книгу можно, к примеру, на ozon.ru
            Читать дальше →
          • МегаФон начинает продавать 3G нетбуки

              image
              МегаФон в скором времени начнёт продовать нетбуки в комлекте «Мобильный Интернет».
              Характеристики нетбука:

              * Производитель «Lenovo Inc»
              * Процессор: Intel ATOM N270 Single Core (1.60Ггц, 533 Мгц, 512КБ)
              * Стандартный интерфейс USB
              * ОС Microsoft Windows® 2000 SP4, Windows® 2000 SP2, Windows® Vista, Mac OS® X 10.4 X или выше
              * Экран: 10,1-дюймовый (1024×600) со светодиодной подсветкой
              * Графический адаптер: Интегрированная видеокарта Intel
              * Оперативная память: Модуль DDR2 1Гбайт
              * Жесткий диск: 160 Гб
              * Оптический привод: отсутствует (внешнее подключение)
              * Сетевые адаптеры: W-LAN (802.11b/g)
              * 3G симкарт Модем: Ericsson F3507g (WCDMA, GPRS, EDGE)
              * Bluetooth: V2.0
              * Матрица камеры: цветная, 1,3 мегапикселя
              * Батарея: 6 ячеечная Lithium-Ion
              * Питание от сети переменного тока 100–240 В, 50–60 Гц
              * Вес — 1,1 кг

              Цена: 15 525 рублей с симкой в комплекте.

              p.s. немного смущает строчка про ОС в описании нетбука, но в целом ничего так машинка.
            • JAPH — perl-скрипты, которые показывают на что способен PERL в умелых руках

                [введение]
                Практически любой программист, сталкивавшийся когда-либо с ВЕЛИКОМ ЯЗЫКОМ ПРОГРАММИРОВАНИЯ — PERL, но не пишущий на нем регулярно, считает, что он очень сложный и запутанный! Практически не понятный простому обывателю! Своей статьей хотел бы подтвердить этот миф и рассказать о таком явлении как JAPH.

                [кульминация]
                JAPH — это аббревиатура, расшифровывается как «Just Another Perl Hacker», введенная в обиход в далеком 1990 году одним широко известный perl-хакером Рэндалом Шварцом (Randal Schwartz aka merlyn). «Но при чем тут perl?» — спросите вы. Ответить на этот вопрос лучше всего одним из самых известный japh'ов, который, на мой взгляд, демонстрирует суть этого явления!

                print "Just another Perl hacker," if "you can't think of anything better..."

                Стоит вам запустить этот код как на экране вы увидите «заветный» слова «Just another Perl hacker,» :-) (Сразу хотел бы оговориться по поводу запитой после слова «hacker». На сколько мне известно, она была в первых скриптах merlyn. Наверное, автор хотел подчеркнуть некую не завершенность, подтолкнуть тех кто это увидит к продолжению. В последствии же она исчезла :-) ) Не правда ли странный скрипт? состоит все во лишь из двух операторов! сначала print, и только потом if, и ни какой; между ними! Казалось бы он не должен работать, но он работает! и работает правильно! В одной строчке скрыто сразу два хака, заложенных в perl. 1-й это то что в условном операторе if в качестве аргумента может быть все что угодно и условие будет истинным, если аргумент не будет 0 или undef(не определенное значение). 2-й это положение операторов if и print. Если в результате проверки условия в if'e должна выполниться одна команда, то она может располагаться в коде перед if'м. Это придает коду более компактный вид. К слову, такая форма записи допустима для любых оператором условия и перечисления.
                Это один из самых простых примеров JAPH, существуют и более интересные:

                ''=~('('.'?' . '{'.(
                '/'.'/'.')'.'.'.'/'.
                '`'.'|'.'`'.'.'.'.'.
                '/'.'`'.'`'.'.'.'/'.
                '/'.'('.':'.'/'.'`'.
                '~'.':'.'/'.','.'`'.
                '`'.':'.'>'.'+'.':'.
                '/'.'|'^'_'.']'.'@'.
                '@'.'['.'@'.'['.'*'.
                '['.']'.'['.'@'.'!'.
                '@'.'@'.'['.'@'.'_'.
                ']'.'@'.'.'.'_'.']'.
                '@'.'@'.'('.'['.']'.
                '@'.'_'.']'.'[').','
                .'$' .'/'.'}'.')' );

                (Monolith by boo) Это прямоугольник, в котором НЕТ букв. Угадайте, что выводит этот скрипт? :-)
                Есть и другие интересные геометрические фигуры:


                not exp log srand xor s qq qx xor
                s x x length uc ord and print chr
                ord for qw q join use sub tied qx
                xor eval xor print qq q q xor int
                eval lc q m cos and print chr ord
                for qw y abs ne open tied hex exp
                ref y m xor scalar srand print qq
                q q xor int eval lc qq y sqrt cos
                and print chr ord for qw x printf
                each return local x y or print qq
                s s and eval q s undef or oct xor
                time xor ref print chr int ord lc
                foreach qw y hex alarm chdir kill
                exec return y s gt sin sort split

                Это знаменитый квадрат состоящий из ключевых слов PERL. Попробуем разобрать его подробнее. Первое, что бросается в глаза это повторяющиеся XOR и AND, которые, как известно, могут заменять;. Теперь можно рассмотреть вывод пробелов между словами: "print qq q q" "print qq q q" "print qq s s". qq говорит о том что последовательность ограниченная разделителем заключена в двойные кавычки. Разделителем тут являются символы q и s. Теперь код можно разделить на четыре части:

                not exp log srand xor s qq qx xor
                s x x length uc ord and print chr
                ord for qw q join use sub tied qx
                xor eval xor print qq q q xor

                int
                eval lc q m cos and print chr ord
                for qw y abs ne open tied hex exp
                ref y m xor scalar srand print qq
                q q xor

                int eval lc qq y sqrt cos
                and print chr ord for qw x printf
                each return local x y or print qq
                s s and

                eval q s undef or oct xor
                time xor ref print chr int ord lc
                foreach qw y hex alarm chdir kill
                exec return y s gt sin sort split

                Рассмотрим подробнее первую часть: not exp log srand XOR не выведет ничего на экран т.к. всегда будет ложь. s qq qx xor эквивалентно s// / Благодаря этой операции в переменной $_ окажется пробел. Следующая часть будет выглядеть так s/ /length uc ord and print chr ord for qw q join use sub tied q/ Эта операция заменит пробел в переменной $_ на length uc ord and print chr ord for qw q join use sub tied q. length uc ord and всегда истина, в расчет не берем. а вот print chr ord for qw q join use sub tied q как раз и напечатает слово «just». Это станет виднее, если преобразовать к следующему виду: print chr ord for('join','use','sub','tied'). Работает это так: for перебирает слова из массива, ord получает код только первого символа каждого слова, а chr обратная к ord функция, возвращает символ по коду. Затем eval выполнит содержимое переменной $_ (как раз и выведет just), а print qq q q выведет пробел. Оставшиеся части разбираются по тому же принципу.
                Существуют japh'и в виде различных причудливых фигур:


                Или от фанатов звездных войн :-)



                [заключение]
                Вообще разбор чужих japh'в хорошая тренировка, особенно для начинающих! Дерзайте! А по адресу http://www.cpan.org/misc/japh можно найти довольно большую коллекцию для опытов и тренировок ;-)
              • Видеоверсия лекции Зиссера в рамках курса IT-предпринимательство

                  В «праздник города Минска», 12 сентября, в актовом зале БГУИР с помпой прошло открытие первого крупнейшего и бесплатного курса по IT-предпринимательству.
                  Первую лекцию прочел самый известный айти-бизнесмен байнета — Юрий Зиссер.
                  image
                  (ссылка, по которой Юрий Зиссер приглашает на курс лекций, 25 секунд)
                  Результатом курса станет презентация лучших стартапов слушателей перед инвесторами. Случиться это в декабре.

                  Мы, IT-JOB.BY, осуществляли видеозапись первой лекции — и выложили ее в интернет.
                  Читать дальше →
                • Использование Google Analytics API для построения статистики посещения страниц сайта

                    При работе над одним из «опекаемых» сайтов возникла необходимость построить некое подобие системы внутренней статистики посещения страниц сайта. На помощь пришел Google Analytics, точнее Google Analytics API.
                    Читать дальше →
                  • Изучаем AIML

                      AIML (Artificial Intelligence Markup Language) — язык разметки для искусственного интеллекта. AIML — подмножество (диалект) XML, он предназначается для создания виртуальных собеседников.
                      Это один из самых первых языков который используется для создания ботов, также он думаю самый простой.
                      Читать дальше →
                    • Асимметричный алгоритм для генерации коротких серийных номеров

                        Введение

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

                        Читать дальше →
                      • Монетизация: лицевой счёт

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

                          Между тем, способ избавиться от этой проблемы прост. Он используется для создания любого банковского счета (кстати Yandex Money тоже его использует). Всего-то и нужно добавить к лицевому счёту контрольное число. Теперь при вводе данных проверяя контрольное число, мы сократим число ошибок при наборе. Конечно полностью мы себя не обезопасим, но вероятность ошибки понизится.

                          Пример: проверка правильности десяти-значного ИНН:
                          1. Вычисляется контрольная сумма со следующими весовыми коэффициентами: (2,4,10,3,5,9,4,6,8,0)
                          2. Вычисляется контрольное число как остаток от деления контрольной суммы на 11
                          3. Если контрольное число больше 9, то контрольное число вычисляется как остаток от деления контрольного числа на 10
                          4. Контрольное число проверяется с десятым знаком ИНН. В случае их равенства ИНН считается правильным.

                          Ещё примеры
                        • Война против «велосипедов»

                            Я работаю в одной компании, занимающейся написанием программного обеспечения в основном в области логистики. Работаю я уже 3 год, прошел через несколько проектов и узнал о тех, которые были до меня. И так уж повелось, что для каждого проекта заводилась своя внутренняя вики, которая по окончании проекта архивировалась и складировалась в таком виде на сервере. Проходило время, люди уходили и приходили, и опыт, накопленный по данному проекту постепенно забывался. Начинался новые проект и конвейер по производству велосипедов запускался вновь.
                            Читать дальше →
                          • Искусство мышления и MindMaps

                              Интеллект-карты (Mind Maps) я начал использовать некоторое время назад, после этой публикации на Хабре. Казалось бы, штука нехитрая, но очень сильно помогает мне в работе и учёбе, позволяя структурировать полученные знания и эффективно планировать свою деятельность. Неплохо прижились карты и при коллективном «мозговом штурме», позволяя получить на выходе одну или несколько диаграмм-результатов, которые, безусловно, более наглядно отражают результат многочасовой дискуссии. Mind Maps — это одновременно и инструмент и методика, очень эффективная и интересная для изучения.

                              Теперь о главном — предлагаю Вашему вниманию несколько книг (и видео-презентацию), рассказывающих о философии Mind Maps, тонкостях работы с «интеллект-картами», их происхождении и применении в различных сферах нелёгкого умственного труда.

                              Тони и Барри Бьюзен
                              Супермышление — The Mind Map Book



                              image

                              Издательство: Попурри, 2007 г.
                              Мягкая обложка, 320 стр.
                              ISBN 985-483-509-Х, 0-563-53732-9,978-985-15-0017-4
                              Тираж: 7000 экз.
                              Формат: 84x108/32

                              Ссылки:
                              Купить на Озоне
                              Скачать PDF версию c torrents.ru

                              Интересовало ли вас когда-нибудь, как работает мозг? Хотели бы вы улучшить свою память, повысить творческие возможности, ясность и эффективность мышления, общий уровень интеллекта и быстроту мысли?
                              В книге «Супермышление», являющейся частью революционной интеллект-серии Тони Бьюзена, вы ознакомитесь с инструментом под названием интеллект-карта (Mind-Map), который позволит достигнуть всего этого, мобилизовав возможности, скрывающиеся в вашем мозгу.
                              «Супермышление» предоставляет полный программно-методологический комплект для вашего сверхмощного биокомпьютера — головного мозга!


                              Ещё книг...
                            • Умберто Эко — Как написать дипломную работу

                                Выпускники высших или средних учебных заведений наверное на всегда запомнят свой диплом, если конечно его писали сами ;). Т.к. мне предстоит впервые это делать, то начал искать литературу по этой теме, чтобы написать хороший диплом.
                                Нашел интересную книгу с названием «Как написать дипломную работу» написал её Умберто Эко. Эта книга будет полезна и тем, кто в будущем будет писать диплом.

                                Умберто рассматривает такие темы как:

                                — ЧТО ЕСТЬ ДИПЛОМНАЯ РАБОТА И ЗАЧЕМ ОНА
                                — ВЫБОР ТЕМЫ ДИПЛОМА
                                — СБОР МАТЕРИАЛА
                                — ПЛАН РАБОТЫ, РАЗМЕТКА И КОНСПЕКТИРОВАНИЕ
                                — КАК НАПИСАТЬ ТЕКСТ
                                — ОФОРМЛЕНИЕ ДИПЛОМА

                                image

                                скачать книгу в pdf
                                купить книгу

                                P.S. Также тем, кто уже написал диплом в прошлом, что или кто (кроме руководителей) помог вам написать ваш диплом? На Хабре будущих выпускников много, думаю эта тема полезная…
                              • Стартап. Учись зарабатывать!

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

                                  А тут еще кризис! Многие люди оказались в неприятных жизненных ситуациях, чего уж говорить. А с другой стороны, вместе веселее, и беда не беда! Можно друг у друга поучиться.
                                  Читать дальше →
                                • Кто такой хороший проектировщик?

                                    Хороший проектировщик – на вес золота. Остальные участники производственного процесса создают тело сайта. Проектировщик – его душу. Так каким же должен быть проектировщик, гордо называющий себя профессионалом?

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

                                    Должен быть немножко типографом. Ему знакомы разноуровневые заголовки, поведение текста и графики, ширина строк, форматы вывода дат и чисел и прочая ерунда, которая кажется ненужной на этапе проектирования. Но потом оказывается, что Константин Илларионович Константинопольский не уместился на одной строке, а жаловаться не на кого.
                                    Читать дальше →