Как стать автором
Поиск
Написать публикацию
Обновить
2
0
Владимир Чащин @starosta6123

Программист

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

Мега-Учебник Flask, Часть 2: Шаблоны

Время на прочтение6 мин
Количество просмотров193K
Это вторая статья в серии, где я описываю свой опыт написания веб-приложения на Python с использованием микрофреймворка Flask.

Цель данного руководства — разработать довольно функциональное приложение-микроблог, которое я за полным отсутствием оригинальности решил назвать microblog.



Краткое повторение


Если вы следовали инструкциям в первой части, то у вас должно быть полностью работающее, но еще очень простое приложение с такой файловой структурой:

microblog\
  flask\
    <файлы виртуального окружения>
  app\
    static\
    templates\
    __init__.py
    views.py
  tmp\
  run.py


Для запуска приложения вы запускаете скрипт run.py, затем открываете url http://localhost:5000 в вашем браузере.
Читать дальше →

Мега-Учебник Flask, Часть 1: «Привет, Мир!»

Время на прочтение6 мин
Количество просмотров585K
Это первая статья в серии, где я буду документировать мой опыт написания веб-приложения на Python, используя микрофреймворк Flask.

Здесь список всех статей в серии:
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud

Моя предыстория


Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
Я хочу начать это долгое и удивительное путешествие

Hacker-friendly Software-defined radio

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

Взглянем на пару любопытных доступных инструментов для работы с радио.
Читать дальше →

«Неудавшийся эксперимент на съемках», или новый формат роликов

Время на прочтение2 мин
Количество просмотров60K
Недавно мы снимали опыты для совместного проекта каналов «ПРОСТАЯ НАУКА» и «НАУКА 2.0». Не буду пока раскрывать всех секретов, а покажу один из «неудачных» экспериментов. Хотя лично я неудачным бы его не назвал. Ведь без таких «неудач» не обойтись, они являются неотъемлемой и порой очень зрелищной частью любого эксперимента. Вот кусочек инсайда, который пока никуда не выходил в эфир.



Как вы видите, бочку разорвало ко всем чертям. Правда, ждать пришлось слишком долго. Но оно того стоило! ;)
Суть опыта в следующем:
Читать дальше →

Этика (или неэтичность) массированного наблюдения правительства

Время на прочтение3 мин
Количество просмотров10K
Примечание переводчика: в последнее время все большую популярность приобретают криптоалгоритмы, основанные на эллиптических кривых. В мире криптографии не стоит изобретать велосипеды (о чем не раз писали и на нашем любимом хабре), а лучше всего следовать стандартам. Однако, не все стандарты одинаково полезны.
P.S.: перевод не блещет новизной, но, возможно, поможет узнать части аудитории что-то новое.


АНБ часто подозревается в разработке бэкдоров для алгоритмов и систем шифрования. Наиболее серьезные претензии были предъявлены АНБ в ноябре 2007, после выхода официального стандарта NIST для генераторов случайных последовательностей.
Читать дальше →

JetBrains — разработка под Android для лентяев

Время на прочтение1 мин
Количество просмотров79K
Хотите изучить разработку пoд Android, но лень читать большие книги с кучей теории? JetBrains подготовила курс из 12 уроков для быстрого старта. Темы уроков:

* Getting Started
* UI Designer
* Minimally Interactive
* Lifecycle
* More Activities
* List Views
* HTTP
* Storage
* Menus
* Dialogs
* Preferences
* Publishing
Читать дальше →

3D-печать органов человека

Время на прочтение11 мин
Количество просмотров94K
UPD: Владельцы лаборатории — Инвитро — теперь есть на Хабре. Занёс в их корпоративный блог. С вопросами можно обращаться к ним напрямую.


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

Тут недавно открылась лаборатория 3D-биопринтинга органов (проект Инвитро). Вокруг неё творится какая-то лютая феерия непонимания того, что именно делается. В общем, хоть я и не микробиолог, но мне стало интересно. Я пробился до разработчика — В.А. Миронова. Именно он изобрёл технологию печати органов и запатентовал это в США, участвовал в разработке уже трех модификаций биопринтеров, и именно он «главный по науке» в новой лаборатории в Москве:


В.А. Миронов (M.D., Ph.D., профессор с 20-летним опытом в микробиологии, в частности, на границе с IT) — в процессе полуторачасового объяснения мне сути технологии изрисовал кучу бумаги.

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

А пока главное. Не торопитесь пить всё что горит: до новой печени ещё очень далеко. Поехали.
Читать дальше →

Мега-Учебник Flask, Часть 3: Формы

Время на прочтение10 мин
Количество просмотров141K
Это третья статья в серии, где я описываю свой опыт написания веб-приложения на Python с использованием микрофреймворка Flask.

Цель данного руководства — разработать довольно функциональное приложение-микроблог, которое я за полным отсутствием оригинальности решил назвать microblog.



Краткое повторение


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

В этой статье мы собираемся заполнить один из пробелов, которые есть в нашем приложении. Мы рассмотрим работу с формами.

Формы являются одними из самых основных блоков в любом веб-приложении. Использование форм позволит пользователям оставлять записи в блоге, а также логиниться в приложение.

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

Возможный сценарий мошенничества с Yota

Время на прочтение2 мин
Количество просмотров43K
Сегодня я, сам того не зная, провернул мелкую финансовую махинацию и попал в не очень приятную ситуацию. Но обо всём по порядку.

Постановка


Вам понадобится:

— Наличие аккаунта на yota.ru (т.е. вы должны были пользоваться их услугами ранее и обладаете своим собственным девайсом)
— Знание ключа безопасности чужой беспроводной сети от Yota, в которой вы находитесь в данный момент

Последовательность действий


Находясь в чужой сети заходим на страницу авторизации. Если вы не были авторизованы ранее — в поле «Имя пользователя» тут же отдаётся email лица, к счёту которого привязан расположенный неподалёку девайс (в моём случае это был Gemtek LTE). Сходу я не придал этому значения, но дело в том, что я, сколько себя помню, всегда отключаю любое автозаполнение и запоминание паролей в своих браузерах. Следовательно адрес «предоставляется» текущим девайсом. Юзабилити.
Читать дальше →

Ненормальное функциональное программирование на python

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

После просмотра курса Programming Languages и прочтения Functional JavaScript захотелось повторить все эти крутые штуки в python. Часть вещей получилось сделать красиво и легко, остальное вышло страшным и непригодным для использования.

Статья включает в себя:
  • немного непонятных слов;
  • каррирование;
  • pattern matching;
  • рекурсия (включая хвостовую).


Статья рассчитана на python 3.3+.
Читать дальше →

На 3D-принтере напечатана комната из искусственного песчаника

Время на прочтение2 мин
Количество просмотров29K
Цель проекта швейцарских дизайнеров и программистов Микаэля Ансмейера и Бенджамина Дилленбургера "Digital Grotesque" — исследовать возможности 3D-печати в архитектуре. Их комната или, скорее, искусственный грот, занимает площадь в 16 квадратных метров и имеет 3,2 метра в высоту. Комната выполнена в стилистике соотечественника авторов, художника Ганса Рудольфа Гигера — создателя фантастических и пугающих картин, наиболее известного широкой публике по декорациям к фильму «Чужой».

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

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

Что дети думают о программистах и программировании

Время на прочтение1 мин
Количество просмотров59K
Сегодня 256 день года и все хабровчане прекрасно знают, что означает эта дата.
Да, сегодня совершенно официальный (хотя и жаль, что не выходной) российский праздник – День программиста.

Мы не стали поздравлять своих разработчиков в Parallels. Мы попросили сделать это их детей. Заодно мы спросили малышей, кем работают их папы (и мамы!) и чем именно они занимаются на работе. И они честно все рассказали.

Посмотрите, возможно, и ваш ребенок именно вот так вот представляет себе вашу работу.



С Днем Программиста!

Использование памяти в Python

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

Сколько памяти занимает 1 миллион целых чисел?


Меня часто донимали размышление о том, насколько эффективно Python использует память по сравнению с другими языками программирования. Например, сколько памяти нужно, чтобы работать с 1 миллионом целых чисел? А с тем же количеством строк произвольной длины?
Как оказалось, в Python есть возможность получить необходимую информацию прямо из интерактивной консоли, не обращаясь к исходному коду на C (хотя, для верности, мы туда все таки заглянем).
Удовлетворив любопытство, мы залезем внутрь типов данных и узнаем, на что именно расходуется память.
Читать дальше →

Частный космос теперь и в России

Время на прочтение6 мин
Количество просмотров54K
Привет, всем. Это Zelenyikot, хочу рассказать о новости, которая, много значит для меня, и, уверен, привлечет внимание многих хабровчан.

На Хабре с интересом следят за деятельностью частных космических компаний: SpaceX, Virgin Galactic и других. Прогресс не стоит на месте, и вот, частная космонавтика добралась и до России. Представляю отечественного первенца, который полон решимости сделать прибыльным освоение космоса: «Даурия Аэроспейс».

image

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

Компьютер сгенерировал эффективные, но непонятные человеку алгоритмы ускорения TCP

Время на прочтение2 мин
Количество просмотров118K
TCP (Transmission Control Protocol) — основной протокол интернета. Одна из его главных задач — бороться с перегрузками в сети (network congestion), когда возникают заторы из пакетов. Регулирование осуществляется путём взаимной подстройки скорости отправки запросов, причём для этого существует множество хитрых методов. Например, в Linux используется алгоритм под названием TCP Cubic, а под Windows — Compound TCP. Кроме них, существуют ещё TCP Tahoe, Reno, NewReno, Vegas, FAST, BIC и др.

Специалисты из Массачусетского технологического института разработали программу Remy, которая методом проб и ошибок пыталась улучшить существующие алгоритмы подавления заторов TCP. Результат превзошёл все ожидания. Эффективность алгоритмов RemyCC превзошла и TCP Cubic, и Compound TCP, и остальных «конкурентов» в различных сетевых условиях. Проблема только в том, что учёные не совсем понимают, за счёт чего именно Remy удалось показать такой феноменальный результат.


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

Кошелек Mailpile в Paypal был заморожен в течение суток

Время на прочтение1 мин
Количество просмотров30K
imageНеделю назад Mailpile отчитался об успешном продвижении своей краудфандинговой кампании с бюджетом в 146,725 долларов. А два дня назад Brennan Novak, один из авторов проекта, разместил в indiegogo на странице кампании по сбору средств апдейт, в котором сообщил, что бизнес-аккаунт и дебетная карта проекта заблокированы службой безопасности y PayPal. После многократных обращений в службу поддержки, он наконец узнал буквально следующее:

«Пока Mailpile не предоставит PayPal подробную бюджетную разбивку того, как они планируют использовать пожертвования от своей crowdfunding-кампании, их счет не будет разблокирован в течение одного года .”

После этого заявления последовала волна негодования на порталах Hacker News, Ars Technica, Slashdot и в твитере. В результате произошло практически невероятное — PayPal не только разблокировал аккаунт команды Mailpile, но и пожертвовал им 1,000 долларов.
Читать дальше →

Простой, но эффективный Voice Activity Detection алгоритм реального времени

Время на прочтение7 мин
Количество просмотров31K
Ниже дан перевод статьи
A SIMPLE BUT EFFICIENT REAL-TIME VOICE ACTIVITY DETECTION ALGORITHM
М.H. Moattar and M.M. Homayonpour
Laboratory for Intelligent Sound and Speech Processing (LISSP), Computer Engineering and Information Technology Dept., Amirkabir University of Technology, Tehran, Iran
Оригинал по ссылке

РЕЗЮМЕ

Алгоритм обнаружения активности голоса (Voice Activity Detection, далее VAD) очень важный метод в приложениях обработки речи и аудио. Эффективность большинства, если не всех методов обработки речи/аудио сильно зависит от эффективности применяемого алгоритма VAD. Идеальный детектор активности голоса должен быть независимым от области применения приложения, от уровня шума и быть наименее зависимым от максимума параметров приложения, в котором его используют. В этой статье предлагается близкий к идеальному алгоритм VAD, который одновременно легок в реализации и устойчив к шуму. Предложенный метод использует такие кратковременные характеристики как Spectral Flatness (SF) (спектральная плоскостность, ровность) и Short-term Energy, что делает метод целесообразным для применения в реальном времени. Этот метод был проверен на нескольких записях с разным уровнем шума и сравнивался с недавно преложенными методами. Эксперименты показали удовлетворительные результаты при разных уровнях шума.
Читать дальше →

Как не нужно освобождать интернет

Время на прочтение3 мин
Количество просмотров62K
Добрый день, уважаемые хабровчане. Проснувшись сегодня в четырнадцать часов утра, я обнаружил на хабре две статьи: Правительство США предало интернет. Нам надо вернуть его в свои руки и Как конкретно освободить интернет. Скажу прямо, их посыл меня удивил до такой степени, что я решил создать этот пост, даже не допив утренний чай.

Я чувствую себя весьма неудобно, оказавшись вынужденным спорить с Брюсом Шнайером. Но есть мнение, что он, несмотря на свой огромный авторитет, сейчас критически не прав.

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

Как конкретно освободить интернет

Время на прочтение5 мин
Количество просмотров39K
В продолжении статей "Сноуден пролил свет на ситуацию со взломом криптографии. Все плохо" и "Правительство США предало интернет. Нам надо вернуть его в свои руки" — о том, что конкретно нужно сделать для ограничения беспредела спецслужб. Да, Брюс Шнайер уже дал свои рекомендации, но он дал их обычным людям — читателям The Guardian, далёким от ИТ; я же хочу обратиться к специалистам, которые создают и выбирают интернет-технологии.

Но для начала давайте определимся с целями. Основная задача силовых ведомств — всё-таки ловить убийц, наркобаронов, террористов и прочих там педофилов. Задача это нужная и необходимая. Весь вопрос в методах, которыми она решается. Пока это методы сыска — определяется подозреваемый, на него получается ордер в суде, и уже по этому ордеру копы получают доступ к прослушке телефонов, выпискам с банковских счетов, электронной почте — всё нормально. Да, это ограничение прав подозреваемого, вина которого еще не доказана, но это неизбежное зло, иначе копы просто не смогут делать свою работу. Не будет ничего плохого, если сыщик сможет отправить запрос судье в электронном виде со своего смартфона, тот подпишет электронный ордер своей ЭЦП, и на основании этого электронного ордера соответствующие компании отправят копу необходимую информацию в электронном виде назад на служебный смартфон. XXI век в конце концов.
Но увы, копам всегда и везде было проще работать методами жандармов, то есть не думать, а тотально запрещать и не пущать. Так, например, из-за одного подрывника-неудачника, пытавшегося собрать бомбу на борту самолёта и получившего только ожог собственных гениталий, во всём мире теперь нельзя проносить на борт жидкости. Из-за одного придурка с кислотой и пары идиотов с генеральскими погонами теперь ежегодно страдают миллиарды.

Сегодня все сферы жизни так или иначе уходят в интернет, а спецслужбы во всём мире почему-то решили, что теперь они могут получить доступ ко всей передаваемой в интернете информации без всяких ордеров и прочих условностей закона. Но интернет — это техническая штука, и мы, создающие интернет инженеры, можем и обязаны остановить спецслужбы. Нравится нам или нет, но государства будут контролировать магистральные линии связи и крупнейших провайдеров ИТ-услуг, подслушивать и внедрять закладки. Но мы можем и должны создать такие технологические условия, в которых будет технически невозможна автоматическая тотальная слежка государства за гражданами. Я надеюсь, уже никто на планете не верит в честность помыслов главарей спецслужб или в то, что они смогут сами себя ограничить. Поэтому, если мы не справимся и не ограничим их своими силами, уже очень скоро мир Оруэлла покажется недостижимой утопией, идеалом общественного устройства.
За конкретными злодеями — пусть охотятся. Пусть получают ордера на прослушку, пусть взламывают компьютеры негодяев — это всё штучные, ручные методы сыска. А вот тотальный контроль без какой-либо отчетности перед обществом необходимо сделать невозможным.
Читать дальше →

Правительство США предало интернет. Нам надо вернуть его в свои руки

Время на прочтение4 мин
Количество просмотров83K
imageОт переводчика: Брюс Шнайер, специалист мирового уровня по криптографии и информационной безопасности, а так же активный блогер и писатель, опубликовал эту статью в The Guardian после того, как стало известно, насколько плохо на самом деле обстоят дела с безопасностью криптографических технологий, и какую роль в их плачевном состоянии сыграло АНБ.

Неделю назад я перевёл статью Лионеля Дрико "Первая мировая гражданская война" из блога Рикарда Фальквинге, основателя Пиратской партии Швеции, статью эмоциональную и, возможно, слишком резкую. В отличие от пламенных пропагандистов Пиратской партии, Брюс Шнайер всегда был более сдержан и спокоен в оценках, как и подобает авторитетному инженеру и учёному. Но сейчас, похоже, терпение кончилось и у него.




Правительство и крупный бизнес предали интернет и нас с вами.

Извратив интернет на всех его уровнях, превратив его в инструмент тотальной слежки, АНБ нарушило фундаментальный общественный договор. Мы больше не можем доверять компаниям, которые создают инфраструктуру интернета и управляют ей, которые создают и продают нам железо и софт, хранят наши данные, мы не верим в то, что они честно служат интернету.

Это не тот интернет, который нужен миру, или который был задуман его создателями. Мы должны вернуть его себе. И говоря «мы», я имею в виду сообщество инженеров и программистов.

Да, в первую очередь это политическая проблема, которая требует политического решения. Но в то же время это и техническая проблема, и есть несколько вещей, которые инженеры могут — и должны — сделать.
Читать дальше →

Информация

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