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

https://esquire.ru/futures
Порекомендуйте биосы рынка, с помощью которых его обыгрывать

#FZFK0S (6+1) / @cat-o-nine-tails / 2644 дня назад

@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 / 2644 дня назад
<greenbastad> °.°: там нет никакой автоматики <greenbastad> там префектная машина для массовых убийств жалкого белка <greenbastad> состоящая из огромных зубчатых колес и мотора в несколько сотен квт <greenbastad> и единственое что может обуздать этого зверя - это бабка с кнопкой
#M4GHKX (3+2) / @komar / 2645 дней назад
https://tools.ietf.org/html/rfc5987 can you believe that browsers are supposed to implement this shit instead of accepting utf-8 in headers
#1FY9XC (8+1) / @voker57 / 2645 дней назад
То, что на каждого убитого оппозиционера приходится ноль убитых путиноидов, как бы намекает о неправильно расставленных приоритетах в оппозиционном движении: https://meduza.io/news/2017/08/25/uchastnik-dezhurstv-na-meste-ubiystva-nemtsova-umer-posle-napadeniya-na-bolshom-moskvoretskom-mostu "Активист Иван Скрипниченко, который участвовал в дежурствах на месте убийства Бориса Немцова на Большом Москворецком мосту, умер через несколько дней после нападения во время дежурства. Об этом сообщил «Медиазоне» активист Андрей Маргулев. По его словам, вечером 15 августа к Скрипниченко на мосту подошел неизвестный мужчина и попытался заговорить; активист отвернулся, и мужчина ударил его кулаком в нос. Как передает сайт Ильи Варламова, другие активисты говорили, что нападавший крикнул Скрипниченко: «Ты что, Путина не любишь?» В НИИ имени Склифосовского Скрипниченко диагностировали перелом носа. После осмотра его выписали, но через несколько дней он снова лег в больницу «для исправления последствий перелома». «23 августа он умер. Результатов судмедэкспертизы пока нет, но, вероятно, он умер из-за оторвавшегося тромба», — цитирует Маргулева «Медиазона»."
#55V3OU (0+1) / @o01eg / 2647 дней назад

On 1 April, 2017, someone used an exploit in 8chan&#39;s software to gain access to the server, used it to delete the database and take the site down, and later leaked a lot of data copied from the server. Among other things, this revealed the existence of Sunshine.

Sunshine was a system that (unsuccessfully) indefinitely stored the IP addresses of posts. For each post, a copy of the post together with its IP address was encrypted and inserted into a table. The entries could only be decrypted using a private key stored on a different computer. This was done in response to a law enforcement request for the IP address that posted a thread threatening a school shooting, which was received after the thread had already 404ed and the IP address had been deleted from the database. Sunshine was used successfully only once.

Because of the incomplete documentation of PHP&#39;s openssl_public_encrypt function, encryption of long posts failed, and they were not recorded. Sunshine never even worked properly.

#SYJ4R3 (0+2) / @ceyt / 2653 дня назад
https://meduza.io/feature/2017/08/18/v-berline-proydet-marsh-neonatsistov-v-pamyat-o-rudolfe-gesse-pochemu-germaniya-ego-ne-zapretila > Согласно правилам проведения мероприятия, никому из участников нельзя будет использовать нацистскую символику (она в Германии запрещена), приносить алкоголь, нести транспаранты с цитатами Гесса, выкрикивать лозунги, общаться с журналистами и пользоваться мобильными телефонами. Запрещается и одежда в стиле милитари Рашка-то оказывается оплот демократии и свободы
#EFGFPM (7+1) / @anarchy / 2655 дней назад
Христианское государство — разрешённая в РФ террористическая организация% http://lentach.media/articles/mvd-ne-stalo-vozbuzhdat-ugolovnoe-delo-iz-za-ugroz-zhech-kinoteatry-posle-pokaza-matildy/ "Один из лидеров движения "Христианское государство" не удивлен таким решением, в организации уже накопилось 47 отказов о возбуждении уголовных дел МВД РФ не станет возбуждать уголовное дело об угрозах со стороны организации "Христианское государство – Святая Русь" в отношении сети кинотеатров "Киномакс", сообщает "Газета.ру". В начале февраля этого года от имени организации были разосланы письма крупным сетям кинотеатров: "Каропрокату", "Киномаксу" и другим. В них говорилось, что кинотеатры не должны показывать фильм Алексея Учителя "Матильда" об отношениях Николая II и балерины Матильды Кшесинской. Очевидно, если завтра выйдет фильм "Матильда", кинотеатры начнут гореть, может быть даже пострадают люди, и действия эти от безысходности, начнутся со стороны тех, кто Любит Бога и свой народ, — говорилось в обращении. После получения писем генеральный директор "Киномакса" Дмитрий Нартов обратился в Генпрокуратуру с просьбой о проверке организации по факту угроз. Обращение было перенаправлено в МВД. Александр Калинин, один из лидеров "Христианского государства", не удивился отказу о возбуждении уголовного дела. С учетом этого отказа у нас их уже накопилось 47 штук по всей стране. В одной только Москве по нам было шесть проверок, и все закончились отказными материалами, никто не нашел в наших действиях состава преступления. У нас тоже есть серьезные юристы, нам тоже не нужны уголовные дела идиотские. Мы соблюдаем закон и всего лишь хотим предупредить людей о последствиях их шагов, — сказал он. Фильм Алексея Учителя "Матильда" должен выйти в прокат 25 октября. Его всячески пытается запретить депутат Госдумы Наталья Поклонская. Фильму все же выдали прокатное удостоверение."
#4B5PNV (4+3) / @o01eg / 2656 дней назад
https://www.linux.org.ru/forum/club/13619978?cid=13621234 "Ну, наверное, я очень зря отвечаю, потому что вопрос очень тонкий, не для обсуждения на ЛОРе и вообще не мне учить жизни людей. В конце концов никому ничего нельзя доказать, человек сам доказывает себе все, я лишь могу некий текстик написать, который человек может лишь прочитать и, возможно, что-то полезное для себя почерпнуть (и даже точку зрения сменить). Но пускай. Если очень кратко: 1. В свое время, лет десять назад в студенчестве, я заинтересовался Колмогоровской сложностью, а точнее двумя связанными с ней интересными фактами. а. ее невычислимостью (и интересной структурой доказательства невычислимости, с самоприменением, подсчетом сложности описания и тд). б. ее «философским» практическим смыслом: как алгоритмической априорной вероятности для байесовского вывода и статистики. из этих двух фактов вытекает интересный вывод, что любая система принятия решений, искусственный интеллект и сам человек (потому как я не думаю, что процессы в человеке есть что-то особенное) принципиально не может сказать, что составленная им модель данных наиболее оптимальна. что не может быть найденно еще более хорошее объяснение. 2. Примерно в то же время я наткнулся на известного (в России с крайне отрицательным знаком) философа Хайека. У него есть интересная книжка Sensory order, в которой излагались отчасти подобные рассуждения с самоприменением и сложностью, но применительно к человеку и обществу. Предположим, что человек A живет, принимает какие-то решения. В процессе этого он строит (выбирает) какие-то свои модели окружающего мира. Если мы хотим им управлять (например, будучи сторонником государственного планирования), то мы должны получить модель знаний этого человека. Но в силу пункта первого мы неизбежно что-то потеряем. Причем невичислимое количество знаний. Если бы мы пытались моделировать не человека, а природу - то это было бы не страшно. Лучшего способа обходиться с неразумной материей у нас нет. Но в случае с человеком у нас есть второй способ - оставить ему собственность и позволить действовать в соответствии со своими представлениями. Тогда мы не потеряем его знания. На меня эти рассуждения произвели достаточно серьезное впечатление в принципе определив мои представления о верном общественном устройстве ну и в целом вызвав интерес к подобной либертарианской философии."
#KVP5F4 (0+3) / @o01eg / 2656 дней назад
Я хочу принести извинения всем тем людям, которых послал нахуй за время ведения этого блога.
#T5N8AI (19+8) / @komar / 2656 дней назад

http://sportwiki.to/Спортсвики_внесена_в_реестр_запрещенных_сайтов#.D0.9A.D0.BE.D0.BC.D1.83_.D1.8D.D1.82.D0.BE_.D0.BD.D1.83.D0.B6.D0.BD.D0.BE.3F

Не перестаю восхищаться способности рашкованов ставить на ровном месте шлагбаум и тянуть бабки за его обход.

#77W24V (1+3) / @ceyt / 2658 дней назад

Как вести себя при обыске: https://twitter.com/polinanem/status/857603674939510784
У вас есть 15-30 минут, потом дверь действительно могут вскрыть. Успейте смыть все в-ва в унитаз.

#LFQBUK (2+1) / @cat-o-nine-tails / 2658 дней назад

IF YOU ARE MARRIED TO A TRUMP SUPPORTER, DIVORCE THEM
The unfortunate truth about being in a relationship with someone that supports Donald Trump

#2HBDMX (0+1) / @proctolog / 2660 дней назад

Интересно, у всех ejabberd при отправке запроса на удаление из ростера пустого jid удаляет в пизду сам аккаунт, или это у конкретного сервера параноидальные админы?

#F089RT (1+1) / @ceyt / 2662 дня назад
кто живет в рашке тот л-х
#RQB0IJ (8+2) / @voker57 / 2663 дня назад
http://lleo.me/dnevnik/2017/08/06.html "Генерал-майор в шинели громко плакал в докладной: террористы охренели, нет зацепки ни одной. Завели себе девайсы — интернет, секретный чат. И попробуй догадайся, с кем о чем они журчат. Где ни сунься — всюду шифр. Ни отмычек, ни ключей. Лишь вагон арабских цифр! И причем, неясно чей! Как ловить бандитов буду? Никаких зацепок нет, если шлет Аслан Махмуду зашифрованный пакет. Нам бы прежних инструментов! Чтобы мы в сетях могли: и проверить документы, и отправить патрули, и явиться с понятыми — всех на сайте мордой в пол. Кто такой? Прописка? Имя? Как давно сюда пришел? Адреса друзей и близких? Что в карманах, ё-моё? Где шкатулка с перепиской? Доставай, прочтем её... Кончилась эпоха Холмса с появлением сети! Мы бессильны! Мы сдаемся! Как нам следствие вести? Нам работать трудно очень! Не хватает важных мер! Нужно больше полномочий. Всех админских, например. Раскрываемости нету! Показатели в нуле! Вот бы сети интернета запретить по всей земле! Вы ж поймите, это важно! Вот вам докладной листок... И сморкался в камуфляжный влажный носовой платок. И так искренне, так чисто прозвучал его доклад, что кивали журналисты. А потом случился ад. Как вулкан потухший, в жерло получив морской воды, вышел Холмс, который Шерлок. И вломил ему пизды. Встал как призрак из могилы, из музея Бейкер Стрит. «Ах ты ж йобаный мудила!» — он на кокни говорит. «Я всю жизнь проползал с лупой! Под дождем! В говне! В грязи! Подними свою залупу да по кнопкам повози! У тебя зацепок нету?! А ты ж сраный пидарас! А платежки?! А билеты?! Кучи электронных баз?! Вам же треки пишут соты, где носили телефон!!! Сука, блять, иди работай! Недоволен, сука, он! Я искал следы руками! Ты ж зажрался, стыдоба! У тебя там гроздья камер смотрят с каждого столба! Кто и с кем ходил в подъезды! Кто проехал по шоссе! Кто, куда во сколько ездил — с номерами, сука, все! У тебя народ как дети: трижды в день без выходных постят фоточки в соцсети — погугли же, сука, их! У тебя провайдер каждый видит на любой из хат, кто чего качал из граждан: порнохаб или джихад! Блять, ему работать плохо! Много цифры! Век не тот! Мне бы так в мою эпоху, ебанутый идиот! Ишь, сидят по кабинетам да растят на попе жир! Слишком много интернета! Страшный неуютный мир! Чем внедрять бойцов к бандитам, да учить язык фарси, он сидит себе, пиздит он! Шифры, блять, ему неси! Что просить назавтра будем? Охуели, дайте две! Микрофоны в жопу людям? Ключ от мыслей в голове? Ох, вернуть таких констеблей к нам на землю из кино можно лишь суровой еблей да маканием в говно. Вам совсем заняться нечем! В жопе сажа, блять, горит!» Шерлок Холмс, закончив речи, улетел на Бейкер Стрит. Генерал-майор платочком вытер божую росу: если все согласны, точка, утверждать проект несу. А у нашего отдела стало больше важных дел: заведем на Холмса дело, чтобы много не пиздел."
#RSUXX5 (25+4) / @o01eg / 2668 дней назад
чет та история вспомнилась и пришла великая буря на столицу и залило водой плитку с велодорожками и стояли майбахи по самые стекла в воде и бородатые мужчины с нежными лицами ходили по колено в воде а кончилось все тем, пришел михалыч с сигаретой в зубах, закатал рукава, и повиновалась ему вода, и утекла туда, куда он указал рукой я не шучу http://dump.bitcheese.net/files/gupezym/20170714_0206_02.jpg что будет с москвою, когда михалыч из нее уедет — подумать страшно
#X55MR9 (9+1) / @komar / 2668 дней назад
http://blog.extremehacking.org/blog/2017/07/31/hungarian-hacker-arrested-pressing-f12/ В кратце: в Будапеште за миллион баксов набыдлокодили систему продажи билетов на общественный транспорт с кучей багов, как например поле с суммой было readonly, но если поправить html в браузере, то можно цену поменять, а на бэкенде никто не стал проверку суммы делать. Пацанчик этот баг нашел, написал в саппорт, а через 2 недели его мусора загребли.
#FSE0VS (7+4) / @anarchy / 2669 дней назад
Публикация в научном журнале стоит для государства от 1,5 до 5 млн. руб. В тоже время, заработная плана научного сотрудника в РФ на июль 2017 года составляет 22 282 руб. Да, я уже слышу твое замечание "да даже меньше!" Хочешь зарабатывать больше? А что, если я скажу, что ты можешь получать финансирование на исследования, надбавку к заработной плате и уехать на PhD в престижный иностранный ВУЗ? Ключ к этому - публикация в ТОП-журналах! Статьи - это заявки и отчеты по грантам, а также крепкое CV для поступления на желаемую должность. Поэтому в своем семинаре я расскажу спектр советов и инструкций, проверенных на личном опыте
#Q202A9 (2+1) / @kuro / 2669 дней назад
--
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

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