
В обзоре собраны краткие описания каждого компонента экосистемы, чтобы дать понимание – как выглядит мир Spring, и ориентиры – что из этого стоит изучить глубже и применять в проекте.
Инженер
В обзоре собраны краткие описания каждого компонента экосистемы, чтобы дать понимание – как выглядит мир Spring, и ориентиры – что из этого стоит изучить глубже и применять в проекте.
За последние 10 лет я поменял 3 работы, прособеседовался с 10+ компаний на позицию разработчика (software engineer) и вел переписку с HR/рекрутерами из нескольких десятков фирм. По ходу дела заметил, что вопросы, которые я задаю на собеседовании с менеджером/командой или с HR, повторяются, и решил их структурировать. Некоторые из них являются общими, и их может задать кандидат на почти любую вакансию; другие касаются только вакансий для программистов. В этой статье поделюсь с вами наиболее типичными и важными вопросами, которые, на мой взгляд, может задать соискатель потенциальному работодателю.
Приветствую, уважаемый читатель!
Мы живем в интересное время – практически у каждого человека в кармане лежит небольшой компьютер, имеющий доступ в Интернет. Этот факт обеспечил появление множества востребованных интернет-сервисов. Если раньше имело смысл создавать приложения, которые нужны всем, например, службу электронной почты, то в наши дни из-за массовости проникновения технологии спрос найдет и какая-нибудь экзотика вроде доставки вегетарианской пищи.
Такой разброс «предметных областей» мог бы потребовать тысяч уникальных программных продуктов, множество технологий и разновидностей специалистов. Но так не случилось.
Большая часть возможностей, которые предлагает нам Интернет, обеспечена приложениями на основе микросервисной архитектуры. Микросервис – это независимое приложение, которое умеет выполнять несколько взаимосвязанных функций по запросам от других микросервисов, либо от пользовательского интерфейса.
Так же, как наши жилища построены из однотипных кирпичей, блоков или плит, так и Интернет-сервисы, которые мы используем, состоят из множества микросервисов.
Вот так может выглядеть микросервисная архитектура интернет-магазина...
Все мы хорошо знакомы с оптическими иллюзиями. Встретить их можно в изобразительном искусстве, кино, видеоиграх и даже архитектуре. В то же время существуют направленные на обман других органов чувств иллюзии, которые известны гораздо менее широко. В этой статье мы хотели бы рассказать о примерах слуховых иллюзий.
Проект является логическим продолжением другого проекта на Хабре - CDC+MSC USB Composite Device на STM32 HAL и рассказыват о том, как на STM32 создать проект с несколькими USB устройствами, с читаемой структурой и используя типовые модули. Конкретно в этом проекте рассмотрен пример комбинации HID + CDC UART + CDC, а также рассказано как этот проект возможно расширить другими интерфейсами.
В случайно сгенерированном мире Minecraft найдём алмазы с помощью ИИ. Как обученный с подкреплением агент проявит себя в одной из самых сложных задач игры? Подробностями делимся к старту флагманского курса по Data Science.
В 2013 году, когда игры-сервисы были где-то в зачатках, мы продавали Pixel Gun 3D за доллар просто как прототип FPS-шутера. В игре была одна карта, одно оружие и два вида зомби, при этом она сильно цепляла эмоционально — игрокам приходилось выживать в ограниченном пространстве с постоянно появляющимися монстрами. Словом, адреналин зашкаливал (по этой же причине до сих пор популярны батлрояли).
Проект выложили в стор и тут началось: огромное количество установок, оценок, отзывов. Вскоре он занял топ-1 в App Store среди платных игр. Мы совсем были не готовы к огромному потоку игроков, которые что-то советовали, писали развернутые фидбеки и всячески пытались выйти на контакт.
Опыта работы с аудиторией не было совсем. Нужно было на ходу формировать комьюнити, поэтому решили делать мультиплеер, социальные функции, заводить соцсети и все, что поможет объединить игроков. Как это было и чему мы научились — в этом материале.
Мне всегда хотелось иметь возможность отлаживать bash-scripts так же, как и любой другой код, т.е. по шагам, и bash такую возможность предусмотрел, но о ней не все знают. Несмотря на довольно большой опыт использования Linux, я дошёл до неё только недавно.
А ещё я являюсь инженером электронной техники, который вместе с несколькими другими инженерами и партнёрами сохранил и отчасти приумножил советские электровакуумные технологии.
Это вводная статья, поэтому хотело бы начать с нашей истории, которая неразрывно связана с историей электронной промышленности постсоветской России, вернее сказать, с историей фактической гибели советской электронной промышленности.
Итак, в СССР на 1990 год действовали несколько крупных заводов по производству телевизионных кинескопов в городах Львов, Паневежис, Воронеж, Елец, Москва, Запрудня МО, Новосибирск, Новгород, Брянск, Нальчик. Ряд специальных ЭЛТ так же производился в нескольких НИИ. Это был достаточно мощный сравнительной высокотехнологичный индустриальный кластер, где работали более 70 тысяч человек (а со смежной цепочкой кооперации более 100 тысяч!). Ряд упомянутых заводов параллельно делали ещё другие электровакуумные приборы, в том числе осциллографические ЭЛТ и другие "приборные", ФЭУ, ЭОПы, имели свои сборочные производства телевизоров, компьютерных мониторов и разных стеклянных изделий бытового назначения.
Но всё равно, весь этот индустриальный кластер держался на массовом выпуске бытовых кинескопов, который с развалом СССР и началом реформ Гайдара-Ельцина начал резко стагнировать и уменьшаться в первую очередь из за очевидного проигрыша иностранным массовым образцам кинескопов по технико-экономическим параметрам. Наиболее длительно существовать на уменьшающемся рынке смогли заводы, которые либо выпускали только чёрно-белые бытовые кинескопы (для конкуренции с которыми западных массовых образцов приборов уже не было на рынке) и электровакуумные приборы для специальных применений, либо заводы, у которых была как большая номенклатура и цветных ( ЦЭЛТ ), и чёрно-белых кинескопов, а так же диверсификация в направлении другой бытовой и специальной техники. Массовое производство цветных кинескопов в РФ фактически остановилось в 1997-98 годах. После единственным и достаточно успешным наследником кинескопной промышленности СССР стал литовский завод "Экранас" ( г. Паневежис ). Его специалисты для увеличения мощности производства на европейские кредиты смогли фактически по цене металлолома скупить значительную часть советского оборудования последней модификации с остановившихся предприятий аналогичного профиля и провести работу модернизации такого оборудования на базе западной автоматики. Так же качество выпускаемых литовцами кинескопов резко возросло в связи с переходом предприятия на снабжение западными материалами и комплектующими. "Экранас" проработал до 2006 года и на пике в 2003-2004 годах выпускал цветных кинескопов порядка 5-6 миллионов в год, что было соизмеримо с мощностью всех советских кинескопных заводов вместе взятых.
Привет, друзья!
В данном туториале мы разработаем простого бота для Telegram. Сначала зарегистрируем и кастомизируем бота с помощью BotFather, затем напишем для него сервер на Express, развернем сервер на Heroku и подключим бота к серверу с помощью веб-хука.
Функционал бота будет следующим:
При разработке бота я буду опираться в основном на официальную документацию.
Если вам это интересно, прошу под кат.
Контейнер - это объект, используемый для хранения других объектов. Контейнер берет на себя управление всей памятью, которые эти объекты занимают.
В стандартную библиотеку C++ входит несколько контейнеров. Кроме этого, в Open Source есть несколько контейнеров, которые покрывают больше юзкейсов. Я опишу устройство интересных контейнеров вне STL и их отличия от классических контейнеров.
Начал я на днях читать книгу про обработку строк и буквально с первых страниц, прихлебывая чаечек я начал поражаться тому, что за пять лет работы программистом я смотрел на строки только как на последовательность букв и ничего большее. Про то, что строки можно анализировать, чтобы как-то с ними продуктивно работать я вообще не задумывался.
Ну и я решил проверить на практике, так ли эти алгоритмы быстры и хороши как в книге описывается. Не то чтобы я имею повод сомневаться в авторе, но ведь всегда лучше один раз увидеть, чем сто раз прочитать в книге.
К старту курса по Fullstack-разработке на Python рассказываем о том, как один из самых популярных репозиториев GitHub лишился десятков тысяч своих звёзд, а также о том, как помочь пользователям ваших решений избегать подобных ситуаций.
Написав предыдущую статью о сортировке подсчётом beSort - меня не отпустило. Я решил поковыряться в базовых алгоритмах и залип на модификациях пузырьковой сортировки, ну а статья о том - что из этого получилось.
В нашей прошлой статье про синтез речи мы дали много обещаний: убрать детские болячки, радикально ускорить синтез еще в 10 раз, добавить новые "фишечки", радикально улучшить качество.
Сейчас, вложив огромное количество работы, мы наконец готовы поделиться с сообществом своими успехами:
Это по-настоящему уникальное и прорывное достижение и мы не собираемся останавливаться. В ближайшее время мы добавим большое количество моделей на разных языках и напишем целый ряд публикаций на эту и смежные темы, а также продолжим делать наши модели лучше (например, еще в 2-5 раз быстрее).
Попробовать модель как обычно можно в нашем репозитории и в колабе.
Адрес TCP/IP поддерживает только 65000 подключений, поэтому придётся назначить этому серверу примерно 30000 IP-адресов.
Существует 65535 номеров TCP-портов, значит ли это, что к TCP-серверу может подключиться не более 65535 клиентов? Можно решить, что это накладывает строгое ограничение на количество клиентов, которые может поддерживать один компьютер/приложение.
Если есть ограничение на количество портов, которые может иметь одна машина, а сокет можно привязать только к неиспользуемому номеру порта, как с этим справляются серверы, имеющие чрезвычайно большое количество запросов (больше, чем максимальное количество портов)? Эта проблема решается распределением системы, то есть кучей серверов на множестве машин?