Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

FAQ по JavaScript: задавайте вопросы

Время на прочтение1 мин
Количество просмотров7.5K

Предлагаю продолжить тему часто задаваемых вопросов на хабре. Неделя Canvas отгремела, теперь, пришел черед JavaScript. Такой формат топика показался TheShock и мне очень удачным, поэтому мы решили поделиться с вами нашими знаниями JavaScript.

Мы ответим на ваши вопросы, касаемо сомнительных моментов языка(this, arguments, bind, функции, замыкания, модули), ECMAScript 3, 5, 6+, реализации языка в конкретных браузерах, фрэймворков(jQuery, Prototype, Mootools...), архитектуре приложений(паттерны, MVC...), тестировании, и вообще всего с чем связан JavaScript и разработка на JavaScript(как клиентской так и серверной).

Если у вас нет возможности задать вопрос в комментарии, то вы можете связаться с нами по другим источникам, которые вы можете найти в профиле: azproduction, TheShock или по email: azazel.private@gmail.com, shocksilien@gmail.com

В конце недели, начале следующей мы опубликуем ответы на все ваши вопросы.
Этот пост краток, а ответы будут развернутыми!
Всего голосов 63: ↑54 и ↓9+45
Комментарии215

FAQ по Canvas: задавайте вопросы

Время на прочтение1 мин
Количество просмотров3.3K
Привет всем! Часто в комментах и в личке возникают вопросы на счёт Javascript Canvas.
У большинства даже если и есть теоретические знания — банально не хватает опыта.
У меня этот опыт есть. Потому в этой теме предлагаю задать вопросы по Canvas, на которые я отвечу следующим топиком.
Если нету реги на Хабре — можете скинуть свои вопросы на shocksilien@gmail.com, я добавлю его в топик.
Изначально хотел кинуть в q&a, но количество и качество вопросов в комментах к этому топику положительно скажется на качестве следующего топика, так что рассчитываю на вашу поддержку)

ps. Не стесняйтесь задавать те вопросы, которые вы считаете глупыми. Если они вас интересуют — задайте их.
pps. Я буду задавать уточняющие вопросы. Например «для каких целей?». Это не значит, что вопрос — неправильный. Это значит, что, зависимо от цели, могут быть разные решения.

Ответы

Всего голосов 62: ↑54 и ↓8+46
Комментарии67

Введение в технику оптимизации циклов

Время на прочтение4 мин
Количество просмотров58K
Большая часть времени исполнения программы приходится на циклы: это могут быть вычисления, прием и обработка информации и т.д. Правильное применение техник оптимизации циклов позволит увеличить скорость работы программы. Но прежде, чем приступать к оптимизациям необходимо выделить «узкие» места программы и попытаться найти причины падения быстродействия.
Читать дальше →
Всего голосов 102: ↑98 и ↓4+94
Комментарии61

Репозиторий с задачами на Ruby

Время на прочтение2 мин
Количество просмотров8K
Недавно начал изучать Ruby. Несмотря на большое количество туториалов и мануалов, отсутствие официальной документации несколько замедляет процесс обучения.(Официальная документация все-таки существует — спасибо Kane). Но тем не менее, идея от этого не теряет ценности.

Чтобы получше освоить синтаксис языка, многие советуют решать задачи из спортивного программирования. Это позволяет набить руку в максимально кратчайший срок.
Нашелся отличный сайт с ejudge — acm.mipt.ru с интерпретатором Ruby. Но при решении задач(особенно на незнакомом языке), постоянно присутствует ощущение, что может быть это можно было сделать как-то иначе — легче, быстрее, удобнее.
Читать дальше →
Всего голосов 30: ↑23 и ↓7+16
Комментарии29

Как не надо разрабатывать на Zend Framework

Время на прочтение8 мин
Количество просмотров8.1K

Здравствуйте! На днях подвернулась работа — дописать сайт на zend framework. Программист, который начал разрабатывать этот проект не успевал в сроки, не выполнял требования заказчика и в итоге его заменили. Открыв первый раз исходный код я ужаснулся от того количества ошибок, которые допускал разработчик и ведь он утверждал заказчику что является опытным специалистом. Далее я попытаюсь рассказать про некоторые ошибки, которые были им допущены. Данный материал будет полезен начинающим ZF-программистам, в качестве инструкции того как делать нельзя
Читать дальше →
Всего голосов 98: ↑76 и ↓22+54
Комментарии75

10 способов улучшить свои навыки программирования

Время на прочтение4 мин
Количество просмотров88K

1. Выучить новый язык программирования


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

Среди языков программирования отличный познавательный эффект и наверстывание опыта дают: Lisp (или Scheme), Форт, PostScript или Factor (стековые языки программирования), Haskell (строго типизированный, чистый функциональный язык) либо OCaml (объектно-ориентированный язык функционального программирования), Пролог (логическое программирование), Erlang (отличные паралельные вычисления).

Читать дальше →
Всего голосов 239: ↑227 и ↓12+215
Комментарии96

Чек-лист разработчика языка программирования

Время на прочтение4 мин
Количество просмотров23K
Итак, Вы собираетесь создать новый [] функциональный, [] императивный, [] объектно-ориентированный, [] процедурный, [] стековый, [] мультипарадигменный, [] быстрый, [] статически-типизированный, [] динамически-типизированный, [] чистый, [] богатый, [] не-искусственный, [] наглядный, [] простой для новичков, [] простой даже для не-программистов, [] абсолютно непостижимый язык программирования.

Не получится. И вот почему.
Читать дальше →
Всего голосов 220: ↑189 и ↓31+158
Комментарии77

Использование Dummynet для эмуляции узкого канала под Windows

Время на прочтение1 мин
Количество просмотров5.4K
Иногда нужно протестировать работу клиентского приложения в сетевых условиях, приближенных к боевым. Что при разработке, что при выборе софта. Как правило, сервер рядом, а нужно оттестировать и на таком канале, и на таком. Как ни странно, удобного средства управления трафиком (traffic shaping) под Windows мне долго не удавалось найти. Из поисков запомнилось: кто-то советовал для тестовых целей купить модем. Можно поставить роутером машину на Linux и на ней рулить трафиком, но мне такой подход кажется слегка чрезмерным.
Оказывается, не меньше года в проекте Dummynet есть бинарники для Windows, которые позволяют легко и непринужденно управлять, как минимум, полосой канала (bandwidth) и задержкой (latency).
Читать дальше →
Всего голосов 36: ↑28 и ↓8+20
Комментарии10

Стартап по-русски: сегодня и завтра

Время на прочтение4 мин
Количество просмотров1.2K


Перед вами шестой по счету «Интернет-гид». Тема номера — «Стартап по-русски». Мы не могли её не затронуть, ведь о стартапах сейчас не говорит только ленивый. Можно смело сказать, что прочесть стартап-выпуск «Интернет-гида» должен каждый, кто следит за происходящим в Рунете, а в особенности — сам стартапер и ему сочувствующие.

Мы попытались взглянуть на формирующийся отечественный рынок стартапов с разных сторон, и думаем, что справились с поставленной задачей. К сожалению, некоторые задумки не были воплощены (так, по объективным причинам, не удалось побеседовать с представителями «Сколково»); надеемся, это не помешает читателю сформировать своё представление о ситуации со стартапами в России.
Читать дальше →
Всего голосов 44: ↑34 и ↓10+24
Комментарии10

Курс Стэнфорда по цифровой фотографии

Время на прочтение1 мин
Количество просмотров5.7K
Стэнфордский университет выложил в онлайн лекции и сопроводительные материалы к курсу по цифровой фотографии (CS 178). Курс знакомит студентов с научным, художественным и компьютерным аспектами цифровой фотографии — как работает камера, как делать хорошие снимки, как обрабатывать фотографии.

Кроме лекций, есть подробный план занятий, список необходимых учебников и программного обеспечения и интерактивные материалы (флэш-апплеты), которые иллюстрируют каждую лекцию. Есть также список еженедельных практических заданий, а в заключение — список вопросов на экзамене и анализ решений. В качестве бонуса — анимация сборки камеры Canon 10D. В принципе, всех этих материалов достаточно, чтобы пройти курс самостоятельно, а потом сдать экзамен и проверить свои ответы.
Всего голосов 61: ↑55 и ↓6+49
Комментарии31

Keymaster.js: простая микро-библиотека для «горячих клавиш»

Время на прочтение1 мин
Количество просмотров7.1K
На guthub'е появилась библиотека keymaster.js, с помощью которой можно добавить клавиатурные сокращения (shortkuts) на любую страничку. Конечно, для тех же целей предназначен модуль jQuery Hotkeys, но у keymaster.js есть свои преимущества: эта библиотека не имеет никаких зависимостей, она очень легковесная (всего 60 строчек кода) и лишена известных багов jQuery Hotkeys. В общем, определённо полезная вещь.

В ближайшее время для keymaster.js добавят ещё селектор INPUT / SELECT / TEXTAREA, это тоже будет полезное дополнение.
Пример скрипта
Всего голосов 44: ↑39 и ↓5+34
Комментарии13

Zend_Db_Table простота в использовании

Время на прочтение6 мин
Количество просмотров5.3K
Мало кто использует этот удивительный класс на полную мощность. О некоторых его скрытых возможностях также мало кто догадывался, как и я до этого момента.
Читать дальше →
Всего голосов 29: ↑17 и ↓12+5
Комментарии44

iOs-разработчик берется за Android

Время на прочтение8 мин
Количество просмотров20K
Недавно мы выпустили Android-версию для нашей платформы для создания приложений, использующих определение местоположения — Meridian.



Не став использовать один из кросс-платформенных инструментов, подобных Titanium, мы написали ее с нуля на Java.

Мы решили, что важно сохранить родной материал родным и максимально уважать особенности каждой платформы. Некоторым таким особенностям легко следовать, например, добавлению верхних закладок в окно интерфейса. Другие свойственны только для Android, например: обработка Intents, завершение работы старых Activities, реализация Search Providers, а также строгость к ссылкам с целью помощи сборщику мусора.

Теперь наша платформа использует HTML5 для брендинга и отображения контента, отсюда мы получили большую часть интерфейса совершенно бесплатно. Но множество кода, написанного на Objective-C, потребовалось перевести в Java, например: навигацию по карте, направление, и изменение местоположения.

Итак, мы засучили рукава, установили Android SDK и принялись за работу.
Читать дальше →
Всего голосов 83: ↑71 и ↓12+59
Комментарии36

Лайтпак 5.5 опубликован

Время на прочтение1 мин
Количество просмотров8.2K
Читатели помнят, что ещё в декабре прошлого года, после публикации пользователя brunql мы с ним и timsat решили всерьёз взяться за open-hardware проект, который назвали Лайтпак. В феврале мы даже презентовали вам ревизию 4.3 после которой к проекту присоединилось много светлых голов.

А сегодня я готов показать вам чего мы добились к версии 5.5, ставшей первым коммерческим вариантам Лайтпака, который можно купить за деньги:


Читать дальше →
Всего голосов 301: ↑296 и ↓5+291
Комментарии130

Переписываем проект с Zend Framework на Rails

Время на прочтение9 мин
Количество просмотров7.8K
Около пяти месяцев назад я завязал с zend framework и пересел на рельсы. Тогда же начал переписывать свой проект www.okinfo.ru. Сейчас он уже закончен и sloccount показал что количество строк в проекте уменьшилось с 15000 до 4000. Мои знакомые php разработчики попросили success story и в итоге родилась эта статья. В ней я опишу как оно было, а так же немного расскажу о своем переходе на ruby.
Читать дальше →
Всего голосов 154: ↑143 и ↓11+132
Комментарии197

CSS3 сейчас — transition

Время на прочтение3 мин
Количество просмотров264K
CSS3 и HTML5 развиваются всё быстрее и быстрее, браузеры начинают поддерживать всё больше новых фишек и плюшек. В связи с этим, мне хотелось бы заглянуть в наш будущий рай верстальщиков и сделать цикл обзорных статей по новым плюшкам и фишкам этих технологий.
В этом цикле мне хотелось бы рассмотреть такие свойства CSS3, как transition, animate, opacity и модель rgba().

Использование CSS3.


Часто можно услышать от многих веб-дизайнеров слова «Я уже не могу дождаться, когда же можно будет использовать CSS3...». А между тем, использовать его можно уже сегодня. Да, использование CSS3 для критичных моментов сайта сейчас невозможно. Но использовать его для добавления мелких, некритичных для проекта деталей вполне реально, можно и нужно.

Читать дальше →
Всего голосов 63: ↑57 и ↓6+51
Комментарии45

Тюнинг резинового текстового поля

Время на прочтение3 мин
Количество просмотров27K
Думаю, что многим верстальщикам (и не только) приходилось верстать текстовые поля (<input type=«text» />), задавая им произвольные размеры. Но как сделать данный элемент резиновым и удовлетворить условиям:
  1. Возможность установки любых горизонтальных и вертикальных отступов у текста;
  2. Элемент должен занимать весь контейнер, в который он помещен;
  3. Клик мышью в любое место текстового поля устанавливает в нем курсор.

Ответ достаточно прост и решается следующим методом:


Читать дальше →
Всего голосов 47: ↑31 и ↓16+15
Комментарии22

OpenDPI (определение типов трафика) + iptables

Время на прочтение6 мин
Количество просмотров23K
OpenDPI — библиотека для классификации трафика на основе технологии глубокого анализа пакетов (DPI — Deep Packet Inspection). Проект IPP2P более не поддерживается, и, в качестве замены, предлагает использовать именно OpenDPI. В отличие от IPP2P, основной целью которого является определение именно p2p трафика, OpenDPI поддерживает широкий набор различных протоколов. OpenDPI изначально спроектирован для очень низкого уровня ложных положительных срабатываний. В отличие от L7-filter не требует наложения патчей на iptables и ядро; работает в виде модуля ядра и библиотеки xtables. Также определения протоколов представляют собой не список регэкспов, а модули на C, что повышает быстродействие. Недавно для этой библиотеки была реализована поддержка iptables.
А теперь давайте попробуем использовать OpenDPI на практике.
Читать дальше →
Всего голосов 36: ↑32 и ↓4+28
Комментарии16

Алгоритм Флойда — Уоршелла

Время на прочтение6 мин
Количество просмотров174K
Алгоритм Флойда — Уоршелла — алгоритм для нахождения кратчайших расстояний между всеми вершинами взвешенного графа без циклов с отрицательными весами с использованием метода динамического программирования. Это базовый алгоритм, так что тем кто его знает — можно дальше не читать.

Этот алгоритм был одновременно опубликован в статьях Роберта Флойда (Robert Floyd) и Стивена Уоршелла (Stephen Warshall) в 1962 г., хотя в 1959 г. Бернард Рой (Bernard Roy) опубликовал практически такой же алгоритм, но это осталось незамеченным.
Читать дальше →
Всего голосов 132: ↑126 и ↓6+120
Комментарии33

Интернет-шоппинг в Японии

Время на прочтение5 мин
Количество просмотров69K
Привет, друзья!

С вами снова ваш проводник по зарубежному интернет-шоппингу EbayToday. Простите нас за столь долгое отсутствие, мы ездили на один очень далекий остров, который нам показался другой планетой. Да друзья, сегодня мы расскажем вам о Японии и о покупках в стране Восходящего Солнца!

Читать дальше →
Всего голосов 103: ↑79 и ↓24+55
Комментарии87

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность