Как стать автором
Обновить
-14
0
Игорь Голов @IgorGolov

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

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

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

Время на прочтение21 мин
Количество просмотров6.7K
Евгений Шадчнев опубликовал перевод замечательной статьи Пола Грэма о типичных вымышленных причинах не создавать стартап. «Нет ничего плохого в том, чтобы быть не уверенным. Если вы хакер, думающий об основании компании и вы сомневаетесь перед этим большим шагом, то вы следуете по пути, пройденному многими. Ларри и Сергей не были уверены, стоит ли основывать Google, а Джерри и Фило сомневались, создавать ли Yahoo. На самом деле мне кажется, что наиболее успешные стартапы получаются у сомневающихся хакеров, чем у переполненных оптимизмом ребят от бизнеса».
Читать дальше →
Всего голосов 83: ↑81 и ↓2+79
Комментарии53

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

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

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

Итак,
Всего голосов 168: ↑120 и ↓48+72
Комментарии174

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

Время на прочтение3 мин
Количество просмотров497K
Потребовалось мне вывести деньги с PayPal в России, только вот через посредников работать не хотелось.
Пришлось получить карту Payoneer для вывода PayPal на эту карту. Сколько не искал, так и не нашел полноценной, пошаговой инструкции.
Поэтому пишу сам.



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

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

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

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

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


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

Читать дальше →
Всего голосов 11: ↑9 и ↓2+7
Комментарии4

Interplay Medium

Время на прочтение7 мин
Количество просмотров2.7K
Привет друзья.

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

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

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

Преамбула


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

Human Generated Environment


Interplay Medium home

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

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

Время на прочтение2 мин
Количество просмотров52K
Как вы все знаете, Reflector становится платным. Такой шаг компании Red Gate не мог не сподвигнуть разработчиков сделать бесплатную альтернативу. Вот и всем известные разработчики open source решений для .NET IC#Code (на их счету так же IDE SharpDevelop) взялись за разработку своего Reflector'а.
Разработка началась совсем недавно, поэтому проект ещё не оброс всеми нужными фичами, но есть надежда на успешное продолжение.
читать дальше
Всего голосов 56: ↑48 и ↓8+40
Комментарии44

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

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

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

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

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


Читать дальше →
Всего голосов 50: ↑39 и ↓11+28
Комментарии37

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

Время на прочтение4 мин
Количество просмотров65K
Я хотел бы начать с истории:

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

Читать дальше →
Всего голосов 172: ↑157 и ↓15+142
Комментарии66

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

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


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

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

Время на прочтение4 мин
Количество просмотров498K
Во всех 3G модемах есть внутренние антенны. В некоторых моделях их даже по две-три. Об этих антеннах никто и не задумывается, пока модем без проблем прокачивает через себя пяток-другой Мбит в секунду. Но если скорость составляет считанные килобиты и если компьютер с модемом уже побывал во всех углах комнаты в поисках хоть какого-то сигнала, но так его и не нашёл, то первое, что может помочь – это внешняя антенна.
Читать дальше →
Всего голосов 54: ↑53 и ↓1+52
Комментарии95

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

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

Полный список под катом
Читать дальше →
Всего голосов 39: ↑22 и ↓17+5
Комментарии3

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

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


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

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

Заинтересовавшихся прошу под кат.
Читать дальше →
Всего голосов 258: ↑226 и ↓32+194
Комментарии91

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

Время на прочтение6 мин
Количество просмотров312K
По просьбам трудящихся, а так же учитывая, что есть статья по установке SVN (правда +Trac) под Linux, решил написать краткое описание установки и настройки SVN для Windows.
Ничего нового для людей, хорошо знающих и работающих с SVN, здесь не будет. Цель статьи — помочь некоторому проценту новичков, пребывающих на Хабре, таки осилить изучение этой системы контроля версий.
Читать дальше →
Всего голосов 75: ↑66 и ↓9+57
Комментарии37

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

Время на прочтение2 мин
Количество просмотров56K
Недавно я, программист на C#, нашёл в своей панели управления такую фичу, как Распознование речи. Сменил язык на английский, включил, и всю ночь разговаривал с компом. На утро решил написать калькулятор, разумеется говорящий. Потыкав в .Net'овские библиотеки нашёл System.Speech. Звучало многообещающе.
Читать дальше →
Всего голосов 22: ↑19 и ↓3+16
Комментарии10

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

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

clip_image001
Читать дальше →
Всего голосов 26: ↑20 и ↓6+14
Комментарии4

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

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

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

clip_image001clip_image002
Читать дальше →
Всего голосов 38: ↑31 и ↓7+24
Комментарии0

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

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

Читать дальше →
Всего голосов 33: ↑30 и ↓3+27
Комментарии17

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

Время на прочтение11 мин
Количество просмотров41K
В последнее время на Хабре часто начали появляться статьи о ASP.NET MVC. Однако в этой статье я бы хотел сделать несколько заметок по поводу построения приложений на вышеприведенном фреймворке: минимальный набор NuGet-packages (без которых грех начинать работу), логирование, подводные камни при использовании стандартных membership-, profile- провайдеров. И, напоследок, почему Web API из MVC 4 — то, что так долго мы все ждали.
Поехали
Всего голосов 60: ↑48 и ↓12+36
Комментарии72

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

Время на прочтение3 мин
Количество просмотров1.7K
Описанию условий успешности инновации посвящено немало правильных слов и замечательных мыслей. Но вопрос природы сопротивления инновациям, на мой взгляд, незаслуженно обойден. Из смутности представлений происходит множество забавных и печальных продолжений: изобретатели полагаются на силы идей, инвесторы ожидают предложений с очевидными достоинствами, успешные внедренцы именуют инновациями тиражирование существующего…
Мне представляется, что не существует никакой другой силы, препятствующей инновации, кроме силы инерции сознания. Соответственно, единственный предмет, с которым необходимо взаимодействовать инноватору — сознание окружающих.
Читать дальше →
Всего голосов 26: ↑23 и ↓3+20
Комментарии19

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

Время на прочтение7 мин
Количество просмотров833K
Логотип OAuth 2.0

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

Что такое OAuth 2.0


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

Читать дальше →
Всего голосов 168: ↑153 и ↓15+138
Комментарии44

Информация

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