Merion Academy
8.3K subscribers
417 photos
75 videos
6 files
587 links
Самое важное про IT на доступном языке.
Сотрудничество: @olegpohl
Служба поддержки: https://t.me/merion_academy_bot
Download Telegram
С понедельника начинается история. Кхм..кхм. Ну, то есть история нашей новой рубрики 😥

Знаешь, почему ошибки в коде называют багами?


Этот термин появился задолго до программистов. Еще в XIX веке инженеры и механики, когда что-то ломалось, говорили:

В системе завелся жук


Даже Томас Эдисон использовал это слово в своих письмах:

a bug in my apparatus


А в 1947 году история стала буквальной. Во время работы компьютера Harvard Mark II программа начала сбоить.
Инженеры полезли разбираться и…нашли… настоящую моль, застрявшую между реле.

Ее аккуратно приклеили в журнал
с подписью:

Первый реальный случай обнаружения бага.


С тех пор баги бывают разными.
К счастью, сейчас они хотя бы не летают 😄

Какой баг тебе запомнился больше всего? Делись в комментах.

Ну и, жми 👍 - если оставляем рубрику!

#историческаясправкаMerion
Please open Telegram to view this post
VIEW IN TELEGRAM
50❤‍🔥8
Media is too big
VIEW IN TELEGRAM
Как пишешь код на FastAPI ты,
а как пишет его
Сурен Хоренян?

Автор наших курсов: Python с нуля, Python advanced, Telegram-боты на Python.


Держи видео лайфхак от профи и прекрати уже писать логику внутри представлений, для этого есть зависимости 😄

Продолжим рубрику, если нажмякаете хотя бы 50 👍 Но Сурен ждет 100

#спросиуспикераMerion #python
Please open Telegram to view this post
VIEW IN TELEGRAM
96🔥5
👋 Хэй, зеленые! Давайте телепортнемся в 1995 год. Вот-вот выйдет Windows 95. Операционка готова, но ее надо проверить на всем, что люди уже купили.

Не только на программах Microsoft. А вообще на всем: Word, Excel, Corel Draw, Photoshop, игры, бухгалтерия, антивирусы, дурацкие строительные калькуляторы - любое старье, которое стояло на компах обычных пользователей.


Поэтому разработчик майков едет в магазин софта и говорит:

— Мне нужно по одному диску каждой программы, которая у вас есть.

Кассир моргает:
— В смысле... каждой?

— Каждой. Вон ту, и вон ту, и вон ту стопку. Да, всю.

🪖 Кассир офигевает, но начинает сканировать. Час сканирует. Два. Собрал гору коробок, пробивает итоговую сумму - и тут касса просто… гаснет. Экран тупит. Потом тишина. Потом перезагрузка.

Как думаете, что случилось?

😁 — разработчик пытался оплатить «улыбкой»
🌚 — вирус сожрал кассу
👍 — сумма чека > 10к дорраров, касса не умела считать такие деньжища
Please open Telegram to view this post
VIEW IN TELEGRAM
127😁10🌚9
This media is not supported in your browser
VIEW IN TELEGRAM
Все верно, зеленые! Касса упала, потому что сумма чека превысила 10к дорраров. Разработчик кассового ПО просто не представил, что какой-то псих зайдет и купит товаров на 10к баксов сразу. Ну серьезно. Кто так делает? 😄

Говорят, потом пришла Галя, стукнула кулаком по кассе и она снова заработала. Уходя, Галя приказала:

Просто разбейте покупку на 12 частей.


А что было дальше? Точного ответа нет.

Но выбор есть:

😁 — продавец ненавидел разработчика 12 чеков подряд и еще 30 лет

👍 — это была пятница, продавец молча просто закрыл магазин и ушел домой
Please open Telegram to view this post
VIEW IN TELEGRAM
52😁19🌚2
А ты знал, что Линус Торвальдс придумал не только Linux, но еще и Git?

В начале 2000-х системы контроля версий уже существовали:
CVS, Subversion и другие.

Но для разработки ядра Linux они плохо подходили: медленные, централизованные и неудобные для огромного проекта.


Сначала разработчики Linux использовали BitKeeper, но в 2005 году из-за лицензионного конфликта Linux-команда потеряла доступ к инструменту.

😈 И тогда Линус сделал то, что умеет лучше всего - написал свой.

Так появился Git.
Изначально - как внутренний инструмент только для разработки Linux.

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

😄 Кстати, Git переводится как "Мерзавец".
Вот что Линус говорил по этому поводу:
Я эгоистичный ублюдок, и поэтому называю все свои проекты в честь себя. Сначала Linux, теперь git.


Две важнейшие вещи в IT - неплохой вклад для одного человека.

А если хочешь научиться работать с гитом, то у нас есть ⤵️ бесплатный курс по нему, залетай попробовать.

Ну и не забудь поставить линукс!

#историческаясправкаMerion
Please open Telegram to view this post
VIEW IN TELEGRAM
33🔥13
Соврал клиенту, бросил Гарвард и стал миллиардером: невероятная история Билла Гейтса ☕️

Знакомо чувство, когда открываешь Word, чтобы накатать отчет, запускаешь Xbox после работы или просто ловишь «синий экран» в самый неподходящий момент? Так вот, за всем этим стоит один человек.


🎙️ В новом ролике мы прошлись по всей хронике Билла Гейтса - от гарвардского дропа до благотворительных миллиардов:

🔴Как 13-летний школьник подсел на компы в школе, когда даже калькуляторы были роскошью.
🔴Почему Билл соврал IBM, что у него есть операционка, и как они с Полом Алленом выкрутились.
🔴За что Гейтса арестовали и при чем тут мемная фотка из полицейского участка.
🔴Как Microsoft купила чужую ОС за 25 тысяч долларов и превратила её в стандарт для всего мира.
🔴Почему Пола Аллена хотели «размыть» до нуля, и как он случайно подслушал разговор.
🔴Что пошло не так с Windows Phone и почему Гейтс ошибся в прогнозах про смартфоны.
🔴И главное - при чем тут вакцины, рептилоиды и 50 миллиардов на благотворительность.

Разобрали без занудства, с мемами и историческими перлами 🍿

📎Где смотреть:

😁 YouTube
😁 VK
Please open Telegram to view this post
VIEW IN TELEGRAM
16🔥4❤‍🔥1😍1🌚1
Go знает, почему облака не падают. Мы хотим, чтобы и ты знал, держи новиииииночку! ❤️

На Go написаны Docker, Kubernetes и половина инфраструктуры Яндекса. Если хочешь работать с облаками, highload и микросервисами - без него никуда.

Поэтому, ГО разбираться вместе с нашим новым курсом!

➡️ Чему конкретно научим:

1. Старт: Введение в Go, установка, первый код, типы данных, переменные, операторы.
2. Основы разработки: Массивы, слайсы, структуры, интерфейсы, указатели, функции, ошибки, panic, defer, дженерики.
3. Пакеты и модули: Организация кода, работа с зависимостями, модульная структура проектов.
4. ООП в Go: Абстракция, инкапсуляция, полиморфизм, композиция вместо наследования.
5. Конкурентность: Горутины, каналы, мьютексы, WaitGroup, context - пишем быстрые и параллельные программы.
6. Работа с файлами и логирование: Чтение/запись файлов, стандартный логгер, продвинутое логирование через zap.
7. Тестирование и отладка: Модульные тесты, профилирование, поиск и исправление ошибок.
8. API и микросервисы: Разработка HTTP-сервисов, gRPC, работа с запросами и ответами.
9. Базы данных: Подключение и работа с PostgreSQL, выполнение запросов, интеграция в приложения.
10. Архитектура Go-проектов: Структурирование кода под продакшн, лучшие практики и шаблоны.
11. Финальный проект: Разработка полноценного приложения на Go - от проектирования до деплоя, защита проекта и сертификат.


😦 Что можешь уже глянуть в бесплатных вводных уроках:

🔴Установка и первый запуск
🔴Переменные, типы данных, операторы
🔴Условия и функции
🔴Ввод/вывод
🔴Циклы и базовая работа с кодом
практика: разбор и тест, чтобы закрепить

📎 Залетай на вводные уроки и погнали учиться! 📎

P.S. А еще Golang он потому, что go.com был занят Диснеем. Ты знал?
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥145
Пятница, вечер.. кхм..
В 1963 году в Калифорнии.
В офисе Fairchild Semiconductor - легендарной инженерной компании, где тогда рождалась Кремниевая долина, появляется интересный кандидат на собеседовании.

Ну, скажем так: пятница же. Он уже успел отметить начало выходных. Слегка. Ладно, не слегка, а еле стоял на ногах 😄

Менеджер отдела исследований и разработок Гектор Рюэгг с гордостью показывает ему новейшие разработки компании. Расписывает, какие они крутые, какие инновационные.

Кандидат смотрит на схемы, потом на Рюэгга, потом снова на схемы и выдает:

Это полная ерунда! Пошли вы…


Рюэгг в шоке. Кандидата выставляют за дверь - иди, мол, проспись! 🤬

Но мужик не уходит, а заваливается в соседний отдел.

Иии.. как думаете, что было дальше?

👍 — он отвел всех на тимбилдинг в соседний бар
🌚 — нажаловался, что Рюэгг его оскорбил, его уволили и он занял его место
😁 — его приняли в другой отдел без собеседования и он потом создал чипы для NASA
Please open Telegram to view this post
VIEW IN TELEGRAM
😁798🌚4🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Да-да, зеленые! Тот самый поддатый парень, которого выперли из одного отдела, просто завалился в соседний, спросил «а у вас тут нормальные люди есть?» - и его взяли без второго собеседования 👍

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

Так что если не пройдешь вдруг собес - не расстраивайся. Зайди в соседний отдел, может там смогут оценить твою гениальность 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
😁18👏3🔥22
Откуда взялись «foo» и «bar»?

Эти слова-заполнители встречаются в 90% примеров кода, учебников и обсуждений на Stack Overflow. Но почему именно они?

Аббревиатура FUBAR (F***ed Up Beyond All Recognition) была в ходу у американских солдат еще во Вторую Мировую. На великий и могучий ее можно перевести как "Раздоблано до до полной неузнаваемости". Со временем это выражение вошло в гражданский сленг, немного изменив свой вид и став foobar.

Еще считалось, это изменение было вызвано оцензуриванием аббревиатуры FUBAR, но есть версия, что она сама произошла от немецкого слова “furchtbar”, что значит "ужасный".

А в 1970-х годах в легендарном руководстве «Язык программирования C» (K&R) Брайана Кернигана и Денниса Ритчи в примерах кода использовались foo и bar. После этого они стали стандартом для примеров во всей компьютерной литературе.

Это коротко и нейтрально, они не несут смысловой нагрузки, и со временем это стало традицией как x и y в математике.

А вы используете foo/bar или свои варианты?

#историческаясправкаMerion
Please open Telegram to view this post
VIEW IN TELEGRAM
21🌚3🔥2
Открыл Android Studio, создал проект. Видишь десятки папок, сотни файлов, кучу непонятных слов: Gradle, манифест, ресурсы, drawable, mipmap.

Вместо кода - гуглишь: "что такое AndroidManifest.xml", "зачем нужен Gradle". И ощущение, что ты никогда это не осилишь


На самом деле просто нужно, чтобы кто-то разложил по полочкам: вот инструменты, вот компоненты, вот стек.

⚡️ Поэтому мы выкатили новый курс по Android-разработке.

Кому подойдет:

Разработчикам, знакомым с Kotlin
хочешь перейти в мобильную разработку

Junior-разработчикам систематизировать знания и выйти на уверенный уровень разработки приложений с архитектурой

Backend / Java / Kotlin-разработчикам
освоить клиентскую часть и понимать полный цикл

С помощью бесплатных вводных уроков:

Узнаешь о инструментах Android-разработчика

🚻 Установишь Android Studio

🚮 Запустишь приложение в эмуляторе

🎦 Познакомишься с автором и поймешь подходит ли тебе подача материала и программа курса

📶 Получишь скидку до 45% при покупке

➡️ Запишись на бесплатные вводные уроки ⬅️

Разберись в анатомии Android-приложений, чтобы не ты боялся 100500 файлов, а они тебя 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥93🌚21
This media is not supported in your browser
VIEW IN TELEGRAM
Слышал, что в IT уже не пробиться? Это правда 😢

Правда для тех, кто ищет оправдания, а не возможности.

Да, рынок стал жестче. Мы не спорим. Вакансий меньше, конкуренция выше, отклики уходят в пустоту. Но это не повод раскисать - это время собраться и искать новые пути.

Поэтому наш карьерный консультант на тарифе с наставником @ppshirinkina подготовила для вас лонгрид:

🎙️ 7 реальных способов как найти работу в IT в 2026 году

Внимательно изучи и не забудь сохранить ⤵️

Конкуренция в IT возросла в разы за последние пару лет. Компании оптимизируют затраты, сокращают штат. Нынешним соискателям приходится конкурировать с еще бОльшим количеством специалистов. Многие кандидаты, к сожалению, прибегают к накрутке опыта. Рекрутеры все реже используют платные работные сайты и все чаще обращаются к скрытому рынку труда.


➡️ Стало надежнее искать кандидатов следующими способами, которые вы можете взять себе на заметку для поиска предложений:

1. Стажировки от компаний для junior специалистов. Проще растить новичков под своей крышей, чем разгребать миллион откликов на hh.ru. Кроме компании Астон, в Merion Academy появился новый партнер для стажеров направления DevOps. И это компания PlaysDev. Процент прохода в штат высок, так как берут всех, кто сдает финальный экзамен. В карьерном треке мы помогаем выбрать вариант стажировки, подходящий именно вам!

А для ребят с грейдом middle и выше есть возможность подобрать проект на аутстаффинге. Подробности на карьерной консультации!

2. Реферальные программы. Наверняка вы видели акции от компаний "приведи друга и получи бонус". Самое время постучаться в личку тому самому другу в IT.

3. По тому же принципу работает внутренняя биржа вакансий. Крупные компании создают рынок внутри компании и публикуют вакансии "среди своих". Сотрудники могут предлагать знакомых специалистов на заявленные позиции. Найм протекает быстрее.

4. База кандидатов. Та самая, в которую вас обещают закинуть и вернуться позже. Вероятность, что к вам вернуться довольно высока, особенно сейчас! Ваш контакт уже под рукой, а комментарии по кандидатуре помогают вспомнить прошлое взаимодействие.

5. Холодный поиск. Сейчас появилось множество бесплатных ресурсов для поиска кандидатов, например профильные телеграмм-каналы. В некоторых из них даже можно выложить свое резюме. На hh.ru рекрутеры сначала применят холодный поиск, а потом уже внесут оплату за контакты. Поэтому ловите лайфхак: в блоке обо мне оставьте свой телеграмм контакт. Боготворю таких кандидатов и бегу к ним в первую очередь!

6. Нетворкинг и конференции. Развивайте личный бренд, так вас быстрее заметят. Пополняйте базу знакомых в IT сфере. Недавно ко мне пришел человек, которому я помогала с поиском работы и поделился радостной новостью. Он нашел вакансию через мероприятие, на котором познакомился с продактом одной компании. Казалось, шансов немного, но сейчас он уже работает и очень доволен!

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

Поделитесь в комментах, что из перечисленных пунктов стало для вас открытием?

Рынок меняется, неизменным остается важный карьерный навык — адаптироваться и не сдаваться.
До встречи в карьерном треке!"


Ну и жмякни 👍 — если было полезно!
Please open Telegram to view this post
VIEW IN TELEGRAM
33🔥4❤‍🔥3🌚2
Новый пятничный вопрос знатокам 👋

Перенесемся в 1960-е годы. До высадки на Луну - несколько лет. Инженеры NASA и MIT бьются над проблемой: обычная компьютерная память в космосе умирает от радиации. Нужно решение, которое выдержит полет и не сломается.

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


Это называется Core Rope Memory. Принцип простой, как схема метро: если провод проходит через колечко - это единица. Если обходит снаружи - ноль. Каждое колечко хранило 192 бита информации, а всего в компьютере было 6 модулей такой памяти.

😢 Программисты писали код на бумаге - сотни страниц. Этот код занимал целые стопки бумаги высотой с человека.

Но оставалась проблема: как превратить эти стопки бумаги в провода и колечки?

Как думаете, с помощью кого/чего они решили эту проблему?

😁 — роботы, которых специально построили для этой задачи
🌚 — кинули клич бабушкам в кружки вязания
👍 — привлекли самих астронавтов, чтобы не расслаблялись
Please open Telegram to view this post
VIEW IN TELEGRAM
43🌚34😁10
This media is not supported in your browser
VIEW IN TELEGRAM
А вот и нет, первый промах 🪼
Да, NASA могли бы заставить астронавтов, могли бы нанять киборгов.

Но они наняли… бабушек ☕️

Обычные женщины с текстильных фабрик вручную вплетали код в провода для полета на Луну. Технология Core Rope Memory: провод через колечко - 1, обходит - 0.8 недель работы, полкилометра проводов, $130,000 на современные деньги за модуль.

Ошибка? Переплетать заново. Никаких апдейтов 🪖

Программисты называли эту память ➡️ LOL - «Little Old Ladies». Но относились с уважением. Одна из них забраковала готовый модуль со словами:

Он прошел тесты, но мне не нравится. Хочу чтобы все было идеально.


😄 Кстати, вопрос:

Когда ты в последний раз переделывал задачу не потому, что «тесты упали», а просто потому что «ну не нравится мне этот код»?
Please open Telegram to view this post
VIEW IN TELEGRAM
21😁3❤‍🔥1
Путь ниндзя или история Дженсена Хуанга 🔫

Потому что там есть все:

➡️ В 9 лет переехал в чужую страну без знания языка и оказался в интернате

➡️ В 15 мыл посуду в забегаловке

➡️ В 30 вроде начал жить, но чуть не обанкротился, пришлось уволить половину сотрудников

А сегодня без его компании не работает ни одна нейронка. NVIDIA стоит дороже всех. А он выходит на сцену в кожанке и показывает тату с ее лого на руке.

😨 Это не сценарий. Это реальная жизнь Дженсена Хуанга.

В новом ролике рассказали, как он это сделал.

Где смотреть: ⤵️

😁 YouTube
😁 VK

Заметили, что новые видосы стали выходить чаще?
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥74🌚1
Что такое «Магические числа?»(спойлер: к Гарри Поттеру они отношения не имеют) 🍷

Знакомая картина?
if status == 3:
send_email()
elif status == 7:
refund_order()


Что такое 3 и 7? Статусы заказа? Коды ошибок? Разработчик, который писал это полгода назад, уже не вспомнит. А новому - придется гадать.

Магическое число - это число, вписанное прямо в код без пояснения, что оно означает. Оно «магическое», потому что его значение понятно только автору (и то не всегда).

Почему это плохо:

- Непонятно: читателю кода приходится искать документацию или лезть в историю коммитов
- Сложно менять: если число используется в 10 местах, а значение поменялось - правь везде, и не ошибись
- Легко сломать: случайно перепутал 3 и 4 - и логика поехала

Но это легко исправить, просто вынеси число в константу или enum:

ORDER_STATUS_PENDING_REFUND = 3

if order_status == ORDER_STATUS_PENDING_REFUND:
process_refund()


from enum import IntEnum

class OrderStatus(IntEnum):
CREATED = 1
PAID = 2
PENDING_REFUND = 3
REFUNDED = 4

if order.status == OrderStatus.PENDING_REFUND:
process_refund()


Так что если число не равно 0, 1 или -1 и не очевидно из контекста - не ленись и дай ему имя! 👀

Кстати, другие полезные советы про то как не надо писать код мы давали в нашем видео про то как не надо писать код ➡️ https://youtu.be/a4fVPvDTYVQ

👍 — если было полезно, и сохранить не забудь, чтобы не магичить потом

#историческаясправкаMerion
Please open Telegram to view this post
VIEW IN TELEGRAM
12🔥11❤‍🔥3
Media is too big
VIEW IN TELEGRAM
Абсолютные пути - как же это важно!


Сказал Сурен Хоренян и записал для вас новый видос, в котором объяснил, почему полагаться на рабочую папку - верный способ отловить баг в три ночи.

Изучаем, сохраняем, поддерживаем реакциями, если было полезно 😉

| Вводные уроки по Python с Суреном |
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥5
Применять знания начал еще в процессе обучения. В итоге это помогло успешно провести переговоры с руководством и перейти на новую должность с повышением оклада.


В честном интервью Василия @ya_goodman: самодисциплина, правильные переговоры - и повышение оклада 🎉

Кстати, все знают, как попросить руководителя оплатить обучение?

👍 — если нужно рассказать подробнее какие аргументы подобрать

#интервьюстудентовMerion
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
11🔥6❤‍🔥2