Pull to refresh
0
0
Krost @Krost

User

Send message

О начинающих разработчиках и принципах работы с ними

Reading time7 min
Views141K
image

За последние десять лет через меня прошло много начинающих разработчиков. Да и чего греха таить, я тоже когда-то был начинающим разработчиком. За это время я получил тысячи вопросов а-ля “как стать разработчиком”, а также просьб взять людей к себе на практику. К сожалению, даже под чутким руководством более опытных специалистов, далеко не каждому хватает сил и мотивации перейти на качественно новый уровень. Статистика — вещь упрямая: количество “пытающихся” и “достигающих успеха” распределяется согласно принципу Парето, т.е. 20/80, где из десяти человек максимум двоим удается пройти первоначальное испытание. Остальные отваливаются по дороге или процесс обучения у них растягивается на долгие годы. И все же, каким должен быть начинающих разработчик, какими навыками и знаниями он должен обладать? Об этом и пойдет речь в статье.

Читать дальше →
Total votes 149: ↑103 and ↓46+57
Comments160

OAuth на практике. Аутентификация и авторизация пользователей сайта через популярные социалки

Reading time14 min
Views346K
Думаю, не мне одному чрезвычайно надоели ресурсы, требующие регистрации по каждому поводу и без. С обязательной капчей, которая правильно введется только с пятого раза, с подтверждением по е-мейлу, которое обязательно свалится в спам и то — только через сутки. Придумывать каждый раз новую пару логин-пароль — забудется, вводить одно и то же на всех сайтах — небезопасно. Местами прокатывают пары вида «qwerty:qwerty» или «login:password», но, увы, далеко не везде. Надоело. Не счесть, сколько раз я, увидев надпись «только зарегистрированный пользователь может ****», просто кривился и закрывал вкладку, чтобы больше ни разу на этот сайт не заходить. Неужели администраторы ресурсов сами этого не понимают?
Читать дальше →
Total votes 126: ↑116 and ↓10+106
Comments180

Пишем простое приложение на jQuery Mobile

Reading time8 min
Views59K
imageФреймворк jQuery Mobile вышел уже относительно давно, но только сейчас мне удалось им заняться. До этого имел дело с jQTouch и Sencha Touch. У каждого из них есть свои плюсы и минусы, но сегодня речь пойдет именно про разработку на jQuery Mobile. Для получения базового опыта я опишу создание простого приложения с несколькими страницами, интеграцией с твиттер и гуглокартами, ну и набором базовых элементов. Поехали!
Читать дальше →
Total votes 71: ↑71 and ↓0+71
Comments42

10 анти-паттернов навигации в Android

Reading time4 min
Views80K


В данной статье мы рассмотрим 10 анти-паттернов навигации в Android, которые допускают многие новички (и не только) в создании интерфейсов Android-приложений.

Читать дальше →
Total votes 116: ↑107 and ↓9+98
Comments26

Visual PHP для Windows

Reading time10 min
Views60K
На сегодняшний день язык PHP широко распространён, он прост в освоении и понимании, и наверное поэтому он так популярен у начинающих программистов. Без знаний PHP не поправить блок голосования на сайте, не отредактировать PHP шаблон, не вставить рекламный баннер. Многие идут дальше и изучают язык более углубленно, ведь это не только интересно, но и приносит стабильный доход, благо разнообразных предложений для PHP программистов всегда в избытке.

Но что делать, если хочется чего-то большего? Если надоело писать однотипные классы для онлайн-казино, ковыряться в Joomla/Drupal/PHPBB очередного заказчика?
Читать дальше →
Total votes 145: ↑110 and ↓35+75
Comments106

Game Maker AI — С чего начать?

Reading time8 min
Views34K
Game Maker — платформа разработки (в начальной концепции 2D) игр. На данный момент наиболее популярны Game Maker 8.0\8.1 и Game Maker Studio. Последний, к слову, поддерживает кросс-платформенную разработку (что, наверное, и является почти единственным фактором выживания движка в целом).

В последнее время GM теряет свою популярность под тенью таких гигантов, как Unity3D/Cryengine/Unreal. Я считаю потерю спроса на этот движок совершенно необоснованной, ведь для создания многих игр (например, под Android) нет необходимости в последних технологиях разработки 3D и других «ненужных» функциях, очень требовательных к системе пользователя. При использовании Game Maker для разработки таких игр можно достичь достаточно высокой производительности без видимых жертв со стороны графики или функционала.

Итак, ближе к делу. С некоторых пор я занимаюсь разработкой игр в среде GM. И в один прекрасный день передо мной возникла интереснейшая задача — разработать приемлемый AI для игры жанра TDS (Top Down Shooter). Признаться, до того момента я не сталкивался с разработкой искусственного интеллекта, и задача поначалу просто поставила меня в тупик. Три последующих дня я провел в поиске решения (естественно, методом проб и ошибок), и узнал я за эти 3 дня довольно много. На основе своего короткого и болезненного опыта, я постараюсь описать основные методы и сторонние библиотеки по разработке AI в среде Game Maker.
Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments11

Адаптивный и мобильный дизайн с CSS3 Media Queries

Reading time7 min
Views590K
Разрешение экрана в наши дни колеблется от 320px (iPhone) до 2560px (большие мониторы) или даже выше. Пользователи больше не просматривают сайты только на настольных компьютерах. Теперь пользователи используют мобильные телефоны, небольшие ноутбуки, планшетные устройства, такие как iPad или Playbook для доступа в интернет. Поэтому, традиционный дизайн с фиксированной шириной больше не работает. Дизайн должен быть адаптивным. Структура должна автоматически изменяться с учетом всех разрешений дисплеев. Эта статья покажет вам как создавать кросс-браузерный адаптивный дизайн при помощи HTML5 и CSS3 media queries.
Читать дальше →
Total votes 91: ↑90 and ↓1+89
Comments32

Getting Started with MongoDB and PHP

Reading time18 min
Views62K
Generation Next
За последний год произошла небольшая революция в мире СУБД, связанная с появлением безсхемных (безструктурных) СУБД таких как Apache CouchDB. В этих базах данных используется другой подход нежели в реляционных БД. Они достаточно быстро становятся популярны среди Web-разрабочиков из-за своей гибкости, простоты и легкой интеграции с современными технологиями такими как JSON.
В данной статье изложен краткий обзор MongoDB, одной из новых поколений безсхемных СУБД, которая получила большое внимание разработчиков.
Let's get started!
Total votes 105: ↑96 and ↓9+87
Comments75

try… catch VS if…else. Что, когда и почему?

Reading time5 min
Views88K
Данная статья расчитана для двух типов разработчиков:
— кто еще не знаком с исключениями
— кто пытается найти более разумное использование исключениям

В статье я расскажу о самых основах исключений, о том как можно обходиться без них, а так же о том, как я вижу правильным использование некоторых возможностей языка…

Эволюция языков программирования приводит иногда к кардинальным изменениям в мировоззрении разработчиков. В мире РНР такое случилось при появлении пятой ветки, которая принесла новую объектную модель, новые наборы встроенных функций и новые методы обработки ошибок…

Те, кто начинал знакомиться с PHP (тут и далее я буду подразумевать пятую версию), после другого процедурного языка программирования, так и не поняли что же такого в переходе от 4ки к 5ке и продолжают оформлять код привычными функциями, которые находятся на одном уровне по отношению друг к другу, а так же каждое действие проверяют на удачный код возврата. Но те кто знали об исключениях и классах…
Читать дальше →
Total votes 25: ↑20 and ↓5+15
Comments65

Непредсказуемый, но адекватный бот в играх

Reading time5 min
Views94K
Рассказ пойдет о 2D играх от третьего лица (вид сверху). В основном это шутеры, но и стратегия будет тоже затронута. Для простоты сравнения и понимания мы возьмем наших любимых «котяток». Да, да, именно коты нам хорошо в этом помогут.



Почему коты, узнаешь под катом.
Total votes 207: ↑181 and ↓26+155
Comments72

Увлажнитель воздуха: купить или сделать? Сложности выбора

Reading time5 min
Views265K
Пришла зима, отопительный сезон и вновь актуален вопрос увлажнения воздуха («Если наружный воздух значительно холоднее комфортного, его обогревают, что приводит к снижению относительной влажности воздуха. Это происходит потому, что обогрев повышает температуру, но не увеличивает количество влаги в воздухе»).
Еще и педиатр сказал, что ребенок будет болеть меньше, если поддерживать влажность в норме («Пересушивание воздуха вызывает усиленное испарение влаги отовсюду: с кожи и из организма человека и домашних животных, комнатных растений, из покрытия стен, мебели, музыкальных инструментов, паркета, книг, картин и других предметов, сделанных из гигроскопичных материалов, что вредит здоровью обитателей и сохранности предметов.»).
Вот и рекламный видеоролик, подтверждает сказанное
спойлер

Проблема лишь в том, что не существует оптимального способа увлажнения – у всех есть и серьезные недостатки и очевидные преимущества. А установка дома аквариума в планы не входит.
Обзор существующих подходов, а также конструкций «сделай сам» под катом. Надеюсь, кому-то поможет сделать свой выбор, а кто уже сделал – поделится впечатлениями с сообществом.
Читать дальше →
Total votes 61: ↑57 and ↓4+53
Comments183

Как ниндзя прототипы делал. Ninjamock.com — дизайнер интерфейсов

Reading time7 min
Views16K
Здравствуйте! Мы — команда ниндзя-разработчиков проекта ninjamock.com. Ninjamock.com — это еще один онлайн-дизайнер скетчей и прототипов. Проект полностью написан на javascript и HTML5, серверная часть — на ASP.NET MVC.

За год работы над проектом мы наступили на огромное количество граблей и накопили бесценный опыт разработки больших приложений на JavaScript, которым и хотим поделиться. В этой статье мы расскажем, как прототип из одного файла index.html перерос в полноценный проект с более чем 250 классами и 60000 строк кода (не считая сторонних библиотек). Также, в общих чертах опишем нашу архитектуру и детально опишем реализацию отрисовки на клиенте.


UPD: Следите за апдейтами на нашем твиттере или странице фб

Мне интересно!
Total votes 45: ↑42 and ↓3+39
Comments32

wireframe.cc — самый простой инструмент прототипирования интерфейсов

Reading time1 min
Views65K
На сегодняшний день существует множество веб-приложений для удобного и быстрого прототипирования интерфейсов, но wireframe.cc — это лучший из тех, что мне довелось попробовать.



Вот его основные особенности:
Читать дальше →
Total votes 71: ↑60 and ↓11+49
Comments26

Software versioning

Reading time10 min
Views58K

Методология изменения версий продукта программного обеспечения


   Software versioning — это процесс создания уникальных имен или номеров для различных версий продуктов программного обеспечения.

   При имеющейся категории номера версии (главная, второстепенная), номера обычно выставляются в возрастающем порядке и соответствуют новым разработкам в программном обеспечении. На начальном уровне отслеживанием постепенно появляющихся версий электронной информации занимается система управления версиями, позволяющая хранить несколько версий одного и того же документа, при необходимости, возвращаться к более ранним версиям, определяя, кто и когда сделал то или иное изменение и многое другое. Вместе с тем для отслеживания изменений программного обеспечения было создано большое количество схем присвоения номеров версиям.
Читать дальше →
Total votes 91: ↑76 and ↓15+61
Comments18

Блокировки в InnoDB (шпаргалка)

Reading time2 min
Views18K
Решил разобраться в вопросе блокировок в InnoDB. Получилась такая вот краткая шпаргалка. Может кому пригодится. Буду благодарен сообществу за найденные неточности

И так, в пределах одной транзакции, после…
Читать дальше →
Total votes 64: ↑55 and ↓9+46
Comments4

«Див» блоки одинаковой высоты

Reading time2 min
Views44K

На днях столкнулся с задачей:


Сделать две одинаковые по высоте -колонки, не зависимо от количества текста в какой либо из них.

Условия:


  1. Никаких таблиц;
  2. Поддержка IE6+ и т.д;
  3. Резиновая верстка;
  4. Никакого JavaScript, чистый HTML и CSS.

Дизайн:


В дизайне изображены две колонки с отступом друг от друга. Каждый из них имеет свой фон и border с округленными уголками. На вид все просто.

Поиск решений:


Искал и естественно нашел очень полезный пост, где описаны все самые действенные способы решения данной задачи: http://habrahabr.ru/post/64173/.
Собственно 4-е решение из этого поста было наиболее приемлемым, но с помощью него мне так и не удалось вывести два разных фона для своих колонок.

Решение

Читать дальше →
Total votes 44: ↑32 and ↓12+20
Comments95

4 способа как создать блоки одинаковой высоты

Reading time5 min
Views231K
fourmethodsbanner
Раньше, когда все верстали с использованием таблиц, создать колонки одинаковой высоты было очень просто.  Достаточно создать таблицу, например, с 3мя колонками и все они автоматически будут иметь одинаковую высоту.  Но в блочной верстке не все так просто.
В этой статье я расскажу вам о некоторых способах создания колонок равной высоты и о совместимости этих методов с браузерами (включая IE6). Все эти способы описывают создание 3х колоночного макета.
Читать дальше →
Total votes 78: ↑66 and ↓12+54
Comments138

Самоисполняемый phar как способ распространения веб-приложений

Reading time3 min
Views8.1K
Как уже, наверное, всем известно, в PHP 5.3 появилась поддержка специального типа архивов с расширением .phar. Те, кто не в курсе — могут почитать отличную статью .phar — исполняемые PHP-архивы
Область применения, которая сразу приходит на ум — это библиотеки/фреймворки в виде подключаемых *.phar архивов и установщики веб-приложений, например, CMS. О последних я и собираюсь рассказать подробнее и с примерами.

Постановка задачи


Цель — получить на выходе один файл, который будет сам по себе исполняемым, и будет содержать в себе все нужные файлы. Если провести аналогию c обычными приложениями — это приложение, которое запаковано в SFX (self-extracting archive).
Читать дальше →
Total votes 36: ↑34 and ↓2+32
Comments13

Ищем быстро, еще быстрее

Reading time3 min
Views22K
Натолкнулся в разделе QA на интересный вопрос. Ответ на него заставил написать эту статью как бОлее полный ответ на вопрос «как организовать поиск по множеству параметров, как в Яндекс-маркете, например».

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

Итак, что имеем в «ДАНО»
  • Имеем 120 чекбоксов — вариант 1/0
  • Имеем 30 «радио» с выбором «да/нет/не важно»
  • Имеем 2-3 слайдера для указания диапазона цен/размера чего нить
  • Имеем самое главное: 12 млн записей в БД.
  • Имеем Select * From tovar Where (wifi=true) and (led=false) and (type=3) and ….остальные параметры …; со временем выполнения близкому к истерике клиента.

Читать дальше →
Total votes 184: ↑180 and ↓4+176
Comments117

Information

Rating
Does not participate
Location
Россия
Registered
Activity