Pull to refresh
26
0
Alexandr @agasper

User

Send message

Создание веб-приложения Django в Visual Studio 2012 и публикация его в облако Windows Azure

Reading time4 min
Views17K
image

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

Из этого руководства вы узнаете:

  • Как создать базовое приложение Django.
  • Как запускать и отлаживать приложения Django локально с помощью тестового сервера Django.
  • Как запускать приложения Django локально в эмуляторе среды.
  • Как публиковать и повторно публиковать приложение на платформе Windows Azure.

Следуя приведенным инструкциям, вы создадите простое веб-приложение Hello World. Приложение будет размещено в экземпляре веб-роли, которая размещается в выделенной виртуальной машине на платформе Windows Azure.
Читать дальше →
Total votes 28: ↑18 and ↓10+8
Comments48

Миллион загрузок в месяц или как сделать хороший старт на Google Play

Reading time5 min
Views33K
Всем привет,



Сначала хотел озаглавить топик «Миллион загрузок в месяц или как сделать хороший старт на Google Play на примере одной игры», но потом решил, что это слишком длинно. Тем не менее, сегодня я буду говорить о своей последней игре. Не только потому, что мне хочется немного ее прорекламировать (хотя и это тоже, чего скрывать), но и потому что каждый запуск новой игры индивидуален и без «привязки к местности» рассказывать, наверное, было бы не совсем правильно.
Читать дальше →
Total votes 110: ↑99 and ↓11+88
Comments45

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

Reading time7 min
Views100K
Привет, хабр! Продолжаю свой цикл материалов про маркетинг, продажи и клиентский сервис веб-студий и агентств. Сегодня хочу рассмотреть такую локальную тему, как заключение договора на создание сайта, и поговорить про его тонкие места.

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

* Сразу надо оговориться, я не юрист, поэтому приведенные мной формулировки можно считать рекомендациями по смыслу, но не форме.

Итак, я подготовил некий список неочевидных моментов, с которыми мне неоднократно приходилось сталкиваться на практике. Начнем:

Установка копирайта и публикация в портфолио


Очень часто при общении с заказчиком при запуске нового проекта конфликтным моментом становится размещение «марки» студии на сайте («Сделано в XXX » и пр.). Если данный момент никак не обозначен в договоре, то убедить заказчика прислушаться к вашим доводам бывает сложно. Часто проблемы возникают в самый последний момент, даже если изначально лейбл присутствовал и на макетах, и на тестовой зоне: «Ой, а мы не думали, что так и пойдет на основную версию сайта». Итак, что рекомендуется сделать:
Читать дальше →
Total votes 101: ↑95 and ↓6+89
Comments57

Боевой сервер для Django-приложения: Ubuntu Server 10.04 LTS + django 1.4 + nginx + gunicorn

Reading time11 min
Views121K
Многие учебные пособия по разработке на Django раскрывают как быстро получить работающий отладочный сервер (python manage.py runserver), а вопрос развертывания в боевом режиме часто остается нераскрытым или освещаются далеко не самые простые и эффективные методы.
Ниже я расскажу о об одном из способов развернуть сайт на Django в боевом режиме, начиная от выбора хостинга, заканчивая развертыванием веб-сервера. Таким образом статья может быть полезна тем, кто освоил разработку на базе Django, но не имеет опыта развертывания серверов. Мой способ один из многих, но он достаточно прост, эффективен в работе и легок в поддержке. Используем VPS-хостинг, Ubuntu 10.04, nginx, gunicorn.

Читать дальше →
Total votes 34: ↑29 and ↓5+24
Comments41

Прекратите скручивать (восклицательный знак)

Reading time6 min
Views1.7M
Ну действительно, прекратите. Есть куча прикольных штук для соединения самых разнообразных проводов, а все равно технология «откусить зубами изоляцию, скрутить, замотать изолентой» жива до сих пор.

Дальше много текста, фотографий, разборок. Ну все как обычно
Total votes 682: ↑667 and ↓15+652
Comments360

Установка системы управления виртуализацией (openvz, kvm) proxmox 2.2 на сервер в Hetzner

Reading time3 min
Views81K

Proxmox для конечного потребителя веб интерфейсом для управления виртуальными машинами, позволяет создавать виртуальные машины linux в kvm и openvz контейнерах, windows в kvm. Резать ресурсы в видео количества ядер cpu, объема памяти, ограничения io в мегабайтах в секунду и iops (только kvm). Присутствуют автоматические бекапы, возможно делать их на удаленное хранилище, можно пометить некоторые диски в виртуалках галочкой “не для бекапа”.
Читать дальше →
Total votes 30: ↑23 and ↓7+16
Comments35

Производительность в Python. Легкий путь

Reading time2 min
Views75K
Всегда знал, что одно из достоинств Python — возможность переписать самые тормозные куски кода на Си и увеличить быстродействие программы до недостижимых интерпретируемым языкам высот. Но сам ни разу не пробовал, т.к. считал что это слишком сложно. После прочтения этой статьи больше так не считаю.

Программисты знакомые с ctypes врядли найдут тут что-то интересное, новичков же прошу под кат.
Читать дальше →
Total votes 62: ↑55 and ↓7+48
Comments41

Ещё семь фич HTML5, о которых вы могли не знать

Reading time3 min
Views89K
Доброго времени суток!

Все мы достаточно наслышаны об HTML5 и его возможностях. Например, элементы audio и video, которые у всех на слуху. Но несмотря на это, существует парочка тегов, о которых знают далеко не все, и о которых не знал я до недавнего времени. Итак, вот чем я хочу с вами поделиться.
Читать дальше →
Total votes 201: ↑170 and ↓31+139
Comments96

Создание минидампов в проектах на C# 4.0, разрабатываемых в VS 2010

Reading time4 min
Views11K
Для создания минидампов в управляемой среде используются возможности библиотеки DbgHelp.dll. Рассмотрим применение ее функционала на примере готового проекта на WinForms.

Читать дальше →
Total votes 28: ↑28 and ↓0+28
Comments8

В пень free-lance.ru!

Reading time4 min
Views639K
В связи с прочтением соседнего поста предлагаю перечислить список бирж, на которых можно найти альтернативу тому унылому говну, в которое превратился free-lance.ru, ибо терпеть планомерный геноцид я больше не намерен.
Читать дальше →
Total votes 338: ↑320 and ↓18+302
Comments171

Недорогая альтернатива Arduino. Дадим шанс?

Reading time3 min
Views110K

TI LaunchPad MSP-EXP430G2


Что это?


Недавно мне довелось наткнуться на отладочную плату TI LauchPad MSP-EXP430G2. Похоже, что плата достаточно активно позиционируется как альтернатива другим МК такого же уровня как Arduino.
Интересно?
Total votes 49: ↑36 and ↓13+23
Comments99

Уведомление о том, что браузер устарел

Reading time2 min
Views71K
ТизерОни уходят. Ещё вчера мы были вынуждены прикручивать очередной костыль для IE6/IE7, а сейчас в этом уже нет необходимости. В СНГ у IE6 сегодня всего 0.5% трафика, у IE7 — 1.8%. Они действительно уходят. Думаю, большинство верстальщиков давно уже не добивается попиксельного соответствия макету, а кто-то даже не проверяет на работоспособность сайтов в столь старых браузерах. В таком случае не будет лишним предупредить пользователя, что сайт может работать неправильно, и предложить обновиться. Предлагаю готовый комплект из панельки предупреждения и страницы с предложением выбрать новый браузер.
Читать дальше →
Total votes 73: ↑56 and ↓17+39
Comments81

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

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

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

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

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


Читать дальше →
Total votes 50: ↑39 and ↓11+28
Comments37

USB TV-тюнеры на rtl2832 — или как услышать в радиоэфире все за 600 рублей

Reading time5 min
Views504K
Давно я собирался купить какой-нибуть универсальный радиоприемник/радиосканер, чтобы полазить по эфиру, послушать о чем говорят ночью матёрые и бородатые радиолюбители…

До недавнего времени, это удовольствие обходилось от 300$ и до бесконечности. Ну а с переходом гос.органов (и России и за бугром) на цифровую (но пока еще не зашифрованную) связь APCO P25 стоимость удовлетворения нездорового любопытства стала ещё выше.

Год назад все изменилось — умельцы выяснили, что многие из продающихся у нас китайских USB TV-тюнеров за 600 рублей — фактически являются универсальным радиоприёмником, на который без каких-либо доработок можно послушать практически все-что угодно в диапазоне 50-900Мгц (если повезет — до 2200Мгц, но там голосом особо ничего не передают): переговоры самолётов с диспетчерами, строителей, такси, жучки в вашей квартире и многое другое.

Под катом я расскажу что и где покупать, как подключить и настраивать, ну и наконец — что можно послушать.
Читать дальше →
Total votes 144: ↑137 and ↓7+130
Comments147

Перечень «граблей» внедрения websocket′ов на клиентские веб-ресурсы конструктора сайтов

Reading time3 min
Views12K
Websocket′ы полезны постоянным дуплексным соединением backend-сервера с браузером клиента — это прочный мост между сервисом и посетителями, по которому удобно беспрепятственно транспортировать потоки данных в обе стороны.

В результате внедрения websocket′ов наш проект получил возможность в реальном времени менять по своему усмотрению отображение страниц в браузере на протяжении всей клиентской сессии и иметь обратную связь.

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

Однако, когда дело дошло до полевых испытаний, обнаружилась масса проблем с ISP, всеми мыслимыми и немыслимыми способами пытающимися сэкономить трафик за счёт своих клиентов. Об этих и других «граблях» полноценного боевого внедрения websocket′ов читайте под катом.
Читать дальше →
Total votes 17: ↑10 and ↓7+3
Comments10

Велосипеды на Javascript и jQuery

Reading time4 min
Views76K
В очередной раз открыв код коллег и ужаснувшись, я решил написать эту статью. Надеюсь для кого-нибудь это будет полезным, заодно и мне будет проще новичкам объяснять что у них в коде не так, просто кинув ссылку на эту статью.
Безусловно количество таких вещей очень и очень велико, поэтому в статье ограничусь лишь некоторыми.
Читать дальше →
Total votes 258: ↑246 and ↓12+234
Comments189

Памятка пользователям ssh

Reading time13 min
Views1.5M
abstract: В статье описаны продвинутые функций OpenSSH, которые позволяют сильно упростить жизнь системным администраторам и программистам, которые не боятся шелла. В отличие от большинства руководств, которые кроме ключей и -L/D/R опций ничего не описывают, я попытался собрать все интересные фичи и удобства, которые с собой несёт ssh.

Предупреждение: пост очень объёмный, но для удобства использования я решил не резать его на части.

Оглавление:
  • управление ключами
  • копирование файлов через ssh
  • Проброс потоков ввода/вывода
  • Монтирование удалённой FS через ssh
  • Удалённое исполнение кода
  • Алиасы и опции для подключений в .ssh/config
  • Опции по-умолчанию
  • Проброс X-сервера
  • ssh в качестве socks-proxy
  • Проброс портов — прямой и обратный
  • Реверс-сокс-прокси
  • туннелирование L2/L3 трафика
  • Проброс агента авторизации
  • Туннелирование ssh через ssh сквозь недоверенный сервер (с большой вероятностью вы этого не знаете)
Читать дальше →
Total votes 360: ↑352 and ↓8+344
Comments148

Распространение игр

Reading time4 min
Views36K
logoЗдравствуйте!

Сегодня мы с вами обсудим несколько площадок для ваших игр, рассмотрим их плюсы и минусы, особенности работы с ними и качество предоставляемых услуг. Данная статья будет интересна для тех людей, у кого нет издателей или кто решил распространять свою игру сам. Также подмечу, что статья ориентирована на клиентские игры.

Кого заинтересовала данная тема — прошу под кат.
Читать дальше →
Total votes 45: ↑38 and ↓7+31
Comments23

Три возраста паттерна Singleton

Reading time5 min
Views93K
Паттерн Singleton появился, пожалуй, как только появились статичные объекты. В Smalltalk-80 так был сделан ChangeSet, а чуть в самых разных библиотеках стали появляться сессии, статусы и тому подобные объекты, которых объединяло одно — они должны были быть одни-единственные на всю программу.

В 1994 году вышла известная книга «Паттерны проектирования», представив публике, среди 22-х прочих, и нашего героя, которого теперь назвали Singleton. Была там и его реализация на C++, вот такая:
Читать дальше →
Total votes 110: ↑101 and ↓9+92
Comments61

Information

Rating
Does not participate
Location
Ростов-на-Дону, Ростовская обл., Россия
Date of birth
Registered
Activity