Айтигребец
672 subscribers
183 photos
46 videos
1 file
138 links
Айтигребец - канал душного сеньора помидора.

Ссылочки, мысли и прочая IT-годнота. Технологии, статьи, интервью etc. Расширяем кругозор и гребём тугеза.

17 лет фуллстека, сейчас мастли бэк. 10 лет .NET, 7 лет Node.js

Связь : @ytrihT
Download Telegram
Карта подводных магистральных интернет-кабелей
ref
Хороших выходных!

А заодно и почитайте про 7 характеристик хороших тестов на хабре 😉

#habr
На собесах иногда задают задачки на логику. Держите парочку забавных :

1. Тортик
Условие: Имеется круглый торт.

Вопрос: Как поделить его на восемь равных кусков, сделав при этом только три разреза?

Ответ : два разреза под 90 градусов чтобы получилось 4 куска. И третьим вдоль торта :) Получаем 8 кусочков.

2. БАБУЛЯ И ПИРОЖНЫЕ

Условие: Вы собираетесь в гости к бабуле, которая живет на другом конце леса. У нее юбилей, и в подарок вы несете пирожки собственного приготовления.

По дороге к бабушкиному дому вам нужно пройти по 5 мостам, а под ними, как и положено в нашем сказочном мире, живут тролли. Чтобы перейти на другую сторону, вам нужно отдать троллю половину пирожков. Но тролли у нас добрые, поэтому 1 пирожок они вам вернут.

Вопрос: Какое минимальное количество пирожков вам нужно взять, чтобы донести до бабули хотя бы 2?

Ответ : 2. На каждом мосту отдаёшь половину (1) и один возвращают, поэтому у тебя всегда два на руках.

3. ТАБЛЕТКИ

Условие: Доктор выдал пациенту 4 таблетки двух видов — по 2 таблетки каждого, которые нельзя отличить по внешнему виду. Таблетки надо выпить за два приема: утром по одной таблетке каждого вида и так же вечером.
Если нарушить дозировку или не принять таблетки, то пациент умрет. Так вышло, что таблетки перемешались.

Вопрос: Как пройти курс лечения и выжить?

Решение: Нужно разделить каждую таблетку на 2 части и выпить по половинке каждой таблетки утром и вечером

4. Ну и на закусочку (мне такую задавали лет 5 назад).... ГОРЯЩИЕ ВЕРЕВКИ.

Условие: Есть две верёвки и коробок со спичками. О каждой верёвке мы знаем, что если их поджечь, то они полностью сгорят за один час. Нам нужно отмерить пятнадцать минут.

Вопрос: Как нам это сделать, если мы знаем, что верёвки будут прогорать неравномерно?

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

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

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

Далее мы можем сравнить: поджигаем одну из верёвок с двух краёв, а другую – только с одного края, чтобы засечь время. Первая сгорит за полчаса. Как только она сгорела, мы сразу же должны потушить вторую. Так у нас остаётся кусок второй верёвки, который сгорит за полчаса. Если мы подожжём его с двух концов, то получим 15 минут.

Если справились хотя бы с парочкой - молодцы :) Ну а нет - запомните и на собесе сделайте вид, что слышите о ней впервые 😀

ps. Лайкосите, если нравятся. Есть еще парочка на памяти - сделаю еще одну подборочку чуть посложнее 😉
#задачка
👍11
Прекрасная наркомания с оптимизацией fizzBuzz задачи.

- Здравствуйте, давайте начнем с небольшого теста, пока я ваше CV смотрю. Напишите программу, которая выводила бы числа от 1 до, скажем, миллиарда, притом если число кратно трем, то вместо числа выводится Fizz, если кратно пяти, то Buzz, а если и трем, и пяти, то FizzBuzz.

Статье уже год, но так или иначе в мемориз : https://habr.com/ru/post/540136/

#habr
Айтигребец
На собесах иногда задают задачки на логику. Держите парочку забавных : 1. Тортик Условие: Имеется круглый торт. Вопрос: Как поделить его на восемь равных кусков, сделав при этом только три разреза? Ответ : два разреза под 90 градусов чтобы получилось 4…
Преврати любимое дело в работу, и… вы потеряете любимое дело?

Отличная история-иллюстрация-размышление на тему эволюции собственного проекта/бизнеса (в случае его успеха).

Вам нравится что-то делать. Вы увлечены этим делом. И вы подумываете превратить увлечение в профессию?

Это же просто здорово, когда берёшься за работу с юношеским энтузиазмом, когда в процессе работы раз за разом испытываешь детский восторг!

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

И это работает! Правда, недолго…

https://habr.com/ru/post/646149/

#habr
Serverless 2021

Статья в стиле "ссылочная комната" про мир serverless в 2021-ом. Вкусная находка для тех, кто хочет поглубже вникнуть в Serveless подход построения приложений. А для тех, кто впервые слышит - прочитайте сперва эту вводную коротенькую статью, ну или хотя бы текст ниже.
В общем, сеньоры направо, джуны налево 😃

Что такое Serverless?

Если совсем коротко - эволюция использования ресурсов хостинга для ваших приложений. Это как каршеринг - плати только за время проведённое непосредственно за рулём (pay-as-you-go). Удобно и не нужно покупать свой авто.

Если не в двух словах, а в трёх - давайте на выдуманном примере. Вот есть у вас, допустим какой-то скрипт. Допустим новостной. Допустим, он ходит раз в час на сайт news.com, собирает все ссылочки и скидывает вам в Telegram. Ну и попутно ... в базу кладёт. Прекрасно.

А дальше-то что, куда скрипт засунуть? Не будете же вы его запускать на вашем ноуте каждый час, верно? Вам нужен сервер-хостинг. Маленький такой. Но сервер. Ну и базу бы хорошо. Сохранять куда-то же нужно всё это счастье.

Идёте вы на какой-нибудь хостинг, а-ля DigitalOcean, покупаете там самый дешёвый инстанс за 5$. Ну и базу допустим разворачиваете не там же, а на ещё одном инстансе (просто для примера).

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

Serveless подход как раз про это. Вы шагаете, допустим, в AWS => деплоите свой код на Amazon Lambda => делаете пару магических пассов в виде настройки доступов и cloud watch, который будет дёргать вашу лямбду раз в час. А базу ... юзаете тоже амазоновскую - nosql DynamoDB к примеру. Красота!

Но... зачем? А затем, что теперь вы будете платить ... примерно ничего. Ну или около пары центов в месяц за пример выше. А по факту, это вообще будет бесплатно, т.к. у амазона есть free tier т.е. бесплатные лимиты и скорее всего вы в них уложитесь.

Чем сложнее приложение, тем тут больше нюансов - всё нужно "считать" по итогу, но serverless и правда позволяет сильно сократить затраты для пет-проектов (и не только) и не держать развёрнутую инфраструктуру при отсутствии траффика.

Уже года полтора пользую подобным образом и вам советую. Оно есть не только на амазоне, а во всех "приличных домах Парижа облаках".

Так что если до сих пор не в теме - выделите часик-другой и почитайте что за зверь 😉

#habr #авторское
Радио-Т 767
Umputun, Bobuk, Gray, Ksenks, Alek.sys
Айтито́ту скоро автоматизируют VS джуны вопасносте ^^

Переслушиваю ранние подкасты #РадиоТ (этот отрывок из августа 2021), и вот ребята делятся впечатлениями об OpenAI Codex. Вырезка на 15 минут - весьма советую к прослушиванию, это супер завораживает. Ну и пугает немношк, чего уж.

Codex - разработка от MS, ноги которой растут из GPT-3 (3-е поколение нейронки по обработке естественного языка). И вот она уже намекает нам всем, что будущее автоматизации IT как профессии не сильно-то и за горами.

На ютубе есть англоязычная демка с демонстрацией возможностей.

Ух! Дуров, верни стену всё как было!
Так ребят, переписываем и передаём дальше, в глубь опенспейса. И смуззи не пролейте!
#humor
Небольшая стори о том как мучают джунов. Расследование!

И о том как у сеньора немного подгорело с джуновского задания xD

История :

Есть у меня подруга, которая подалась в QA (тестирование), проходит сейчас стажировочку в одной конторе и вот дали ей задание, звучащее примерно следующим образом :

Понять как работает http заголовок Last-Modified и If-Modified-Since, а так же продемонстрировать в рамках "картинок с учебного сайта" работу этого хедера.

Задание в целом как задание, если бы не одно но. Пишет мне, что уже пол дня убила и не понимает ничерта. Теорию вычитала. Разобралась как через Fiddler "подменить" этот заголовок на нужный. Но почему-то не работает. Классика, явно просто какую-то мелочь пропустила, подумал я и взялся помочь.

И так. Как работает этот заголовок можно прочитать тут. Есть некий сервер и картинки на нём. В ответе картинки сервер отдаёт Last-Modified в формате "Wed, 11 Sep 2019 09:41:31 GMT". Оке, гуд.

Значит.... если мы в запросе к серверу добавим If-Modified-Since со значением "Wed, 11 Sep 2019 10:41:31 GMT", т.е. просто добавив +1 минуту к Last-Modified, то сервер должен отдать нам 304-ый status code, что можно интерпретировать как "дружок, картинка не менялась, возьми-ка её из кеша своего локального". И наоборот, если отнимем минуту - сервер должен нам вернуть 200-ый статус с самой картинкой.

Проверяем. Делаем запросик прям в браузере, меняем его "on-the-fly" и ..... и правда не работает. Странно. Ок, думаю - может я чего не понимаю. Открываем postman, эмулируем запрос там и ... ситуация та же. То ли лыжи не едут, то ли я пхпшник.

Копаем причину!

Даже могучий stackoverflow мне тут не помогает. Думаем. Открываем бутылочку пива. Снова думаем. Какой-то shit, ну чесн-слово. Где-то тут я уже начинаю сомневаться в своей синьористости. Подруга тоже 😂

Окей. По ответу сервера видим так же, что у нас есть заголовок server, который сообщает нам, что на сервере отдаёт статику "nginx/1.18.0 (Ubuntu)". Ничего необычного. Nginx - это классика отдачи статики. Сысоеву привет ^^ (это создатель nginx'а. Недавно была новость, что он покинул проект :( ).
Смотрим на версию nginx'а. 1.18. Гуглим и оказывается, что релиз этой версии был в .... 2012. Что в целом меня тоже не сильно удивляет, конечно, но ... десять лет назад. Смотрим описание ченджлога, а там как раз в новых версиях что-то написано про импрувмент If-Modified-Since!

Нет, ну не может же это быть таким драматическим совпадением, верно? Идём на сайт вики, где установлена последняя версия, проверяем на картинке с их лого - Нет, ну [censored] - всё работает как и ожидается. По пути нагугливаем сайт https://last-modified.com/ru/if-modified-since.html, единственной задачей которого проверить - работает ли If-Modified-Since на сервере. И что мы видим ...

Результат: провалено

Сайт отдал время последней модификации, но не отреагировал на If-Modified-Since. Запрошенное время: Wed, 11 Sep 2019 09:42:11 GMT.

Нет, ну это прекрасно. Т.е. джуну дали невыполнимое задание, получается. Красиво!


Выводы :

1) Если у вас так себе "курсы" - имейте ввиду, что вам просто в теории могут дать кривое задание. Поэтому очень важно учиться у проверенных ребят, иначе и без того сложные задания могут вообще не поддаться. По идее, это супер-редкость, но как видите... шанс есть :)

2) Не стесняйтесь дёргать ваших кураторов, если что-то не получается. Ну или ваших друзей-синьоров. Ну или - хотя бы ребят в айтишных специализированных чатах.

3) Магии нигде в айти нет, всё можно "раскопать". Ну.. кроме нейронок 😂

ps. Забавным открытием было, что nginx настолько умный, что просто поменять, к примеру, месяц - не меняя день недели - не катит. Он валидирует дату не только по формату, но и на логику самой даты. Никаких ошибок в ответе вы конечно же не увидите. Ну и "11 Sep" заменив на "9 Sep", допустим - тоже не катит. Нужно писать "09". кек

Удачи всем в обучении/познании и да прибудет с вами 🍺

#авторское
Немного про отказы на собеседованиях. Принимайте это легко. Как путь.

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

Грустно, не если вам отказывают, а если принимают "абы как" в "абы куда" писать "абы что" с такими же "абы какими" коллегами на галеру с названием "DPHv". И вы только через полгода узнаете, что DPHv это аббревиатура к "da po [censured] vse".

Так что не бойтесь отказов, это часть процесса 😉

#habr
🔥2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Нейроночка для оживления лиц на фото.

Наткнулся на онлайн сервис, который позволяет анимировать любое лицо на фото. А-ля deep fake, но для изображений.

Впечатляет, чёрт подери!

Сайт даст возможность загрузить 3-4 ваших фото бесплатно, после чего попросит ввести карточку и даст trial на 14 дней. Это если захочется больше фоток загрузить (мне захотелось). Ну и ... в течении этого периода можно просто отменить подписку, пхх. Ну кх кх, да, если не понравится сервис. Вы всё сами понимаете )) ах да, там еще и попросит телефон ввести - можно просто нажать "далее" и пропустить этот шаг. Всё сложно

Под капотом используется алгоритм First Order Motion Model (эт не точно).

На хабре есть детальная статья с описанием его работы.

Осторожно, #залипалово то ещё :)

Скидывайте в комменты ваши результаты (можно любые лица гуглить и играться) ^^ Я там еще парочку своих оставлю )
Пришло тут да́веча улыбательное предложение поработать сеньором на галере.

Во времена, когда нужно придумывать какой-то креатив для завлекания сотрудников на собесы, почему-то эта компания, к слову не маленькая (>3000 локальной айтитоты), решила провести АКЦИЮ 😂

(sic!) РАЗЫГРАТЬ . Про welcome бонус не слышали, конечно же. Ага :) Зачем.

(sic!)(sic!) ПОЕЗДКУ В ДУБАЙ. Супер-ликвидный приз, кек. В ковидные времена-то. Макбук топовый (или что там в тренде нынче) еще ладно, но ДУБАЙ...

(sic!)(sic!)(sic!) Каждому 12-ому ??? Ахаха, простите. Вышли такие 12 гребцов и ... ждут розыгрыша. Или принял ты такой офер, а ближайшие 11 коллег примерно через ... год устроятся 😂 Как компания себе это вообще представляет ))

((sic!)(sic!))² После принятия ОФФЕРА. Честно, я сходу подумал, что это розыгрыш для тех, кто пройдёт, допустим - первое интервью с hr и среди всех, кого допустили до технического - вот среди них и разыграть. Было бы ещё в целом валидно. Но нет :)

В общем, настроение подняли, спасибо 🚣
😁5
This media is not supported in your browser
VIEW IN TELEGRAM
Подкаст здорового человека 🇺🇦 ❤️ #радиоТ
2
Решил просканить топ статей с хабра за последнюю неделю. Удивительно, но из 10 страниц топа, всего ОДНА статья, хоть как-то КОСВЕННО касается текущих реалий айтишки в РФ. Наводит на определенные выводы. Даже, если учесть, что хабр - вне политики, очевидно, что сверху включена цензура даже на этом уровне.

Штош, скриншоты как раз с этой единственной статьи : Отрасль IT в России поставили на паузу.

Выводы делайте сами что будет с IT сектором (и не только) в РФ в ближайшее время.

#habr
😢2