Pull to refresh
5
0
Send message

Что не так с Android?

Reading time6 min
Views20K
Фрэйзер Спёрс (Fraser Speirs) — разработчик FlickrExport и Darkslide, работает со школами и компаниями по внедрению современных технологий

Я недавно выступал на конференции около Кардиффа, и мне был задан вопрос. Я люблю получать вопросы. Какой вопрос? Этот:

Что не так с Android?


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

Как мне кажется, несколько вещей в Android действительно не в порядке (с точки зрения долгосрочных поставок).
Читать дальше →
Total votes 184: ↑159 and ↓25+134
Comments526

iPad как платформа для разработки веб-приложений

Reading time3 min
Views44K
Современное общество мобильно, легко адаптируется к динамично меняющейся окружающей среде. Мы на связи с глобальной сетью повсюду: в машине, в поезде, в метро, даже в туалете!
По-моему термин On-The-Go! наиболее точно характеризует современного человека.

Сейчас планшетник уже перестал быть роскошью и гаджетом, который есть только у президента. Уже пол года, как я стал счастливым обладателем iPad. В основном я использовал его для серфинга в Интернете, презентаций видеоработ заказчикам, и чтения технической литературы (как это ни странно прозвучит, но художественную мне удобнее читать с iPhone'а). Но с момента покупки меня ниразу не покидала мысль «А можно ли полноценно разрабатывать веб-приложения на iPad? Так, чтобы компьютер был не нужен вообще?». И сегодня я могу сказать — ДА — на iPad можно вести полноценную веб-разработку. Сегодня в AppStore уже есть ряд программ, которые очень сильно помогут при разработке приложений на iPad.
Читать дальше →
Total votes 82: ↑59 and ↓23+36
Comments95

Мега-Учебник Flask, Часть 1: «Привет, Мир!»

Reading time6 min
Views579K
Это первая статья в серии, где я буду документировать мой опыт написания веб-приложения на Python, используя микрофреймворк Flask.

Здесь список всех статей в серии:
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud

Моя предыстория


Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
Я хочу начать это долгое и удивительное путешествие
Total votes 63: ↑60 and ↓3+57
Comments31

Пишем платформер на Python, используя pygame

Reading time11 min
Views356K
image
Сразу оговорюсь, что здесь написано для самых маленькихначинающих.

Давно хотел попробовать себя в качестве игродела, и недавно выпал случай изучить Python и исполнить давнюю мечту.

Что такое платформер?


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

Одними из моих любимых игр данного жанра являются «Super Mario Brothers» и «Super Meat Boy». Давайте попробуем создать нечто среднее между ними.
Читать дальше →
Total votes 93: ↑89 and ↓4+85
Comments46

Как я сам научился программировать за 8 недель

Reading time3 min
Views568K
Для многих, кто никогда не программировал, обучение программированию кажется невероятно сложной задачей. Как бы то ни было, спасибо тому огромному количеству ресурсов, которые недавно стали доступны в Интернет и являются бесплатными — самообучение программированию никогда еще не было таким простым.

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

Ниже я описал простой путь от ничего не зная о разработке программного обеспечения до обладания рабочим прототипом за восемь недель, который примерно повторяет шаги, которые я выполнил.
Читать дальше →
Total votes 133: ↑90 and ↓43+47
Comments92

Хочешь быть iOS разработчиком? Будь им!

Reading time2 min
Views388K
На хабре в прошлом месяце была опубликована статья Конкурс ВК: Мессенджер для Android. Как это было!, в которой автор поделился своими мыслями о конкурсе и опубликовал список ресурсов и статей, которые помогли ему в создании приложения. Так как в последнее время я начал изучать разработку под iOS, то у меня скопилось некоторое количество ссылок, которые могут быть полезны для начинающих. Поэтому я последую его примеру и сделаю то же самое, только для своей платформы. Надеюсь, кому-нибудь они окажутся полезны и сэкономят немного времени.

Читать дальше →
Total votes 234: ↑222 and ↓12+210
Comments38

Динамическое (нелинейное) тестирование GUI

Reading time5 min
Views9.5K
Что такое?

Выполнение действий над элементами графического интерфейса в случайном порядке.

Для чего нужно?

Человек, выполняющий тестирование, это Homo sapiens, т.е. он обладает неким интеллектом. Этот самый интеллект, мешает (очень редко, но мешает) ему находить «нелепости поведения» приложения связанные с непредвиденными ситуациями. Он просто не может представить себе настолько нелогичную ситуацию.
Пользователь же, намного превосходит QA в количестве и может значительно уступать ему в IQ. Отсюда, вероятность непредвиденного поведения пользователя отнюдь не крайне мала.
Итак, что нам, обладая свободными ресурсами и желанием, мешает принять меры по предотвращению подобных ситуаций? — Ничего.
Теперь сформулируем конкретные задачи, в которых «бессмысленное клацанье» по кнопкам может быть полезно:
  • Дополнить существующее тестирование стабильности приложения путем введения модели нелинейного поведения пользователя в GUI.
  • Исследовать потребление ресурсов при всех возможных вариантах работы приложения (инициированные из GUI).

Во-первых, вариант тестирования, описанный в данной статье, должен быть использован, действительно, только как дополнение к существующему тестированию графического интерфейса. Полагаться лишь на хаотичное «клацанье» по кнопкам – по меньшей мере, глупо. Нет никакой проверки, что именно происходит да и происходит ли вообще. Поэтому первый вариант можно рассматривать как дополнительное негативное тестирование на стабильность.
Второй же, максимально эффективен на бесконечном отрезке времени, что часто, невозможно. Поэтому, выбирая период измерений, следует исходить из сложности приложения, его типа и назначения. Например, наверно нет смысла 24 часа гонять «несерверное» приложение, состоящее из двух кнопок и одного чекбокса, которое умножает что-то на два, а потом результат делит пополам.

Как делать будем?

Дальнейшее описание предназначено для тестирования приложений на платформе Windows.
Предлагаю воспользоваться связкой python + pywinauto. Хотя pywinauto и имеет некоторые ограничения в плане доступа к элементам окна, для большинства случаев этого должно быть достаточно.
Честно говоря, альтернативы я не вижу. Все знакомые мне средства автоматизации тестирования GUI не обладают динамичностью, показанной ниже – уже во время выполнения теста получать список контролов, определять их тип и выполнять допустимое действие.
Также не стоит недооценивать возможностей самого Питона и его модулей. Тут вам можно и видео снять, CPU замерить и сообщение, куда надо, в случае чего отправить…
Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments15

Золотые правила успешной кнопки

Reading time3 min
Views71K
Здравствуй, дорогой хабрадруг! Сегодня существуют более тысячи способов создать кнопку; чтобы понять их сущность, вам нужно лишь потратить немного времени, просмотрев работы на сайте dribbble.com. Большинство из этих примеров очень похожи друг на друга, однако время от времени попадаются и такие кнопки, на создание которых потратили чуть больше внимания, времени и сил.



Воспользовавшись замечательными параметрами CSS3, мы можем создать элегантые и стильные кнопки без особых усилий (учитывая старые браузеры, конечно). Создаете ли вы кнопку непосредственно в CSS или пользуетесь специальными инструментами для их создания, всегда нужно тщательно подумать о том, как ваша кнопка будет выглядеть в контексте веб-сайта.
Читать дальше →
Total votes 224: ↑215 and ↓9+206
Comments55

Тестовое задание для разработчиков iOS/Android от ZeptoLab

Reading time4 min
Views51K
Уважаемые Хаброжители! Мы очень рады тому, что теперь с Вами! Поверьте, это крайне важно для нас — быть на связи с профессионалами. Мы тоже себя считаем профессионалами и Ваши комментарии, тому свидетельствуют.
Мы динамично развиваемся и расширяемся. Нам очень нужны сейчас iOS/Android девелоперы, которым мы готовы предложить все, для того чтобы им работалось очень интересно и супер комфортно. Об этом чуть подробней и чуть позже.
А пока немного о том как попасть к нам в команду. Все просто! Надо всего лишь уметь разбивать кирпичи!

image

Однако, чтобы мы узнали, насколько Вы клево умеете это делать, необязательно присылать фото или видео Ваших подвигов, намного серьезней Вы заявите о себе, если напишите прототип игры арканоид, в котором за Вас это сделает шарик, отскакивающий от биты…

Читать дальше →
Total votes 90: ↑72 and ↓18+54
Comments78

Как я ловил хакера

Reading time2 min
Views44K
Произошло это в начале 2008 года, когда я еще работал в одном крупном украинском банке инженером в IT-департаменте. Только спала новогодняя праздничная суета, и нагрузка на подразделения техподдержки немного поубавилась, как один из подотчетных мне web-серверов сообщил о заканчивающемся на диске месте. Беглый анализ показал, что стремительно росли логи IIS сервера, на котором крутится один из публичных платежных комплексов банка. Мои опасения оправдались – на сервер началась DDOS атака.
Читать дальше →
Total votes 431: ↑407 and ↓24+383
Comments192

Information

Rating
Does not participate
Registered
Activity