Pull to refresh
0
0
Владимир @BleSSeD

User

Send message

История развития и оптимизаций одного высоконагруженного ресурса

Reading time5 min
Views14K


Введение

Все началось с того, что я стал системным администратором у одного провинциального Интернет-провайдера. Помимо администрирования различного рода ресурсов, мне в присмотр достался один молодой, но бурно развивающийся ресурс. Ресурс представлял из себя классический LAMP проект. Сайт, на котором генераторами контента являлись обычные пользователи.
* К слову, в то время я ничего не понимал в *nix системах, хоть и все сервера которые мне достались, были именно на нем, разбирался я во всем этом достаточно быстро.

Как обычно бывает с ресурсами, набирающими популярность, железки на которых все крутится, перестают справляться. Ресурс стоял на стареньком двухпроцессорном сервере, на котором крутились практически все сервисы для пользователей. В то время начальство не воспринимало ресурс как нечто стоящее вложений, поэтому, к моему сожалению (а позже – счастью), денег под новую железку мне не выделяли.
Читать дальше →
Total votes 208: ↑198 and ↓10+188
Comments56

How-to: Правила вёрстки email-писем

Reading time16 min
Views183K


Электронная почта — отличный инструмент коммуникации, который позволяет компаниям доставлять аудитории контент удобным для нее способом. При этом читать письма в формате plain text не всегда удобно, поэтому в современных новостных рассылках используются различные графические элементы.

Вёрстка HTML для электронной почты — интересная и довольно сложная задача. Письма должны одинаково хорошо отображаться на старых устройствах и версиях программных клиентов.

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

Примечание переводчика: Представленный ниже материал содержит значительное количество технических терминов, при переводе которых могут возникнуть неточности. Если вы заметили опечатку, ошибку или неточность перевода — напишите нам, и мы оперативно всё исправим.
Читать дальше →
Total votes 30: ↑26 and ↓4+22
Comments21

Обзор бесплатных инструментов для аудита web-ресурсов и не только

Reading time4 min
Views39K

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

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

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

В злых целях знания использовать не буду!
Total votes 189: ↑174 and ↓15+159
Comments43

Профилирование и отладка php-приложений с помощью xhprof & FirePHP

Reading time5 min
Views65K

Всем веб-разработчикам, особенно в высоконагруженных проектах, рано или поздно приходится сталкиваться с профилированием своих приложений. Конечно, все мы знаем xdebug, с помощью которого можно проводить отладку серверной части. Однако, в тяжелых RIA-приложениях значительно чаще приходится отлаживаться в связке фронтенда+бэкэнд, всякие ajax-запросы, скорость отработки конкретных скриптов и все такое прочее. И для этих задач есть довольно-таки не плохой набор инструментов. Это xhprof и firephp.
Читать дальше →
Total votes 60: ↑53 and ↓7+46
Comments22

Поиск работы в международном масштабе: советы практика

Reading time7 min
Views38K


Данный пост переродился из ответа на вопрос «Как искать работу за границей?», заданный на Тостере. Когда ответ, подогреваемый интересом читателей, достиг размеров полноценной публикации, я решил отредактировать формат ответа и перенести её сюда.

Дисклеймер

— Нижеприведённое мои личные наработки без претензии на истину в последней инстанции.
— Важно понимать, что всегда присутствует коэффициент удачи, который может многократно увеличить отдачу от ваших усилий, равно как и помножить их на ноль.
— В любом случае это лучше, чем сидеть на попе ровно и ничего не предпринимать.
Читать дальше →
Total votes 35: ↑35 and ↓0+35
Comments9

Cоветы начинающему фрилансеру: как продавать услуги на развитые рынки через открытые площадки

Reading time16 min
Views63K
Я занимаюсь разработкой программного обеспечения в роли ведущего программиста-проектировщика с конца 90х годов. Фриланс никогда не был основным источником моего дохода. Но в 2010 году я начал всерьез заниматься фрилансом как побочным видом деятельности, приносящим существенный доход (за несколько месяцев я вышел на уровень продаж порядка $5k в месяц с фрилансерских контрактов с практически нулевыми расходами на исполнение контрактов, за исключением моего времени). Позднее я переехал в Северную Америку, но фриланс продолжает оставаться для меня важным побочным бизнесом. Кроме того, в своей работе я постоянно общаюсь с фрилансерами, в т.ч. профессиональными full-time фрилансерами из Северной Америки.

В этой статье я хотел бы поделиться своим опытом работы на площадках вроде elance.com с коллегами из экс-СССР и дать конкретные рекомендации по входу на рынок, позиционированию услуг, конкуренции с демпингом из Южной Азии, а также дать ликбез по общей профессиональной подготовке.
Много текста с конкретными примерами
Total votes 32: ↑31 and ↓1+30
Comments24

300 потрясающих бесплатных сервисов

Reading time11 min
Views1.6M


Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

  • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
  • Bootswatch: Бесплатные темы для Bootstrap.
  • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
  • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
  • Strikingly.com Domain: Конструктор веб-сайтов.
  • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
  • Withoomph: Мгновенное создание логотипов (англ.).
  • Hipster Logo Generator: Генератор хипстерских логотипов.
  • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
  • Invoice to me: Бесплатный генератор счета.
  • Free Invoice Generator: Альтернативный бесплатный генератор счета.
  • Slimvoice: Невероятно простой счет.

Читать дальше →
Total votes 341: ↑325 and ↓16+309
Comments107

Оптимизируем производительность веб-страницы: CSS

Reading time5 min
Views51K
В наше время скорость интернета довольно высока. Казалось бы, можно забыть о тех временах, когда нам приходилось ждать по 20-30 (а то и больше) секунд, чтобы веб-страница загрузилась и отобразилась на экране — теперь мы ждём отрисовки страницы в среднем около одной-двух секунд. Однако не стоит забывать, что значительная часть юзеров заходит на ваш сайт с мобильных устройств, на которых связь не всегда стабильна. В связи с этим будет совсем не лишним уделить немного внимания оптимизации вашего кода.

В этой статье речь пойдёт о различных методах оптимизации таблиц стилей. Я расскажу о том, что влияет на скорость отрисовки страницы, как заставить браузер отрисовывать страницу быстрее и какие инструменты использовать для оптимизации.
Читать дальше →
Total votes 42: ↑32 and ↓10+22
Comments22

Визуализация работы веб-сервера Apache — logstalgia

Reading time1 min
Views15K
image

Logstalgia скорее порадует разработчиков и системных администраторов, которые много времени проводят на «заднем дворе» сайтов, но сам результат работы программы очень красив и видео будет интересно посмотреть всем. Данная программа визуализирует работу веб-сервера Apache используя log-файлы. По ссылке видео, а саму программу можно скачать по здесь.
Total votes 101: ↑96 and ↓5+91
Comments57

50 цитат о программировании всех времён

Reading time6 min
Views159K
Перевёл после прочтения комментариев к статье «О ненависти к C++». В цитатах можно найти ответы на большинство возникших там вопросов.

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

49. Lisp — это не язык, а строительный материал.
— Alan Kay

48. Ходить по воде и разрабатывать программы, следуя спецификации, очень просто… если они заморожены.
— Edward V Berard
Читать дальше →
Total votes 344: ↑336 and ↓8+328
Comments136

Восстановление зрения

Reading time2 min
Views45K
Однажды у меня появились видеозапись лекций Жданова.
Так были предложены упражнения для глаз. Я решил попробовать выполнять их, чтобы проверить их эффективность.
Ниже вы увидите сами упражнения.

Читать дальше →
Total votes 162: ↑114 and ↓48+66
Comments180

Музыкальные студии под iPhone и iPad

Reading time2 min
Views59K
Технологии идут вперед. Наконец-то настала очередь и музыкальных программ. В современно мире имея iPhone или iPad можно писать музыку практически в любом месте. Лишь бы хватило батареи! В подтверждение этому мой пост, в котором я познакомлю тебя %username% с некоторыми виртуальными музыкальными студиями.

Виртуальная студия NanoStudio для iPhone


Для IPhone разработали и создали виртуальную студию NanoStudio, которая относится к полноценным программам-секвенсорам и включает в себя: синтезаторы, drum-машину, секвенсор, набор эффектов и прочие детали.

В NanoStudio можно с нуля создать композицию (полифония студии 48 голосов), отредактировать партию инструмента (как в midi дорожке), наложить эффекты, записать свои звуки с микрофона IPhone и всё это свести при помощи главного микшера в полноценный трек с качеством CD, а так же произвести финальную обработку трека при помощи готовых алгоритмов обработки типа: Normalize, Fade In, Fade Out …


Читать дальше →
Total votes 48: ↑37 and ↓11+26
Comments30

Варианты построения высокодоступных систем в AWS. Преодоление перебоев в работе. Часть 1

Reading time9 min
Views13K
Даже у таких монстров облачной индустрии, как Amazon случаются проблемы с оборудованием. В связи с недавними перебоями в работе US East-1 датацентра, данная статья может быть полезной.

Варианты построения высокодоступных систем в AWS. Преодоление перебоев в работе

Отказоустойчивость является одной из основных характеристик для всех облачных систем. Каждый день множество приложений проектируются и разворачиваются на AWS без учета этой характеристики. Причины данного поведения могут варьироваться от технической неосведомленности в том, как правильно спроектировать отказоустойчивую систему до высокой стоимости создания полноценной высокодоступной системы в рамках сервисов AWS. В данной статье освещается несколько решений, которые помогут преодолеть перебои в работе оборудования провайдеров и создать более подходящее решение в рамках AWS инфраструктуры.
Структура типичного Интернет приложения состоит из следующих уровней: DNS, Load Balancer, веб сервер, сервер приложения, база данных, кэш. Давайте возьмем этот стек и подробно рассмотрим основные моменты, которые необходимо учитывать при построении высокодоступной системы:
  • Построение высокодоступной системы в AWS
  • Высокая доступность на уровне веб сервера / сервера приложения
  • Высокая доступность на уровне балансировки нагрузки / DNS
  • Высокая доступность на уровне базы данных
  • Построение высокодоступной системы между зонами доступности AWS
  • Построение высокодоступной системы между регионами AWS
  • Построение высокодоступной системы между различными облачными и хостинг провайдерами

Часть 2
Читать дальше →
Total votes 18: ↑18 and ↓0+18
Comments18

oDesk (Upwork). Мой опыт за полтора года

Reading time12 min
Views445K
Вот уже полтора года я зарабатываю фрилансом на бирже oDesk. За это время у меня накопилось много материалов по данной теме. В данном топике я собрал все в одну статью и адаптировал для аудитории хабра.
image
Читать дальше →
Total votes 192: ↑185 and ↓7+178
Comments321

10 главных выводов, которые я сделал за Год Изучения Продуктивности

Reading time9 min
Views192K
Предисловие переводчика: В мире написано столько книг по личной эффективности и тайм-менеджменту, что берясь за этот перевод я безусловно задавал себе вопрос: «А есть ли здесь вообще что-то новое, ради чего эту статью стоит переводить, и главное читать»? Сначала мне казалось, что я ответил на этот вопрос «да», однако реальность оказалась несколько сложнее. 

Сейчас я думаю, что сказать что-то новое человеку, который прочитал хотя бы 2-3 книги по тайм-менеджменту и личной эффективности практически невозможно. Однако существует огромная пропасть между тему, что люди знают, и тем, что люди делают. Поэтому если у вас уже есть какой-то багаж знаний по личной эффективности, я советую вместо вопроса «это что-то, чего я не знаю?» задавать другие вопросы:

1. Согласен ли я с написанным?
2. Если да, поступаю ли я так?
3. Если нет, почему и что я могу сделать чтобы начать поступать правильно? 

Уверен, так статья принесет вам гораздо больше пользы.

Должен сказать, что я с огромным удовольствиям ходил по ссылкам в этой статье, особенно по тем, которые описывают эксперименты Криса (такие как переключение между 90-часовой и 20-часовой рабочими неделями). Поэтому я принял решение сохранить все эти ссылки в переведенной статье.

Также хотел бы сделать замечание для любителей красивого русского языка. Я довольно долго думал, менять ли «продуктивность»  на более близкие родному уху «производительность» и «личную эффективность», но в итоге решил оставить всё как есть – главным образом из-за невозможности использования одного и того же слова в разных контекстах.

В качестве последнего пожелания – это довольно длинная статья, поэтому читайте продуктивно: не переключайтесь между задачами в процессе чтения; делайте перерывы если ощущаете усталость и потерю концентрации; записывайте полезные мысли, не надеясь на память.

Приятного чтения!
Читать дальше →
Total votes 79: ↑70 and ↓9+61
Comments68

Дизайн мобильных приложений

Reading time9 min
Views26K
Много статей написано о дизайне, даже очень много, как о его UX (user experience), так и UI (user interface) составляющих. Эта статья не для новичков, так что углубляться в основы мы здесь не будем.

Мы рассматриваем дизайн и формулировки не с точки зрения внешнего вида, хотя есть проекты, в которых именно внешний вид составляет основную ценность продукта, а с точки зрения конверсии. В статье, на примере наших приложений Photo and Video Transfer app и Image Transfer, мы расскажем о работе над следующими задачами, при помощи дизайна:
  • Увеличение количества email подписчиков.
  • Увеличение количество пользователей разрешивших push notifications.
  • Увеличение прибыли при работе по freemium модели.
  • Увеличение показателя возвращаемости пользователей.
  • Уменьшение показателей отказов.

Ниже вы сможете найти исходные данные и практические рекомендации. Так же крайне рекомендуем прочитать предыдущую статью о продвижении мобильных приложений, её вы cможете найти тут. Итак начнём.
Читать дальше →
Total votes 57: ↑39 and ↓18+21
Comments31

Почему пришло время поддерживать только Android 4.0 и выше?

Reading time5 min
Views66K
От переводчика: эта статья пылится у меня в Pocket уже довольно давно (с конца 2013). Прошло уже больше полугода, так что мнение автора еще более логично.
Я надеялся, что перевод сделает кто-то другой, но, видимо, придется мне.
Я не супер-крутой знаток английского, поэтому обо всех шероховатостях просьба писать в личку — исправим.


Разрабатывая под Android, приходится иметь дело со страшной вещью, начинающейся на «ф», — фрагментацией.

Это то, о чем не брезгуют напомнить в технических блогах. Это слово, которое отпугивает некоторых разработчиков от платформы. Это то, что любит упоминать Apple на своих презентациях, дабы продемонстрироватьать превосходство своей ОС.
Читать дальше →
Total votes 93: ↑75 and ↓18+57
Comments74

Правильное использование Yii

Reading time18 min
Views115K

Вступление


На самом деле, в заголовке должен стоять знак вопроса. Довольно долго я не кодил как на yii, так и на php в целом. Сейчас, вернувшись, хочется переосмыслить свои принципы разработки, понять куда двигаться дальше. И лучший способ — изложить их и выложить на ревью профессионалам, что я и делаю в этом посте. Несмотря на то, что я преследую чисто корыстные цели, пост будет полезен многим новичкам, и даже не новичкам.
Читать дальше →
Total votes 79: ↑66 and ↓13+53
Comments54

Автодокументация мобильных веб-сервисов на примере Yii

Reading time3 min
Views9.9K
Думаю, что многие, особенно небольшие, компании, при работе с одним и тем же фреймоворком постоянно пишут какие-то вещи/расширения и т.п., которые решают именно те задачи, с которыми они сталкиваются наиболее часто.

В нашем случае этим фреймворком является Yii, а одной из самых популярных проблем была одновременная разработка web-сервиса для приложений iOS/Android.

Сначала, как и всегда, просто разработчики договаривались между собой что и как, но если разработчик вдруг менялся — начинались проблемы. Далее — описание входных/выходных данных в wiki. При большом количестве мелких изменений возникала проблема синхронизации кода и форматов, описанных в wiki.

Как мы решили проблему — ниже.
Читать дальше →
Total votes 26: ↑18 and ↓8+10
Comments3

Шаблоны проектирования PHP. Часть 1. Порождающие

Reading time13 min
Views231K
Тема заезженная до дыр, не спорю… Вероятно, для опытных разработчиков моя статья будет мало, чем полезна. Я бы рекомендовал её к прочтению тем, кто только начал осознавать, что его коду чего-то не хватает, и что он созрел для вникания в это далёкое понятие – «паттерны». По себе помню, что довольно долгое время я путался в шаблонах, иногда даже не понимая, чем один отличается от другого. Именно этот факт стал основой для моей статьи. Примеры в ней не будут реальными. Они будут абстрактными и максимально простыми. Однако я постараюсь все примеры держать в едином контексте, чтобы можно было наглядно видеть отличия их использования в одной и той же ситуации. Я не буду нагружать классы лишним функционалом, чтобы можно было понять, какая именно часть кода имеет непосредственное отношение к шаблону. Главными героями примеров станут Factory (фабрика) и Product (продукт, производимый этой фабрикой). Возьмём это отношение за отправную точку. Возможно, в некоторых примерах это будет не очень уместно, но зато очень наглядно…

Статья будет разбита на несколько частей. В каждой я буду рассказывать о новом типе шаблонов проектирования. Всем, кого эта тема может заинтересовать, прошу под кат.
Меня заинтересовала...
Total votes 61: ↑43 and ↓18+25
Comments83

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity