Как стать автором
Обновить
32
0
darii @darii

Пользователь

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

А ваша служба является RESTful? Все что необходимо/обязательно знать про веб службы и REST

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

Введение


Вот не люблю я изобретать велосипед и статью я бы эту не написал, но пришлось. Про REST сказано уже довольно много. Многие поставщики веб служб готовы клясться, что их службы являются RESTful. Во время собеседования вы точно услышите хотя бы несколько вопросов про REST, независимо от того это собеседования для бэкенд, мобайл или фронтенд разработчика. Я вот помню как-то во время одного собеседования меня задали такой вопрос: «Вот вы написали в своем резюме, что знайте REST․ Ответьте пожалуйста, какой HTTP код вы получите, если при запросе к RESTful сервису ресурс не найден?». Ответ 404 был принят единогласно. Если честно, я так и не понял, как этот вопрос помог понять знаю ли я REST или нет, но одно могу уверенно сказать: REST понимают далеко не все. Вот некоторые вопросы, которые мучали меня долгое время:

  1. Зачем REST стал таким трендовым? Это архитектура была же предложена еще в 2000 году?
  2. Что я получу если моя служба будет RESTful?
  3. Как определить является ли служба RESTful или нет?
  4. Как правильно должны создаваться URL REST служб?
  5. Какие http методы и коды должны быть использованы в RESTful службе?

Если вы не можете дать исчерпывающего ответа хотя бы на один из этих вопросов, то продолжайте чтение. Если вы можете однозначно ответить на все эти вопросы, можете привести формат правильного URL, считайте, что GET, POST, PUT, DELETE обязательно должны соответствовать CRUD операциям с ресурсами, то вам обязательно надо продолжать чтение.
Читать дальше →
Всего голосов 43: ↑37 и ↓6+31
Комментарии125

Есть проблемы гораздо сложнее, чем NP-Complete

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


Люди часто сравнивают P и NP в таком духе, что проблемы P простые, а NP — сложные. Но это чрезмерное упрощение. На самом деле проблемы могут быть намного, намного сложнее, чем NP.

В этом смысле можно вспомнить интеллектуально-фантастический триллер Travelling Salesman (Коммивояжёр, 2012) о четырёх математиках, нанятых правительством США для решения самой сложной проблемы в истории информатики — равенства классов сложности P и NP (P versus NP problem). И им это удалось. Чиновник министерства обороны США предлагает за их алгоритм вознаграждение $10 млн. Но сами математики слишком хорошо понимают, какие разрушительные последствия принесёт в мир их открытие. Один из лучших фильмов про математику в истории кинематографа…
Читать дальше →
Всего голосов 50: ↑46 и ↓4+42
Комментарии3

Как создать эвристический алгоритм онлайн-мастеринга и получить предупреждение от RIAA

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

Добрый день, меня зовут Сергей. В своей статье я бы хотел осветить тему аудио мастеринга, а именно: автоматизированного онлайн-мастеринга музыки.

Я расскажу о своём пути от продюсера психоделического транса до мейнтейнера самой популярной open source библиотеки автоматизированного референсного мастеринга на Python, получившей предупреждение от американской ассоциации звукозаписывающих компаний RIAA.

Читать далее
Всего голосов 143: ↑142 и ↓1+141
Комментарии32

Сам себе сотовый оператор

Время на прочтение14 мин
Количество просмотров88K
… Кроме типовых для журнала статей, там была статья за авторством некоего «DI HALT» про то, как из двух телефонов и микроконтроллера извлечь кучу лулзов. «Прикольный ник» — подумал мальчик Андрей и перелистнул страницу, ибо ниасилил. А за ней была статья того же автора про то, как скрестить флешку с мышкой. «А вот это нам под силу» — подумал мальчик и убил уже знакомую вам флешку банальной переполюсовкой. Но зато он понял, что электроника — это весело и почти безопасно. — с просторов



Приветствую всех!

Многие из вас наверняка слышали про OsmocomBB. Однако каких-то исчерпывающих мануалов по запуску почему-то крайне мало. Итак, в ходе данной статьи постараемся максимально простым образом запустить собственную базовую станцию из доступных комплектующих. Постараемся разобраться, как сделать так, чтобы оно точно заработало.
Читать дальше →
Всего голосов 342: ↑342 и ↓0+342
Комментарии135

6 Python декораторов, которые значительно упростят ваш код

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

"Простое лучше сложного".

Лучшая функция Python, которая применяет эту философию из "дзен Python", - это декоратор.

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

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

Болтать не буду. Давайте посмотрим на отобранные мной 6 декораторов, которые покажут вам, насколько элегантен Python.

Читать далее
Всего голосов 77: ↑73 и ↓4+69
Комментарии26

Налоги в Грузии — релокация и эмиграция в юрисдикцию, что нужно знать работнику и работодателю из России

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

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

Читать далее
Всего голосов 14: ↑12 и ↓2+10
Комментарии13

Как открыть ИП в Грузии гражданину России? FAQ 2023 / 2024

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

В этом материале, я собрал основную информацию про открытие ИП в Грузии и переходе на статус малый бизнес 1%. Отдельно, хочу отметить что Грузия не всегда подходит для приема платежей от иностранных компаний, если фрилансер проживает в РФ более чем 183 дня в календарном году, то есть является валютным резидентом РФ, так как Грузия не входит в ЕАЭС и не обменивается с РФ финансовой информацией в автоматическом режиме, соответственно валютные правила РФ накладывают определенные ограничения на граждан РФ по приему платежей на свои иностранные счета в Грузии, связанные с предпринимательской деятельностью.

Ранее, я уже говорил про валютные и налоговые правила РФ, отдельно про налоги в Грузии для физических лиц, подробно разобрал как фрилансеру в статусе ИП заплатить в РФ налоги с иностранных доходов, так что перед тем открывать где-то ИП для приема платежей от иностранных заказчиков, при условии преимущественного проживания в РФ, рекомендую ознакомится с информацией.

Читать далее
Всего голосов 30: ↑24 и ↓6+18
Комментарии43

Cоветы начинающему фрилансеру: как продавать услуги на развитые рынки через открытые площадки

Время на прочтение16 мин
Количество просмотров63K
Я занимаюсь разработкой программного обеспечения в роли ведущего программиста-проектировщика с конца 90х годов. Фриланс никогда не был основным источником моего дохода. Но в 2010 году я начал всерьез заниматься фрилансом как побочным видом деятельности, приносящим существенный доход (за несколько месяцев я вышел на уровень продаж порядка $5k в месяц с фрилансерских контрактов с практически нулевыми расходами на исполнение контрактов, за исключением моего времени). Позднее я переехал в Северную Америку, но фриланс продолжает оставаться для меня важным побочным бизнесом. Кроме того, в своей работе я постоянно общаюсь с фрилансерами, в т.ч. профессиональными full-time фрилансерами из Северной Америки.

В этой статье я хотел бы поделиться своим опытом работы на площадках вроде elance.com с коллегами из экс-СССР и дать конкретные рекомендации по входу на рынок, позиционированию услуг, конкуренции с демпингом из Южной Азии, а также дать ликбез по общей профессиональной подготовке.
Много текста с конкретными примерами
Всего голосов 32: ↑31 и ↓1+30
Комментарии24

Разбор доклада Ивана Круглова «Строим свой Service Mesh»

Время на прочтение6 мин
Количество просмотров5.8K
На каждой крупной регулярной конференции есть докладчики, которые приходят каждый год, рассказывают что-нибудь новое и всегда нравятся аудитории. Всегда быть в самом-самом топе для человека, который не занимается выступлениями профессионально, очень трудно (да и зачем), но всегда выдавать уверенно хороший материал — реально. Один из спикеров, сделавших несколько успешных докладов и на Highload++, и на РИТ++, — Иван Круглов из Booking.com.

Несколько дней назад в блоге Онтико уже была статья о подготовке докладчиков, посвящённая больше подаче материала, а сегодня хотелось бы рассказать о другом аспекте подготовки, которым на РИТ++ и Highload++ я в основном и занимаюсь. Давайте на примере последнего выступления Ивана рассмотрим, что важно и над чем мы при подготовке конференции работаем с докладчиками в области содержания.



Слайды тут.
Конечно, любой доклад про микросервисы или хотя бы про SOA автоматически получает +2 к харизме, но спикер ещё должен суметь этим воспользоваться.

Дисклеймер: про SOA только разбираемый доклад, а не сама статья.
Всего голосов 18: ↑16 и ↓2+14
Комментарии7

SOA: послать запрос на сервер? Что может быть проще?

Время на прочтение20 мин
Количество просмотров10K
Возможно, вы уже слышали про компанию Booking.com, что они много экспериментируют и часто деплоятся без тестирования. И еще, что есть один большой репозиторий на 4 Гб, в нем 4 миллиона строчек перлового кода, и вообще монолитная архитектура.

В то же самое время Booking.com меняется. Нельзя сказать, что это кардинальное скачкообразное изменение, но медленное и уверенное преображение. Меняется стек, постепенно внедряется Java в тех местах, где это актуально. В том числе термин сервис-ориентированная архитектура (SOA) слышится все чаще и чаще во внутренних дискуссиях.

Далее рассказ Ивана Круглова (@vian) об этих изменениях с точки зрения взаимодействия внутренних компонентов на Highload Junior ++ 2017. Попав в западню циклически зависимых воркеров пришлось качественно разобраться, что к чему, и какими средствами можно все это исправить.


Всего голосов 36: ↑36 и ↓0+36
Комментарии2

США объявили войну крипто-анонимности: как санкции на Tornado Cash меняют будущее блокчейна

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

Прямо сейчас происходят события, которые могут стать поворотной точкой для всей криптоиндустрии (а заодно и для всех open-source программистов). Тем более странно, что пока эти события вызывают ажиотаж только в узком кругу настоящих криптанов… В этой статье я попытаюсь объяснить, почему вам тоже должно быть дико интересно следить за санкционной драмой вокруг Tornado Cash.

Читать далее
Всего голосов 168: ↑160 и ↓8+152
Комментарии321

Кровь и бетон. Как не надо писать

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

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

К чёрту. Варианты закончились. Чтобы не терять времени, перейдем к оскорблениям.

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

Читать далее
Всего голосов 253: ↑224 и ↓29+195
Комментарии183

ArchOps и как мы до него дошли

Время на прочтение9 мин
Количество просмотров6.1K
Всем привет! Недавно у нас в MTS DIgital прошла десятая научно-техническая конференция Hello, conference!, докладами с которой хотелось бы поделиться с сообществом. В этой статье руководитель центра RnD MTS Digital Дмитрий Дзюба и руководитель направления системной архитектуры MTS Digital Александр Петрухина расскажут про ArchOps.


Для любителей видео доклады с конференции доступны в записи.
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Асинхронный python без головной боли (часть 1)

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

Почему так сложно понять asyncio?

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

Но будь я автором самого толстого в мире учебника по python, я бы рассказывал читателям про асинхронное программирование уже с первых страниц. Вот только написали "Hello, world!" и тут же приступили к созданию "Hello, asynchronous world!". А уже потом циклы, условия и все такое.

Съешь красную таблетку
Всего голосов 135: ↑135 и ↓0+135
Комментарии56

[Личный опыт] Жизнь в Сербии: переехать легко, но жить здесь понравится не всем

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

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

Читать далее
Всего голосов 90: ↑88 и ↓2+86
Комментарии81

Кибербезопасность для самых маленьких

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

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

Цель статьи - поделиться практиками, которые я применил для защиты данных при поднятии собственного VPS в публичной сети. Всегда, когда твой IP открыт всему Миру напоказ и доступен извне внутренних контуров сети - это означает, что любой прохожий может устроить тебе неприятности: похитить твои данные, завладеть твоим сервером и сломать твое замечательное приложение. Я буду приводить пример атаки, показывать, как ее можно заметить и после этого будем разбирать возможные способы защиты.

Защитить данные!
Всего голосов 22: ↑22 и ↓0+22
Комментарии32

Как мы отказались от JPEG, JSON, TCP и ускорили ВКонтакте в два раза

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

На протяжении всей жизни мне приходится экономить вычислительные и сетевые ресурсы: сначала были компьютеры с 300 кГц (кило — не гига!) и 32 Кбайт RAM, интернет по dial-up. Потом я решал олимпиадные задачки. Теперь имею дело с терабайтами трафика и 50 млрд событий в сутки. И хотя современные телефоны в 1 000 раз мощнее любого оборудования двадцатилетней давности, я до сих пор оптимизирую. Думал даже, что это со мной что-то не так. Но потом понял, что все постоянно что-нибудь оптимизируют. 

Эта статья в меньшей степени о том, почему нужно бороться за производительность, и в большей о том, на что сейчас стоит заменить устаревший стек из JPEG, JSON, gzip и TCP — и как это сделать. 

Спойлер: у нас есть решение и мы его не только показываем — ссылки на open source в конце статьи.

Читать далее
Всего голосов 435: ↑423 и ↓12+411
Комментарии300

Сборка и публикация Qt Android приложений через Gitlab CI

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

Доброго времени суток и с Новым Годом хабровчане! В данной статье хочу рассказать как я делал CI/CD на платформе GitLab для кроссплатформенных мобильных приложений написанных на Qt. Пока что только для Android, но в будущем возможно получится сделать и для iOS. Кого заинтересовал, прошу пожаловать под кат.

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

Telegraph API: автоматизированное создание заметок

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

Сервису telegra.ph уже много лет, но информации о том как пользоваться его api почему-то не много, тем временем, крупные телеграм-каналы потихоньку приступили к промышленному освоению. Инструмент вполне себе неплохой, особенно как альтернатива созданию веб-страниц, к тому же появились решения, которые позволяют автоматизировать процесс.

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

Как на самом деле работает распознавание лиц

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

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

Читать далее
Всего голосов 24: ↑23 и ↓1+22
Комментарии18
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Berlin, Berlin, Германия
Зарегистрирован
Активность