shuraluberetsky

shuraluberetsky
добавил публикацию

Обсуждают льготы для "IT-компаний", предложенные вчера Путиным. Во-первых, некоторое недоумение вызывает вопрос - что же такое "IT-компания"? Ответ на него очевиден, но многим неизвестен - это компания, включенная в особый список Минцирка (МИНистерство ЦИфрового Развития, связи и массовых Коммуникаций):

https://digital.gov.ru/ru/activity/govservices/1/

По состоянию на 15.06.2020 в списке, представленном в виде таблички формата xls (КМПВ, узнаем, почему не csv или что-то "открытое", а за использование старых форматов M$ будем отправлять на Колыму), числится 11452 организации. Кроме того, в списке есть ОГРНы и ИННы компаний - а поэтому на сайтах вроде какого-нибудь zachestnyibiznes несложно найти информацию о любой из них - например, о ООО "ТЛМ Ком" под номером 1 в списке:

https://zachestnyibiznes.ru/company/ul/1045207810218_5262128494_OOO-TLM-KOM

К сожалению, фирма уже ликвидирована, а вот номер 2 в списке - ООО "ТЭЛМА Софт" - живет и здравствует, переименовавшись в "Харман":

https://zachestnyibiznes.ru/company/ul/1025203734841_5262068365_OOO-HARMAN

Конечно, правильнее было бы брать эту информацию у налоговой - как, собственно, все эти зачестные бизнесы и руспрофайлы и поступают - но выгрузка ЕГРЮЛ довольно сложна и кишит странностями.

И еще пара вводных - во-первых, льготы по налогу на прибыль, очевидно, распространяются на тех, кто его платит - то есть сидит на общей системе налогообложения, а не на "упрощенке"; во-вторых, количество работников в компании должно быть не менее 7 человек. Если вы представляете себе среднюю российскую ИТ-компанию - то, наверное, уже почувствовали, что на льготы могут расчитывать далеко не все. Скажем, очень многие сидят на "упрощенке" - она действительно сильно упрощает жизнь, особенно если ваши клиенты - такие же "упрощенщики" или физические лица. Численность в 7+ человек - тоже сравнительно много, особенно учитывая популярность работы с фрилансерами, когда в штате фирмы - буквально три-четыре наиболее незаменимых человека, а остальные работают по договорам ГПХ или регистрируются, как индивидуальные предприниматели (в особо запущенных случаях это превращается в "схему Ходорковского", но не будем показывать пальцем :) ).

В общем, возникает желание проверить - а многие ли в этом списке подпадают под льготы. Основная проблема - невозможно надежно определить, пользуется ли контора УСН или нет по страничке с данными. Для части фирм на УСН встречается надпись "Упрощенная система налогообложения (УСН) (на 2018 год)" - но сделать по ней или ее отсутствию надежный вывод о том, каким налоговым режимом пользуется фирма, нельзя. Впрочем, как первое приближение - сойдет. Не для всех фирм есть сведения о количестве работников - в первую очередь это касается недавно зарегистрированных, но им все равно придется ждать не менее 9 месяцев, чтобы получить право на льготы. В общем, пишем под пивко несложный питоновский скрипт (я нихера не питонист, так что особо палками и камнями не кидайтесь):

import requests
import re
from bs4 import BeautifulSoup
import pandas as pd

elegible = 0

def get_info(id):
    global elegible
    
    working = False
    workers = False
    osn = True # так как система налогообложения определяется неоднозначно
    
    # на случай 1167847383824 (бывш. 1037841001681) и т. п.
    if not isinstance(id, int):
        id = int(id.split(' ')[0])
        
    # поиск по ОГРН
    url = 'https://zachestnyibiznes.ru/search?query=' + str(id)
    r = requests.get(url) # получаем результаты поиска
    if r.status_code != 200:
        print('Error ' + str(r.status_code) + ' for OGRN=' + str(id))
        return
        
    # вытаскиваем ссылку на страницу компании
    soup = BeautifulSoup(r.content, features='lxml')
    res = soup.find_all('td', class_='hidden-print')
    url = res[0].find_all('a')[0].get('href')
    
    # загружаем страницу с информацией о компании
    url = 'https://zachestnyibiznes.ru' + url
    r = requests.get(url) # получаем результаты поиска
    if r.status_code != 200:
        print('Error ' + str(r.status_code) + ' for OGRN=' + str(id))
        return
    
    # вытаскиваем из страницы нужную нам информацию
    soup = BeautifulSoup(r.content, features='lxml')
    # для начала sanity check, проверим ОГРН на совпадение
    res = soup.find_all('span', id='ogrn')
    ogrn = res[0].contents[0]
    if id != int(ogrn):
        print('Bad data page for OGRN ' + str(id))
        
    # в этом div-е сосредоточена вся интересующая нас информация
    info = soup.find('div', class_='m-t-5')
    
    # ищем, действующее предприятие или нет
    status_string = info.find(string=re.compile('Статус'))
    if status_string:
        status_value = status_string.next_sibling.next_sibling.next_sibling.string
        if status_value == 'Действующее':
            working = True
            
    # проверяем численность работников
    workers_string = info.find(string=re.compile('Среднесписочная численность работников'))
    if workers_string:
        workers_value = workers_string.next_sibling.next_sibling.next_sibling.next_sibling.string
        if int(workers_value) >= 7:
            workers = True
        
    # проверяем систему налогообложения
    usn_string = info.find(string=re.compile('Упрощенная система налогообложения'))
    if usn_string:
        osn = False
        
    if working and workers and osn:
        elegible = elegible+1
        
data = pd.read_excel('200615-reestrot15062020.xls', usecols='C,D', names=['Name', 'OGRN'])
for id in data.OGRN:
    try:
        get_info(id)
    except:
        print('Something went wrong for OGRN ' + str(id))
print('Number of elegible companies ' + str(elegible) + '/' + str(data.OGRN.size))

Запускаем и идем допивать пиво - работает долго, при этом в списке обнаруживается куча странностей - вроде компаний с несуществующими ОГРН; иногда это просто опечатки, типа лишней или забытой цифры, иногда - что-то непонятное. Минцирк оправдывает свое название.

В конечном итоге оказывается, что на льготы могут претендовать всего лишь 3028 компаний из списка (я не разбирал косячные ОГРНы вручную - их у меня набралось 18 штук) - впечатляет, да? В общем, радоваться могут лишь "избранные", остальных это вряд ли коснется.

shuraluberetsky
добавил публикацию

Пишут, что Госдума приняла закон, "разрешающий электронное голосование":

https://tass.ru/politika/8463527

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

Так вот, спешу этих "технически грамотных" разочаровать - еще лет 15 назад, учась в старших классах, я читал книжку Брюса Шнайера "Прикладная криптография", где в одной из глав описывались "эзотерические протоколы" - и среди всяких подбрасываний монеты по телефону, дистанционного покера и тому подобных забавных, но чисто теоретических построений были подробно разобраны требования к "электронным" выборам и реализации, удовлетворяющие всем или части этих требований. Задача построения системы электронного голосования, обеспечивающей одновременно и тайну голосования, и возможность проверки результатов (и еще несколько свойств бумажного голосования, о которых мы как-то забываем) - вполне себе решаемая, вопрос только в том, захотят ли ее решать разработчики очередной такой системы или нет. Впрочем, "захотят" рано или поздно в любом случае - так как неправильно построенные электронные голосовалки приводят только к очередным скандалам.

А краткое изложение основных тезисов из книжки Шнайера можно увидеть в этом ролике:

shuraluberetsky
добавил публикацию

Сегодняшним "круглым столом" навеяло. Когда я работал на одном из предприятий "Роскосмоса", это самое предприятие с большим пафосом продемонстрировало свою приверженность идеологии "Индустрии 4.0". В "выставочном" исполнении это выглядело так - ставился какой-то "тонкий клиент", посаженный за него инженер рисовал что-то в Альтиуме, и подразумевалось, что как только он нажмет волшебную кнопочку "сделать зашибись", проект тут же улетит на производство. Нельзя сказать, что за этим прямо уж ничего не стояло - за пару лет до этого предприятие с не меньшим пафосом обзавелось линией для производства печатных плат, а "тонкие клиенты" очень нравились айтишникам предприятия - впрочем, довольно быстро выяснилось, что схемотехников такое решение еще устраивает, а программистов - уже не очень.

Но несмотря на все демонстрации этой "Индустрии 4.0" - курьеры из "Резонита" все равно ездили в наш адрес каждое утро, как на работу.

shuraluberetsky
добавил публикацию

Владимир Табак в фейсбуке пишет:

"В начале марта я был назначен одним из руководителей ицк - информационного центра по борьбе с короновирусом. Мне звонили многие друзья и знакомые, чтобы узнать какую-то информацию про болезнь, новости про карантин, советовались про меры предосторожности. Хотя сам я их совершенно не соблюдал. Я бы мог сейчас сказать о том, что был настолько поглощён важностью задачи - информировать граждан России обо всем, что касается этой коварной болезни, что не было времени думать о себе - но это было бы откровенным враньём. Я смеялся над теми, кто приходил в масках, лихо брался за ручки дверей, нажимал кнопки лифтов, здоровался за руки, обнимал старых знакомых. Три дня назад я наконец выписался из больницы. Я пролежал там 15 дней - подтверждённый covid 19 и двухсторонняя полисегментарная пневмония."

https://www.facebook.com/tvova/posts/10218459488331106

А потом мы удивляемся, а чего это вдруг информационная кампания по борьбе с коронавирусом "провалена", с такими-то руководителями.

Инфо
Пол:
Мужчина
Возраст:
32
Никнейм:
shuraluberetsky
Ваш регион:
Московская область
Членство
Стандарт