Как стать автором
Обновить
0
0
Артём @darklord1984

Школьник

Отправить сообщение

Четыре проекта с веб-скрейпингом, которые позволят упростить себе жизнь

Время на прочтение5 мин
Количество просмотров23K
image

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

Веб-скрейпинг — это процесс извлечения данных с веб-сайта. Для изучения веб-скрейпинга достаточно пройти туториал о принципах работы таких библиотек Python, как Beautiful Soup, Selenium или Scrapy; однако если вы не будете применять на практике все изученные концепции, то время окажется потраченным впустую.

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

В этой статье я перечислю проекты, которые автоматизируют четыре задачи, ежедневно выполняемые многими людьми. Проекты изложены по возрастанию сложности, от начальных до продвинутых.
Читать дальше →
Всего голосов 27: ↑21 и ↓6+21
Комментарии2

Самый новый из металлов, все ещё — металл будущего

Время на прочтение7 мин
Количество просмотров45K

В 1825 году мир облетела несколько непонятная, но явно занятная новость: датский ученый Ганс-Христиан Эрстед сумел, используя метод электролиза, добыть из глинозема новый, доселе невиданный металл – алюминий.

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

Эрстед, однако, был нормальным ученым, а не жаждущим безумных богатств обывателем: добившись успеха в этом своем эксперименте, он планово занялся иными научными проблемами.
Говорят, что Эрстед был тогда в весьма преклонном возрасте – ему было 48 лет, и он был крайне чувствителен к расходу времени, которого ему вечно не хватало на его научную работу – в итоге имя свое он обессмертил не этим экспериментом (которому сам он не придал серьезного значения) и не возможным обогащением, а именно научной работой.
Читать дальше →
Всего голосов 32: ↑24 и ↓8+24
Комментарии71

Что происходит с рождаемостью в России и мире. И как это может отразиться на каждом из нас

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров149K

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

С первого взгляда кажется, что эта тема очень узкая и уж точно не имеет отношения к IT. Но уменьшение населения, а что ещё более важно, изменение его возрастной и национальной структуры затрагивает все стороны жизни. Экономику - как пример длительная рецессия в Японии или поднятие пенсионного возраста в разных странах, общество - беспорядки на национальной почве как во Франции, право - обсуждение запретов абортов в России. Представьте, ваша девушка (или вы сами, если вы девушка) беременна, в стране аборты запрещены, а улететь можно только сдав кровь на ХГЧ, и если тест положительный за границу не пускают. Сейчас выглядит как бред, но в 2019 году наша реальность тоже показалась бы бредом.

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

Читать далее
Всего голосов 296: ↑248 и ↓48+250
Комментарии1961

Что для меня значит быть программистом

Время на прочтение13 мин
Количество просмотров49K

Как-то мне написали с Хабра и сказали: Саня, хочешь написать статью про программистов?

Разумеется, я отнёсся к этому скептически. Ладно там девопсины или вайтхэты какие - почитать про них было бы интересно, но вот жизнь программиста... Я сразу вспомнил эти мемы как на КДПВ, которые на самом деле не мемы, а правда.

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

Чтобы получать 300кк/c, нужно всего лишь..
Всего голосов 158: ↑143 и ↓15+149
Комментарии71

Почему мой любимый API — это файл zip на сайте Европейского центрального банка

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров31K

Когда был максимальный курс доллара к евро?

Вот небольшая программа, вычисляющая это:

curl -s https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.zip \ | gunzip \ | sqlite3 -csv ':memory:' '.import /dev/stdin stdin' \ "select Date from stdin order by USD asc limit 1;"

Результат: 2000-10-26. (Можете попробовать запустить её самостоятельно.)

Читать далее
Всего голосов 81: ↑67 и ↓14+76
Комментарии27

Как мы обманываем себя с криптовалютами: ошибка бинарной логики

Время на прочтение5 мин
Количество просмотров6.9K

Недавно на Хабре стали популярны текст «Мы сами обманули себя с Биткоином» и его продолжение. Я считаю, что в них есть важные ошибки, мне жаль, что подобные тексты оказываются на Хабре заплюсованы, и захотелось обратить на это внимание.

Но дело не только в этих текстах: вижу одну и ту же ментальную ловушку в очень многих обсуждениях блокчейнов и криптовалют. И думаю, что полезно от неё избавляться. Поэтому решил её описать.

Читать далее
Всего голосов 27: ↑21 и ↓6+21
Комментарии71

Как ощутить «интернет 2000 года»

Время на прочтение11 мин
Количество просмотров50K

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

Все знают, что раньше интернет был попроще. Но часто ли вы вспоминаете, что во время его использования вся семья оставалась без телефонной связи? Помните ли встроенный в Opera баннер? Программы FlashGet и eMule? Вёрстку сайтов таблицами и фреймами? Штурмовые корабли в огне на подступах к Ориону? (Извините, увлёкся.)

По-моему, около 2000-го произошёл прорыв: в 90-х интернет был ещё гиковской историей, а в нулевых стал мейнстримом. Как можно сегодня ощутить времена этого прорыва? Увидеть старые сайты помогает Wayback Machine, но если делаешь это в свежем браузере через современное подключение, видишь только часть картины. Поэтому сделал подборку из информации, ссылок и советов, которые дополнят опыт. Те, кто постарше, ощутят ностальгию, а те, кто помладше, узнают что-то новое.

Читать далее
Всего голосов 99: ↑99 и ↓0+99
Комментарии169

Самый плохой программист, которого я знаю

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров65K

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

Несколько лет назад я написал в Twitter/X заметку о лучшем программисте, которого я знаю, её стоит переписать в виде поста в блоге. Мне кажется справедливым, чтобы я рассказал и о самом плохом. Его зовут Тим Маккиннон. Я хочу, чтобы мир знал, насколько он измеряемо непродуктивен.

Читать далее
Всего голосов 134: ↑130 и ↓4+166
Комментарии112

Угадай 2/3 среднего, результаты

Время на прочтение2 мин
Количество просмотров11K
Итак, окончен подсчет результатов игры «Угадай 2/3 среднего, %username%». Всего приняло участие 357 человек. Рациональны ли хабролюди? Что чаще используют в качестве десятичного разделителя: точку или запятую? Кто же, в конце концов, стал победителем?
Узнать результат
Всего голосов 108: ↑100 и ↓8+92
Комментарии56

Парадокс коллективной эмпатии: как спровоцировать толпу на самоистребление

Время на прочтение7 мин
Количество просмотров25K

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

Люди по-разному отвечают на один и тот же по своей сути вопрос, сначала гордясь тем, что они в отличие от циничных логиков-эгоистов возжелали спасти всех, а потом также душевно наплевали на ближнего своего. Предложи им «умереть, если не наберётся 50%» и они, понятное дело, откажутся. Но антихрист может быть коварнее и хитрее. И коль он предложит им «выжить, если наберётся 50%», то они ринуться крутить рулетку по истреблению самих себя, считая это благим делом.

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

Читать далее
Всего голосов 54: ↑45 и ↓9+44
Комментарии237

Чудовищное уравнение 45-ой степени, которое Франсуа Виет решил в 16 веке

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров83K
О Франсуа Виете не слышал только ленивый: в школе все любили, обладающий особым шармом, его метод решения квадратных уравнений, а чуть позже, интересуясь историей математики, понимали, что он — отец современной системы буквенных обозначений в математике.
image

Одна из страниц его биографии известна чуть менее широко. Связана она с решением поистине чудовищно сложного для тех времен алгебраического уравнения 45-ой степени!
Читать дальше →
Всего голосов 82: ↑80 и ↓2+103
Комментарии61

DreamBerd — идеальный язык программирования

Время на прочтение12 мин
Количество просмотров25K

DreamBerd - идеальный язык программирования. Вот его фичи!

Когда вы закончите знакомиться со всеми фичами, ознакомьтесь с примерами.

Восклицательные знаки!

Будьте смелее! Заканчивайте каждое утверждение восклицательным знаком!

print("Hello world")!

Если вы чувствуете себя особенно смелым, вы можете использовать еще больше!!!

print("Hello world")!!!

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

print("Hello world")?

Возможно, вам интересно, что Dreambird использует для оператора "не", который в большинстве других языков является восклицательным знаком. Это просто - вместо оператора 'не' используется точка с запятой.

if (;false) {

   print("Hello world")!

}

Читать далее
Всего голосов 78: ↑75 и ↓3+83
Комментарии45

Почему E = mc² — это лишь половина описания происходящего

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров56K

Одним из наиболее глубоких открытий в физике стало самое известное уравнение Эйнштейна: E = mc². Проще говоря, оно гласит, что энергия равна массе объекта, умноженной на квадрат скорости света. Это простое на первый взгляд математическое соотношение таит в себе огромное количество физических смыслов, в том числе:

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

если пара частиц материя-антиматерия аннигилирует, то при этом выделяется определённое количество энергии, определяемое массами аннигилировавшей пары частиц,

каждый раз, когда происходит ядерная реакция, будь то синтез или деление, если масса продуктов реакции меньше массы частиц, в ней участвовавших, E = mc² говорит о том, сколько энергии будет высвобождено в этой реакции.

Это уравнение, E = mc², описывает, сколько энергии присуще любой массивной частице, находящейся в состоянии покоя, включая то, сколько энергии требуется для её создания и сколько энергии выделяется при её разрушении.

Но что если частица не находится в состоянии покоя или если она вообще не имеет массы? В этих случаях E = mc² — это только половина значимого уравнения. Вторая половина гораздо интереснее и необходима для того, чтобы понять физический смысл происходящего.

Читать далее
Всего голосов 64: ↑62 и ↓2+76
Комментарии86

Путеводитель по Швейцарии

Время на прочтение42 мин
Количество просмотров92K
Приветствую, товарищи!

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

Пост будет очень объемный, потому что я хотел сделать эдакий мини-гайд по жизни в Швейцарии, по которому потенциальный тракторист сможет оценить страну. А тем, кто уже тут или собирается в ближайшее время, статья может помочь разобраться с местными особенностями — не всегда можно легко найти ответы на вопросы, особенно не зная язык.

Я решил не делить его на отдельные куски — так информацию искать будет проще. Надеюсь что не сильно нарушу тематику ресурса, пусть НЛО нас рассудит.


Flumserberg. Здесь и далее — обычно мои фотографии, которые мне показались более или менее приличными :)
Читать дальше →
Всего голосов 170: ↑167 и ↓3+164
Комментарии327

Распространённые паттерны опечаток при программировании

Уровень сложностиПростой
Время на прочтение20 мин
Количество просмотров13K

Распространённые паттерны опечаток при программировании


Есть бесконечное количество способов ошибиться при написании кода. Однако иногда можно заметить явные интересные закономерности, как и где ошибаются программисты. Поговорим о коде, который "притягивает" опечатки.


На чём основаны наблюдения


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


Рассматривая все эти ошибки, я постепенно замечаю различные повторяющиеся паттерны опечаток. За редким исключением они не зависят от языка программирования. По крайней мере, они одновременно свойственны коду, написанному на C, C++, C#, Java. В этой статье я опишу 7 паттернов, которые заметил к настоящему моменту:


  1. Эффект последней строки.
  2. Злополучная функция memset.
  3. Неверные функции сравнения.
  4. Неверные функции копирования.
  5. Ошибки работы с датами и временем.
  6. Несчастливые числа: 0, 1, 2.
  7. Ошибка на единицу (off-by-one error).

Заметность закономерностей в ошибках свидетельствует о том, что они крайне распространены. Полезно знать о них, чтобы избегать написания потенциально опасного кода или более эффективно находить их в процессе обзоров кода. Другим словами, вы узнаете, какой код притягивает ошибки, и будете более внимательно его проверять. Конечно, PVS-Studio способен выявить многие подобные ошибки, но не все. Поэтому дополнительное внимание не повредит.

Читать дальше →
Всего голосов 36: ↑35 и ↓1+40
Комментарии23

Интернет 90-х: когда после 20 часов в онлайне тебе пишет президент ISP

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров21K

«Проверяя систему сегодня утром, я заметил, что вы были авторизованы более 20 часов», — так начиналось письмо, которое в декабре 1998 года я получил от президента компании-провайдера коммутируемого доступа в интернет. — «Мы предоставляем безлимитный сервис, но желательно, чтобы вы действительно использовали соединение, когда подключены».

Сегодня, когда уже почти все сидят в онлайне 24/7 через смартфоны и широкополосный доступ, было бы странно, если бы я не находился в сети 20 часов подряд. Но в 1998 году в Роли, Северная Каролина, дело обстояло иначе. В эпоху медных телефонных линий и коммутируемых модемов доступ в интернет в случае домашнего использования, как правило, был непостоянным. Каждая занятая линия означала невозможность её использования другим клиентом, и при этом вам никто не мог дозвониться.

Но я забегаю вперёд — откуда вообще у меня письмо из далёкого 1998 года?
Читать дальше →
Всего голосов 46: ↑45 и ↓1+65
Комментарии47

Сапог Шварца — парадоксальный «цилиндр», который может иметь бесконечную площадь

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров28K

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

Читать далее
Всего голосов 40: ↑40 и ↓0+40
Комментарии16

Исследование формата бинарных файлов на Python

Время на прочтение12 мин
Количество просмотров16K

Реверс-инжиниринг неизвестного бинарного формата файла – задачка нечастая, но, на мой взгляд, вкусная. Самое то, чтобы в пятницу с утра отвлечься от организационной текучки, техподдержки, бизнес-планов, заполнения восьмёрок в системах отчётности - и поиграть в Шерлока Холмса. В этой статье я расскажу об опыте изучения бинарного файла с временными данными технологических параметров и о небольшой фишке чтения хитрым способом сохранённых строк из другого формата. Файлы несложные, времени на анализ потребовалось немного, но мне было интересно, и вам, я надеюсь, тоже будет интересно.

Читать далее
Всего голосов 38: ↑38 и ↓0+38
Комментарии9

Портативная Bluetooth колонка «Ламповичок» на радиолампах 30-х годов

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров26K

Прочитав заголовок статьи, возможно, у вас возникли мысли: “Но зачем?!”, “КПД ламповых усилителей очень низкий!” или “Какой смысл подключать Bluetooth модуль к ламповому усилителю?!”и т.д. Нет никакого смысла. Устройство собирается ради устройства, развлечения ради. Я очень люблю ламповые радиоприёмники, мне нравится изучать их устройство, любоваться внешним видом и даже просто созерцать в сумерках магические огоньки за задней стенкой, излучающие тепло, уют, романтику и добрый душевный голос из громкоговорителя… Но к сожалению, в наше время возможно принимать в основном зарубежные станции и только ночью. Поэтому иногда я развлекался тем, что слушал музыку подключаясь к усилителю радиоприёмника. Так и возникла идея сделать портативную Bluetooth колонку в ретро стиле с ламповым усилителем без всяких претензий на High End.

Осторожно! Под катом много фото.

Читать далее
Всего голосов 103: ↑102 и ↓1+131
Комментарии58

Я люблю питон, и вот почему он меня бесит

Уровень сложностиПростой
Время на прочтение18 мин
Количество просмотров58K

Вас приветствует ваш зануда!

Если вы следите за моей ленивой активностью, то заметили бы, что у меня много от чего пригорает. Вот, например:
- У меня пригорает от низкосортных статей на потоке: Питон против Безумного Макса, или как я посты на Хабре замораживал
- У меня пригорает от Django: Окей, Джанго, у меня к тебе несколько вопросов
- И от Яндекса тоже: Собеседование в Яндекс: театр абсурда :/
- И от рекрутеров: Я единственный из 1400, или самый крутой рекрутинг, что я проходил

Посмотришь так - я уже давно должен был сгореть. Но я, аки феникс, возрождаюсь, и сегодня у меня горит от, внезапно, Питона, на котором я пишу больше десяти лет. Если вам интересно, что же, по моему мнению, с ним не так - то прошу под кат.

Это что же получается, kesn опять открыл postman и сломал вёрстку на сайте? Поразительно, никогда такого не было, и вот опять! В принципе, тут можно писать текст любой длины (похоже, у них на бэкенде не Char(255), а Text). Они проверяют длину только на фронтенде, а бэкенд принимает строку любой длины. И это, блин, забавно) Вообще мой девиз - 'кто ищет, тот всегда найдёт', поэтому я ищу постоянно. Кстати, на Хабре скоро выйдет статья про программирование глазами Погромиста, там в том числе про уязвимости на сайтах будет - поэтому если не хотите пропустить, то подписывайтесь на меня в телеге: @blog_pogromista
Всего голосов 212: ↑202 и ↓10+228
Комментарии145

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность