Мохнатые уроды и моральные пёзды. Войти !bnw Сегодня Клубы
УНЯНЯ. У нас есть немножечко инфы об этом пользователе. Мы знаем, что он понаписал, порекомендовал и даже и то и другое сразу. А ещё у нас есть RSS.
Теги: Клубы:

Господа хуесосы, которых угораздило зашквартиться научной деятельностью. Объясните мне феномен Александры Элбакян. Как я вижу ситуацию: куча хуесосов носится вокруг ебанутой телки, у которой руки, в отличие от остального научного сообщества, настолько не из жопы, что она к 2011 году открыла трекер с пэдээфками. Тут с разных сторон подпездывают о том, что Александра — гениальная создательница какого-то ебаного скрипта, который с разных ойпи пиздит пэдээфки сам. Это звучит как то, чем я занимаюсь уже годы ради лулзов. ОБъясните, в чем прикол.
#PUGFRM (47+2) / @komar / 3000 дней назад
Нахуя, НАХУЯ сотрудники РКН ищут у меня на сайте через яндекс «сигареты», «домашнее порно», «мячик», «порнография», «скачать бесплатно», «бесплатно скачать window», «большая грудь», «купить ромашку», «алкоголь», «голые», «котики», «попа», «слон», «взломанная программа»?
#04YBIP (14+3) / @komar / 3000 дней назад
С Бутырской тюрьмой у меня — #I4HTMG — конечно, смешно получилось. Ну а что? Мне и в голову придти не могло, что она до сих пор стоит и работает. У меня она была частью мира книжек и кино, который я никогда не воспринимал всерьез. Была такая тюрьма, держали там троцкистов каких-то. Они сто лет назад жили, это сорт революционеров такой, неправильный. Да мне все это было мало интересно. А песню Высоцкого, где «разобрали всю тюрьму на кирпичи», я воспринимал как историческую справку. Да и сегодняшнее ее существование нелепо выглядит. Центр Москвы, идешь ты по улице. Барбершопы уже закончились, зато повсюду бары и кофейни. Люди на гироскутерах по тротуару ездят. Ныряешь во двор — а там на том месте, где обычно стоит детский садик, стоят старые кирпичные стены, сверху колючая проволока и башни. Ловко спрятано — по периметру со всех сторон вплотную стоят жилые дома по восемь этажей. С видом на тюрьму из подъезда. Кому надо держать тюрьму в центре Москвы? «СИЗО номер 2» теперь называется. Я никогда не был сторонником странных теорий, но, возможно, некоторый круг лиц находит спокойствие в символичном функционировании бутырки? И Солженицын, Шаламов уже не кажутся байками навроде рассказов о фашистских концлагерях. Все рядом, все работает, как и 80 лет назад. На Колыму, правда, уже не отправят. Зато в ИК-7 — запросто. Непонятно, что хуже.
#IEYV4X (4) / @komar / 3000 дней назад
Если бы выбор зависел только от вас, кого бы вы сделали президентом России? Можно выбирать из живых и из мертвых. Мои кандидаты: Илон Маск и Конрад Аденауэр
#ZMJ0VW (20+1) / @komar / 3002 дня назад
> Ленька, злоумышленник из Тумского района Московской области, юноша – житель глухого московского села, совершивший то же преступление, что и чеховский злоумышленник, – отвинчивал гайки от рельс железной дороги на грузила. Ленькино следствие длилось долго. Его обвинили во вредительстве, по пятьдесят восьмой статье, пункт 7, Ленька молился на тюрьму. Бутырская камера показала ему свет, была лучшим временем его жизни. > Варлам Шаламов, 1966 > И в Чечне таких людей было дофигища. Просто дофигища. Кругом говно, смерть, живет в крысиной норе под обстрелом, месяцами солнца не видит, на роже уже пять сантиметров грязи, а - доволен. Спрашиваешь его - чего ты лыбишься, дурак? А он: слава Богу в армию попал, хоть мир посмотрел. Когда бы я еще горы увидел?
#ZUD2D4 (11) / @komar / 3002 дня назад
http://www.jsfuck.com/ гениально
#FOS2U2 (3) / @komar / 3002 дня назад

Создательница сайта для доступа к научным публикациям Sci-Hub закрыла доступ россиянам из-за травли

https://roem.ru/05-09-2017/258235/scihub-selfblock/

#D8U5ED (12+4) / @anonymous / 3002 дня назад
Кремль берет на вооружение мемы, фотожабы и другое интернет-оружие оппозиции
#N63CYI (1+1) / @komar / 3003 дня назад
Американские баттлы — это ругань, а наши спорят о чем-то важном. Это свойственно русской культуре. Нас хлебом не корми, дай поговорить о смысле жизни. Оксимирон и Гнойный цитируют великих поэтов, правда, очень сильно ругаются.
#MQWDO7 (3+1) / @komar / 3003 дня назад
#N6I79F (17+1) / @anonymous / 3004 дня назад
Когда этот ебанизм со стартапами лопнет? Какое смешное название придумают для этого кризиса?
#BURJCE (12) / @komar / 3004 дня назад
Редизайн ютуба одобряю: он теперь такой же уебищный, как и гитлаб, привыкать не надо.
#RBY8SJ (9) / @komar / 3006 дней назад

В Костромской области МВД и ФСБ задержали трех человек за «обмен и переводы» биткоинов
МВД отчиталось об операции по задержанию «злоумышленников, которые нелегально зарабатывали на обналичивании и продаже криптовалюты». Задержание проходило в Костромской области совместно с ФСБ.

https://meduza.io/news/2017/09/01/v-kostromskoy-oblasti-mvd-i-fsb-zaderzhali-treh-chelovek-za-obmen-i-perevody-bitkoinov

#GGGW8R (2+5) / @anonymous / 3006 дней назад
эх ща бы средства производства заполучить
#86D48O (0) / @komar / 3007 дней назад
#0VWZF5 (1) / @komar / 3007 дней назад
Друзья. Давайте поговорим о технике фотографии на примере всем известного снимка 1946 года: https://upload.wikimedia.org/wikipedia/commons/8/86/Operation_Crossroads_Baker_%28wide%29.jpg Правильно ли я понимаю, что он был сделан: 1) при помощи телеобъектива; 2) при помощи фотоаппарата с пластинками высотой с мой хуй; 3) на максимально-разумной закрытой для такого фотоаппарата диафрагме?
#T3BFAA (23) / @komar / 3008 дней назад
ща бы криптовалюту порегулировать
#9V3LGQ (6) / @komar / 3008 дней назад
#R02EA2 (0) / @komar / 3009 дней назад

@je
Рекомендую для выбора съемного жилья заюзать google maps api distance matrix. У меня, например, собран список более менее рандомных мест, в которые я могу ходить. Я считаю с помощью google maps api, сколько из разных потенциальных жилищ я буду в среднем времени тратить в пути (либо с коэффициентами, например огромный коэффициент для места работы и маленький для любимого наркопритона, либо поровну) и строю таблицу для всех потенциальных квартир:

  • велосипедом

  • общественный транспорт, меньше всего пересадок (самый нормальный режим для гугл мапс по Москве)

  • только метро, мцк и поезда, потому что наземный транспорт в Москве слишком рандомно ходит

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

#!/usr/bin/env python3
import pandas as pd
import googlemaps
import pytz

from collections import namedtuple
from pprint import pprint
from itertools import chain, repeat
from datetime import datetime, tzinfo
from functools import partial

gmaps = googlemaps.Client(key='AREDACTEDREDACTEDREDACTED')

# ЗАПОЛНИТЬ: сюда следует ввести адреса потенциальных мест, где я буду жить
# каждое значение может быть либо строкой с адресом, либо GPS координатами
home_addresses = [
    "Россия, Москва, ул. Усачева, 29к3",
    "Россия, Москва, ул. Беговая, 17к1",
    "Россия, Москва, Коптевская ул., 83к2",
    "Россия, Москва, ул. Степана Супруна, 3-5",
    "Россия, Москва, Новокузнецкая ул., 13/15",
    "Россия, Москва, Бутырская ул., 86Б",
    "Россия, Москва, ул. Правды, 6/34",
    "Россия, Москва,  ул. Зои и Александра Космодемьянских, 11А",
    "Россия, Москва, Ленинградский просп., 78К1",
    "Россия, Москва, Новокузнецкая ул., 13С1",
    "Россия, Москва, Севастопольский просп., 5АК1",
    "Россия, Москва, ул. 1812 года, 4/45К2",
    "Россия, Москва, Светлый проезд, 4К4",
    "Россия, Москва, Делегатская ул., 14/2",
    "Россия, Москва, ул. Маршала Рыбалко, 3",
]


# In[31]:

# ЗАПОЛНИТЬ: сюда следует ввести пары вида: 
# (адрес часто посещаемого места, период как часто вы будете добираться туда-обратно между домом и этим местом)
#
# первое значение может быть либо строкой с адресом, либо GPS координатами
#
# если второе значение например 8, это значит,
# что раз в 8 дней я езжу туда и обратно домой.
# если у вас есть место, куда вы ездите раз в 7 дней, но оттуда
# всегда едете еще куда-то, то ставьте значение 14

favorite_places = [
    ("Россия, Москва, ул. Кузнецкий Мост, 13"),  # habimoshka
    ("Россия, Москва, ул.Большая Дорогомиловская, д.5 к.2"),  # кочерга
    ("Россия, Москва, Хохловский пер, 7/9 стр 2"),  # neuron hackspace
    ("Россия, Москва, Бобров пер. 6 стр. 1, 2"),  # библиотека тургенева
    ("Россия, Москва, Милютинский пер., 19/4, стр.1"),  # зеленая дверь
    ("Россия, Москва, шелапутинский переулок, д. 6"), # swing-in-moscow
    ((55.737924, 37.620204)), # рандомный дом в центре
    ("Россия, Москва, Ленинградское шоссе, 39Ас3"), # рандомная потенциальная работа - касперский
    ("Россия, Москва, Кожевническая улица, 7"), # рандомная работа
    ("Россия, Москва, Нижний Сусальный переулок, 5с19"), # рандомная работа
    ("Россия, Москва, ул. Волочаевская, д. 5, корп. 1"), # рандомная работа - крок
    ("Россия, Москва, ул. Летниковская, 10, стр. 5"), # рандомная работа
    ("Россия, Москва, Лесная улица, 7"), # рандомная работа - авито
    ("Россия, Москва, пр-т Андропова, д. 18, корп. 1"), # рандомная работа
    ("Россия, Москва, Дмитровское шоссе, 157с5"), # рандомная работа
    ("Россия, Москва, Трубная улица, 23-2"), # ранд работа
    ("Россия, Москва, Никопольская улица, 4"), # рандом работа
    ("Россия, Москва, улица Ленинская Слобода, 19"), # рандомная работа
    "Москва, ул. Малая Юшуньская, д. 1 к2",  # locus solus
    "Москва, метро Римская",  # предел
    "Москва, Образцова, 14"  # msds
]
favorite_places = list(zip(
    favorite_places,
    repeat(len(favorite_places) / (2 * 4.5 / 7))))


def calc_avg_travel(home_addresses, favorite_places,
                    how: str, depart_when: datetime):
    request_funcs = {
        "bike": partial(gmaps.distance_matrix, mode="bicycling"),
        "car": partial(gmaps.distance_matrix, mode="driving"),
        "walking": partial(gmaps.distance_matrix, mode="walking"),
        "subway_train": partial(
            gmaps.distance_matrix, mode="transit",
            transit_mode=["subway", "train"],
            transit_routing_preference="fewer_transfers"),
        "public_transport": partial(
            gmaps.distance_matrix, mode="transit",
            transit_routing_preference="fewer_transfers")}
    assert how in request_funcs.keys()
    favorite_places = [{"location": location, "period_in_days": period_in_days}
                       for location, period_in_days in favorite_places]
    location_col = []
    duration_col = []
    home_address_col = []
    period_in_days_col = []
    for home in home_addresses:
        result = request_funcs[how](
            [home], [place["location"] for place in favorite_places],
            departure_time=depart_when)
        assert result["status"] == "OK"
        assert len(result["destination_addresses"]) == len(favorite_places)
        assert len(result["origin_addresses"]) == 1

        location_col += result["destination_addresses"]
        duration_col += [record["duration"]["value"] for record in result["rows"][0]["elements"]
                         if record["status"] == "OK"]
        home_address_col += [result["origin_addresses"][0]] * len(result["destination_addresses"])
        period_in_days_col += [place["period_in_days"] for place in favorite_places]

    data = pd.DataFrame({
        "location": location_col, "duration": duration_col,
        "home_address": home_address_col, "period_in_days": period_in_days_col
    })

    data["duration_per_day"] = data.duration / data.period_in_days
    return data

DEPARTURE_TIME = datetime(2017, 9, 5, 12, 0, tzinfo=pytz.utc) # сейчас указано в UTC. Москва это UTC+3

# a dumb test, kinda
def test_gmaps_api():
    home_addresses = [
        "Россия, Москва, Коптевская ул., 83к2",
        "Россия, Москва, ул. Степана Супруна, 3-5"
    ]
    destination_addresses = zip(home_addresses, [1, 3])
    data = calc_avg_travel(home_addresses, destination_addresses,
                           "public_transport", DEPARTURE_TIME)
    print(data)
    durations = data["duration"]
    assert durations.iloc[0] == 0
    assert durations.iloc[1] != 0
    assert durations.iloc[2] != 0
    assert durations.iloc[3] == 0

test_gmaps_api() # yeah it works


data = calc_avg_travel(home_addresses, favorite_places,
                       "subway_train", DEPARTURE_TIME)


unique_home_addresses = pd.DataFrame(pd.Series(data["home_address"].unique()).rename("address_by_google"))
unique_home_addresses["input_home_address"] = home_addresses
print(unique_home_addresses)
# ВАЖНО: проверьте в этой табличке, что в колонке address_by_google стоит адрес,
# понятый гуглом правильно (изначальные адреса - в колонке input_home_address)


# In[62]:

unique_destination_addresses = pd.DataFrame(pd.Series(data["location"].unique()).rename("address_by_google"))
unique_destination_addresses["input_favorite_place"] = [str(pair[0]) for pair in favorite_places]
print(unique_destination_addresses)
# ВАЖНО: проверьте в этой табличке, что в колонке address_by_google стоит адрес,
# понятый гуглом правильно (изначальные адреса - в колонке input_favorite_place)


# In[63]:

print(data.head())
print(data.tail())
# ЗАМЕЧАНИЕ: здесь будут просто показаны конец и начало получившейся таблицы
# Если не лень, можете посмотреть, чтобы каких-то неадекватных значений не было
# duration - время чтобы добраться от места до места в секундах
# period_in_days - тот самый указанный выше период в днях
# duration_per_day - кол-во секунд в день


# In[64]:

# calculate travel time per day for each home address

travel_times_per_day_per_home = pd.DataFrame(
    (data.groupby("home_address")["duration_per_day"].sum() / 60)
    .rename("minutes_of_travel_per_day")
).sort_values(by="minutes_of_travel_per_day")
print(travel_times_per_day_per_home)
# ВАЖНО: это финальный результат
# для каждого адреса квартиры в другой колонке будет указано кол-во минут, затрачиваемых на дорогу, в день
# адреса будут отсортированы от самых выгодных по времени в дороге до самых невыгодных


# In[65]:

COST_PER_HOUR = 340  # RUR
costs = travel_times_per_day_per_home     .assign(hours_per_month=lambda df: (df["minutes_of_travel_per_day"] * 30.5 / 60).round(1))     .assign(converted_rur_per_month=lambda df: df["hours_per_month"] * COST_PER_HOUR)

print(costs)
#UVGF8R (19+6) / @cat-o-nine-tails / 3009 дней назад
--
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.