Как стать автором
Обновить
0
0

asdf

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

Поиск похожих проектов на GitHub

Время на прочтение3 мин
Количество просмотров19K
Привет, Друзья!

Гитхаб — прекрасный сайт. Но представьте, что вы нашли проект А, и хотите узнать какие еще существуют похожие проекты. Как быть?

Именно с таким вдохновением уселся я разбирать API GitHub'a. Спустя пару недель свободного времени вот что получилось:



Для большинства проектов находится пара действительно интересных предложений. Вот несколько примеров: angular.js, front end bookmarks, three.js

Основная идея для построения рекомендаций — «Разработчики которые поставили звездочку этому проекту, также поставили звездочку...». А детали идеи, ее недостатки и ссылка на код — ниже.

читайте под катом
Всего голосов 68: ↑63 и ↓5+58
Комментарии33

Инъекции MSIL кода в стороннюю сборку при помощи Mono.Cecil. Реализация принципов АОП в NET

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

Введение


В данной статье я расскажу про то, как можно добавлять свой код в существующие .NET сборки и о том, как это связано с аспектно-ориентированным программированием. Статья будет сопровождаться работающими примерами, так как я считаю, что код — это лучший способ донести идею.

Многие .NET разработчики знают, что для доступа к объектам чужой сборки можно использовать Reflection. С помощью типов из System.Reflection мы можем получить доступ ко многим объектам .NET сборки, просмотреть их метаданные, и даже использовать те объекты, доступ к которым ограничен (например, private методы чужого класса). Но использование Reflection имеет свои ограничения и главная причина этому — данные, с котороми вы работаете через Reflection, все еще считаются кодом. Таким образом, вы, к примеру, можете получить CodeAccessSecurity exception, если сборка, к которой вы пытаетесь применить Reflection, запрещает это. По этой же причине Reflection работает довольно медленно. Но наиболее важным для данной статьи является то, что стандартный Reflection не позволяет изменять существующие сборки, только генерировать и сохранять новые.

Mono.Cecil


Качественно иной подход предлагает бесплатная библиотека с открытым исходным кодом Mono.Cecil. Главное отличие подхода Mono.Cecil от подхода Reflection в том, что данная библиотка работает с NET сборкой как с потоком байт. При загрузке сборки, Mono.Cecil разбирает PE заголовок, CLR заголовок, MSIL код классов и методов и т.д. работая напрямую с потоком байтов, представляющим сборку. Таким образом, с помощью данной библиотеки можно как угодно (в пределах предусмотренного) изменять имеющуюся сборку.
Читать дальше →
Всего голосов 49: ↑45 и ↓4+41
Комментарии14

DIY кислородно-ацетиленовая сварка

Время на прочтение5 мин
Количество просмотров132K
Путь к IT у всех бывает очень тернистый. Я например в детстве хотел быть сварщиком — это же так красиво, когда вокруг летят брызги расплавленного металла! Но как-то не сложилось: мне начали выписывать журнал «Юный техник», где на последней странице одного из номеров рассказывали про робота, управляемого компьютером БК-0010… Но пунктик-то остался…

Также кто-то наверняка помнит передачу «Очумелые ручки», где из пластиковых бутылок делали различные креативные (как бы сказали сейчас) вещи.

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

* В каждом доме BarsMonster.
Читать дальше →
Всего голосов 149: ↑148 и ↓1+147
Комментарии65

Особенности русской разработки

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

По роду занятий я часто общаюсь с различными русскими и западными командами. Очень частый вопрос — есть ли какая-нибудь специфика в работе наших и как это влияет на разработку?

Есть очень неплохая книжка о специфике работы русских вообще. Она называется «Русская модель управления». Ее написал А.П.Прохоров (другой, не олигарх). Не буду ее пересказывать. Основная идея в том, что русские по своей природе могут работать только в двух модах. В нестабильном состоянии они могут свернуть горы. В это время мотивация очень высокая. В стабильном расслабленном состоянии — когда никто не пинает — русские вроде как работают плохо и не сильно утруждаются.

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

Еще один дисклеймер: на реальное поведение людей действует сложившаяся культура в а) команде б) организации в) стране. Причем именно в этом порядке. Есть «прозападные» компании, где влияние наших культурных кодов очень небольшое. В чисто российских компаниях оно просто огромно. Но реально заметить разницу можно только увидев, как различные культуры сталкиваются друг с другом.

Я буду приводить влияние разных факторов в порядке их важности и силы влияния. Чем выше — тем сложнее это изменить и тем больший эффект это оказывает.
Читать дальше →
Всего голосов 531: ↑513 и ↓18+495
Комментарии420

Знакомство с Yii 2 на основе создания простого блога

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

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

Писать полную инструкцию по созданию блога, наверное, не имеет смысла, так как многие шаги схожи с первой версией, но я буду писать именно про те нюансы, которые отличаются, и буду делать акцент на новинках Yii2, которые я заметил в процессе создания приложения. Всё же остальное вы сможете быстро посмотреть в демо приложении, что, наверное, будет более эффективно, чем просто написанный текст.
Читать дальше →
Всего голосов 42: ↑36 и ↓6+30
Комментарии33

Дайджест новых материалов MSDN на русском языке за май и июнь

Время на прочтение2 мин
Количество просмотров8.3K
image


Уважаемые коллеги, представляю вашему вниманию подборку любопытных и, надеюсь, полезных для вас статей, опубликованных на MSDN за май и июнь этого года.

Visual Studio 2012 & SharePoint

Windows Azure & Mobile Services
Читать дальше →
Всего голосов 29: ↑18 и ↓11+7
Комментарии2

Нейросети для чайников. Часть 2 — Перцептрон

Время на прочтение5 мин
Количество просмотров256K
image

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

Язык программирования, на этот раз — C#.
Заинтересовавшихся прошу под кат.
Читать дальше →
Всего голосов 97: ↑86 и ↓11+75
Комментарии41

Взлом матановой капчи на C# — это просто!

Время на прочтение4 мин
Количество просмотров41K
В этом топике я хочу вам рассказать о взломе т.н. «матан-капчи», пример которой был представлен в недавнем топике Матановая капча на PHP — это просто!.
Прочитав статью автора об этой замечательной капче, мне захотелось написать программу для её распознавания, как говорится just for fun ;)
Читать дальше →
Всего голосов 184: ↑176 и ↓8+168
Комментарии88

Valve тестирует биологические обратные связи в своих играх

Время на прочтение1 мин
Количество просмотров33K
Компания Valve начала тестирование новых технологий биологической обратной связи, основанных на выделении пота и движении глаз – это часть общих усилий, направленных на учет эмоций пользователей в играх компании. Майк Амбиндер, постоянный психолог-экспериментатор Valve, обсудил разработку на конференции NeuroGaming Conference and Expo, которая прошла на прошлой неделе в Сан-Франциско.

Как говорит Амбиндер, Valve уже начала эксперименты с потеющими игроками в Left 4 Dead, где уровень выделения пота корелировался с волнением, которое испытывает игрок. Полученные данные передавались программе, и геймплей подстраивался под них (вот тут, кстати, совершенно потрясающая презентация об AI в L4D).

Читать дальше →
Всего голосов 35: ↑33 и ↓2+31
Комментарии62

Взламываем шифры с Python

Время на прочтение1 мин
Количество просмотров51K
Опубликованное неделю назад издание «Взламываем секретные шифры с Python» (Hacking Secret Ciphers with Python) — это учебник по Python для новичков. Авторы разумно рассудили, что учиться программированию нужно на конкретных практических задачах. А что может быть интереснее, чем взлом зашифрованных сообщений?

Книга включает в себя исходный код нескольких шифров и программы для взлома этих шифров. В числе программ на Python — шифр Цезаря, шифр перестановки, шифр простой замены, мультипликативный и аффинный шифры, шифр Виженера и программы для взлома каждого из них. В последней главе рассматривается современный шифр RSA и криптография с открытым ключом.

Книга лежит в открытом доступе, её можно бесплатно скачать в формате pdf (зеркало).
Читать дальше →
Всего голосов 68: ↑62 и ↓6+56
Комментарии14

На Kickstarter идет сбор средств на игру-наследника знаменитого Road Rush

Время на прочтение1 мин
Количество просмотров19K
Сегодня случайно наткнулся на сбор средств на Kickstarter для игры, которую сами разработчики называют «духовным наследником» знаменитой серии Road Rush. Серия игр Road Rush была очень популярна в 90-х (по крайней мере в моей детстве так было) для приставки Sega Mega Drive. Название игры Road Redemption. В процессе просмотр трейлера сразу улавливаются «нотки» той старой олдскульной игры: противников можно бить различными предметами, толкать под встречные машины, ну и сами гонки на мотоциклах никуда не делись. Арсенал стал интересней: появилось огнестрельное оружие, взрывчатка, к оружию ближнего боя из оригинальной игры (в оригинальной версии были кулаки, дубинка, цепь и лом) добавились самурайские мечи, кувалды и много другой арматуры, кроме того в игру обещают добавить полноценный сюжет. Команда создателей подобралась с большим геймдевелоперским и судя по всему геймерским опытом, так что есть все основания полагать, что мы увидим очень неплохую игру.
Читать дальше →
Всего голосов 37: ↑30 и ↓7+23
Комментарии24

27+ ресурсов для онлайн-обучения

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

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

Статья содержит перечень ресурсов для онлайн-обучения, представляющих интерес преимущественно для программистов.

Читать дальше →
Всего голосов 174: ↑163 и ↓11+152
Комментарии68

Плагин для извлечения данных с сайтов

Время на прочтение2 мин
Количество просмотров30K
Коллеги-разработчики выпустили плагин, который умеет извлекать и анализировать плохо структурированную информацию. Проект ориентирован на самый широкий круг пользователей, в частности будет полезен владельцам интернет-магазинов и их клиентам. Что это и как работает — на видео:


Читать дальше →
Всего голосов 77: ↑69 и ↓8+61
Комментарии48

Сети для самых маленьких. Часть седьмая. VPN

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


Покупка заводов в Сибири была стратегически правильным решением для компании “Лифт ми Ам”. После того, как лифты стали ездить не только вверх, но и вниз, дела компании пошли… нет полетели, вверх. Лифты начали разбирать, как горячие пирожки со стола. Название уже не соответствовало действительности и было принято решение о ребрендинге. (На самом деле их замучила судебная тяжба с Моби).
Итак, под крыло ЛинкМиАп планируется взять заводы в Новосибирске, Томске и Брно. Самое время подумать о том, как это хозяйство подключить к имеющейся сети.

Итак, сегодня рассматриваем
1) Возможные варианты подключения, их плюсы и минусы
2) Site-to-Site VPN на основе GRE и IPSec
3) Большая тема: динамическая многоточечная виртуальная сеть (DMVPN) в теории и на практике.

В традиционном видео лишь ёмкая выжимка из статьи, посвящённая работе и настройке DMVPN.

Читать дальше →
Всего голосов 118: ↑118 и ↓0+118
Комментарии43

Отладка Javascript

Время на прочтение5 мин
Количество просмотров146K
Debug Logo

Многие задают мне один и тот же вопрос:
«Как дебажить этот $%*!%$! JavaScript?».

Так вот, во-первых JavaScript — не $%*!%$! А как я его дебажу — сейчас расскажу.

(Примечание: наверное эта статья больше для новичков. Так что не судите строго)

Читать дальше →
Всего голосов 192: ↑178 и ↓14+164
Комментарии78

Как подключить сторонний браузер в приложении на C#

Время на прочтение3 мин
Количество просмотров99K
image

В определенный момент мне стало некомфортно использовать стандартный контрол WebBrowser, предлагаемый Visual Studio.
Причин было несколько:
1. Использовался IE-движок, что само по себе уже сильный аргумент.
2. Кривая работа с JS.
3. Отсутствие масштабирования.
4. Если запустить на машине, где стоит IE6, то все его «достоинства» переносятся на приложение.

В итоге был начат поиск альтернативных решений.
Было рассмотрено 2 SDK. xulrunner(Mozilla) и Awesomium(Chrome)

Подключение обоих происходит примерно одинаково, но на всякий случай опишу оба.
Читать дальше →
Всего голосов 77: ↑67 и ↓10+57
Комментарии52

Разработка приложений для Android с C#

Время на прочтение4 мин
Количество просмотров282K
Monodroid и Monotouch это фреймворки от xamarin, которые дают возможность разрабатывать приложение на языке C# для Android и iOS соответственно. Так как это относительно новая технология информации в интернете не слишком много (за исключением офф сайта и большого количества тем на stackoverflow.com), на русском языке же я не нашел никаких туториалов и информации вообще.

Что бы устранить это недоразумение решил написать небольшой туториал о том как начать разрабатывать приложения под мобильные платформы при помощи этих фреймворков. В этой статье я рассмотрю только Monodroid.

image
Читать дальше →
Всего голосов 65: ↑52 и ↓13+39
Комментарии77

Простейшая кластеризация изображени методом к-средних (k-means)

Время на прочтение5 мин
Количество просмотров86K
Зачастую при поиске движущихся объектов на видео будь то методом вычитания фона, временной разности, оптического потока, в итоге мы получаем множество точек, которые после действия вышеупомянутых алгоритмов помечены как изменившие свое положение относительно предыдущего кадра и относящиеся к переднему плану.

image

После такой обработки встает вопрос о сегментации объектов методом кластерного анализа, о котором пойдет речь ниже и собственно его реализация на C++.
Читать дальше →
Всего голосов 37: ↑35 и ↓2+33
Комментарии23

xNet — C# библиотека для работы с Web

Время на прочтение7 мин
Количество просмотров145K
Постепенно, с изучением C# и .NET Framework, я начал писать различные Helper'ы, которые скрывали рутинный код за вызовом всего одного метода. После это переросло в разработку полноценной библиотеки, которую я хочу вам представить. Данная библиотека написана полностью 'с нуля'.

Так что же такое xNet?


xNet — это библиотека классов для .NET Framework, которая включает в себя:
  • Классы для работы с прокси-серверами: HTTP, Socks4(a), Socks5, Chain.
  • Классы для работы с HTTP 1.0/1.1 протоколом: keep-alive, gzip, deflate, chunked, SSL, прокси и другое.

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

парсим сайты легко и непринуждённо вместе с phpQuery

Время на прочтение3 мин
Количество просмотров111K
Привет хабр, думаю у некоторых из вас возникала потребность стянуть что нибудь нужное с какова нибудь сайта. Но писать тонны функций, чтобы вытащить фразу, это очень муторно, долго и не продуктивно.
Представляю вашему вниманию phpQuery. Это php вариант известного javascript фраемворка — jQuery.
Автор постарался на славу и портировал почти всё что нам нужно.
  • Selectors
  • Attributes
  • Traversing
  • Manipulation
  • Ajax
  • Events
  • Utilities
  • Plugin ports

Давайте посмотрим что она умеет.
Поехали
Всего голосов 42: ↑38 и ↓4+34
Комментарии35

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность