Джош Кауфман - Первые 20 часов. Как быстро научиться… чему угодно

Здесь есть возможность читать онлайн «Джош Кауфман - Первые 20 часов. Как быстро научиться… чему угодно» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Москва, Год выпуска: 2014, ISBN: 2014, Издательство: Array Литагент «Аттикус», Жанр: foreign_edu, foreign_publicism, Прочая научная литература, Прочая документальная литература, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Первые 20 часов. Как быстро научиться… чему угодно: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Первые 20 часов. Как быстро научиться… чему угодно»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Автор книги, Джош Кауфман, утверждает, что за 20 часов правильно организованных занятий можно научиться любому делу. Лучшее доказательство тому — он сам. Самоучка, не получивший классического бизнес-образования, Джош — успешный предприниматель, выдающийся бизнес-тренер, основатель и руководитель интернет-проекта PersonalMBA.com. Разработанный им метод универсален. Хотите изучить иностранный язык, сочинить роман, написать портрет, открыть собственное дело или освоить азы управления самолетом? Потратьте на обучение всего 20 часов, и вы будете потрясены результатами.

Первые 20 часов. Как быстро научиться… чему угодно — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Первые 20 часов. Как быстро научиться… чему угодно», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

property: sidebar, Enum [: yes, no], default =>: no

Это другой способ сделать примерно то же самое. Enum, что означает «перечислять», создает список опций, и форма устанавливает, какую опцию сохранить в базе данных.

Добавление поддержки Markdown

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

В качестве форматирующего синтаксиса я выбрал Markdown, популярный и очень полезный язык разметки, разработанный Джоном Грубером [45]. Я уже знаком с работой Markdown, поскольку его использовали некоторые приложения, которые установлены на моем компьютере. Теперь мне нужно выяснить, как заставить мою программу понимать этот язык.

Довольно быстро мне удается найти несколько общедоступных библиотек Markdown. Я выбираю библиотеку rdiscount и включаю в application.rb:

require 'rdiscount'

Rdiscount преобразует текст из формата Markdown в HTML, а браузер пользователя затем отображает должным образом отформатированный текст. Файлы Markdown представляют обычные текстовые файлы, написанные по определенным правилам.

Это значит, что мне не нужно преобразовывать информацию моей страницы в Markdown, прежде чем добавлять в базу данных. Это ведь обычный текст. Если я хочу отобразить отформатированный текст, мне нужно лишь вызвать rdiscount.

Команда, которую я добавил в шаблоны ERB, отвечающие за отображение страниц, выглядит следующим образом:

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

Меры безопасности

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

Как выяснилось, современные браузеры поддерживают безопасный протокол под названием «Базовая аутентификация HTTP» [46], который представляет собой простой способ потребовать у пользователя имя и пароль, прежде чем продолжить работу. Если пользователь не может предоставить полномочия доступа, его переправляют на страницу с сообщением об ошибке.

Вот фрагмент программы, обеспечивающий базовую идентификацию в Sinatra:

use Rack:: Auth:: Basic, "Restricted Area" do |username, password|

[username, password] == [ENV ['ADMIN_USER'], ENV ['ADMIN_PASS']]

end

В данном случае я храню имя пользователя и пароль в Heroku как переменные среды , которые я могу задать командой Terminal. Это позволяет мне использовать один и тот же код для разных приложений, а также показать вам этот код, не сообщая своего пароля!

Это также превосходная иллюстрация того, почему важно знать, что Sinatra построена над интерфейсом Rack. Дело в том, что существует много общедоступных библиотек типа Rack::Auth::Basic, и любую из них я могу использовать с Sinatra. Чем реже мне приходится изобретать колесо, тем лучше.

Кроме того, я хочу добавить еще одну меру безопасности — шифрование. Протокол SSL — его используют банки для обеспечения безопасности онлайновых банковских операций — добавится к моему приложению с помощью библиотеки rack-ssl-enforcer:

require 'rack-ssl-enforcer'

use Rack::SslEnforcer

Библиотека заставляет браузер использовать безопасное SSL-соединение для доступа к сайту. Heroku позволяет приложениям, размещенным на его доменах, использовать SSL по умолчанию, поэтому никакие дополнительные настройки не нужны [47].

Флэш-сообщения

Есть еще одна функция которую мне хотелось бы добавить. Я видел сайты, где в ответ на ваши действия появляются маленькие сообщения, например «Ваша страница создана/отредактирована/удалена». Как это сделать?

После недолгих поисков я обнаружил библиотеку под названием sinatra-flash, которая обслуживает эту функцию [48]. Такие сообщения называются флэш-сообщениями и работают следующим образом: перед переходом на новую страницу в куки-файле браузера пользователя сохраняется небольшой текст. При загрузке следующей страницы приложение читает куки-файл и показывает сообщение пользователю.

Я добавил библиотеку к Gemfile и application.rb, в соответствующих маршрутах написал сообщения, которые хотел бы видеть, затем добавил несколько строк программы в мои шаблоны ERB, чтобы показывать эти сообщения. Дело сделано. Мое приложение завершено.

Вот как начинается ознакомительный файл Readme приложения «Кодекс»:

«Codex» — это простое интернет-приложение, справочник для одного пользователя, написанное на языке Ruby. «Кодекс» использует Sinatra и DataMapper для того, чтобы создавать, сохранять, обновлять и удалять записи страниц в простой базе данных Postgres. Приложение готово для немедленного размещения на сервисе Heroku.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Первые 20 часов. Как быстро научиться… чему угодно»

Представляем Вашему вниманию похожие книги на «Первые 20 часов. Как быстро научиться… чему угодно» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Александр Кауфман - Первая заповедь
Александр Кауфман
Отзывы о книге «Первые 20 часов. Как быстро научиться… чему угодно»

Обсуждение, отзывы о книге «Первые 20 часов. Как быстро научиться… чему угодно» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x