Pull to refresh
65
0
Степан Медников @steff

Java-разработчик

Send message

Вредная верстка

Reading time9 min
Views75K
Как определить, что сайт сверстан качественно?
Есть много статей о том, как делать хорошо, но совсем нет – о том, как делать не надо, ведь даже валидный и кроссбраузерный сайт может быть сверстан отвратительно.

Из этой статьи вы узнаете:


  • О плохих приемах современной верстки;
  • О том, как даже не будучи профессионалом, за 5 минут определить плохо ли сверстан сайт или нет.


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

Штрихи, штришки и штришочки

Reading time6 min
Views97K
Практика показывает, что если тире или кавычки — это первое, что изучают при появлении интереса к «типографике» (а на самом деле — к грамотному набору текста), то правильное употребление апостро́фа, знаков минут и секунд, знака ударения вызывает почему-то бо́льшие затруднения. На самом деле, всё очень просто, и статья будет довольно короткой. Всё, о чём будет сказано ниже, относится к современной русской традиции типографики.
Поехали!

Всё ли так просто с многоточием?

Reading time7 min
Views95K

Отличие многоточия от трёх точек


Многоточие (эллипсис, от греч. ellipsis — незаполненность) — самостоятельный типографский знак, разновидность отточия, состоящий из трёх точек идущих подряд, используется для обозначения скрытого смысла, особенностей устной речи (вздох, пауза, задумчивость), недосказанности либо для исключения из текста некоторых слов, например при цитировании.



Читать наиболее полное руководство по применению многоточия

Не хотят работать с вашей компанией из-за упрощенки?

Reading time1 min
Views23K
Иногда попадаются такие менеджеры или бухгалтеры на стороне заказчиков, которые говорят: «Ааааа, у вас упрощенка». И делают кислое лицо. Дескать, из-за вашей упрощенки они не получат возврат НДС, 18% от стоимости.

Этот вопрос в 90% случаев решается правильной беседой с заказчиком.

Вы говорите: «Если бы мы работали не по упрощенке, то к нашей цене в 1000000 рублей добавился бы еще 18% НДС, и вы платили бы 1180000 рублей, а потом ждали бы, когда государство вернет вам 180000 рублей НДС. Работая с нами, вы не платите лишних 18% и не ждете потом их возврата, эти деньги работают на вас, а не болтаются у государства в кармане».

И тогда происходит чудесное преображение, и адекват нисходит на головы бухгалтеров, финансовых директоров и менеджеров.

Для «чайников»: Стандарт стопроцентно читабельных сайтов

Reading time5 min
Views6.5K
Большинство веб-сайтов нашпиговано мелким текстом, читать который — сплошное мучение. Для чего? Нет никаких причин для того, чтобы ужимать так много информации на один экран. Это — просто дурацкое коллективное заблуждение, восходящее к временам, когда экраны были очень, очень маленькими. Поэтому…

Не заставляйте нас изменять размер шрифта


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

Не доказывайте нам, что переполненные страницы лучше выглядят


Сайты со страницами, под завязку набитыми информацией, не привлекательны визуально — они ужасны. Заполнение страниц всякой всячиной никогда не влияло на юзабилити положительно. Это просто лень-матушка заставляет вас вываливать на наши головы всю эту информацию. Мы хотим, чтобы вы подумали и заранее решили, что именно является наиболее важным. Мы не хотим делать вашу работу за вас.

Не втирайте нам, что прокрутка страниц — это плохо


Потому что в таком случае все сайты плохие. В прокручивании веб-страницы нет ровным счётом ничего страшного. Ни-че-го. Так же, как нет ничего страшного в перелистывании страниц книги.

Не говорите нам, что текст не важен


95 % того, что обычно называют веб-дизайном, — это типографика.

Не требуйте, чтобы мы начали носить очки


Лучше вместо этого перестаньте тереться носом об экран, откиньтесь в кресле назад (!) и продолжайте чтение этой статьи в расслабленной позе.

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

Подборка образовательных слайдов

Reading time2 min
Views1.3K
Мне было интересно почитать, наверняка кому-то тоже пригодится.
Дальше больше

Цифры, числа и числительные

Reading time9 min
Views39K
По следам хабралинча имени Рюмкина коснёмся темы правильного типографического оформления чисел. В голову пришли следующие темы, если что-то вдруг забыто — пишите в комментариях, добавлю в статью.
  • Минускульные и маюскульные цифры
  • Целые числа и десятичные дроби
  • Простые дроби
  • Буквенные сокращения (тысяча, миллион, миллиард)
  • Диапазоны
  • Порядковые числительные и числительные в составе сложных слов
Ещё в комментариях к хабралинчу возникло интересное обсуждение согласования и управления при употреблении порядковых числительных, но это, как мне кажется, скорее отдельная тема для блога Пишу правильно.

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

Основы мастерства

Reading time6 min
Views1.7K

Боритесь со сложностью


Как известно, мозг человека может одновременно рассматривать 7±2 элемента. Поэтому очень важно стремиться к снижению сложности ПО. Вот некоторые конкретные рекомендации:
  • Разделите систему на подсистемы на уровне архитектуры, чтобы концентрироваться в каждый конкретный момент времени на меньшей части системы.
  • Тщательно определяйте интерфейсы классов, чтобы можно было игнорировать
    внутреннее устройство классов.
  • Поддерживайте абстракцию, формируемую интерфейсом класса, чтобы не
    запоминать ненужных деталей.
  • Избегайте глобальных данных, потому что их использование значительно увеличивает процент кода, который нужно удерживать в уме в любой момент
    времени.
  • Избегайте глубоких иерархий наследования, потому что они предъявляют
    высокие требования к интеллекту.

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

jQuery: datepicker — календарь для выбора дат

Reading time2 min
Views76K
Автор: Gennady

Эту штуку можно часто встретить, когда сталкиваешься с заполнением форм, там где требуется ввести дату или диапазон дат в нужном формате. Пользователь, он же обязательно ошибется и введет дату не в том формате, потом будет соображать, где ошибка, а потом и вовсе уйдет, не заполнив форму… Вот для того, чтобы сделать выбор даты очень простым и удобным и предназначен этот UI jQuery. Календарь, или что точнее datepicker…

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

Хочу еще

Основные ошибки на презентации проекта перед инвестором.

Reading time3 min
Views1.3K
Для многих написанное ниже является банальными вещами, но тем не менее ошибки появляются практически в каждой презентации (а я их вижу от 200 до 300 в год). Я решил свести все частоповторяющиеся ошибки воедино.

Основная ошибка – это то, что предприниматели пытаются вынести на слайды все. На самом деле на слайды надо вынести только опорные точки.
Читать дальше →

Хорошее начало своего бизнеса

Reading time6 min
Views1.9K
Эту статью я написал не так давно, уже имея опыт предпринимателя. Одни моменты в ней — советы из собственной практики, другие — развитие идей, умозаключения. Но, думаю, если бы перед тем, как начинать свободное плавание предпринимателя мне кто-нибудь дал почитать подобный материал, я бы действовал несколько иначе.

Intro

В этой статье вы найдете некоторые рекомендации, советы и объяснения, которые помогут вам определить направления развития вашего бизнеса с самого начала его существования. Мы рассмотрим три важных аспекта любого бизнеса:
  • фокус;
  • отличия;
  • клиенты.
Читать дальше →

Eval или include?

Reading time3 min
Views9.6K
Один из текущих проектов разрабатываю на собственном фреймворке, параллельно его обкатывая и дописывая. Зачем мне понадобилось изобретать велосипед, и чем он отличается от существующих, напишу когда буду представлять его общественности. Сейчас же хочется поделиться некоторыми мыслями по поводу производительности и заодно выслушать мнения коллег. Возможно, мои наблюдения будут полезны и тем, кто не использует фреймфорки.

Когда пришлось реализовывать дерево комментариев, столкнулся с необходимостью рекурсивного вызова представления (view в MVC). Так как представления у меня, да и практически везде, — это обычные файлы с кусками HTML-кода и возможностью вставки PHP, то подключаются они с помощью include. Мне стало не по себе, когда представил как этот include вызывается рекурсивно сотни раз. Первая мысль — засунуть файл представления при первом запросе в память и потом выполнять его через eval. Такой подход позволит кешировать код представлений, и даже хранить его в БД. Так как eval кушает только PHP, а представления у нас чистым PHP-кодом не являются, то обрамляем содержимое в '?>' и '<?php'.

Тесты и выводы

Sphinx??

Reading time1 min
Views3.6K
Думаю многим из вас приходилось когда-либо сталкиваться с прикручиванием поиска, на сайте. Вот и мне по работе, пришлось этим заняться.

В поисках поискового движка, так понял, лидирующие места занимают Lucene и Sphinx.

Но требования следующие (норма):
  • Стабильная работа с русским языком
  • Морфология («гитара» <-> «гитары» <-> «гитар»)
  • Быстродействие
  • Возможность индексировать PG, MySQL и файлы (.html)
  • PHP-API, установка на любом *nix дистрибутиве (FreeBSD, Ubuntu Server)


Выпал случай, поставил Sphinx, настроил (вроде как О_о), проиндексировал базу с каталогом товаров. (включена stemm_enru морфология).

Сортировка по релевантности, жму: «гитара fender», и из БД в первую очередь же он мне выводит струны для гитары фендер, потом уже сами гитары, а должно быть наоборот. Не понимаю, в чем дело, и что за Weight и как их настраивать.

Читал мануал на сайте разработчика, но всё там как то слишком сложно описано, либо я лох)

В общем, уважаемые, помогите пожалуйста разобраться.

Оптимизация работы с MySQL

Reading time3 min
Views78K
Ни для кого не секрет, что работа с базой данных занимает большую часть работы практически любого сайта. И именно работа с БД чаще всего является узким местом веб-приложений.
В этой статье хотелось бы дать практические советы использования MySQL.
Сразу оговорюсь:
  • данная статья написана про MySQL, хотя общие вещи скорее всего справедливы для любой СУБД.
  • все написанное в статье является моей личной точкой зрения, и не является истиной в последней инстанции.
  • советы не претендуют на новизну и являются результатом обобщения прочтенной литературы и личного опыта.
  • в рамках данной статьи я не буду касаться вопросов конфигурирования MySQL.

Проблемы при использовании MySQL можно разделить на следующие три группы(в порядке значимости):
  1. Неиспользование или неправильное использование индексов.
  2. Неправильная структура БД.
  3. Неправильные \ неоптимальные SQL запросы.

Остановимся на каждой из этих групп подробнее.
Читать дальше →

Конструирование ПО, метафоры, предварительные требования

Reading time15 min
Views10K

Пробный топик, представляет собой нарезку основных абзацев из книги из первой главы. Объем ужат в 4 раза, последовательность изложения и смысл по возможности сохранены. Очень приветствуется фидбэк.

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

Конструирование ПО


Что такое конструирование ПО?


Разработка ПО — непростой процесс, который может включать множество компонентов. Вот какие составляющие разработки ПО определили ученые за последние 25 лет:
— определение проблемы;
— выработка требований;
— создание плана конструирования;
— разработка архитектуры ПО, или высокоуровневое проектирование;
— детальное проектирование;
— кодирование и отладка;
— блочное тестирование;
— интеграционное тестирование;
— интеграция;
— тестирование системы;
— корректирующее сопровождение.

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

Предисловие

Reading time4 min
Views1.4K
Не знаю почему, но на эту важнейшую технологию обращают так мало внимания. Я хочу несколько исправить положение, поэтому это — первая статья в цикле «Кодогенерация». При рассмотрении данной темы будет использован язык PHP и БД MySQL, но кодогенерация сама по себе возможна на любом языке и с использованием любой БД, просто на PHP мне будет проще объяснять некоторые важные моменты. Так же я буду обращать внимание на состояние дел в других системах и языках.

Данная статья посвящена одному вопросу: какие проблемы присутствуют в современном программировании.
Читать дальше →

Smashingmagazine опубликовал новую подборку Ajax и Javascript решений.

Reading time1 min
Views1.2K
Наверняка пост под названием 80+ Smashingmagazine AJAX-Solutions For Professional Coding у многих в закладках. Эта подборка включает в себя самые новые на, то время, и вкусные решения с применением Ajax, собранные со всего мира.
И вот, почти год спустя новая подборка новых вкусных решений — 60 More AJAX — and Javascript Solutions For Professional Coding. Многие скрипты уже знакомы, но есть и замечательные новинки.

Всё (или почти всё) о пробеле

Reading time13 min
Views139K
Как следует из заголовка, речь в статье пойдёт о неотъемлемой части любого русскоязычного (и не только) текста — о пробеле. Мы затронем историю пробела, виды пробелов, вопросы употребления пробела в веб-типографике.

Вообще говоря, пробел — это любое пустое место в рукописном, печатном или отображаемом на любом другом носителе тексте. Так что пробелы бывают разные:
  • спусковые (большие вертикальные пропуски в первой полосе издания) и концевые пробелы полосы,
  • абзацные отступы и концевые пробелы абзаца,
  • межстрочные пробелы (между строками текста),
  • межсловные пробелы (между словами в одной строке),
  • межбуквенные пробелы (между буквами в слове).
Далее речь пойдёт о межсловных пробелах, разделяющих слова, и функционально принадлежащих к знакам препинания.
Читать дальше →

Социальные сети, перспективы развития и способы монетизации. Часть 2

Reading time10 min
Views9K
Вторая часть моего доклада на конференции UA WEB про социальные сети. Тема части: перспективы развития социальных сетей.

Для пропустивших, советую сначала прочитать первую часть
Читать дальше →

Information

Rating
Does not participate
Location
Пенза, Пензенская обл., Россия
Registered
Activity