вторник, 23 декабря 2014 г.
понедельник, 22 декабря 2014 г.
Usability&Analyst: тенденции 2015 года в дизайне веб-страниц
Специалисты компании BowenMedia разработали инфографику посвященную пяти основным трендам Интернет-дизайна в 2015 году
9, декабря 2014
-
Мобильный формат
- В среднем американец тратит около 2,5 часов в день на работу с мобильными дивайсами
- 57% покупателей не станут рекомендовать друзьям компанию, не имеющую мобильного приложения своего сайта. Или это приложение недостаточно привлекательно.
- 60%, которое тратит американец на электронные версии изданий занимают мобильные приложения.
- Согласно исследованиям Google 48% пользователей считают, что если мобильное приложение компании не достаточно привлекательно, это означает, что компания не заботится о своем бизнесе.
- 85% взрослых интернет-пользователей убеждены, что мобильные приложения компании должны быть не только не хуже, но и лучше своих «мониторных» прототипов.
- 67% потребителей утверждают, что они скорее посетят сайт компании с дружелюбным мобильным интерфейсом.
- 90% людей используют в своей практике разноформатные дивайсы: смартфоны, планшеты, компьютеры.
суббота, 15 ноября 2014 г.
Usability&Analyst: Настройка целей
В Google Analytics есть четыре вида целей:
- отслеживание переходов на определенную страницу (например, form-sent.html после успешной отправки сообщения через форму обратной связи);
- отслеживание количества посещений, длительность которых превышает заданную;
- отслеживание посещений, во время которых пользователи просматривали больше определенного количества страниц;
- настройка целей при совершении определенного события (об отслеживании событий — ниже).
Самый полезный и часто используемый тип цели — первый, «Переход по URL».
Какие цели необходимо настроить практически каждому сайту:
- цель на посещение страницы контактов;
- цель на отслеживание успешной отправки формы обратной связи.
В таком случае необходимо настроить две цели. Необходимо открыть статистику сайта, для которого нужно настроить цели, и войти в меню администратора:
Выбираем нужный профиль:
пятница, 31 октября 2014 г.
Usability&Analyst: A/B тест — это просто
A/B тестирование — это мощный маркетинговый инструмент для повышения эффективности работы вашего интернет-ресурса. С помощью A/B тестов повышают конверсию посадочных страниц, подбирают оптимальные заголовки объявлений в рекламных сетях, улучшают качество поиска.
Мне часто приходится сталкиваться с задачами организации A/B тестирования в различных интернет-проектах. В этой статье хочу поделиться необходимыми базовыми знаниями для проведения тестов и анализа результатов.
Зачем нужны А/B тесты?
среда, 29 октября 2014 г.
Usability&Analyst: LiveInternet — установка счетчика и просмотр статистики посещений на сайте Ливинтернета, информер от Майл.ру
В этой статье речь пойдет о получении кода, установке и работе со
статистикой такого популярного у вебмастеров инструмента, как счетчики
посещений LiveInternet и Mail.ru (тут я писал про компанию Майл.ру). Их обычно устанавливают на новый сайт сразу же после его появления.
Ведь очень интересно знать, учитывать и анализировать статистику посещаемости сайта (тут читайте подробнее о хостах, сессиях, показателях отказов и т.п.) — какие страницы заинтересовали посетителей больше всего, какое количество из них пришли с поисковых систем и по каким запросам. Всю эту информацию и еще многое другое можно узнать, установив на свой веб-проект небольшой фрагмент кода.
Ведь очень интересно знать, учитывать и анализировать статистику посещаемости сайта (тут читайте подробнее о хостах, сессиях, показателях отказов и т.п.) — какие страницы заинтересовали посетителей больше всего, какое количество из них пришли с поисковых систем и по каким запросам. Всю эту информацию и еще многое другое можно узнать, установив на свой веб-проект небольшой фрагмент кода.
воскресенье, 26 октября 2014 г.
Главные принципы A/B-тестирования (с картинками)
Сегодня я хотел бы рассказать про A/B-тестирование. Это один из методов улучшения веб-продуктов.
Тем, кто на практике не использует A/B-тестирование, возможно, будет не очень интересно, но я постараюсь осветить какие-то важные пункты и для тех, кто уже имеет налаженный процесс тестирования внутри своей команды или компании в целом.
Покажу различные примеры из своей практики: я работал руководителем проектного офиса в "Бегуне" и других компаниях. Будет несколько примеров, которые связаны с моими личными проектами, а также несколько "классических" примеров A/B-тестирования, которые показывают, как работает этот инструмент, чего можно достичь с помощью него и зачем, собственно, он вообще используется.
Начнем с небольшого конкретного примера. Скажу сразу: это не мой пример. Я просто нашел его на одном из сайтов, где выкладывают конкретные готовые A/B-тесты. Хотелось бы просто проверить вашу интуицию и возможность принимать интуитивные решения относительно того, что хорошо, а что плохо в интернет-проектах.
Тем, кто на практике не использует A/B-тестирование, возможно, будет не очень интересно, но я постараюсь осветить какие-то важные пункты и для тех, кто уже имеет налаженный процесс тестирования внутри своей команды или компании в целом.
Покажу различные примеры из своей практики: я работал руководителем проектного офиса в "Бегуне" и других компаниях. Будет несколько примеров, которые связаны с моими личными проектами, а также несколько "классических" примеров A/B-тестирования, которые показывают, как работает этот инструмент, чего можно достичь с помощью него и зачем, собственно, он вообще используется.
Начнем с небольшого конкретного примера. Скажу сразу: это не мой пример. Я просто нашел его на одном из сайтов, где выкладывают конкретные готовые A/B-тесты. Хотелось бы просто проверить вашу интуицию и возможность принимать интуитивные решения относительно того, что хорошо, а что плохо в интернет-проектах.
среда, 15 октября 2014 г.
Analytics - источники информации и достойные сайты
http://or.kiev.ua/category/%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D1%82%D0%B8%D0%BA%D0%B0
среда, 8 октября 2014 г.
Usability&Analyst: идут новые стандарты Section 508
But fact is that,
Around 15 per cent of the world's population, or estimated 1 billion people, live with disabilities. This figure is increasing through population growth, medical advances and the ageing process, says the World Health Organization (WHO).
So many countries are coming up with laws to protect people rights. “Section 508” is one of them.
While Section 508 is legally binding only for United States federal agencies or those funded federally, often an organization that provides public services will request a website or software that meets the requirements for Section 508.
That means many projects now require compliance with “Section 508 and other accessibility Standards”. This is very serious stuff and Graphic Designers, Web Developers and Programmers in the technology industry need to understand this quickly.
четверг, 4 сентября 2014 г.
SQL. Update records
Практика:
update ALS_CONSTANTS SET constant_value=
'{d}Season:{s},Episode:{e} [S{s},E{e}]'
where CONSTANT_ID=401;
update ALS_CONSTANTS SET constant_value=
'{d}Season2:{s},Episode2:{e} [S{s},E{e}]'
where CONSTANT_ID=401;
commit;
Теория:
Теперь надо назначить роль модератора какому-нибудь пользователю, пусть это будет sergey с id=1. Для обновления уже существующих данных служит оператор UPDATE.
Его синтаксис следующий:
UPDATE имя_таблицы SET имя_столбца=значение_столбца WHERE условие;
Давайте сделаем Сергея модератором:
UPDATE users SET role=\'модератор\' WHERE id_user=1;
update ALS_CONSTANTS SET constant_value=
'{d}Season:{s},Episode:{e} [S{s},E{e}]'
where CONSTANT_ID=401;
update ALS_CONSTANTS SET constant_value=
'{d}Season2:{s},Episode2:{e} [S{s},E{e}]'
where CONSTANT_ID=401;
commit;
Теория:
Теперь надо назначить роль модератора какому-нибудь пользователю, пусть это будет sergey с id=1. Для обновления уже существующих данных служит оператор UPDATE.
Его синтаксис следующий:
UPDATE имя_таблицы SET имя_столбца=значение_столбца WHERE условие;
Давайте сделаем Сергея модератором:
UPDATE users SET role=\'модератор\' WHERE id_user=1;
Теперь надо назначить
роль модератора какому-нибудь пользователю, пусть это будет sergey с
id=1. Для обновления уже существующих данных служит оператор UPDATE. Его
синтаксис следующий:
UPDATE имя_таблицы SET имя_столбца=значение_столбца WHERE условие;
Давайте сделаем Сергея модератором:
UPDATE users SET role='модератор' WHERE id_user=1;
Источник: http://www.site-do.ru/db/sql9.php
© site-do.ru
Источник: http://www.site-do.ru/db/sql9.php
© site-do.ru
Теперь надо назначить
роль модератора какому-нибудь пользователю, пусть это будет sergey с
id=1. Для обновления уже существующих данных служит оператор UPDATE. Его
синтаксис следующий:
UPDATE имя_таблицы SET имя_столбца=значение_столбца WHERE условие;
Давайте сделаем Сергея модератором:
UPDATE users SET role='модератор' WHERE id_user=1;
Источник: http://www.site-do.ru/db/sql9.php
© site-do.ru
Источник: http://www.site-do.ru/db/sql9.php
© site-do.ru
четверг, 28 августа 2014 г.
DPQ. Культура и стремления
Комплект статей, о том что происходит в сфере деятельности. К чему и как стремится, что б сохранить "золотую середину":
1) Перестаньте называть себя программистом и другие карьерные советы
1) Перестаньте называть себя программистом и другие карьерные советы
среда, 27 августа 2014 г.
Dev. Xpath - в практике
Практика:
- подсчет элементов в Дом дереве происходит через взятие в скобки оператором последнего элемента: count(.//div[@id='channel-mapping-tms-channel-list']//span[text()='PrgSvc ID'])
Теория:
- подсчет элементов в Дом дереве происходит через взятие в скобки оператором последнего элемента: count(.//div[@id='channel-mapping-tms-channel-list']//span[text()='PrgSvc ID'])
Теория:
вторник, 26 августа 2014 г.
Dev. Энциклопедии примеров
Энциклопедии с справочники для web разработчика с дополнительной информацией:
- Частная коллекция качественных материалов для тех, кто делает сайты;
- Фотошоп уроки со всего мира;
- Независимый рейтинг хостинг-провайдеров;
- Частная коллекция качественных материалов для тех, кто делает сайты;
- Фотошоп уроки со всего мира;
- Независимый рейтинг хостинг-провайдеров;
воскресенье, 3 августа 2014 г.
QA. Automation - links for download and read
- Selenium IDE;
- Maven Apache;
Repository:
- Github;
- Google Code;
Selenide:
- http://habrahabr.ru/post/143269/
- http://selenide.org/documentation.html
- http://automated-testing.info/t/selenide-ui-java/2788
TestNG:
- http://testng.org/doc/documentation-main.html#parameters-dataproviders
- http://sqlandsiva.blogspot.com/2010/12/testng-passing-array-of-objects-in.html
- Maven Apache;
Repository:
- Github;
- Google Code;
Selenide:
- http://habrahabr.ru/post/143269/
- http://selenide.org/documentation.html
- http://automated-testing.info/t/selenide-ui-java/2788
TestNG:
- http://testng.org/doc/documentation-main.html#parameters-dataproviders
- http://sqlandsiva.blogspot.com/2010/12/testng-passing-array-of-objects-in.html
суббота, 2 августа 2014 г.
Dev. Современные инструменты
Список современных инструментов, которые используются:
- Maven - Инструмент build management - источник хабр;
- Maven - Инструмент build management - источник хабр;
пятница, 1 августа 2014 г.
Dev. Интерактивное обучение
Набор ссылок по котором можно проапдейтится очень хорошо:
- codecademy;
- javarush;
- teamtreehouse;
- codecademy;
- javarush;
- teamtreehouse;
суббота, 26 июля 2014 г.
четверг, 17 июля 2014 г.
Admin. Обзор облачных хранилищ - Overview of Cloud Storage
Облачные хранилища данных
Если вам надоело бегать между работой и домом с флешкой, носить постоянно ноутбук с нужными файлами, и вы хотите, чтобы ваши важные файлы были доступны вам или вашей команде на любом компьютере или мобильном устройстве, то вам на помощь могут прийти облачные хранилища данных.ТопОбзор предлагает вашему вниманию обзор 10+ бесплатных сервисов облачных хранилищ данных. Кроме того, рекомендуем вам посмотреть нашу материал: Инфографика. ТОП-14: сравнение облачных хранилищ данныхОблачное хранилище данных — модель онлайн-хранилища, в котором данные хранятся на многочисленных, распределённых в сети серверах, предоставляемых в пользование клиентам, в основном третьей стороной. В противовес модели хранения данных на собственных, выделенных серверах, приобретаемых или арендуемых специально для подобных целей, количество или какая-либо внутренняя структура серверов клиенту, в общем случае, не видна. Данные хранятся, а равно и обрабатываются, в так называемом облаке, которое представляет собой, с точки зрения клиента, один большой, виртуальный сервер. Облачные хранилища данных.
1. Dropbox
Dropbox — облачное хранилище данных, позволяющее пользователям хранить свои данные на серверах в облаке и разделять их с другими пользователями в интернете. Его работа построена на синхронизации данных.Dropbox предоставляет три тарифных плана, в том числе и бесплатный.
- Basic — 2 Гб — бесплатно (можно увеличить до 48 Гбайт);
- +100 Гбайт — $9.99 в месяц или $99/год ;
- +200 Гбайт — $19.99 в месяц или $199/год ;
- +500 Гбайт — $49.99 в месяц или $499/год ;
- до 1Тбайта для бизнеса — от $795/год ;
- +500 Мбайт за приглашенного друга (до 16 Гбайт);
- чтобы получить 48 Гбайт бесплатного дискового пространства, нужно выполнить 7 шагов:
- просмотреть обзор о Dropbox;
- установить программу Dropbox на свой компьютер;
- положить файлы в папку Dropbox;
- установить Dropbox на другие компьютеры, которые вы используете;
- предоставить общий доступ друзьям и колегам;
- пригласите своих друзей в Dropbox;
- установите программу Dropbox на ваше мобильное устройство;
Например:
- Владельцы телефонов HTC Sense 3.5 и 3.6 могут получить до 3 ГБ на один год.
- Владельцы телефонов HTC Sense 4.0 и Sense 4+ могут получить до 23 ГБ на два года.
Dropbox позволяет пользователю размещать файлы на удаленных серверах при помощи клиента или с использованием веб-интерфейса через браузер. Хотя главный акцент технологии делается на синхронизации и обмене информацией, Dropbox ведёт историю загрузок, чтобы после удаления файлов с сервера была возможность восстановить данные. Также ведётся история изменения файлов, которая доступна на период последних 30 дней, кроме этого доступна функция бессрочной истории изменения файлов «Pack-Rat».
Главным недостатком Dropbox можно считать подход к выбору папок для синхронизации. Фактически приложение следит за содержимым только одной папки — Dropbox.
Читайте также нашу статью 6+ способов как бесплатно увеличить дисковое пространство на Dropbox.
Сайт Dropbox: http://www.dropbox.com
2. Google Drive
Google Drive — бесплатное облачное хранилище данных, позволяющее пользователям хранить свои данные на серверах в облаке и делиться ими с другими пользователями в интернете. После активации заменяет собой Google Docs. По сути, взяли Google Docs для работы с документами, трансформировали его в облачный сервис и добавили 5 ГБ бесплатного пространства. В новом сервисе можно хранить не только документы, но и фотографии, музыку, видео и многие другие файлы – всего 30 типов. Но вообще все очень удобно и привычно для пользователей Google-сервисов.
Каждому пользователю Google Drive предоставляется бесплатно 15Gb пространства (данным предложением Google превосходит стандартные условия Dropbox, но проигрывает Яндекс.Диску). Если выделенного объёма недостаточно, можно приобрести дополнительно до 16 ТБ:
Объем | Месячная плата |
---|---|
100 GB | $4.99 |
200 GB | $9.99 |
400 GB | $19.99 |
1 TB | $49.99 |
2 TB | $99.99 |
4 TB | $199.99 |
8 TB | $399.99 |
16 TB | $799.99 |
Сайт Google Drive: https://drive.google.com
3. Mega
Mega — (MEGA Encrypted Global Access) — амбициозный новичек, облачный файлообменник Ким Доткома (Kim Dotcom), основателя легендарного Megaupload.Фишка Mega: шифрует весь контент прямо в браузере с помощью алгоритма AES; пользователи могут передавать друг другу файлы в зашифрованном виде, при этом все данные хранятся в «облаке»; ключи доступа к файлам не публикуются в открытом доступе, а распространяются по схеме Friend-to-Friend, между доверяющими друг другу пользователями.
Примечательно то, что Mega сразу стартовал с бесплатными 50 Гбайтами (!), кроме того, есть возможность значительно расшириться в платных пакетах:
- Pro I — 500 Гбайт, $9.99/мес ;
- Pro II — 2 ТГбайта, $19.99/мес ;
- Pro III- 4 Тбайта в, $29.99/мес ;
На данный момент действует акция: если купить платный пакет на год, то 2 месяца бесплатно.
Сайт Mega: https://mega.co.nz
4. Яндекс.Диск
Яндекс.Диск — бесплатный облачный сервис от Яндекса, позволяющий пользователям хранить свои данные на серверах в облаке и передавать их другим пользователям в интернете. Работа построена на синхронизации данных между различными устройствами. В настоящее время регистрация пользователей доступна всем. Ранее, до запуска Яндекс. Диска, функции хранения пользовательских файлов на Яндексе выполнял сервис Яндекс.Народ.
Изначально Яндекс.Диск предоставляет около 10Гб навсегда.
Платные пакеты облачного сервиса Яндекс.Диск:
- +10 Gb — 30 руб./мес или 300 руб./год
- +100 Gb — 150 руб./мес или 1500 руб./год
- +1 Tb — 900 руб./мес или 9000 руб./год
Кроме того, Яндекс.Диск может выступать в качестве службы облачного сервиса, интегрируясь в офисный пакет Microsoft Office 2013, а недавно появилась возможность автоматической загрузки фото и видеофайлов с цифровых камер и внешних носителей информации на Яндекс. Диск. При этом пользователю предоставляются дополнительно 32 ГБ пространства на полгода.
Сайт Яндекс.Диск: http://disk.yandex.ru/
5. Сopy.com
Copy.com - новый конкурент Dropbox, перспективный «новичек» среди облачных хранилищ данных. По функционалу практически идентичен Dropbox, однако изначально дает сразу 15 Гбайт бесплатного дискового пространства (+5Гбайт, если перейти по ссылке), еще можно добавить бесплатное дисковое пространство с помощью разных фичей (например, реферальные ссылки). Кроме того, т.к. разработчик данного сервиса — компания Barracuda Networks, деятельность которой является защита данных, анонсируется хорошая безопасность и защита данных.
Еще из плюсов Copy.com можно отметить красивый и понятный интерфейс; кроссплатформенность сервиса — есть приложения для Android, iOS, Linux, Mac OS X, Windows и Windows Phone; отсуствие ограничения на размер загружаемого файла.
Copy.com предлагает такие тарифные планы:
- Бесплатный — 15 Гбайт (можно расширить разными действиями до 22 Гбайт );
- Pro 250 — 250 Гбайт $9.99/мес. или $99/год;
- Pro 500 — 500 Гбайт $14.99/мес. или $149/год;
6. Облако@mail.ru
Облако@mail.ru — новое и очень перспективное облачное хранилище данных от компании Mail.Ru Group, позволяющее пользователям хранить свои данные в облаке и синхронизировать данные на разных устройствах, а также делиться ими с другими пользователями. Сервис открылся относительно недавно — в конце лета 2013.Фишка Облако@mail.ru — беспрецедентно большой размер дискового пространства, предоставляемого бесплатно. Пользователи могут сразу бесплатно получить до 100 (!) ГБайт облачного хранилища.
Пользоваться облаком можно не только через веб-интерфейс, но через десктопные (для Windows и Mac OS) и мобильные приложения для Android и iOS. Для самых продвинутых пользователей сделан специальный клиент под Linux.
Функция, с самого начала доступная в мобильных приложениях — автозагрузка фотографий с телефона. Если включена эта функция, все фото, сделанные с помощью устройства, мгновенно оказываются в «Облаке».
Кроме того, т.к. сервис еще новый, то ждем новых функциональных фич!
Сайт Облако@mail.ru: https://cloud.mail.ru/
7. Bitcasa
Bitcasa — облачное хранилище данных, которое позволяет хранить неограниченное количество вашей информации. Долгожданный релиз вышел из стадии бета в 2013 году. Bitcasa была основана бывшими сотрудниками Mastercard, VeriSign, Classmates.com и Mozy. А это значит, что создатели сервиса не понаслышке знакомы с решениями для резервного копирования данных онлайн, а также со средствами, обеспечивающими безопасность хранения пользовательских файлов.Идея сервиса в том, чтобы предоставить всем желающим неограниченное пространство для облачного хранения данных. Что же касается безопасности, то Bitcasa выполняет шифрование на стороне пользователя, и все данные передаются в «облако» уже в зашифрованном виде. По заявлению создателей, никто из сотрудников компании не может получить доступ к пользовательским данным.
Еще одной удобной «фичей» является встроенный видео-плеер, таким образом, вы сможете просматривать, например, фильмы где-угодно, в том числе с мобильных устройсвт без установки видео-плеера.
После регистрации сразу доступно бесплатные 20 Гбайт, кроме того есть платные пакеты:
- 1Тбайт — $10 в месяц;
- 5 Тбайт — $49 в месяц;
- Неограниченный (!) объем — $99 в месяц
Сайт Bitcasa: http://bitcasa.com
8. Yunpan 360
Yunpan 360 — китайское облачное хранилище данных, которое изначально бесплатно и навсегда предоставляет 36 Терабайт(!). Кроме того, данное дисковое пространство можно ещё и увеличить, есть пользователи, у которых больше 100 Терабайт на Yunpan 360.Таким образом, все остальные облачные хранилища данных меркнут от таких объемов дискового пространства. Однако, почему же Yunpan 360 пока так плохо известен за пределами Китая? Ответ прост - Yunpan 360 пока только на китайском языке, там нет даже английской версии, не говоря уже о других языках. Впрочем, для настойчивых есть русскоязычное сообщества http://yunpan.ru, на котором подробно рассказывается как пользоваться данным китайским чудом
Сайт Yunpan 360: http://yunpan.360.cn/
9. 4shared
4shared — облачный файлообменный хостинг.Базовая бесплатная регистрация даёт возможность загружать до 10 ГБайт в свою учётную запись. После подтверждения регистрации по электронной почте объём увеличивается до 15 ГБайт. Премиум-пользователи получают в своё распоряжение 100 ГБайт.
После успешной загрузки файла пользователь получает уникальную ссылку, по которой другие впоследствии смогут скачать этот файл. Все загруженные файлы сохраняются в течение 180 дней с момента последнего посещения аккаунта. Файлы премиум-пользователей сохраняются на весь срок действия учётной записи. Пользовательский интерфейс сервиса внешне похож на проводник Windows.
Сайт 4shared: http://www.4shared.com
10. SugarSync
SugarSync — облачное хранилище данных, которое хранит документы, файлы, фотографии и музыку. Цены начинаются от $ 7,49 в месяц. Чтобы оценить преимущества SugarSync есть 30-дневная бесплатная триал-версия для всех платных пакетов. Для взаимодействия с сервисом используется удобная программа-клиент, версии которой существуют не только для Windows и Mac, но и для Android, iPhone, Symbian. Количество синхронизируемых устройств не ограничено.С февраля 2014 года перешла исключительно на платные пакеты хранилищ данных:
- 60 Гб — $7,49 в месяц;
- 100 Гб — $9,99 в месяц;
- 250 Гб — $24,99 в месяц;
- 1000 Гб — $55 в месяц;
Сайт SugarSync: https://www.sugarsync.com
Яндекс.Директ
Новая коллекция adidas Neo!Модные новинки adidas Neo на Lamoda.ua! Быстрая доставка по Украине!Обувь·Одежда·Аксессуарыlamoda.ua |
11. Wuala
Wuala — безопасное онлайн-хранилище файлов. Во многом Wuala предоставляет те же возможности, что и DropBox, однако основным достоинством Wuala перед конкурентами является безопасность. (см. статью Как обеспечить безопасность в облачных хранилищах). В отличие от других сервисов, Wuala шифрует все данные непосредственно на компьютере пользователя, и на сервер они передаются уже в зашифрованном виде. Пароль от учетной записи никогда никуда не передается, поэтому привычная схема восстановления пароля на Wuala не работает.
Новые зарегистрированные пользователи получают 5 Гб в сети хранения от команды Wuala.
Сайт Wuala: http://www.wuala.com/
12. Box.net
Box.net — облачное хранилище данных, которое позволяет хранить ваши файлы в сети, а также совместно над ними работать.Box.net предостовляет три пакета — один бесплатный и два платных:
- Personal — бесплатно: для 1 пользователя предоставляется 5 Гб, лимит на размер загружаемого файла — 25 мбайт;
- Business- $15 в месяц: от 3 до 500 пользователей, предоставляется 5оо Гб, лимит на размер загружаемого файла — 2Гб;
- Enterprise — стоимость варьируется от количества пользователей и нужного объема диска.
Сайт Box.net: http://box.net
13. OneDrive ( ex. SkyDrive)
OneDrive — переименованный в феврале 2014 Microsoft SkyDrive, базирующийся на облачной организации интернет-сервис хранения файлов с функциями файлообмена. К слову, SkyDrive создан в августе 2007 года компанией Microsoft. Сервис OneDrive интегрирован с Microsoft Office. Непосредственно из приложения можно сохранять файлы Excel, OneNote, PowerPoint и Word в службе Windows Live OneDrive.Сервис OneDrive позволяет хранить изначально бесплатно 7 Гбайт информации в упорядоченном с помощью стандартных папок виде. Для изображений предусмотрен предпросмотр в виде эскизов, а также возможность их просмотра в виде слайдов.
Можно купить дополнительное дисковое пространство:
- +50 Гбайт — $25.00/год
- +100 Гбайт — $50.00/год
- +200 Гбайт — $100.00/год
- автоматическое резервное копирования камеры для Android;
- возможность совместного использования и просмотра видео так же легко, как фотографий;
- за каждого приглашенного друга можно получить до 5 Гбайт бесплатно (по 500 Мбайт);
- + 3 Гбайта бесплатно просто за бекап с камеры;
- обновленные, более гибкие тарифные планы.
14. iDrive
iDrive является идеальным инструментом для онлайнового резервного копирования с высоким уровнем приватности. Если вы хотите сохранить копию важных документов на облачном сервере, то iDrive то, что вы ищете. Использовать его просто: скачать iDrive программное обеспечение, запустить приложение и выбрать папки для синхронизации.Бесплатно предоставляется 5 Гб дисковой квоты хранения.
Сайт iDrive: http://www.idrive.com
15.iFolder
iFolder распространяется бесплатно с открытым исходным файлом программы синхронизации. iFolder — хорошее программное обеспечение для небольшой команды, которой удобно работать на собственном сервере. Таким образом вы убедитесь, что только члены группы имеют доступ к вашим личным файлам.Сайт iFolder: http://www.kablink.org
16. OpenDrive
Полупереведенный на русский язык сайт OpenDrive обещает стандартный набор возможностей с 5 Гбайт пространства для бесплатного пользователя (с ограничением в 100 Мбайт на файл), но внимание привлекает одна особенность: возможность установления пользователем цены на выложенные им файлы. Хочешь скачать — плати. Небезынтересная опция, в некоторых случаях может оказаться вполне полезной.
Сайт OpenDrive: http://www.opendrive.com
17. Syncplicity
Syncplicity — программный комплекс для синхронизации данных в кроссплатформенных средах. Бесплатно предоставляется 2 Гбайта дисковой квоты для 1 пользователя и двух компьютеров. Платные пакеты стартуют от 15 у.е. в месяц.Одно из преимуществ Syncplicity в том,что нет необходимости постоянно держать включенными оба компьютера, синхронизация происходит после включения. Недостатком программы является отсутствие русского интерфейса и справки.
В Syncplicity также организована тесная интеграция с некоторыми онлайновыми сервисами. Например, можно загружать фотографии в альбомы на Facebook, просто копируя их в определенные папки на ПК. Также довольно интересно выглядит интеграция с офисным пакетом Google: любой документ, созданный в Google Docs, будет появляться в выбранной папке на компьютере, и наоборот. Таким образом, файл редактируется как локально с помощью Microsoft Office, так и в онлайне.
Сайт Syncplicity: http://www.syncplicity.com
—
Автор: ТопОбзор
При использовании этого материала «Обзор 10+ облачных хранилищ данных» активная ссылка на http://topobzor.com обязательна.
SQL. Select - работа с диапазонами
Практика:
- диапазоны и конструкция исключений значений;
SELECT * FROM CHANNEL_DETAILS
WHERE CCID IN (4431,913,4336)
AND CH_START NOT IN (
SELECT CH_START FROM CHANNEL_DETAILS WHERE CH_START>='19.08.14')
AND
CH_END NOT IN (SELECT CH_END FROM CHANNEL_DETAILS WHERE CH_END<='19.05.14')
AND ((CHANNEL_STATE='ACT') OR (CHANNEL_STATE='RDY') OR (CHANNEL_STATE='NEW'));
Теория:
- диапазоны и конструкция исключений значений;
SELECT * FROM CHANNEL_DETAILS
WHERE CCID IN (4431,913,4336)
AND CH_START NOT IN (
SELECT CH_START FROM CHANNEL_DETAILS WHERE CH_START>='19.08.14')
AND
CH_END NOT IN (SELECT CH_END FROM CHANNEL_DETAILS WHERE CH_END<='19.05.14')
AND ((CHANNEL_STATE='ACT') OR (CHANNEL_STATE='RDY') OR (CHANNEL_STATE='NEW'));
Теория:
Поэзия местного производства
Муза, порой, и в эту сферу деятельности заглядывает ;)
Как бывает в каждой команде разработчиков
Некоторым командам разработчиков очень везет и к ним в команду попадает прекрасная половина человечества) Но это сплошное умиление наблюдать процесс создания ПО "нежными созданиями", а особенно бурное восприятие при появлении ошибок) Вот про такую ситуацию следующая зарисовка:
Наша Таня громко пилит,
Уронила в прогу Баг
Тише Танечка не плачь
Мы залили новый патч.
Как бывает в каждой команде разработчиков
Некоторым командам разработчиков очень везет и к ним в команду попадает прекрасная половина человечества) Но это сплошное умиление наблюдать процесс создания ПО "нежными созданиями", а особенно бурное восприятие при появлении ошибок) Вот про такую ситуацию следующая зарисовка:
Наша Таня громко пилит,
Уронила в прогу Баг
Тише Танечка не плачь
Мы залили новый патч.
DEV. Литература
Комплект литературы для разработчика:
- Книги, которые должен прочитать Java программист: от новичка до профессионала;
- Книги, которые должен прочитать Java программист: от новичка до профессионала;
пятница, 11 июля 2014 г.
Unix. Поиск, операции с файлами и фильтрация
Практика:
Поиск по шаблону внутри файла:
grep java.lang.ExceptionInInitializer pasm.log
Поиск файла по системе(внимание, имеет значение от имени какого пользователя делаешь поиск. Иногда нужны root привилегии):
find / -name "tlis.sh"
Теория:
для вывода,
например, содержимого файла с журналом почтового демона на
стандартный вывод [14].
Команда cat
имеет очень полезную опцию (-n),
которая позволяет вам выводить номера строк.
Некоторые файлы, типа журналов демонов (если они запущены) обычно имеют довольно большой размер [15] и полный их вывод на экран будет не очень полезным. Часто вам нужно увидеть только несколько строк из файла. Для этого вы можете воспользоваться командой tail. Следующая команда выведет (по умолчанию) последние 10 строк из файла /var/log/mail/info:
Вы можете
использовать опцию -n
для вывода последних N строк файла. Например, для вывода последних
2-х строк наберите:
Команда head
похожа на tail,
но она выводит первые строки файла. Следующая команда выведет (по
умолчанию) первые 10 строк файла /var/log/mail/info:
Как и в случае
с tail вы можете
использовать опцию -n
для указания количества выводимых строк. Например, для вывода первых
2-х строк наберите:
Давайте
рассмотрим еще один пример. Нам нужно выбрать последние 20 строк,
сохранить их в файл results.txt,
а на экран вывести только первую из них. Тогда мы должны ввести
следующее:
У команды tee
есть полезная опция (-a),
которая позволяет вам дописать данные в конец существующего файла.
Давайте вернемся назад к команде tail. Такие файлы как журналы обычно динамически изменяются, т.к. демон постоянно добавляет в них отчет о совершенных действиях или событиях. Поэтому, если вам нужно наблюдать за изменениями в лог-файле в режиме реального времени, тогда вам нужно воспользоваться преимуществами опции -f:
В этом случае
все изменения в файле /var/log/mail/info
будут немедленно выводиться на экран. Использование команды tail
с опцией -f
весьма полезно, когда вам нужно знать, как работает ваша система.
Например, наблюдая за файлом журнала /var/log/messages,
вы сможете всегда получать обновленную информацию о системных
сообщенях и различных демонах.
Если указано несколько файлов, в отображаемом
результате их имена будут выводиться перед каждой найденной строкой.
Для предотвращения вывода этих имен используйте опцию -h;
используйте опцию -l
для вывода только имен файлов с найденными совпадениями. Шаблон - это
регулярное выражение, хотя в большинстве случаев он состоит просто из
одного слова. Наиболее часто используемые опции:
Если нам нужно
найти все строки, не содержащие шаблона “postfix”, нам
надо будет воспользоваться опцией -v:
В этом случае
команда grep использована дважды. Это разрешается, но не совсем
красиво. Мы можем получить тот же результат при помощи утилиты fgrep.
Сначала нам нужно создать файл, содержащий шаблоны, записанные в
столбик. Такой файл может быть создан следующим образом (мы
используем patterns.txt
в качестве имени файла):
Затем мы
вызываем следующую команду, в которой мы используем файл patterns.txt
со списком шаблонов и утилиту fgrep
вместо “двойного вызова” команды grep:
Файл
./patterns.txt
может содержать сколько угодно шаблонов. Каждый из них должен быть
введен в виде одной строки. Например, для выборки сообщений о
письмах, успешно отправленных на адрес peter@mandrakesoft.com,
достаточно будет добавить адрес этого электронного ящика в наш файл
./patterns.txt,
выполнив следующую команду:
Понятное дело, что
вы можете комбиноровать команду grep с tail
и head. Если нам
нужно найти сообщения о предпоследнем электроном письме, отправленном
на адрес peter@mandrakesoft.com,
мы используем:
В предыдущем
разделе мы получили список сообщений об успешно отправленных письмах
на адреса, перечисленные в нашем файле./patterns.txt.
Если нам нужно узнать количество таких сообщений, мы можем
перенаправить наш отфильтрованный результат через канал в команду wc:
Давайте
отсортируем часть файла /etc/passwd.
Как видите сам по себе этот файл не отсортирован:
Если нам нужно
отсортировать его по полю login,
мы набираем:
По умолчанию
команда sort
сортирует информацию по первому полю в порядке возрастания (в нашем
случае по полю login).
Если нам нужно отсортировать данные в порядке убывания, мы используем
опцию -r:
Для каждого
пользователья имеется свой собственный UID,
записанный в файле /etc/passwd.
Давайте отсортируем этот файл в порядке возрастания по полю UID:
, где мы сортируем файл /etc/passwd
в порядке возрастания по столбцу UID
и прогоняем результат по каналу через команду tail,
которая выводит первое значение из отсортированного списка.
Поиск по шаблону внутри файла:
grep java.lang.ExceptionInInitializer pasm.log
Поиск файла по системе(внимание, имеет значение от имени какого пользователя делаешь поиск. Иногда нужны root привилегии):
find / -name "tlis.sh"
Теория:
Операции с файлами и фильтрация
Основная часть работы в
командной строке ведётся с файлами. В этом разделе мы рассмотрим, как
просматривать и фильтровать содержимое файлов, извлекать из файлов
нужную информацию при помощи одной команды и сортировать их
содержимое.
cat, tail, head, tee: Команды для вывода содержимого файлов
Эти команды имеют почти
один и тот же синтаксис: имя_команды [опции] [файл(ы)], и
могут быть использованы в каналах. Все они используются для вывода
части файла согласно определенным критериям.
Утилита cat
объединяет файлы и выводит результат на стандартный вывод. Это одна
из наиболее широко используемых команд. Вы можете использовать:
# cat /var/log/mail/info |
Некоторые файлы, типа журналов демонов (если они запущены) обычно имеют довольно большой размер [15] и полный их вывод на экран будет не очень полезным. Часто вам нужно увидеть только несколько строк из файла. Для этого вы можете воспользоваться командой tail. Следующая команда выведет (по умолчанию) последние 10 строк из файла /var/log/mail/info:
# tail /var/log/mail/info |
# tail -n2 /var/log/mail/info |
# head /var/log/mail/info |
# head -n2 /var/log/mail/info |
Также вы можете
использовать эти две команды совместно. Например, если вы хотите
увидеть только строки 9 и 10, вы можете воспользоваться командой, в
которой head выберет первые 10 строк из файла и передаст их по
каналу в команду tail.
# head /var/log/mail/info | tail -n2 |
Затем вторая часть
команды отберет последние 2 строки и выведет их на экран. Таким же
способом вы можете выбрать 20-ю от конца файла строку:
# tail -n20 /var/log/mail/info |head -n1 |
В этом примере мы
говорим команде tail выбрать последние 20 строк файла и
передать их по каналу в head. Затем команда head
выводит на экран первую строку из полученных данных.
Допустим, что
результат последнего примера нам нужно одновременно вывести на экран
и сохранить его в файл results.txt.
В этом нам может поможет утилита tee.
Ее синтаксис:tee [опции] [файл] |
# tail -n20 /var/log/mail/info |head -n1|tee results.txt |
# tail -n20 /var/log/mail/info |tee results.txt |head -n1 |
Давайте вернемся назад к команде tail. Такие файлы как журналы обычно динамически изменяются, т.к. демон постоянно добавляет в них отчет о совершенных действиях или событиях. Поэтому, если вам нужно наблюдать за изменениями в лог-файле в режиме реального времени, тогда вам нужно воспользоваться преимуществами опции -f:
# tail -f /var/log/mail/info |
В следующем разделе мы
рассмотрим, как можно использовать утилиту grep в качестве фильтра
для отделения сообщений Postfix от сообщений других служб.
grep: Поиск строк в файлах
Ни имя команды, ни ее аббревиатура (“General Regular Expression
Parser” - синтаксический анализатор общих регулярных выражений)
не слишком интуитивны, но ее действие и ее использование довольно
просты для понимания: grep выполняет поиск в одном или нескольких
файлах по шаблону, заданному в качестве аргумента. Ее синтаксис:
grep [опции] <шаблон> [один или более файлов] |
- -i:
поиск без учета регистра (т.е. игнорирование разницы между верхним и
нижним регистром);
- -v:
обратный поиск. Вывод строк, которые не
соответствуют шаблону;
- -n:
вывод номера строки для каждой из найденных строк;
- -w:
сообщает grep'у, что шаблон должен совпадать со всем словом.
# grep postfix /var/log/mail/info |
Команда grep может быть
использована в канале. Так мы можем получить такой же результат, что
и в предыдущем примере, при помощи следующего:
# cat /var/log/mail/info | grep postfix |
# grep -v postfix /var/log/mail/info |
Давайте предположим, что
нам необходимо найти все сообщения об успешно отправленных письмах. В
этом случае мы должны отфильтровать все строки, добавленные почтовым
демоном в файл журнала (содержащие шаблон “postfix”), и
они должны содержать сообщение об успешной отправке (“status=sent”):
# grep postfix /var/log/mail/info |grep status=sent |
# echo -e 'status=sent\npostfix' >./patterns.txt |
# fgrep -f ./patterns.txt /var/log/mail/info |
# echo 'peter@mandrakesoft.com' >>./patterns.txt |
# fgrep -f ./patterns.txt /var/log/mail/info | tail -n2 | head -n1 |
Здесь мы применили
описанный выше фильтр и отправили результат через канал в команды
tail и head. Они выбрали из данных предпоследнее
значение.
wc: Подсчёт элементов в файлах
Команда wc (Word
Count - подсчёт слов) используется для подсчёта числа строк и
слов в файлах. Она также полезна для подсчёта байтов, символов и
длины самой длинной строки. Её синтаксис:
wc [опции] [файл(ы)] |
- -l:
вывод количества новых строк;
- -w:
вывод количества слов;
- -m:
вывод общего количества символов;
- -c:
вывод количества байт;
- -L:
вывод длины самой длинной строки в заданном тексте.
По умолчанию команда wc
выводит количество новых строк, слов и символов. Вот несколько
примеров использования:
$wc -l /etc/passwd |
$grep "model name" /proc/cpuinfo |wc -l |
# fgrep -f ./patterns.txt /var/log/mail/info | wc -l |
sort: Сортировка содержимого файла
Ниже представлен синтаксис этой можно утилиты для сортировки[16]:sort [опции] [файл(ы)] |
$ cat /etc/passwd |
$ sort /etc/passwd |
$ sort -r /etc/passwd |
$ sort /etc/passwd -t":" -k3 -n |
- -t":":
сообщает sort'у,
что разделителем полей является символ ":";
- -k3:
означает, что сортировка должна быть выполнена по по третьему
столбцу;
- -n:
сообщает, что выполняется сортировка числовых данных, а не
буквенных.
$ sort /etc/passwd -t":" -k3 -n -r |
- -u:
строгая сортировка: исключаются повторяющиеся поля сортировки;
- -f:
игнорирование регистра (строчные символы обрабатываются так же, как
и прописные).
$ sort /etc/passwd -t":" -k3 -n |tail -n1 |
четверг, 10 июля 2014 г.
QA. Automation - Human Emulator
Human Emulator — универсальная система бизнес, веб и браузер-автоматизации
С ее помощью автоматизируется выполнение любых задач, на которые вы и ваши сотрудники тратите свое драгоценное время! Автоматизация — обязательный элемент успешного бизнеса.
Ежедневно вы сталкиваетесь с десятками задач, отнимающими ваше время.
Human Emulator – простой и удивительно мощный инструмент автоматизации браузера
среда, 9 июля 2014 г.
SQL. SELECT into file
SQL Developer:
Method 1Add the comment
/*csv*/
to your SQL query and run the query as a script (using F5 or the 2nd execution button on the worksheet toolbar)That's it.
Method 2
Run a query
Right click and select unload.
Запись результатов sql-запроса в файл bash:
Как записать каждую запись результата sql-запроса в файл через пробел в bash'е? Как записать каждую запись результата sql-запроса в файл на отдельной строке в bash'е?\\ psql dbname -c 'select * from test1' > file.txt
Файловый вывод/ввод
Большинство программ, работающих с БД, позволяют сохранять выборки в различных форматах, но не все позволяют сохранить в виде простого текстового файла. Например, была ситуация, когда в БД была необходимая информация о сотрудниках (более тысячи человек) для одной стандартной формы. А формат файла, описывающий эту форму, оказался текстовым. Поэтому проблема решилась выборкой в файл и вставкой его содержимого в файл формы. А соответствующий отдел был избавлен от лишней работы. Для конкретности примера, воспользуемся следующей таблицей с данными.
-- таблица цветов
create table colors(
id integer,
cname varchar(45),
constraint pk_colors primary key (id)
);
insert into colors values(1,'красный');
insert into colors values(2,'синий');
insert into colors values(3,'зеленый');
insert into colors values(4,'белый');
insert into colors values(5,'черный');
commit;
Oracle
В Oracle вывод в файл реализуется с помощью команды SQL plus spool. Она служит как для начала вывода в файл, так и для остановки. По умолчанию расширение файла lst.
-- открываем вывод в файл
spool c:\\myfile;
-- выборка
select t.id || ' ' || t.cname from colors t;
-- закрываем вывод в файл
spool off;
Так как это не SQL команда, то ее нельзя использовать внутри PL/SQL блока,
но можно поместить блок между этими командами.
По этой же причине, чтобы выполнить этот пример в PL/SQL developer,
нужно открыть Command window.На некоторых операционных системах поддерживается дополнительный параметр out, позволяющий сразу распечатать выборку на принтере установленном по умолчанию.
-- открываем вывод в файл
spool c:\myfile;
-- выборка
select t.id || ' ' || t.cname from colors t;
-- закрываем вывод файл и распечатываем
spool out;
MySQL
В MySQL данная задача реализована аналогично сохранению выборки в списке переменных в команде select.
select *
into outfile 'c:/myfile.lst' -- указываем файл
fields terminated by ',' -- разделитель полей
enclosed by '"' -- заключить каждое поле между "
lines terminated by '\\n' -- разделитель строки
from colors;
Если какой-либо разделитель не нужен, то его определение можно опустить.
В отличие от Oracle здесь нельзя вывести более одной выборки в один файл.Команда LOAD DATA INFILE является обратной и позволяет загрузить данные из файла в таблицу.
Например пусть есть файл myfile.lst, со следующим содержимым в обычной для Windows русской кодировке.
"50", "светло-коричневый" "51", "темно-коричневый"Тогда загрузить данные можно следующей командой.
load data infile 'c:/myfile.lst'
ignore -- пропускаем если данные уже в таблице
into table colors
character set cp1251 -- кодировка исходного файла
fields
terminated by ',' -- разделитель полей
enclosed by '"' -- поле заключено между "
lines terminated by '\\n'; -- разделитель строки
Если таблица colors использует другую кодировку, например utf-8,
данные преобразуются корректно.PostgreSQL
Команда copy в PostgreSQL позволяет, как сохранить выборку в файле, так загрузить данные из файла. Файловый источник должен существовать заранее, при записи автоматически он не создается. При повторном копировании содержимое файла перезаписывается. При чтении из файла в таблицу, кодировки строковых данных должны совпадать.
-- простой вывод данных в файл
copy (select * from colors) to 'c:/myfile.lst';
-- предположим, база настроена на кодировку utf-8,
-- тогда и строки сохранятся в файл в utf-8
copy
(
select '"50", "светло-коричневый"'
union
select '"51", "темно-коричневый"'
) to 'c:/myfile.lst';
-- а теперь загрузим данные в таблицу
copy colors (id, cname) from 'c:/myfile.lst'
with delimiter ',' -- разделитель полей
null 'null' -- чем заменять пустые значения
cvs -- CSV настройки
quote '"' -- поле заключено между "
escape '\\\\' ; -- ESC символ, для пропуска "
понедельник, 7 июля 2014 г.
WebDev. Обучение
Тут представлен список сайтов с хорошими программами обучения по теме:
- w3schools - HTML, CSS, PHP, JS, JQuery, SQL;
- w3schools - HTML, CSS, PHP, JS, JQuery, SQL;
пятница, 4 июля 2014 г.
WebDev. XML - автоматизации процессов просмотра\редактирования
Раздел для сбора информации по автоматизации процессов просмотра\редактирования.
Начну с конца, а именно с функции которая была необходима мне, для приведения в порядок не отформатированных файлов. Для того что бы отформатировать XML файл «легким движением руки», перейдите в меню «Плагины» далее XML Tools и выберите пункт:
Pretty Print (XML only with-line breaks)
в результате этой операции вы получите полностью отформатированный файл.
Теперь о других возможностях этого плагина:
Установив опцию Enable XML syntax auto-check, вы тем самым включите автоматическую проверку синтаксиса xml и в случае ошибки в вашем xml файле, вы будете проинформированы сообщением об ошибке — при попытке сохранить файл.
Если вы просто хотите проверить имеющийся у вас xml файл на ошибки воспользуйтесь
Check XML syntax now
Для автоматической валидации кода используйте:
Enable Auto Validation
или для валидации файла воспользуйтесь
Validate Now.
Для автоматического закрытия тегов используйте
Tag auto close.
Полезное:
Десятка незаменимых Firefox-надстроек веб-разработчика
Начну с конца, а именно с функции которая была необходима мне, для приведения в порядок не отформатированных файлов. Для того что бы отформатировать XML файл «легким движением руки», перейдите в меню «Плагины» далее XML Tools и выберите пункт:
Pretty Print (XML only with-line breaks)
в результате этой операции вы получите полностью отформатированный файл.
Теперь о других возможностях этого плагина:
Установив опцию Enable XML syntax auto-check, вы тем самым включите автоматическую проверку синтаксиса xml и в случае ошибки в вашем xml файле, вы будете проинформированы сообщением об ошибке — при попытке сохранить файл.
Если вы просто хотите проверить имеющийся у вас xml файл на ошибки воспользуйтесь
Check XML syntax now
Для автоматической валидации кода используйте:
Enable Auto Validation
или для валидации файла воспользуйтесь
Validate Now.
Для автоматического закрытия тегов используйте
Tag auto close.
Полезное:
Десятка незаменимых Firefox-надстроек веб-разработчика
четверг, 3 июля 2014 г.
WebDev. XML. Validators
XML - XSD
1. www.corefiling.com
2. www.utilities-online.info
3. www.freeformatter.com
4. validator.w3.org
При работе с валидаторами необходимо удалит лишнюю строку:
<xsd:include schemaLocation=""></xsd:include>
http://citforum.ck.ua/internet/xml/scheme/
1. www.corefiling.com
2. www.utilities-online.info
3. www.freeformatter.com
4. validator.w3.org
При работе с валидаторами необходимо удалит лишнюю строку:
<xsd:include schemaLocation=""></xsd:include>
http://citforum.ck.ua/internet/xml/scheme/
XML-СХЕМА. ЧАСТЬ 0: ПРИМЕР
SQL. SQLDeveloper - отображение зависимостей
Для отображения зависимостей используется функция DataModeler. В ней можно просмотреть, как связаны между собой таблицы в БД.
Инструкцию по использованию можно найти тут:
http://www.oracle.com/technetwork/developer-tools/datamodeler/overview/index.html
Инструкцию по использованию можно найти тут:
http://www.oracle.com/technetwork/developer-tools/datamodeler/overview/index.html
Выигрываем время - гарячие кнопки
Раздел посвящен теме оптимизации действий в работе.
Как известно, экономия времени, на высокочастотных операциях, приводит к выигрышу достаточно количества времени. Например: переключение раскладки клавиатуры занимает 1 сек времени с участием внимания пользователя, в то время, как программа Puntoswitcher выполняет данную операцию в автоматическом режиме, экономя 1 сек и внимание пользователя.
Именно для таких инструментов и посвящена данный раздел. Раздел постоянно будет обновятся новыми возможностями и хитростями, так как поданная информация используется автором в работе и постоянно улучшается. Итак, начнем:
Горячие кнопки браузера FireFox:
Ctrl + T - открытие новой вкладки;
Ctrl + N - открытие нового окна браузера;
Горячие кнопки OS Windows:
Как известно, экономия времени, на высокочастотных операциях, приводит к выигрышу достаточно количества времени. Например: переключение раскладки клавиатуры занимает 1 сек времени с участием внимания пользователя, в то время, как программа Puntoswitcher выполняет данную операцию в автоматическом режиме, экономя 1 сек и внимание пользователя.
Именно для таких инструментов и посвящена данный раздел. Раздел постоянно будет обновятся новыми возможностями и хитростями, так как поданная информация используется автором в работе и постоянно улучшается. Итак, начнем:
Горячие кнопки браузера FireFox:
Ctrl + T - открытие новой вкладки;
Ctrl + N - открытие нового окна браузера;
Горячие кнопки OS Windows:
пятница, 27 июня 2014 г.
SQL. Select - выборка значений
Практика:
Когда набор содержит значения номеров а не символов, одиночные кавычки опускаются. Давайте найдем все значения относящихся к пакету имеющих значения snum = 1001, 1007, и 1004. Вывод для следующего запроса:
Select * From sm_pckg_servcie_map Where package_id In ( 522, 520 );
Теория:
Когда набор содержит значения номеров а не символов, одиночные кавычки опускаются. Давайте найдем все значения относящихся к пакету имеющих значения snum = 1001, 1007, и 1004. Вывод для следующего запроса:
Select * From sm_pckg_servcie_map Where package_id In ( 522, 520 );
Теория:
SQL. Order by - сортировка данных
Практика:
1) Запрос, выполняющий сортировку может выглядеть примерно следующим образом.
В этом случае записи из таблицы
Сортировка текста с учетом регистра:
Сортировка по фрагменту строки:
Сортировка записей по заданному списку значений:
Сортировка строк по их длине:
Теория:
1) Запрос, выполняющий сортировку может выглядеть примерно следующим образом.
SELECT * FROM articles ORDER BY a_title ASC , a_date DESC |
articles
будут отсортированы в возрастающем порядке по полю a_title
, а для записей у которых совпадают значения в поле a_title
– по полю a_date
в убывающем порядке.Сортировка текста с учетом регистра:
SELECT
*
FROM
articles
ORDER
BY
BINARY
a_title
BINARY - включает режим учета регистра;
Сортировка по фрагменту строки:
SELECT
SUBSTRING_INDEX(a_title,
' '
, -1)
AS
at
FROM
wp_5_posts
ORDER
BY
at
Сортировка записей по заданному списку значений:
SELECT
*
FROM
articles
ORDER
BY
FIELD(a_season,
"весна"
,
"лето"
,
"осень"
,
"зима"
)
Сортировка строк по их длине:
SELECT
*
FROM
articles
ORDER
BY
CHAR_LENGTH(a_title)
Теория:
четверг, 26 июня 2014 г.
Маршрутизация в linux. Forward, default, stateful firewall
Теория:
Форвардинг пакетов.
NAT-правила не обеспечивают форвардинг трафика между интерфейсами, они непосредственно имеют дело с перезаписыванием адресов отправителя/получателя и портов. Для продвижения трафика используется цепочка FORWARD таблицы filter:
# iptables -A FORWARD -i <входящий интерфейс> -о <исходящий интерфейс> -j ACCEPT
Форвардинг - это прямое перенаправление пакетов с одного интерфейса на другой. Поскольку по умолчанию используется таблица filter, ее не нужно указывать с помощью опции -t.
На практике используется форвардинг не всех пакетов, а только определенных, к примеру пакетов с определенным номером порта (в частности, 80 и 443 для Web-сервера):
# iptables -A FORWARD -i <входящий интерфейс> -о <DMZ-интерфейс> -d <IP Web-сервера> --dport 80,443 -j ACCEPT
C помощью опции -р можно указать протокол, например -р tcp.
Политики по умолчанию.
Для каждой таблицы нужно определить политику по умолчанию, то есть действие, которое будет выполнено над пакетом, если он не совпал ни с одним правилом. Здесь возможны два варианта:
Термин "stateful firewall" в применении к IPTables применяется довольно часто. Что это означает и что он дает? Обычно фильтрацию рассматривают на базе пакетов: идет сравнение адресов отправителя/получателя и портов, и, в зависимости от результата сравнения, выполняются определенные действия.
Модуль состояний (state) дает дополнительные возможности по фильтрации пакетов. Кроме адресов отправителя/получателя и портов, можно отслеживать контекст пакета: можно определить, какой это пакет, новый или ответ на уже посланный. Модуль состояний смотрит каждое соединение и определяет его состояние. Соединение бывает в одном из четырех состояний:
# iptables -A FORWARD -i <внешний интерфейс> -о <внутренний интерфейс> -d <IP Web-сервера> --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Состояние NEW описывает SYN-пакеты, но любой пакет может быть расценен как новый, если он не является частью установленного соединения. Это нежелательное поведение фильтра пакетов нужно обязательно пресекать:
# iptables -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP
Для отслеживания каждого соединения нужно 350 байтов оперативной памяти - в один мегабайт оперативной памяти «поместится» едва меньше 3000 соединений.
Чтобы модуль состояний не использовал всю оперативную память, на загруженных брандмауэрах вводят ограничение на количество соединений. Текущее максимальное количество соединений указано в файле
/proc /sys/net/ipv4/ip_conntrack_max:
$ cat /proc/sys/net/ipv4/ip_conntrack_max
32712
Когда максимальное число соединений будет превышено, в протоколе syslog появится сообщение в формате:
ip_conntrack: maximum limit of XXXX entries exceeded.
На современных компьютерах, где оперативной памяти стоит обычно больше 1 Гб, эта проблема не так критична, как раньше.
Вспомогательные модули.
Пакет Netfilter содержит вспомогательные модули, позволяющие решить некоторые проблемы: например, ip_conntrack_ftp (для отслеживания соединений) и ip_nat_ftp (для NAT). Загрузить модули можно с помощью команды modprobe:
# /sbin/modprobe ip_conntrack_ftp
# /sbin/modprobe ip_nat_ftp
После загрузки этих модулей FTP-данные будут помечены как RELATED, позволяя использовать состояния в правилах IPTables для ftp-данных.
http://webacademyexpert.blogspot.com/2014/06/linux-iptables.html
Форвардинг пакетов.
NAT-правила не обеспечивают форвардинг трафика между интерфейсами, они непосредственно имеют дело с перезаписыванием адресов отправителя/получателя и портов. Для продвижения трафика используется цепочка FORWARD таблицы filter:
# iptables -A FORWARD -i <входящий интерфейс> -о <исходящий интерфейс> -j ACCEPT
Форвардинг - это прямое перенаправление пакетов с одного интерфейса на другой. Поскольку по умолчанию используется таблица filter, ее не нужно указывать с помощью опции -t.
На практике используется форвардинг не всех пакетов, а только определенных, к примеру пакетов с определенным номером порта (в частности, 80 и 443 для Web-сервера):
# iptables -A FORWARD -i <входящий интерфейс> -о <DMZ-интерфейс> -d <IP Web-сервера> --dport 80,443 -j ACCEPT
C помощью опции -р можно указать протокол, например -р tcp.
Политики по умолчанию.
Для каждой таблицы нужно определить политику по умолчанию, то есть действие, которое будет выполнено над пакетом, если он не совпал ни с одним правилом. Здесь возможны два варианта:
- По умолчанию можно принимать все пакеты, а позже создать правила, блокирующие нежелательные пакеты.
- По умолчанию отбрасывать все пакеты и создать правила, разрешающие определенные пакеты.
Термин "stateful firewall" в применении к IPTables применяется довольно часто. Что это означает и что он дает? Обычно фильтрацию рассматривают на базе пакетов: идет сравнение адресов отправителя/получателя и портов, и, в зависимости от результата сравнения, выполняются определенные действия.
Модуль состояний (state) дает дополнительные возможности по фильтрации пакетов. Кроме адресов отправителя/получателя и портов, можно отслеживать контекст пакета: можно определить, какой это пакет, новый или ответ на уже посланный. Модуль состояний смотрит каждое соединение и определяет его состояние. Соединение бывает в одном из четырех состояний:
- NEW (новое) - попытка нового соединения. До этого не было пакетов, относящихся к этому соединению.
- ESTABLISHED (установленное) - соединение установлено, отмечается поток пакетов в обоих направлениях.
- RELATED (связано) - пакет связан с уже установленным соединением. Наиболее типичным примером является ICMP-coобщение, которое было создано в ходе соединения, но не является его частью.
- INVALID (недопустимый): пакет не идентифицирован. Как правило, эти пакеты отбрасываются.
# iptables -A FORWARD -i <внешний интерфейс> -о <внутренний интерфейс> -d <IP Web-сервера> --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Состояние NEW описывает SYN-пакеты, но любой пакет может быть расценен как новый, если он не является частью установленного соединения. Это нежелательное поведение фильтра пакетов нужно обязательно пресекать:
# iptables -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP
Для отслеживания каждого соединения нужно 350 байтов оперативной памяти - в один мегабайт оперативной памяти «поместится» едва меньше 3000 соединений.
Чтобы модуль состояний не использовал всю оперативную память, на загруженных брандмауэрах вводят ограничение на количество соединений. Текущее максимальное количество соединений указано в файле
/proc /sys/net/ipv4/ip_conntrack_max:
$ cat /proc/sys/net/ipv4/ip_conntrack_max
32712
Когда максимальное число соединений будет превышено, в протоколе syslog появится сообщение в формате:
ip_conntrack: maximum limit of XXXX entries exceeded.
На современных компьютерах, где оперативной памяти стоит обычно больше 1 Гб, эта проблема не так критична, как раньше.
Вспомогательные модули.
Пакет Netfilter содержит вспомогательные модули, позволяющие решить некоторые проблемы: например, ip_conntrack_ftp (для отслеживания соединений) и ip_nat_ftp (для NAT). Загрузить модули можно с помощью команды modprobe:
# /sbin/modprobe ip_conntrack_ftp
# /sbin/modprobe ip_nat_ftp
После загрузки этих модулей FTP-данные будут помечены как RELATED, позволяя использовать состояния в правилах IPTables для ftp-данных.
http://webacademyexpert.blogspot.com/2014/06/linux-iptables.html
Маршрутизация в linux. Iptables
Практика:
iptables --list
\\ просмотр всей таблицы маршрутизации
iptables -A INPUT -s 85.25.71.227 -j REJECT
\\ добавить по ключу А (append) в хвост таблицы правило о Входящих пакетах. Цель правила указывают с помощью -j.
Наиболее часто используемыми действиями являются:
\\ сброс настроек таблицы маршрутизации сессии на Выходе;
service iptables save
\\ команда для сохранения правил. Ибо после перезагрузки правила обнулятся.
iptables --list
\\ просмотр всей таблицы маршрутизации
iptables -A INPUT -s 85.25.71.227 -j REJECT
\\ добавить по ключу А (append) в хвост таблицы правило о Входящих пакетах. Цель правила указывают с помощью -j.
Наиболее часто используемыми действиями являются:
- ACCEPT - если пакет совпадает с правилом, он будет принят.
- REJECT - отклонить пакет и отправить ICMP-сообщение об ошибке назад отправителю.
- DROP - отбросить пакет и ничего не посылать в ответ.
- LOG - протоколировать детали пакета, если пакет совпадает с правилом. Данное действие является пассивным - нужно определить еще одно действие ACCEPT/DROP, если нужно, чтобы пакет был принят/отброшен.
\\ сброс настроек таблицы маршрутизации сессии на Выходе;
service iptables save
\\ команда для сохранения правил. Ибо после перезагрузки правила обнулятся.
Теория:
1. Основы;
2. Таблицы (table);
3. Команды (command);
Основы
Как уже говорилось выше, каждое правило — это
строка, содержащая в себе критерии определяющие, подпадает ли пакет под
заданное правило, и действие, которое необходимо выполнить в случае
выполнения критерия. В общем виде правила записываются примерно так:
iptables [-t table] command [match] [target/jump]
Нигде не утверждается, что описание действия
(target/jump) должно стоять последним в строке, мы, однако, будем
придерживаться именно такой нотации для удобочитаемости.
Если в правило не включается спецификатор [-t
table], то по умолчанию предполагается использование таблицы filter,
если же предполагается использование другой таблицы, то это требуется
указать явно. Спецификатор таблицы так же можно указывать в любом месте
строки правила, однако более или менее стандартом считается указание
таблицы в начале правила.
Далее, непосредственно за именем таблицы, должна
стоять команда. Если спецификатора таблицы нет, то команда всегда должна
стоять первой. Команда определяет действие iptables, например: вставить
правило, или добавить правило в конец цепочки, или удалить правило и
т.п.
Раздел matches задает критерии проверки, по которым
определяется подпадает ли пакет под действие этого правила или нет.
Здесь мы можем указать самые разные критерии — и IP-адрес источника
пакета или сети, и сетевой интерфейс и т.д. Существует множество
критериев, которые мы рассмотрим в данной главе.
И наконец target указывает, какое действие должно
быть выполнено при условии выполнения критериев в правиле. Здесь можно
заставить ядро передать пакет в другую цепочку правил, "сбросить" пакет и
забыть про него, выдать на источник сообщение об ошибке и т.п.
Таблицы
Опция -t указывает на используемую таблицу. По умолчанию используется таблица filter. С ключом -t применяются следующие опции.
nat Таблица
nat используется главным образом для преобразования сетевых адресов
(Network Address Translation). Через эту таблицу проходит только первый
пакет из потока. Преобразования адресов автоматически применяется ко
всем последующим пакетам. Это один из факторов, исходя из которых мы не
должны осуществлять какую-либо фильтрацию в этой таблице. Цепочка
PREROUTING используется для внесения изменений в пакеты на входе в
брандмауэр. Цепочка OUTPUT используется для преобразования пакетов,
созданных приложениями внутри брандмауэра, перед принятием решения о
маршрутизации. Обратите внимание на то, что в настоящее время эта
цепочка не работает. И последняя цепочка в этой таблице — POSTROUTING,
которая используется для преобразования пакетов перед выдачей их во вне.
mangle Эта
таблица используется для внесения изменений в заголовки пакетов.
Примером может служить изменение поля TTL, TOS или MARK. Важно: в
действительности поле MARK не изменяется, но в памяти ядра заводится
структура, которая сопровождает данный пакет все время его прохождения
через машину, так что другие правила и приложения на данной машине (и
только на данной машине) могут использовать это поле в своих целях.
Таблица имеет две цепочки PREROUTING и OUTPUT. PREROUTING используется
для внесения изменений на входе в брандмауэр перед принятием решения о
маршрутизации. OUTPUT — для внесения изменений в пакеты, поступающие от
приложений внутри брандмауэра. Заметьте, что таблица mangle ни в коем
случае не должна использоваться для преобразования сетевых адресов или
маскарадинга (Network Address Translation, Masquerading), поскольку для
этих целей имеется таблица nat.
filter Таблица
filter используется главным образом для фильтрации пакетов. Для
примера, здесь мы можем выполнить DROP, LOG, ACCEPT или REJECT без каких
либо сложностей, как в других таблицах. Имеется три встроенных цепочки.
Первая — FORWARD, используемая для фильтрации пакетов, идущих транзитом
через брандмауэр. Цепочку INPUT проходят пакеты, которые предназначены
локальным приложениям (брандмауэру). И цепочка OUTPUT — используется для
фильтрации исходящих пакетов, сгенерированных приложениями на самом
брандмауэре.
Выше мы рассмотрели основные отличия трех имеющихся
таблиц. Каждая из них должна использоваться только в своих целях, и вы
должны это понимать. Нецелевое использование таблиц может привести к
ослаблению защиты брандмауэра и сети, находящейся за ним. Позднее, в
главе Порядок прохождения таблиц и цепочек, мы подробнее остановимся на
этом.
Команды
Ниже приводится список команд и правила их
использования. Посредством команд мы сообщаем iptables что мы
предполагаем сделать. Обычно предполагается одно из двух действий — это
добавление нового правила в цепочку или удаление существующего правила
из той или иной таблицы. Далее приведены команды, которые используются в
iptables.
Пример
Пояснения
-A, —append
iptables -A INPUT ...
Добавляет новое правило в конец заданной цепочки.
-D, —delete
iptables -D INPUT —dport 80 -j DROP, iptables -D INPUT 1
Удаление правила из цепочки. Команда имеет два
формата записи, первый — когда задается критерий сравнения с опцией -D
(см. первый пример), второй — порядковый номер правила. Если задается
критерий сравнения, то удаляется правило, которое имеет в себе этот
критерий, если задается номер правила, то будет удалено правило с
заданным номером. Счет правил в цепочках начинается с 1.
-R, —replace
iptables -R INPUT 1 -s 192.168.0.1 -j DROP
Данная команда заменяет одно правило другим. В основном она используется во время отладки новых правил.
-I, —insert
iptables -I INPUT 1 —dport 80 -j ACCEPT
Вставляет новое правило в цепочку. Число, следующее
за именем цепочки указывает номер правила, перед которым нужно вставить
новое правило, другими словами число задает номер для вставляемого
правила. В примере выше, указывается, что данное правило должно быть 1-м
в цепочке INPUT.
-L, —list
iptables -L INPUT
Вывод списка правил в заданной цепочке, в данном
примере предполагается вывод правил из цепочки INPUT. Если имя цепочки
не указывается, то выводится список правил для всех цепочек. Формат
вывода зависит от наличия дополнительных ключей в команде, например -n,
-v, и пр.
-F, —flush
iptables -F INPUT
Сброс (удаление) всех правил из заданной цепочки
(таблицы). Если имя цепочки и таблицы не указывается, то удаляются все
правила, во всех цепочках.
-Z, —zero
iptables -Z INPUT
Обнуление всех счетчиков в заданной цепочке. Если
имя цепочки не указывается, то подразумеваются все цепочки. При
использовании ключа -v совместно с командой -L, на вывод будут поданы и
состояния счетчиков пакетов, попавших под действие каждого правила.
Допускается совместное использование команд -L и -Z. В этом случае будет
выдан сначала список правил со счетчиками, а затем произойдет обнуление
счетчиков.
-N, —new-chain
iptables -N allowed
Создается новая цепочка с заданным именем в
заданной таблице В выше приведенном примере создается новая цепочка с
именем allowed. Имя цепочки должно быть уникальным и не должно совпадать
с зарезервированными именами цепочек и действий (DROP, REJECT и т.п.)
-X, —delete-chain
iptables -X allowed
Удаление заданной цепочки из заданной таблицы.
Удаляемая цепочка не должна иметь правил и не должно быть ссылок из
других цепочек на удаляемую цепочку. Если имя цепочки не указано, то
будут удалены все цепочки, определенные командой -N в заданной таблице.
-P, —policy
iptables -P INPUT DROP
Определяет политику по умолчанию для заданной
цепочки. Политика по умолчанию определяет действие, применяемое к
пакетам не попавшим под действие ни одного из правил в цепочке. В
качестве политики по умолчанию допускается использовать DROP, ACCEPT и
REJECT.
-E, —rename-chain
iptables -E allowed disallowed
Команда -E выполняет переименование
пользовательской цепочки. В примере цепочка allowed будет переименована в
цепочку disallowed. Эти переименования не изменяют порядок работы, а
носят только косметический характер.
Команда должна быть указана всегда. Список
доступных команд можно просмотреть с помощью команды iptables -h или,
что тоже самое, iptables —help. Некоторые команды могут использоваться
совместно с дополнительными ключами. Ниже приводится список
дополнительных ключей и описывается результат их действия. При этом
заметьте, что здесь не приводится дополнительных ключей, которые
используются при построении критериев (matches) или действий (targets).
Эти опции мы будем обсуждать далее.
Команды, с которыми используется
Описание
-v, —verbose
—list, —append, —insert, —delete, —replace
Данный ключ используется для повышения
информативности вывода и, как правило, используется совместно с командой
—list. В случае использования с командой —list, в вывод этой команды
включаются так же имя интерфейса, счетчики пакетов и байт для каждого
правила. Формат вывода счетчиков предполагает вывод кроме цифр числа еще
и символьные множители K (x1000), M (x1,000,000) и G (x1,000,000,000).
Для того, чтобы заставить команду —list выводить полное число (без
употребления множителей) требуется применять ключ -x, который описан
ниже. Если ключ -v, —verbose используется с командами —append, —insert,
—delete или —replace, то то на вывод будет выдан подробный отчет о
произведенной операции.
-x, —exact
—list
Для всех чисел в выходных данных выводятся их
точные значения без округления и без применения множителей K, M, G.
Важно то, что данный ключ используется только с командой —list и не
применяется с другими командами.
-n, —numeric
—list
Заставляет iptables выводить IP-адреса и номера
портов в числовом виде предотвращая попытки преобразовать их в
символические имена. Данный ключ используется только с командой —list.
—line-numbers
—list
Ключ —line-numbers включает режим вывода номеров
строк при отображении списка правил командой —list. Номер строки
соответствует позиции правила в цепочке. Этот ключ используется только с
командой —list.
-c, —set-counters
—insert, —append, —replace
Этот ключ используется при создании нового правила
для установки счетчиков пакетов и байт в заданное значение. Например,
ключ —set-counters 20 4000установит счетчик пакетов = 20, а счетчик байт
= 4000.
—modprobe
All
Ключ —modprobe определяет команду загрузки модуля
ядра. Данный ключ используется в случае, если ваша команда modprobe
находится вне пути поиска (searchpath). Этот ключ может использоваться с
любой командой.
Маршрутизация в linux. Forward, default, stateful firewall
Маршрутизация в linux. Forward, default, stateful firewall
Подписаться на:
Сообщения (Atom)
SEO: Эксперимент: как Яндекс и Google учитывают ключевые слова в URL
Эксперимент: как Яндекс и Google учитывают ключевые слова в URL Эксперимент: как Яндекс и Google учитывают ключевые слова в URL Дата пу...
-
SQL Developer: Method 1 Add the comment /*csv*/ to your SQL query and run the query as a script (using F5 or the 2nd execution button o...
-
iMacros: команды, скрипты, примеры оригинал тут Здравствуйте, уважаемые читатели блога LifeExample , хочу поз...
-
Эксперимент: как Яндекс и Google учитывают ключевые слова в URL Эксперимент: как Яндекс и Google учитывают ключевые слова в URL Дата пу...