Как стать автором
Обновить
33
0
Алексей @pieceofsummer

Пользователь

Отправить сообщение

Подключение Paypal

Время на прочтение7 мин
Количество просмотров6K
Вобщем поставили передо мной на работе задачу организовать прием платежей в наш проект через Paypal. От меня требовалось дать все необходимые данные для настройки аккаунта (сам аккаунт настраивался другим человеком), ну и, собственно, написать скрипт, который и будет принимать данные от paypal-а и начислять деньги юзерам.

Ничего толкового по этой теме на хабре я не нашел. Пришлось разбираться со всем самому. Ниже – результаты этих разбирательств:)
Читать дальше →
Всего голосов 49: ↑41 и ↓8+33
Комментарии40

Точная проверка Email адреса регулярным выражением

Время на прочтение2 мин
Количество просмотров3.4K
Как все знают, один из самых удобных способов проверки e-mail адреса является регулярные выражения. Недавно пришлось столкнулся с проблемой максимально точной проверки адресов. Данная проверка была необходима в системе автоматической рассылки спама опросников, где каждый список адресов подгружался автоматически одним большим файлом. Требовалось исключить максимальное количество заведомо невалидных адресов.
Проблема заключалась в том, что все шаблоны проверки е-мэйла, которые можно встретить в интернете, МСДН и других источниках не удовлетворяли требованиям проверки. Обратившись к первоисточникам в виде RFC 2821 и RFC 2821, я выяснил как же точно и правильно валидирвоть адреса.
Читать дальше →
Всего голосов 47: ↑35 и ↓12+23
Комментарии57

Как обойтись без MS Office Automation

Время на прочтение1 мин
Количество просмотров1.4K
Передо мной встала задача: надо импортировать данные из программы на .Net в XLS-файл (формат MS Excel). Нужно также уметь задавать для данных в файле шрифты, цвета, параметры печати и прочие бесполезные свойства.

Microsoft предлагает для этого запускать Excel и обращаться к нему. И это — единственный способ работы с форматом, официально поддерживаемый компанией. Само собой разумеется, что на каждом компьютере, на котором будут запускать мою программу должен быть установлен MS Office. И никого не смущает, что даже для записи банальнейшей таблицы из 10 ячеек в файл приходится запускать многомегабайтного монстра — Excel.

В общем, я решил найти другой путь. Как оказалось, существует множество библиотек, работающих с XLS-файлами напрямую, без запуска Excel. Но подавляющее большинство из них — платные.

Из бесплатных библиотек я выделил две:
  • MyXLs — написана на C#, лицензия MIT, поддерживает базовое чтение и запись, форматирование. Проект развивается.
  • JExcelAPI — написана на Java, LGPL, очень мощная библиотека — поддерживает практически всё, что может понадобиться (включая картинки и формулы)

Полнофункциональной бесплатной библиотеки для .Net я, к сожалению, не нашёл. Однако, JExcelAPI без труда запускается с помощью IKVM. Это, конечно, не самое изящное решение, но оно работает. А в тех случаях, когда нужны только базовый функционал можно использовать MyXLs.
Всего голосов 10: ↑8 и ↓2+6
Комментарии10

Получение ISBN номера из книги в формате PDF

Время на прочтение1 мин
Количество просмотров4.2K
Написал небольшой скриптик, который ищет в PDF книге ее ISBN номер. Скрипт написан на Python с использованием небольшой библиотеки для работы с ISBN.

По умолчанию поиск производится среди первых 10 страниц.

Библиотека доступна по адресу: www.staff.ncl.ac.uk/d.j.wilkinson/software/isbn.py

Скрипт доступен по адресу: pastebin.com/f7d5c3e90

Вывод выглядит так:

$ ./get-isbn.py test.pdf
ISBN-13: ['978-1-59059-585-5']
ISBN-10: ['1-59059-585-8']
Всего голосов 31: ↑25 и ↓6+19
Комментарии37

re: Store дисконт

Время на прочтение2 мин
Количество просмотров7.7K
Доброе время суток, хабравчане!
В начале августа появилась в интернете новость, что открылся первый Первый re:Store дисконт

Поклонники «яблока» могут порадоваться: в Москве в сети re:Store открылся первый дисконт–магазин. Он расположен в торговом центре «Буденовский» (проспект Буденного, 53, метро «Шоссе Энтузиастов»). У тех, кто предпочитает продукцию Apple, отныне и в России появилась возможность приобрести модели Macintosh и iPod линеек прошлых сезонов со значительной скидкой. Практически в два раза дешевле обойдутся покупателям ноутбук MacBook или плеер iPod nano на 8 ГБ. А профессиональный ноутбук MacBook Pro c экраном диагональю 17 дюймов представлен в re:Store дисконт со скидкой более чем 40%. Здесь же можно приобрести аксессуары для предыдущих поколений плееров iPod — наушники, чехлы, док–станции и многое другое — со скидкой до 50%.
re:Store

Сегодня проезжая мимо, решил зайти.
Читать дальше →
Всего голосов 120: ↑91.5 и ↓28.5+63
Комментарии115

Криптография побочных эффектов

Время на прочтение14 мин
Количество просмотров15K
Благодаря Ричарду Сноудену все больше людей теперь знают, что такое АНБ и чем оно занимается. Исходя из внутренних презентаций, которые были раскрыты, очевидно, что АНБ тратит немало усилий не только на коллекционирование трафика и внедрение “правильных” программ в сети интернет-провайдеров и софтверных гигантов, но и на анализ криптоалгоритмов. В открытый доступ попал 178-страничный документ с бюджетом национальной безопасности на 2013 год. Из него следует, что на проект Consolidated Cryptologic Program было потрачено 11 млрд. долларов. Что же можно сделать за такие деньги? Уж точно потратить с пользой. Например, на строительство гигантского вычислительного центра в штате Юта за 2 млрд. долларов, прямо в логове мормонов. Центр cодержит 2300 м2 площади под серверы, имеет собственную электростанцию в 65 Мегаватт и 60 тыс. тонн холодильного оборудования, чтобы все это охлаждать. В 2012 году из официальных уст было весьма завуалированно заявлено, что АНБ недавно достигла прорывных успехов в криптоанализе и взломе сложных систем. Уж не для этого ли им понадобился новый дата-центр? Гуру криптографии Брюс Шнайер прокомментировал эти заявления и высказал мнение, что АНБ вряд ли сможет в ближайшее время взломать какой-нибудь современный стойкий шифр, например AES. И далее сделал предположение, что АНБ направит свои усилия не на “честный” взлом алгоритмов, а на нахождение уязвимостей в самой реализации этих алгоритмов. Брюс выделил несколько областей, где можно достичь успеха:
  • атака на процедуру генерации ключа, где эксплуатируются халтурные датчики случайных чисел
  • атака на слабое звено в передачи данных (например, канал защищен хорошо, а сетевой коммутатор — плохо)
  • атака на шифры со слабыми ключами, которые еще осталось кое-где по недосмотру системных администраторов (хороший кандидат – RSA с 1024-битным ключом)
  • атака на побочные эффекты

Попробуем разобраться, что такое атаки на побочные эффекты.
Читать дальше →
Всего голосов 28: ↑26 и ↓2+24
Комментарии2

Инъекция кода в .NET CLR: изменение IL-кода во время выполнения программы

Время на прочтение13 мин
Количество просмотров39K

Предисловие



Изменение .NET метода MSIL кода во время выполнения приложения – это очень круто. Это настолько круто, что можно перехватывать вызовы функций (hooking), сделать защиту своего ПО и другие удивительные вещи. Именно поэтому мне уже давно хотелось это осуществить, но была одна проблема – MSIL код компилируется в машинный код с помощью JIT перед тем, как мы сможем что-либо с этим кодом сделать. А так как .NET CLR не документирована и изменяется от версии к версии, то мы и будем искать стабильный и надёжный путь, независимый от точного расположения адресов в памяти.
Читать дальше →
Всего голосов 92: ↑90 и ↓2+88
Комментарии7

Тюнинг консольного клиента MySQL

Время на прочтение2 мин
Количество просмотров4.5K
Мне довольно часто, даже постоянно приходится обращаться к разным базам данных MySQL. Испробовав немало разных GUI клиентов я понял, что они все меня не удовлетворяют. То проблемы с кодировкой, то отсутствует автодополнение кода, то не работает история запросов. В общем пришел я к использованию консольного клиента mysql. И вроде все хорошо, но была пара проблем.
Во-первых заходя в очередную закладку с открытым соединением mysql я тупо смотрел в строку приглашения и старался понять на каком я сервере нахожусь и к какой базе данных подключен. Во-вторых при выводе большого количества полей или при выводе поля с длиной превышающей ширину терминала получалась каша из черточек, букв и палочек :). На днях я покопался в документации и с кое-чем разобрался.
Читать дальше →
Всего голосов 61: ↑56 и ↓5+51
Комментарии55

Чему я научился в Майкрософт

Время на прочтение9 мин
Количество просмотров5.9K
Проработав пять лет в различных командах в Майкрософт я вынес несколько вещей, о которых я даже не подозревал, когда оканчивал колледж. Основные ценности, чему я научился, вынесенные уроки, причина моего крика на друзей, как ни называй, они сослужили мне хорошую службу.

Некоторые из этих вещей специфичны для Майкрософт, но большая часть найдет применение в любой командной/корпоративной среде. Некоторые из них сложны – из-за них тебя могут уволить (а может и хуже), если ты не знаешь, что делаешь.
Читать дальше →
Всего голосов 290: ↑240 и ↓50+190
Комментарии108

Мы ♥ Иконки

Время на прочтение1 мин
Количество просмотров1.2K

Коротко о ясном


В интернете есть множество сайтов где выкладываются разного рода иконки, но по настоящему хороших сайтов мало. Но я нашел такой сайт. Иконки высшего качества собранные воедино совершенно бесплатно распространяются на сайте weloveicons.com. Иконки предоставляются в форматах для Mac OS, Windows и в .PNG

Каждый найдет себе то, что ищет


image image image
Всего голосов 123: ↑96 и ↓27+69
Комментарии46

Sandcastle: генерация документации с диаграммами классов

Время на прочтение5 мин
Количество просмотров5.2K
В продолжение статьи про автогенерацию документации по XML комментариям .NET кода с помощью Sandcastle я решил немного рассказать про компонент Drawbridge. Он позволяет встраивать в документацию кликабельные диаграммы классов экспортируемые из Visual Studio. Можно жмакнуть по классу и сразу перейти к его описанию. Мелочь, а приятно…
Читать дальше →
Всего голосов 18: ↑13 и ↓5+8
Комментарии3

Обзор библиотеки для интерактивной визуализации данных WPF DynamicDataDisplay

Время на прочтение6 мин
Количество просмотров17K
image
Здравствуйте, уважаемые хабрапользователи!

В этом посте я расскажу вам о нашей разработке — бесплатной Open-source библиотеке для интерактивной визуализации данных WPF DynamicDataDisplay.
Немного о нас: мы — это сотрудники лаборатории технологий Microsoft факультета Вычислительной математики и кибернетики Московского государственного университета. Недавно на Хабре была статья о том, каким наш факультет видится студенту первого курса, а теперь этот пост позволит вам немного больше узнать о том, чем занимаются студенты нашего факультета на более старших курсах. Пример того, над чем работают пятикурсники — это наша библиотека для интерактивной визуализации научных данных DynamicDataDisplay (сокращенно — D3).
Читать дальше →
Всего голосов 44: ↑35 и ↓9+26
Комментарии32

Учимся проектировать на основе предметной области (DDD: Domain Driven Design)

Время на прочтение8 мин
Количество просмотров217K

1. Введение



В данной статье я хотел бы рассказать об этих трёх буквах, постоянно находящихся на слуху, но для многих являющихся тайной за семью печатями, а так же привести ряд ресурсов, с которыми неплохо было бы познакомиться при желании продолжить развитие в проектировании на основе предметной области (DDD: Domain Driven Design).


Читать дальше →
Всего голосов 66: ↑54 и ↓12+42
Комментарии25

Qt 4.5 и Qt Creator 1.0 теперь с нами!

Время на прочтение1 мин
Количество просмотров2.4K
Очередная версия библиотеки Qt теперь может радовать каждого. Этот релиз принес разработчикам важный и неожиданный сюрприз: Qt распространяется на LGPL. А также есть и другие приятные подарочки от Qt Software:
  • Значительно увеличилась скорость работы графической подсистемы
  • Улучшена интеграция с WebKit
  • Также Qt был портирован на фреймворк Cocoa от Apple.

Подробный список на официальном сайте

Qt Creator


Qt Creator — это легковесная кросс-платформенная среда разработки, заточенная для разработки под C++ и Qt. Разработка Qt Creator велась с прицелом на две вещи: полностью кросс-платформенная разработка; и простота использования для тех, кто только начинает знакомиться с Qt.

Среда Qt Creator включает эффективный набор средств для создания и тестирования программ на Qt:
  • Продвинутый редактор кода на языке C++
  • Контекстная помощь
  • Визуальный отладчик
  • Управление исходным кодом
  • Средства управления проектом и сборкой

Qt Creator также распространяется под лицензией LGPL 2.1. На данный момент для разработки поддерживаются только десктопные операционные системы (Windows, Linux и Mac OS), но поддержка платформ для встраиваемых устройств возможно будет добавлена в следующие несколько месяцев.

Всех разработчиков на Qt поздравляю с этим знаменательным событием!
Всего голосов 40: ↑35 и ↓5+30
Комментарии28

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

Время на прочтение8 мин
Количество просмотров54K
Морфологический анализатор для русского языка — это что-то заумное? Программа, которая приводит слово к начальной форме, определяет падеж, находит словоформы — непонятно, как и подступиться? А на самом деле все не так и сложно. В статье — как я писал аналог mystem, lemmatizer и phpmorphy на Python, и что из этого получилось.
Читать дальше →
Всего голосов 115: ↑109 и ↓6+103
Комментарии44

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность