Pull to refresh
142
0
Алексей Сигов @OpenMinded

User

Send message

Расширяем Git и Mercurial репозитории с помощью Amazon S3

Reading time8 min
Views6.8K
Наверняка, многие из вас слышали или знают по собственному опыту, что системы контроля версий плохо дружат с бинарными файлами, большими файлами и в особенности — с большими бинарными файлами. Здесь и далее речь идет о современных популярных распределенных системах контроля версий вроде Mercurial и GIT.

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

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

Далее мы на примере рассмотрим интеграцию систем контроля версий и Amazon S3 (облачного хранилища файлов), чтобы использовать преимущества обоих решений и компенсировать недостатки.

Решение написано на C#, использует API Amazon Web Services и показан пример настройки для Mercurial репозитория. Код открыт, ссылка будет в конце статьи. Все написано более или менее модульно, так что добавление поддержки чего-то кроме Amazon S3 не должно составить труда. Могу предположить, что для GIT настроить будет так же легко.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments23

Будущее WinRT или Going Native 2.0

Reading time11 min
Views21K
Alexandre Mutel — создатель самой быстрой и самой полной .NET обертки для DirectX, единственной, поддерживающей Windows 8 Metro, работает R&D разработчиком игрового движка в SiliconStudio, участник французской демо-группы FRequency.

В последнее время мы слышим много шума о возвращении идеи «Going Native» после эры управляемых языков, таких как Java и .NET. В прошлом году, когда WinRT был только представлен, начали появляться недалекие комментарии, которые утверждали, что что .NET умер, а С++ возвращается во всей своей красе — истинный и единственно верный способ для разработки приложений, в то время, как JIT начинает все чаще появляться в мире скриптовых языков (JavaScript активнее всех использует преимущества JIT). Любой код так или иначе станет нативным перед выполнением — разница лишь в длине пути, по которому он пройдет, чтобы стать нативным, и насколько оптимизированным он будет. Значение слова «native» немного изменилось и стало неразрывно связано со словом «производительность». Даже будучи сильным пропагандистом управляемого языка [C#], его производительность на самом деле ниже хорошо написанного С++ приложения. Получается, мы должны просто принять этот факт и вернуться к C++, когда такие штуки как WinRT будут для нас основой межязыкового взаимодействия? По правде говоря, я бы хотел, чтобы .NET умер, и этот пост о том, почему и зачем.
Читать дальше →
Total votes 56: ↑44 and ↓12+32
Comments45

Bitcoin. Как это работает

Reading time10 min
Views754K
О Bitcoin я узнал относительно недавно, но он меня сразу подкупил своей идеей p2p. Чем глубже я зарывался в их Wiki, тем больше проникался этой идеей. Ее реализация красива и элегантна с технической точки зрения.

Поиск хабра по Bitcoin выдает два топика. Но это скорее новости. По комментариям заметно, что у многих людей, особенно не знакомых с Bitcoin напрямую, возникает много вопросов насчет принципов его работы. Также много догадок, зачастую неверных. Чтобы как-то прояснить ситуацию, было решено написать эту статью.
Читать дальше →
Total votes 111: ↑99 and ↓12+87
Comments221

Рендеринг картинок через WPF на примере Pivot

Reading time2 min
Views2.1K
Pivot не нуждается в представлении. Если вбить это слово в поиск хабра, результатом будут 37 статей, среди которых есть как обзоры, так и туториалы. Поэтому я решил сосредоточить свои усилия лишь на одном аспекте работы с Pivot — на картинках.
Читать дальше →
Total votes 71: ↑49 and ↓22+27
Comments12

Расширяем кругозор. SharpDevelop AddIns

Reading time11 min
Views12K
С SharpDevelop я знаком, наверное, уже около года. На моем мягко говоря не топовом ноутбуке он чувствует себя превосходно и при этом умудряется решать большинство поставленных перед ним задач. Но как и любое другое средство разработки, не всесилен. Время от времени приходится обращаться к Visual Studio и другим инструментам. Иногда выручают самописные Project Templates и File Templates. Иногда — подключение консольных утилит через меню Tools. Но хотелось бы чего-то большего.

SharpDevelop — это, как известно, Open Source. Так что ничего не мешает взять его код и переписать, как вздумается. Но оставим это на крайний случай. У SharpDevelop есть замечательная возможность писать для него плагины или AddIns, как называют их авторы. Поэтому сегодня остановимся на плагинах и разберем, как они работают и как их писать. Для примера напишем простой плагин для поддержки Microsoft Moles Isolation Framework.
Читать дальше →
Total votes 38: ↑26 and ↓12+14
Comments16

Изображаем память с помощью тетрадки в клеточку

Reading time5 min
Views4.5K
Где-то в архивах этого блога можно найти статью про тетрадь в клеточку и ее душевные переживания. Содержание у этой статьи скорее философское, чем прикладное. Но вот сама идея изобразить работу мозга с помощью карандаша и тетради в клеточку показалась мне довольно интересной. Как заметил автор той статьи, работу любой программы можно изобразить на бумаге. Будь то стек вызовов или регистры процессора – их легко можно изобразить с помощью клеточек.

Но это все низкоуровневые процессы. Возможность изобразить их на бумаге скорее теоретическая. На практике от нее мало пользы. Вот если бы можно было с такой же легкостью описывать более высокоуровневые процессы…
Читать дальше →
Total votes 67: ↑55 and ↓12+43
Comments29

Alan.Platform Tutorial (Part 2)

Reading time14 min
Views1.2K
В первой части мы начали моделирование игры в шашки с помощью Alan.Platform. Мы создали библиотеку элементов, к которой добавили один элемент, оператор, управляющий расположением шашек. Также с помощью конструктора мы создали две шашки, расположенные по углам платформы. Все это можно было лицезреть в консоли, в виде текста, который был любезно составлен ObjectDumper'ом.

Как бы ни был хорош ObjectDumper — нашему мозгу трудно разглядеть доску для игры в шашки среди пар ключ-значение. Поэтому нужно создать графическое представление для модели. Этим мы в ближайшее время и займемся.
Читать дальше →
Total votes 5: ↑4 and ↓1+3
Comments0

Alan.Platform Tutorial (Part 1)

Reading time7 min
Views1.3K
В прошлый раз мы говорили о том, что недостаточно создать одну модель мира, с которой будет взаимодействовать мозг. Для тестирования поведения мозга в различных ситуациях необходимо иметь под рукой множество таких моделей. А для этого нужно две вещи: первая — возможность легко и быстро создавать модели, и вторая — возможность повторно использовать созданные модели, изменяя их конфигурацию.

Глядя на эти требования, у меня возникают следующие мысли:
  • модульность, подгружаемые библиотеки с расширениями;
  • конфигурация через XML;
  • представление модели в виде дерева объектов;
Читать дальше →
Total votes 6: ↑3 and ↓30
Comments0

Alan Platform

Reading time13 min
Views1.3K
Приветствую уважаемых профессионалов и просто любителей Искусственного Интеллекта. Давненько я не отваживался написать сюда ничего значительнее комментария. Дальнейшее копание в теории и философии выглядело бы бессмысленно без намека на практику. Пришло время сделать этот намек. Но для начала не мешало бы освежить память.

В предыдущих сериях.


.… Дело было в далеком 1956 году (к этому времени уже существовала серия книг Азимова о роботах). В США, в Стэнфордском университете состоялся семинар, на котором и предложили термин Искусственный Интеллект… Сейчас речь идет скорее о «некоторых характеристиках Искусственного Интеллекта», нежели о самом ИИ... [1]

… На основании данных о строении нейронов, клеток нашего мозга, они пытались воссоздать их структуру. Это было за несколько лет, до того самого семинара, где впервые заговорили об ИИ… Скажем прямо, что хотим, чтобы Искусственный Интеллект был максимально приближен к человеческому... [2]

… Создать что-то функционирующее в точности как наш интеллект куда проще, чем изображать из себя бога и с нуля изобретать систему, которая смогла бы с момента запуска автономно (без вмешательства в архитектуру) развиваться… Признаюсь, сначала у меня была идея использовать виртуальный мир, созданный на компьютере в виде трехмерной интерактивной модели... [3]

… Процесс мышления сводится к работе с информацией… Искусственный интеллект – это вопрос умения увидеть нужное и отбросить все лишнее... [4]

… Это я только раньше думал, что возьму толстый справочник по физиологии человека и найду там ответы на все вопросы… На самом деле, на низком уровне между мотивациями и эмоциями существует прямая связь... [5]

… Если мы хотим, чтобы он развивался как человек и думал как человек, то нужно создать для него мир, максимально соответствующий реальному. Иначе мы получим интеллект уровня пришельца с Альфы Центавра… Для этого во время обучения, когда она будет заползать на освещенные области, ее будет «бить током» – это ей очень не понравится... [6]
Читать дальше →
Total votes 44: ↑30 and ↓14+16
Comments60

Искусственный организм

Reading time9 min
Views3.3K
Это третья статья из цикла о мыслящей программе [1], [2]. Не смотря на то, что ряды читателей редеют, я стараюсь не отступать от своей идеи, которой к слову уже исполнился год. За этот год мы (я и идея) прошли долгий путь, который в большей степени пришлось преодолевать практически вслепую, положившись на собственную интуицию. За это время идея трансформировалась из программы в Искусственный Интеллект, из Искусственного Интеллекта в искусственный интеллект, далее снова в программу, затем в мыслящую программу и, наконец, в свой окончательный вариант – искусственный организм. Именно к нему ведет мое повествование.
Читать дальше →
Total votes 39: ↑33 and ↓6+27
Comments93

Хостинг 2.0

Reading time5 min
Views874
Здесь недавно проводился конкурс идей для стартапов, и эта идея была придумана именно для него за один вечер. Так как она не подошла, я решил выложить ее в открытый доступ в надежде, что кому-то она покажется интересной и полезной.
Читать дальше →
Total votes 26: ↑14 and ↓12+2
Comments69

Бинауральные ритмы

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

Но предже чем начать, я хотел бы уточнить один момент. Я НЕ призываю никого пользоваться этими ритмами. Я НЕ гарантирую, что это абсолютно безопасно для вашего здоровья и не имеет никаких побочных эффектов. Прежде всего я хочу разъяснить, на чем основан принцип работы данной технологии. Если же вы захотите попробовать это на себе, убедитесь, что у вас нет противопоказаний (эпилепсия и пр.) и будьте благоразумны — не злоупотребляйте.
Читать дальше →
Total votes 88: ↑73 and ↓15+58
Comments131

Что чувствует программа?

Reading time10 min
Views2.2K

Предисловие


Представляю вашему вниманию очередную часть опуса о мыслящей программе. Это не самостоятельная статья, а логическое продолжение первой части, так что всех «новеньких» настоятельно прошу пройти по ссылке. А пока мы их ждем, можете заварить себе кофе (чай, сделать морс, возможно, что-то покрепче) и приготовиться к активной мыслительной деятельности – информации много. Сегодня в центре внимания будут органы чувств.
Читать дальше →
Total votes 9: ↑7 and ↓2+5
Comments35

ИИ — Сделай сам

Reading time8 min
Views28K
Очень приятно, что тема искусственного интеллекта не заглохла, а продолжает развиваться. Здесь уже набралось множество статей с прекрасными идеями и интересными комментариями. Глядя на все это многообразие, захотелось вернуться к начатой полгода назад серии публикаций и поделиться некоторыми возникшими с тех пор мыслями и рассуждениями. Все это я попытался скомпоновать в одну большую статью, которая описывает все аспекты того, как будет работать конечный продукт, и содержит соображения по его реализации.
Читать дальше →
Total votes 80: ↑69 and ↓11+58
Comments176

Делаем Искусственный Интеллект

Reading time11 min
Views50K

Пролог

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

На данный момент результатом многочисленных применений анализа и синтеза является некоторое количество информации в виде концепций, частичных моделей архитектуры, идей реализации и прогнозов. Вот и захотелось поделиться с общественностью.
Читать дальше →
Total votes 42: ↑32 and ↓10+22
Comments68

Метод стимуляции мотивации (старая школа)

Reading time6 min
Views2.5K
Иногда мы попадаем в такую ситуацию, когда нам нужно обязательно что-то сделать, но мы никак не можем убедить себя заняться этим. А сроки-то поджимают. Каждый раз, когда мы пытаемся сесть и сосредоточиться на работе, мысли разбегаются и ничего с этим поделать нельзя.
Конечно, можно себя заставить, но это вовсе не гарантирует, что таким образом мы будем работать максимально продуктивно и не отвлекаясь. Так уж мы устроены — одна половина нас постоянно недовольна. Например, когда утром мы слышим будильник, то у нас есть выбор: мы можем угодить нашей ответственной половине, собраться и пойти на работу. В этом случае половина, отвечающая за комфорт, будет протестовать всю дорогу, а то и на работе начнет докучать нытьем. В качестве альтернативы мы можем проигнорировать будильник. Тогда половина, ответственная за комфорт будет вне себя от радости, но проснется и запротестует ответственная часть нас. Для полной гармонии придется идти на компромисс.
В таком случае на помощь может придти психология. Это более гибкий и эффективный способ, чем простое самоубеждение. Существует некоторое количество «около психологичных» методик на эту тему, кое-что из НЛП, time management, но я предпочитаю методы строй школы.
Вся прелесть таких методов в том, что в них не фигурирует всякая мишура вроде визуализации на бумаге, списка дел или ежедневников. Последние в каких-то ситуациях действительно облегчают нам жизнь, но только не тогда, когда казалось бы единственное, что остается сделать — это просто заставить себя заняться делом. Но не каждый может в любой ситуации вот так запросто сказать себе «Встань и иди!». Именно для таких людей в основном и написан данный топик.
Читать дальше →
Total votes 15: ↑9 and ↓6+3
Comments21

История Искусственного Интеллекта, часть 2. Нейросетевой ИИ — неизбежно или невозможно?

Reading time6 min
Views9.8K
Когда я еще только задумывал писать эту статью, я знал о нейросетях только то, что они вроде как копируют процесс мышления нашего мозга. Я и не подозревал, как я тогда ошибался.
В то время, когда кибернетики еще только начинали играть в свои игрушки, другие более серьезные ученые, работали над более серьезной проблемой. На основании нейрофизиологических данных о строении нейронов, клеток нашего мозга, они пытались воссоздать их структуру. Это было за несколько лет, до того самого семинара, где впервые заговорили об ИИ.
Читать дальше →
Total votes 32: ↑28 and ↓4+24
Comments84

История Искусственного Интеллекта, часть 1. Картина без художника.

Reading time6 min
Views15K
Интерес к этой области появился у меня спонтанно. После этого стали появляться все больше и больше идей на эту тему, так что пришлось все это упорядочить. Начать я решил с истории развития Искусственного Интеллекта. Статья получилась довольно-таки большой, так что я разделил ее на две части. Вот первая ее часть, посвященная кибернетике.

Читать дальше →
Total votes 26: ↑24 and ↓2+22
Comments61

Information

Rating
Does not participate
Location
Могилевская обл., Беларусь
Date of birth
Registered
Activity