Search
Write a publication
Pull to refresh
-15
0
Игорь Голов @IgorGolov

Инженер — программист

Send message

Пятнадцать «отмазок» не создавать стартап от Пола Грэма

Reading time21 min
Views6.8K
Евгений Шадчнев опубликовал перевод замечательной статьи Пола Грэма о типичных вымышленных причинах не создавать стартап. «Нет ничего плохого в том, чтобы быть не уверенным. Если вы хакер, думающий об основании компании и вы сомневаетесь перед этим большим шагом, то вы следуете по пути, пройденному многими. Ларри и Сергей не были уверены, стоит ли основывать Google, а Джерри и Фило сомневались, создавать ли Yahoo. На самом деле мне кажется, что наиболее успешные стартапы получаются у сомневающихся хакеров, чем у переполненных оптимизмом ребят от бизнеса».
Читать дальше →

Главный принцип хорошего кода

Reading time9 min
Views86K
За двадцать лет разнообразного программирования я сформулировал, убежден, главнейший принцип хорошего кода. Опираясь на него, мне и моим коллегам удавалось приводить в порядок самый страшный код, объединять в команде малосовместимых программистов и годами поддерживать системы без лишнего нытья.

Прочтение этой статьи: 15 минут
Осмысление методики: 10 минут
Ощутимые результаты: 30 минут

Итак,

Выводим деньги с PayPal на карту: Инструкция для чайников

Reading time3 min
Views498K
Потребовалось мне вывести деньги с PayPal в России, только вот через посредников работать не хотелось.
Пришлось получить карту Payoneer для вывода PayPal на эту карту. Сколько не искал, так и не нашел полноценной, пошаговой инструкции.
Поэтому пишу сам.



ВНИМАНИЕ! Все ниженаписанное является де-юре нарушением законодательства РФ и Украины, и вообще выдумкой автора и плодом работы в фотошопе. Применяя описанное на практике, вы действуете на свой страх и риск, и ни автор, на администрация сайта не несет ответственности за ваши действия.
Читать дальше →

Interplay Medium (часть II). Микро-сервер AXOD (aka Digital Axon)

Reading time6 min
Views2.3K
Это продолжение серии публикация о проекте Interplay Mеdium (первая статья здесь). В этой статье я расскажу о том, как устроено «сердце» Interplay Meduim кластера — микро-сервер AXOD.

Пара слов касательно этимологии: в wiki и на сайте проекта кое-где все еще фигурирует старое название — AXON. Так я и планировал назвать микро-сервер сперва. Однако позднее, размышляя над графическим решением интерфейса, я пришел к идее о четырех базовых фигурах, которые, кроме всего прочего, просились расположиться именно так, чтобы образовать собою название (с буквой N я, после некоторых сомнений, тогда решил примириться). С одной стороны название — суть, отсыл к Маклюэну (и ранее к Хайдеггеру) с их интерпретациями роли технологий и языка (см ссылку в предыдущей статье). С другой — референция к античным представлениям о базовых элементах. Кроме этого, в процессе этимологического исследования я натолкнулся на древнеегипетские источники, содержащие интерпретации фигур, как нельзя кстати рифмующиеся с задуманным мною разделением на «органы чувств». Таким образом, получившееся воплощение, как это порой случается, оказалось сильнее изначальной интенции. В итоге, буква N приобрела новое для нее амплуа и стала буквой D, как намек на электронно-цифровую сущность все затеи :)

Архитектура микро-сервера AXOD


Архитектура микро-сервера AXOD

Читать дальше →

Interplay Medium

Reading time7 min
Views2.7K
Привет друзья.

Хочу с вами поделиться рассказом об еще одном своем проекте Interplay Medium, о котором я упоминал вскользь в своей предыдущей статье про пражский электронный аудио-гид и которым я неспешно занимаюсь последних четыре года. На этот раз речь пойдет о проекте некоммерческом и рассчитанном в первую очередь на публику, с одной стороны, не чуждую разработке электроники, с другой, интересующуюся разного рода эстетическими практикам, на первый взгляд с электроникой не связанными.

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

Представленный ниже текст является отчасти переводом моего собственного текста на английском языке размещенного на сайте моего проекта, однако, не копирует его целиком (не уверен, что так здесь можно, поэтому заранее прошу прощения, модераторы, не бейте! текст мой собственный, оригинальный).

Преамбула


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

Human Generated Environment


Interplay Medium home

Идея о том, что все человеческое существование — суть непрерывная реорганизация окружающей действительности не нова. Еще Витрувий, описывая архитектурные принципы, говорил о создании сооружения, как об преобразовании базовых элементов природы1, позднее идея реорганизации в более широком смысле нашла отклик в эстетике и философии эпохи возрождения, а в ХХ столетии воплотилась в принципах теоретиков и практиков дизайна2. Сегодня мы выводим понятие «дизайн» на еще более абстрактный уровень, говоря об организации информации вообще — как о фундаментальном принципе всех процессов, не только применительно к физическому миру но и на уровне абстрактных отношений и категорий.
Читать дальше →

ILSpy — open source альтернатива .NET Reflector

Reading time2 min
Views55K
Как вы все знаете, Reflector становится платным. Такой шаг компании Red Gate не мог не сподвигнуть разработчиков сделать бесплатную альтернативу. Вот и всем известные разработчики open source решений для .NET IC#Code (на их счету так же IDE SharpDevelop) взялись за разработку своего Reflector'а.
Разработка началась совсем недавно, поэтому проект ещё не оброс всеми нужными фичами, но есть надежда на успешное продолжение.
читать дальше

Облачная защита для .NET приложений

Reading time6 min
Views4.1K
просто облачко
Пожалуй, защита ПО всегда была для меня одной из самых любимых тем. Я обожал придумывать сложные хитроумные проверки лицензионности программы, и с упоением реализовывал их. Я всегда держался принципа, что хакер, чтобы взломать защиту, должен изучить максимум технологий использующихся в программе. Пусть думает о синхронизации потоков, если ему захотелось поставить бряк в алгоритме проверки ключа. Пусть изучает вопросы подсчета COM ссылок, если он хочет вмешаться в мой алгоритм. Пусть думает о том, как представлены битовые карты изображений в памяти, если он решил разобраться, как я сохранил данные ключа.

Да, C++ был почти идеальным языком в этом плане. Но времена меняются, старые технологии уходят и на их место приходят новые более продуктивные и удобные. Так наша команда перешла на .NET. Но в обмен на простоту разработки и удобство отладки, мы в придачу получили в довесок и простоту декомпиляции нашего ПО. Теперь хакер мог не просто обойти лицензионные ограничения, но и получить почти полный исходник нашей программы просто скормив ее рефлектору.
Разумеется, в качестве решения этой проблемы на рынке было представлено множество различных обфускаторов. Но, как ни странно, большинство из них разочаровывали меня сразу с двух сторон: и ценовой политикой (даже минимальная лицензия некоторых превосходила стоимость нашего ПО в несколько раз), и «интеллектуальностью» алгоритма. Так, после некоторых обфускаторов, умудрялись падать даже простые WinForms приложения. Что же касалось WPF, то без долгого-долгого черного шаманства над эксклудами, запустить среднего размера программу не представлялось возможным в принципе.

Так сформировалось понимание проблемы и четкое желание создать свой продукт, сводящий озвученные выше проблемы к минимуму. И появился SaaS обфускатор и протектор .NET кода AppFuscator.com

Обфускатор и протектор .NET кода appfuscator


Читать дальше →

Когда быть хорошим плохо

Reading time4 min
Views65K
Я хотел бы начать с истории:

Учитель керамического дела объявил в день открытия, что разобьет класс на две группы. «Те, кто сидят слева» — сказал он: «будут оцениваться только по количеству проделанной работы, те, кто справа — только по её качеству». Его методика была проста, в последний день он принесет весы и взвесит работу группы «количество»: 50 фунтов горшков это «5», сорок фунтов горшков это «4» и так далее. Те, кто оцениваются по «качеству», однако, должны сделать один, пусть и совершенный, горшок, чтобы получить «5». Время сдачи пришло, и обнаружился любопытный факт: работы лучшего качества были сделаны в группе, оцениваемой по количеству. Похоже, в то время, как группа «количество» упорно штамповала свои работы и училась на своих ошибках, группа «качество» теоретизировали об идеале и, в конце концов, только и могла показать свои старания и грандиозные теории об идеале, а также кучу бесполезной глины.

Читать дальше →

Маленькие и БОЛЬШИЕ компании

Reading time4 min
Views31K


Проработав несколько лет в небольших web агентствах, 5 месяцeв назад я решил попробовать что-то новое и устроился в довольно крупную (3500 сотрудников) IT-компанию. То, что я увидел на новом рабочем месте, оказалось очень далеким от моих ожиданий. По многочисленным просьбам моих друзей и в ответ недавней статье под катом несколько наблюдений о различиях между большими и маленькими IT компаниями. На вкус и цвет, как известно, фломастеры разные. Так что эта статья — далеко не истина в последней инстанции, это то, с чем я столкнулся и что было для меня важным.
Читать дальше →

Ускорим 3G модем при помощи внешней антенны

Reading time4 min
Views499K
Во всех 3G модемах есть внутренние антенны. В некоторых моделях их даже по две-три. Об этих антеннах никто и не задумывается, пока модем без проблем прокачивает через себя пяток-другой Мбит в секунду. Но если скорость составляет считанные килобиты и если компьютер с модемом уже побывал во всех углах комнаты в поисках хоть какого-то сигнала, но так его и не нашёл, то первое, что может помочь – это внешняя антенна.
Читать дальше →

24 статьи про Windows Azure на русском языке

Reading time1 min
Views2.4K
image
Времени остается все меньше и меньше до нового года. Наконец-то могу сказать про самый главный и полезный подарок к новому году. Сегодня мы запускаем абсолютно новый центр по Windows Azure на MSDN, который содержит большое количество полезных материалов на русском языке, а именно cерию статей “Windows Azure – облачная платформа Microsoft”. Краткий список материалов:

Полный список под катом
Читать дальше →

Нейросети для чайников. Начало

Reading time5 min
Views809K


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

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

Заинтересовавшихся прошу под кат.
Читать дальше →

Установка и настройка SVN (сервер+клиент)

Reading time6 min
Views316K
По просьбам трудящихся, а так же учитывая, что есть статья по установке SVN (правда +Trac) под Linux, решил написать краткое описание установки и настройки SVN для Windows.
Ничего нового для людей, хорошо знающих и работающих с SVN, здесь не будет. Цель статьи — помочь некоторому проценту новичков, пребывающих на Хабре, таки осилить изучение этой системы контроля версий.
Читать дальше →

C#, Разговоры с компом или System.Speech

Reading time2 min
Views56K
Недавно я, программист на C#, нашёл в своей панели управления такую фичу, как Распознование речи. Сменил язык на английский, включил, и всю ночь разговаривал с компом. На утро решил написать калькулятор, разумеется говорящий. Потыкав в .Net'овские библиотеки нашёл System.Speech. Звучало многообещающе.
Читать дальше →

Учебный курс. Работа с параллелизмом с Entity Framework в приложении ASP.NET MVC

Reading time12 min
Views13K
Это заключительная часть цикла статей, посвященного разработке с помощью Entity Framework и ASP.NET MVC 3. Первые главы вы можете найти по следующим ссылкам:
В предыдущих уроках вы работали со связанными данными. В этом уроке мы рассмотрим вопросы одновременного доступа. Вы создадите страницы, работающие с сущностью Department, и страницы для редактирования и удаления сущностей Department будут также обрабатывать ошибки параллелизма. Результаты работы изображены на иллюстрациях.

clip_image001
Читать дальше →

Учебный курс. Обновление связанных данных с помощью Entity Framework в приложении ASP.NET MVC

Reading time11 min
Views20K
Это продложение цикла статей, посвященого разработке с помощью Entity Framework и ASP.NET MVC 3. Первые главы вы можете найти по следующим ссылкам:
В предыдущих уроках мы отображали данные. Теперь вы будете их обновлять. Для большинства связей обновить связанные данные можно с помощью внешних ключей. Для связи многие-ко-многим EF не использует напрямую объединённую таблицу, поэтому вы должны вручную добавить и удалить сущности из соответствующих navigation properties.

Результаты представлены на иллюстрациях.

clip_image001clip_image002
Читать дальше →

eBay API: Первые шаги

Reading time5 min
Views31K
Как известно начать изучать что либо труднее всего, eBay API даже при том что у него нормальная документация не исключение. Я сам только недавно начал его изучать и пришлось плотно полазить по доке и сторонним ресурсам прежде чем в голове начала складываться нужная картина.
Этот пост предназначен для тех, кому нужно быстро начать работать с eBay API ну и для меня самого, что бы в будущем ничего не забыть.

Читать дальше →

Непутевые заметки о ASP.NET MVC. Часть 1 (и единственная)

Reading time11 min
Views41K
В последнее время на Хабре часто начали появляться статьи о ASP.NET MVC. Однако в этой статье я бы хотел сделать несколько заметок по поводу построения приложений на вышеприведенном фреймворке: минимальный набор NuGet-packages (без которых грех начинать работу), логирование, подводные камни при использовании стандартных membership-, profile- провайдеров. И, напоследок, почему Web API из MVC 4 — то, что так долго мы все ждали.
Поехали

Что преодолевает сила инновации?

Reading time3 min
Views1.7K
Описанию условий успешности инновации посвящено немало правильных слов и замечательных мыслей. Но вопрос природы сопротивления инновациям, на мой взгляд, незаслуженно обойден. Из смутности представлений происходит множество забавных и печальных продолжений: изобретатели полагаются на силы идей, инвесторы ожидают предложений с очевидными достоинствами, успешные внедренцы именуют инновациями тиражирование существующего…
Мне представляется, что не существует никакой другой силы, препятствующей инновации, кроме силы инерции сознания. Соответственно, единственный предмет, с которым необходимо взаимодействовать инноватору — сознание окружающих.
Читать дальше →

OAuth 2.0 простым и понятным языком

Reading time7 min
Views891K
Логотип OAuth 2.0

На хабре уже писали про OAuth 1.0, но понятного объяснения того, что такое OAuth 2.0 не было. Ниже я расскажу, в чем отличия и преимущества OAuth 2.0 и, как его лучше использовать на сайтах, в мобильных и desktop-приложениях.

Что такое OAuth 2.0


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

Читать дальше →

Information

Rating
Does not participate
Location
Михайловка, Волгоградская обл., Россия
Date of birth
Registered
Activity

Specialization

Application Developer, Database Developer