
Привет, %username%!
Когда я увидел, как это работает, сказать, что я был в шоке — ничего не сказать. Это довольно простой трюк но после прочтения этой статьи вы больше никогда не будете смотреть на RSA по-прежнему. Это не взлом RSA, это нечто, что заставит вашу паранойю очень сильно разбухнуть.
Читать полностью »
Рубрика «Программирование» - 824
Встраиваем бэкдор в публичный ключ RSA
2015-01-20 в 10:25, admin, рубрики: backdoor, Curve25519, rsa, информационная безопасность, криптография, паранойя mode on, ПрограммированиеКак мы сейчас делаем детский урок про программистов и программирование с трансляцией
2015-01-20 в 7:59, admin, рубрики: gtd, Блог компании Продлёнка, дети, детское образование, обучение, Программирование, Продлёнка, управление проектами, Учебный процесс в IT 
Тестовый прогон
В посте про проблемы детского образования я обещала показать историю подготовки к первому уроку. Это урок про программирование и программистов. Первый он потому, что без IT сейчас никуда. Потому что дети уже давно живут в цифровом мире, в котором мы просто иммигранты.Читать полностью »
Pointer Checker: проверим наши указатели
2015-01-20 в 5:59, admin, рубрики: c++, intel compiler pointer checker, Блог компании Intel, Компиляторы, Программирование
Мы все сталкивались с проблемами, возникающими при неправильной работе с указателями: выход за пределы массива и переполнение буфера, случайная запись в неизвестный кусок памяти, с последующим чтением этого «мусора» в другом месте, а в некоторых отдельных случаях и просто падение всей системы. Иногда это просто «дичь», господа! И нужно уметь обходится с этой «дичью» правильно – вовремя находить и исправлять подобные ошибки и проблемы. Именно этим занялись в «плюсовом» компиляторе Intel ещё несколько релизов тому назад. Кроме того, многие идеи пошли дальше и будут реализованы в «железе» через технологию Intel® Memory Protection Extensions. Давайте-ка посмотрим, как всё это работает в компиляторе.
Читать полностью »
Категории, большие и малые
2015-01-19 в 13:29, admin, рубрики: c++, haskell, математика, Программирование, теория категорий, функциональное программированиеЭто четвертая статья в цикле «Теория категорий для программистов».
Понять пользу категорий можно изучая различные примеры. Категории бывают всех форм и размеров и часто появляются в самых неожиданных местах. Мы начнем с самых простых.
Без объектов
Самая простая категория — без объектов и, как следствие, без морфизмов. Читать полностью »
Миграция проекта со StarTeam в SVN
2015-01-19 в 11:59, admin, рубрики: svn, Программирование, Системы управления версиямиДоброго времени суток!
Кто из вас вообще слышал, что такое StarTeam? Думаю мало кто, в прочем как и я пару месяцев назад.
Я до моего текущего места работы вообще не слышал о таком продукте компании Borland. Если спросить у гугла, то окажется, что данный продукт до сих пор существует и даже развивается, но как вы все догадались, речь пойдёт далеко не о последней версии и даже не о предпоследней. У меня версия 5.3, которая была разработана где-то в 2003 году, а установлена и запущена в оборот здесь в 2004 году. И вот почти 11 лет она работала и решала свои задачи.
Читать полностью »
Clojure — трансдьюсеры, редьюсеры и прочая муть
2015-01-19 в 4:28, admin, рубрики: clojure, fold, lazy collections, reduce, reducers, transducers, муть всякая, Программирование, редьюсеры, трансдьюсеры, функциональное программирование
В последнее время определенную известность получили transducers — новая фишка из еще не вышедшей Clojure 1.7. На момент написания статьи актуальна Сlojure 1.7-alpha5, но уже успело появиться изрядное количество портов трансдьюсеров на разнообразные языки: Python, Ruby, JavaScript, PHP, Java, C++, Lua, Erlang. И… это, по правде говоря, немного обескураживает. Ведь довольно давно (еще в Clojure 1.5) добавили библиотеку reducers. Так вот про редьюсеры никто особо не говорил, никуда ничего не портировал, хотя, вроде как, делают они схожие вещи… Или нет?
Давайте разберемся, для чего нам в Clojure понадобились все эти reducers & transducers (они нам правда нужны?), как они работают, как их использовать… И выясним наконец, не пора ли выкидывать reducers на свалку.Читать полностью »
Tree — убийца JSON, XML, YAML и иже с ними
2015-01-18 в 23:03, admin, рубрики: json, NIH, tree, XML, yaml, Программирование, стандарты Здравствуйте, меня зовут Дмитрий Карловский и я… много думал. Думал я о том, что не так с XML и почему его в последнее время променяли, на бестолковый JSON. Результатом этих измышлений стал новый стандарт формат данных, который вобрал в себя гибкость XML, простоту JSON и наглядность YAML.
Tree — двумерный бинарно-безопасный формат представления структурированных данных. Легко читаемый как человеком так и компьютером. Простой, компактный, быстрый, выразительный и расширяемый. Сравнивая его с другими популярными форматами, можно составить следующую сравнительную таблицу:
| Больше — лучше | JSON | XML | YAML | INI | Tree |
|---|---|---|---|---|---|
| Человекопонятность | 3 | 1 | 4 | 5 | 5 |
| Удобство редактирования | 3 | 1 | 4 | 5 | 5 |
| Произвольная иерархия | 3 | 3 | 3 | 1 | 5 |
| Простота реализации | 3 | 2 | 1 | 5 | 5 |
| Скорость парсинга/сериализации | 3 | 1 | 1 | 5 | 5 |
| Размер в сериализованном виде | 3 | 1 | 4 | 5 | 5 |
| Поддержка поточной обработки | 0 | 0 | 5 | 5 | 5 |
| Бинарная безопасность | 0 | 0 | 0 | 0 | 5 |
| Универсальность | 4 | 3 | 3 | 1 | 5 |
| Распространённость | 5 | 5 | 3 | 3 | 0 |
| Поддержка редакторами | 5 | 5 | 3 | 5 | 1 |
| Поддержка языками программирования | 5 | 5 | 3 | 5 | 1 |
Антарктиду воссоздали в Minecraft
2015-01-18 в 20:08, admin, рубрики: minecraft, антарктида, игры, наука, Научно-популярное, Программирование 
Мартин О'Лири (Martin O'Leary), гляциолог из Университета Суонси, воссоздал Антарктиду в Minecraft. Сейчас модель, с размером 1:1000 от реального континента, содержит более 3 миллиардов блоков. Мартин решился на такую масштабную работу после того, как в Minecraft стали появляться ученые, которые создавали различные модели, включая Манхэттен 19-го века.
И гляциолог решил провести собственную работу, только более масштабную. Понятно, что вручную такую модель создать было бы очень затруднительно, и Мартин автоматизировал процесс. Он написал скрипт на Python, с использованием библиотеки редактирования карты Minecraft pymclevel. Также скрипт использовал данные Open Source Geospatial
Foundation плюс информацию с Bedmap2 (здесь содержатся топографические данные по Антарктике с разрешением 1 км).
Читать полностью »
Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 2 из 6
2015-01-18 в 19:54, admin, рубрики: backface culling, flat shading, game development, отрисовка треугольников, Программирование, Работа с анимацией и 3D-графикой Давайте знакомиться, это я.

То есть, модель моей башки, отрендеренная в программе, которую мы сделаем за ближайшие час-два.
В прошлый раз мы нарисовали проволочную сетку трёхмерной модели, в этот раз мы зальём полигоны. Точнее, треугольники, так как OpenGL практически любой полигон триангулирует, поэтому ни к чему разбирать сложный случай. Напоминаю, что этот цикл статей создан для самостоятельного программирования. Время, которое я здесь привожу — это не время чтения моего кода. Это время написания вашего кода с нуля. Мой код здесь только для того, чтобы сравнить ваш (рабочий) код с моим. Я совсем не являюсь хорошим программистом, поэтому ваш код может быть существенно лучше моего. Любая критика приветствуется, любым вопросам рад.
Пожалуйста, если вы следуете этому туториалу и пишете свой код, выкладывайте его на github.com/code.google.com и им подобные и давайте ссылки в комментариях! Это может хорошо помочь как и вам (другие люди могут чего посоветовать), так и будущим читателям.
Наследие Якоба Бернулли в Wolfram Language (Mathematica)
2015-01-18 в 19:12, admin, рубрики: wolfram language, wolfram mathematica, математика, Программирование, якоб бернулли
Перевод поста Олександра Павлыка (Oleksandr Pavlyk), «Jacob Bernoulli’s Legacy in Mathematica».
Скачать перевод в виде документа Mathematica, который содержит весь код использованный в статье, а также дополнительные материалы, можно здесь.
16 января 2015 г. исполнилось 360 лет со дня рождения Якоба Бернулли.
In[1]:=

Out[2]=

In[3]:=
![]()
Out[3]=
![]()
In[4]:=
![]()
Out[4]=
![]()
Якоб Бернулли стал первым математиком известнейшей семьи Бернулли, к которой принадлежат многие известные математики XVII и XVIII веков.
Математическое наследие Якоба Бернулли очень богато. Он ввел так называемые числа Бернулли (Wiki / MathWorld), нашел решение дифференциального уравнения Бернулли (Wiki / MathWorld), изучал процесс Бернулли (Wiki / MathWorld), доказал неравенство Бернулли (Wiki / MathWorld), вычислил число e (Wiki / MathWorld), а также выявил слабый закон больших чисел (теорема Бернулли) (Wiki / MathWorld).
Читать полностью »
