четверг, 23 октября 2014 г.

quicksort на python

Описание алгоритма.

def quicksort(array):
    if len(array) <= 1:
        return arr
    else:
        return quicksort([x for x in array[1:] if x < array[0]]) + [array[0]] + quicksort([x for x in array[1:] if x >= array[0]])

вторник, 7 октября 2014 г.

алгоритм Евклида на python

Алгори́тм Евкли́да — эффективный алгоритм для нахождения наибольшего общего делителя двух целых чисел.

Подробнее об алгоритме читаем на википедии.

Пример реализации на python:

def evc(a, b):
    if a < b:
        a, b = b, a
    r = 1
    while r > 0:
        r = a % b
        a = b
        b = r

    return a

понедельник, 29 сентября 2014 г.

Запускаем android studion на ubuntu 14.04

При попытке запуска приложения на своём девайсе через android studio получил сообщение об ошиьке "ADB Not Responding ...".

Лечится просто:

sudo apt-get install lib32z1 lib32z1-dev lib32stdc++6

пятница, 28 марта 2014 г.

Оценка качества архитектуры проекта

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

  1. соответствует ли программа требованиям (т.е. выполняет все функции прописанные в техническом задании в полной мере);
  2. насколько легко лично для вас/вашей команды происходит процесс внесения изменений в систему;
  3. легко ли вы можете подключить нового разработчкика к работе над проектом.
Наверное можно придумать ещё метрики, но эти основные и без них никуда. Если ответы - да, легко, легко, то мне кажется что вы поработали над архитектурой должным образом. Если же нет, то вам есть куда расти.

вторник, 11 марта 2014 г.

Dragon Age: Origins

Да-да я знаю, что игра стара и что есть уже вторая часть и скоро вроде бы будет третья. В своё время я начал играть как раз со второй части, но не смог продержаться больше часа. Я понимаю, что игра вполне себе стоящая но не зацепило. Поэтому первую часть я даже ставить не стал и как оказалось зря. То-ли настрой у меня был на игры лучше, то-ли ещё какие-то причины но мне очень понравилась игра Dragon Age: Origins.

Хвалить игру со средними оценками 8.5 из 10 конечно не сложно. Однако у меня остались не совсем однозначные впечатления от игры. Главный и вообщем-то единственный минус для меня - это боевка. Честно говоря мне понравился сюжет, персонажи и хотелось узнать, что там дальше. Но приходилось довольно много драться, что логично. Но как же меня напрягали эти моменты. Неудобная камера, слабый интеллект союзников, длинные и затянутые подземелья. Тут конечно во многом моя вина, я понимаю что там можно выставить как вести себя своим спутникам, но всё равно это спасает не особо. В итоге я так и не смог нормально играть магом, хотя все рпг прохожу магами, где есть такая возможность. Проходил всю игру в три воина включая меня и лекаря. Не знаю, что у меня с руками но все остальные связки были нерабочими у меня. Вообщем боевки мне не понравились, но наверное если заморочиться и разобраться можно настроить всё хорошо. Но у меня честно говоря не было времени и желания разбираться как управлять ещё 3 персонажами, я бы и один побегал или бы уже пусть они сами вели себя адекватно. Финальный бой в итоге меня бесил по страшному, переключался между героями как угорелый, чтобы эти дебилы не дохли и в основном играл за лечащего мага, который сам лечит как то уж совсем криво.

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

Соглашусь со всеми оценками, но лично меня выбесило управление ужасно, поэтому не поленитесь в начале игры почитать как правильно управлять отрядом, чтобы получать удовольствие от игры.

понедельник, 3 февраля 2014 г.

определить ip адрес с помощью python

Я находил два решения этой задачи. Первое и самое простое:

import socket
socket.gethostbyname(socket.gethostname())

Но мне такой вариант выдаёт 127.0.0.1, что наверное и неудивительно.

Однако есть и более изощренный способ:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(("gmail.com",80))
print(s.getsockname()[0])
s.close()
В этот раз получил правильный адрес машины.

воскресенье, 2 февраля 2014 г.

Мнение о фильме "Неудержимые 2"

Я знаю, что фильм вышел давно и все уже 100 раз его посмотрели или наоборот забили на него. У меня не получилось в своё время оценить этот фильм в кинотеатре, а потом я поверил мнению людей, мол фильм не стоит просмотра. Но на днях я всё-таки посмотрел его ... И да фильм просто супер!

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

  • Персонажи. Некоторые "критики" высмеивали, что персонажи стали как в былых своих фильмах, что мол не жизненно. Да там же было видно, что в этом вся задумка! Смотрится это просто офигенно! Как-будто вернулся в детство.
  • Проблемы с сюжетом? Да ладно в этом фильме дыр может статься и не больше, чем в топовых блокбастерах. А самые бредовые моменты это отсылки к старым фильмам, которые нереально доставляют при просмотре.
  • Юмор. И да шуток не много, но они есть. Те кто любил старые боевики - оценит. И даже наши переводчики умудрились сохранить часть этих шуток.
  • Эмоции. Вообще не хотел об этом писать, но в современных фильмах ("Челезный человек" 2 и 3, "Человек из стали", все трансформеры и т.д.) эмоций я не испытывал вообще. Персонажи не вызывают к себе никаких эмоций. Но даже в этом фильме была одна сцена, где было не много жаль убито парня. И это уже успех.
  • Актёры. Тут даже говорить нечего. В одной экшен сцене мы видим терминатора, рембо и крепкого орешка, и да Чак Норрис прикрывает их сверху. Это просто мечта детства для фильма. 
















Пожалуй добавить больше нечего. По мне дак 8 из 10.

воскресенье, 26 января 2014 г.

Впечатления от фильма "Я Франкенштейн"

Только что вернулся из кинотеатра, посмотрев фильм "Я Франкенштейн". И я вам скажу я, что это очередно кусок бездарного высера, куча несвязного глупого и унылого бреда. Фильм который зачем-то взял религиозную тематику, но вообще её не раскрыл и стал от этого ещё унылее. Слабая игра актёров, куча заимствований идей из других фильмов, особенно из "Константин: Повелитель тьмы", хотя возможно мне тут я не прав. Слабая игра актёров, ужасный сюжет, несвязный экшен - вот что представляет из себя этот фильм.
Я думал, что хотя бы спецэфекты будут хорошо, но и тут провал на мой взгляд.
Вообщем никому не советую.

пятница, 24 января 2014 г.