Pull to refresh
0
Karma
0
Rating
Barmunk @Barmunk

User

REST? Возьмите тупой JSON-RPC

PHP *JavaScript *API *
В последнее время на Хабре разгорелось много споров по поводу того, как правильно готовить REST API.

Вместо того, чтобы бушевать в комментариях, подумайте: а нужен ли вам REST вообще?
Что это — осознанный выбор или привычка?

Возможно, именно вашему проекту RPC-like API подойдет лучше?
Читать дальше →
Total votes 233: ↑229 and ↓4 +225
Views 156K
Comments 255

Популяризация JSON-RPC (часть 1)

Website development *PHP *JavaScript *CodeIgniter *API *

Для передачи данных по сети есть хорошо зарекомендовавшие себя стандарты - например, SOAP, gRPC, AMQP, REST, GraphQL.

При создании вебсайтов малой, средней и большой сложности с потоками данных к бэкенду и обратно в JSON формате обычно используются последние два с их вариантами. Верней, только варианты, потому что REST и GraphQL - ресурсо-ориентированные стандарты. Это как бы просто перенос элементарной работы с базой данных на клиента (хотя под "ресурсом" может пониматься и абстракция). Обычно таких запросов не больше трети от всего бэкенд API.

Попытка сделать весь API максимально RESTful страшно раздувает код и грузит сеть. Потому что остальные две трети запросов - в форме команд на бэкенд проделать какие-то действия, слабо отображающиеся на CRUD над некими ресурсами. И вариантов послать такие запросы достаточно много. Даже, чересчур.

Читать далее
Total votes 19: ↑12 and ↓7 +5
Views 6.2K
Comments 34

Github Copilot стал общедоступным, но по подписке

Programming *GitHub *Development Management *Web services monetization *IT-companies

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

Читать далее
Total votes 10: ↑9 and ↓1 +8
Views 9.7K
Comments 24

IT-релокация: какие скиллы качать, чтобы устроиться на зарубежный рынок

Southbridge corporate blog IT career

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

Мы пообщались с Павлом Замошиным, Site Reliability Engineer в Speakap. Он уже более двух лет в релокации, и его переезд пришёлся на разгар пандемии. Павел рассказал, чем зарубежные собеседования отличаются от российских, и что нужно уметь, чтобы получить оффер. А ещё поделился, как выбирал страну и с какими неочевидными сложностями столкнулся после переезда.

Читать далее
Total votes 31: ↑27 and ↓4 +23
Views 39K
Comments 78

Иностранные хостеры с возможностью оплаты из России

Hosting Payment systems *Finance in IT

Всем привет! Меня зовут Леонид, я владелец сервиса Поиск VPS. В последнее время мне в обратную связь начало поступать очень много вопросов, каким образом можно оплачивать зарубежный хостинг, так как Visa и MasterCard Российских банков перестали работать не в России.

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

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

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

Читать далее
Total votes 52: ↑52 and ↓0 +52
Views 53K
Comments 75

Как ускорить приложение за счёт PHP-FPM (няшим FPM conf)

PHP *DevOps *
Sandbox

Привет. 

Сегодня хочу поговорить о том, как ускорить приложение через конфигурирование PHP-FPM.

Сейчас самый популярный (из тех с которыми я сталкивался) стек на котором поднимается PHP приложение это веб сервер nginx и процесс-менеджер php-fpm. 

Я хочу поднять простое приложение с Laravel проектом, которое устанавливается со всеми параметрами по умолчанию. Попробуем это приложение нагрузить пользователями с помощью простого Javascript скрипта и посмотрим как ему удастся справиться с нагрузкой и как мы можем повысить обрабатываемую нагрузку только конфигурированием php-fpm. В конце статьи можно будет найти ссылку на GitHub и попробовать своими руками.

Для начала посмотрим на стандартную конфигурацию php-fpm и попытаемся понять где могут быть проблемы в производительности с коробки.

Итак, у меня есть простое приложение на PHP с NGINX и PHP-FPM предустановленными в стандартных конфигурациях и маршрут Laravel.

Читать далее
Total votes 54: ↑44 and ↓10 +34
Views 17K
Comments 54

PHP-SPX простой профайлер трейсер для PHP

High performance *Website development *PHP *Magento *
Работая с различными PHP проектами часто приходится дебажить приложение чтобы найти и исправить ошибку. Во многих случаях вполне хватает xDebug, однако он не подходит для всех задач. Иногда нужно понять почему та или иная страница долго загружается, что съедает так много памяти или просто как работает большой и запутанный код.
php-spx logo webmageic
Читать дальше →
Total votes 24: ↑24 and ↓0 +24
Views 7.9K
Comments 3

Отпусти меня, PHP

PHP *Programming *

Всем привет, меня зовут Коля и я 10 лет пишу на php. Хлоп-хлоп-хлоп, привет, Коля. Впервые я попробовал PHP в 11 классе, на тот момент были очень популярны сайты для мобилок, и меня это затянуло. Я писал на php на уроках и переменах со своего nokia n73, разбирался с одной из широко известных в узких кругах CMS, и грезил светлым будущим. Вот же оно, я теперь программист, я все понимаю и у меня получается.

Затем была первая работа, брошенный универ, ООП, фреймворки, и первые попытки соскочить. Сначала Java, затем плюсы. Я делал простенькие программки-помощники (трекер времени с автосохранением в jira, десятистрочные плагины для IDE), и среди этих for, if, switch я без проблем плавал как рыба в воде. Но как только требовалось что-то посложнее таймера, сразу начинался бокс с клавиатурой, столом и прочими предметами. Я искренне не понимал, какого черта ошибка выглядит как третий том Войны и Мира, с кучей непонятного текста и полным отсутствием человекопонятного пэхапэшникопонятного описания ошибки.

Читать далее
Total votes 82: ↑70 and ↓12 +58
Views 25K
Comments 145

Улучшаем архитектуру: Инверсия и внедрение зависимостей, наследование и композиция

PHP *

Всем привет. Очень часто, работая со старым (а иногда и не очень) кодом, или пытаясь применить какую-то библиотеку, сталкиваешься с ограничениями в применении. Зачастую проблемы бы не было, будь код архитектурно грамотен. Есть множество архитектурных правил и паттернов, которые в конечном счете облегчают расширение кода, рефакторинг и переиспользование. В статье хочу затронуть некоторые из них в примерах.

Читать далее
Total votes 12: ↑12 and ↓0 +12
Views 5.9K
Comments 4

Эволюция PHP — от 5.6 до 8.0 (Часть 1)

OTUS corporate blog PHP *Programming *Yandex API *
Translation

После релиза PHP версии 7.3 я решил уделить больше внимания развитию PHP: что собственно развивается и в каком направлении искать понимание потенциала и оптимизации этого невероятно популярного языка программирования.

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

За основу мы возьмем PHP 5.6 и рассмотрим, что было добавлено и изменено. Я также добавил везде где смог ссылки на официальную документацию по каждой из упомянутых фич, поэтому, если вам вдруг понадобится получить более подробную информацию - пожалуйста.

Читать далее
Total votes 20: ↑18 and ↓2 +16
Views 12K
Comments 5

5 современных альтернатив старым инструментам командной строки Linux

VDSina.ru corporate blog Configuring Linux *System administration **nix *
Translation
Используя более современные альтернативы наряду со старыми инструментами командной строки, можно получить больше удовольствия и даже повысить производительность труда.



В повседневной работе в Linux / Unix мы используем множество инструментов командной строки — например, du для мониторинга использования диска и системных ресурсов. Некоторые из этих инструментов существуют уже давно. Например, top появился в 1984 году, а первый релиз du датируется 1971 годом.

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

Это отличные инструменты, которые необходимы многим системным администраторам. Однако сообщество разработало альтернативные инструменты, которые предлагают дополнительные преимущества. Некоторые из них просто имеют современный красивый интерфейс, а другие значительно улучшают удобство использования. В этом переводе расскажем о пяти альтернативах стандартным инструментам командной строки Linux.
Читать дальше →
Total votes 83: ↑75 and ↓8 +67
Views 46K
Comments 106

Сайты для обучения программированию: Топ 100

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

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

Итак, сайты для обучения программированию онлайн, ТОП 100:
Читать дальше →
Total votes 54: ↑50 and ↓4 +46
Views 258K
Comments 61

Docker Tips: Очистите свою машину от хлама

System administration *
Sandbox

Привет, Хабр! Представляю вашему вниманию перевод статьи "Docker Tips: Clean Up Your Local Machine" автора Luc Juggery.


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

Читать дальше →
Total votes 28: ↑28 and ↓0 +28
Views 89K
Comments 33

Валидация форм во Vue.js

Website development *JavaScript *Programming *VueJS *
Привет, Хабр!

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

Vue.js содержит много интересных и необычных подходов к валидации, которые помогут решить ваши проблемы. Обзор под катом!

Читать дальше →
Total votes 22: ↑22 and ↓0 +22
Views 67K
Comments 9

Создание GUI приложений на PHP

Website development *PHP *Programming *Development for Windows *
Tutorial

Темой о разработке GUI приложений на PHP сегодня, пожалуй, уже никого не удивишь. Для этого существует не одно решение, есть как развивающиеся проекты, так и умершие. Но этот пост будет не о тех и не о других, а о новом расширении для PHP — библиотеке PHPQt5, а точнее о её более продвинутой реинкарнации — о PQEngine.

P.S. PHPQt5 не имеет ничего общего с более известной библиотекой php-qt!
Читать дальше →
Total votes 41: ↑36 and ↓5 +31
Views 51K
Comments 34

Список YouTube-каналов для обучения веб-разработке

Website development *PHP *CSS *JavaScript *HTML *
image


Привет, хабражители!

Представляю вам список YouTube-каналов для обучения веб-разработке. Список доступен на гитхабе, там он будет пополняться и редактироваться. В планах — создание отдельной странички для фильтрации каналов по тегам и рубрикам.

Также хочу попросить вас о небольшой услуге: если вы знаете канал, не вошедший в список — опубликуйте ссылку на него в комментариях или отправьте pull request. Сообщество будет благодарно вам.

Под катом — текущая версия списка.
Читать дальше →
Total votes 64: ↑59 and ↓5 +54
Views 215K
Comments 16

«Пожиратель сердец» — Маршрутизатор ASUS RT-AC68U: 802.11ac, usb 3.0, BitTorent, TimeMachine

Computer hardware Network hardware IT-companies

К 23 февраля и 8 марта. Порадуй себя и близких тебе


Предисловие от автора (написано за 5 минут перед публикацией)


Первоначально я хотел всесторонне протестировать устройство с красивыми графиками и табличками, но что-то я так проникся им и начал просто пользоваться, поэтому всё немного сумбурно и без фактов, одни эмоции. Он меня просто покорил… Поехали!

Краткая информация


На рынке домашнего сетевого оборудования представлено множество решений, но сегодня я хочу рассказать вам об одном, действительно, уникальном устройстве: маршрутизаторе ASUS RT-AC68U (описание на сайте ASUS).

Не откладывая в долгий ящик, приведу ключевые особенности RT-AC68U, ставящие его выше остальных устройств на рынке:
  • новейший стандарт беспроводной связи 802.11ac
  • подключение внешнего жесткого диска по интерфейсу usb 3.0
  • официальная функция Time Machine
  • поддержка стандарта BitTorent (с учетом предыдущего пункта)

Именно совокупность этих черт сподвигла меня к данному приобретению. Разумеется, я умалчиваю про общеизвестные функции, такие как: подключение принтера или 3G/4G-модема во второй usb2.0 порт, работа в качестве домашнего файл-сервера, работа в качестве качалки всего и вся.

Технические характеристики ASUS RT-AC68U
Таблица с характеристиками честно скопирована с официальной страницы Asus и в ней отсутствует упоминание о функции Time Machine.
Дополнительно хочу отметить, что крепление к стене не предусмотрено.
Network Standard IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, IEEE 802.11ac, IPv4, IPv6
Product Segment AC1900 ultimate AC performance: 600+1300Mbps
Data Rate 802.11a: 6,9,12,18,24,36,48,54Mbps
802.11b: 1, 2, 5.5, 11Mbps
802.11g: 6,9,12,18,24,36,48,54Mbps
802.11n: up to 450Mbps
802.11n TurboQAM:up to600Mbps
802.11ac: up to 1300Mbps
Antenna External x 3
Operating Frequency 2.4GHz/5GHz
Encryption 4-bit WEP, 128-bit WEP, WPA2-PSK, WPA-PSK, WPA-Enterprise, WPA2-Enterprise, WPS support
Firewall & Access Control Firewall: SPI intrusion detection,DoS protection
Access control: Parental control, Network service filter, URL filter, Port filter
Management UPnP, IGMP v1/v2/v3, DNS Proxy, DHCP, NTP Client, DDNS, Port Triger, Universal Repeater, System Event Log
VPN Support IPSec Pass-Throuth
PPTP Pass-Through
L2TP Pass-Through
PPTP server
OpenVPN server
PPTP client
L2TP client
OpenVPN client
WAN Connection Type Internet connection type: Automatic IP, Static IP, PPPoE(MPPE supported), PPTP, L2TP
WAN Bridge support
Multicast Proxy support
Multicast Rate Setting support
Utilities .Download master
— support BT, NZB, HTTP, ED2K
— support encryption, DHT, PEX and magnet link
— upload and download bandwidth control
— download scheduling
.Media server:
— Image: JPEG
— Audio: mp3, wma, wav, pcm, mp4, lpcm, ogg
— Video: asf, avi, divx, mpeg, mpg, ts, vob, wmv, mkv, mov
.QoS:
— WMM
— User definable rules for IP/MAC/Port. Upload and Download bandwidth management.
— ACK/SYN/FIN/RST/ICMP with Highest priority
.Guest Network
— 2.4GHz guest network x 3, 5GHz guest network x 3
.Printer Server: multifunctional printer support(Windows nly), LPR protocol support
.File server: Samba and FTP server with account management
.PPTP VPN server
.Network map
.Traffic monitor
Ports 4 x RJ45 for 10/100/1000/Gigabits BaseT for LAN, 1 x RJ45 for 10/100/1000/Gigabits BaseT for WAN
USB 2.0 x 1
USB 3.0 x 1
Кнопка WPS Button, Reset Button, Power Button, Wireless on/off Button
Светодиодный индикатор PWR x 1
Wi-Fi x 2
LAN x 4
WAN x 1
USB x 2
Электропитание AC Input: 110V~240V(50~60Hz)
DC Output: 19 V with max. 1.75 A current
Размеры 220 x 83.3 x 160 mm (WxDxH)
Вес 640 g
Комплeктация 1 x RT-AC68U Wireless-AC1900 Dual Band Gigabit Router
1 x RJ-45 cable
1 x Power adapter
1 x QSG
1 x Support CD(user manual and ultility)
Router Special Features 3G/4G data sharing, AiCloud, Printer server, Download Master, AiDisK, Multiple SSIDs, Parental Control
Ещё немного официальных картинок ASUS RT-AC68U












Читать дальше →
Total votes 74: ↑52 and ↓22 +30
Views 159K
Comments 129

В офисах открытого типа сотрудники чаще болеют и хуже работают

Offices of IT companies Social networks and communities


По статистике Международной ассоциации менеджмента, 70% американцев работают в офисах открытого типа (open plan). В последняя время открытое рабочее пространство стало чрезвычайно модным из-за дешевизны, простоты и удобства управления персоналом. Но как открытый офис сказывается на производительности труда и комфорте работы?
Читать дальше →
Total votes 99: ↑86 and ↓13 +73
Views 138K
Comments 699

То, чего еще никто не писал про Нокиа, Элопа и горящую платформу

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

Традиционно, для тех кто не любит много буков, краткие (более-менее) тезисы:

  • Будучи долгое время лидером на рынке, Нокиа сильно расслабилась и загадила свою внутреннюю инфраструктуру бюрократией, чрезмерным аутсорсингом и огромным количеством бесполезной «менеджерской прослойки».
  • Будучи долгое время лидером, Нокиа просрала потратила много денег на ненужные операционные расходы, поглощения никому не нужных фирм и на невменяемую модель аутсорсинга.
  • Полностью оторвавшись от реальности с уходом Йормы Оллилла, Нокиа, под управлением гениального юриста CEO Олли-Пекки Каласвуо, потратила кучу денег и усилий на создание бесполезной и неконкурентоспособной сервисной инфраструктуры Ovi. В результате этого, помимо денег, Нокиа потеряла уйму полезного времени, которое можно и нужно было потратить на развитие основного бизнеса — телефонов, софта и т.д.
  • Бюрократия и непотопляемая менеджерская прослойка в Нокиа, последовательно мигрировала из одного передового проекта в другой, в составе одних и тех же групп лиц, самореплицируясь в виде кучи формальных дебилопроцессов комитетов и управленческих групп, немного перетасовываемых с учетом специфики. В итоге именно эта бюрократия убила и Symbian, и Ovi, и MeeGo и остальные попытки догнать уходящий поезд своими силами.
  • Борьба с бюрократией и прослойкой в Нокиа зашла в полный тупик.
  • У великого CEO Элопа просто не было другого выхода кроме как прибить всю старую, неповоротливую и прогнившую организацию, путем создания альянса с Майкрософтом и переходом на Windows Phone. Тем самым все старые процессы, компетенции, технологии и самое главное — люди резко стали, что называется, «не в тему». И следовательно тем самым можно было под благовидным предлогом прибить этот табун менеджеров, бесконечно рисующих фэнтезийные роадмапы с единорогами и перекладывающих бумаги с левого края стола на правый.
  • Новая Нокиа, после 2011 года и старая Нокиа до 2011 года – это две РАЗНЫЕ организации. Их объединяет только общее название и операционка S40 для телефонов Asha.
  • Горящая платформа, это не Symbian и не MeeGo. Горящая платформа, это то состояние в которое Нокиа загнали годы расслабленного лидерства и тупоголовые амбиции предыдущего CEO – Олли-Пекки Каласвуо с кликой подкаркивающих вице-президентов.
  • С бюрократией и бизнес процессами, имеющимися на 2010 год, Нокиа не спас бы ни Андроид, ни половина населения Бангалора, пишущих на Qt под MeeGo. Даже если бы Apple бесплатно передал Нокиа iOS и все сервисы, то они бы выродились руками всяких Requirement Managerов в типичные Нокийские дизайн-химеры и в итоге загнулись через какое-то время.
  • То, что сделал великий CEO Элоп – было единственно возможным разумным решением, дающим хоть какие-то шансы на выживание. Вопрос «каким образом он это сделал?», остается открытым, равно как и вопрос «поможет ли это Нокиа?» в итоге. Не следует забывать, что нынешняя Нокиа — это совершенно новая организация, поэтому глупо предполагать, что она разом вернет себе лидерство. Как и всем новым организациям ей придется за это лидерство долго бороться.
  • Без ошибок и побед Нокиа никогда не было бы ни Андроида, ни Айфона. И Google и Apple тщательно проанализировали достоинства и недостатки более старших конкурентов перед тем как шагнуть вперед.

Все это в деталях — под катом. Предупреждаю что клевых картинок там нет. Сплошное графоманство и ёрничанье.
Читать дальше →
Total votes 548: ↑505 and ↓43 +462
Views 542K
Comments 330

Стала известна дата начала продаж LeapMotion

Lumber room


На хабре уже писалось про удивительный контроллер LeapMotion, а некоторым счастливчикам даже удалось его пощупать.
И вот, наконец, стала известная дата начала продаж этого устройства. Это 13 мая этого года. Известно так же, что продукт будет доступен в Best Buy c 19 мая по цене всего 80$.
Total votes 32: ↑23 and ↓9 +14
Views 21K
Comments 10

Information

Rating
Does not participate
Date of birth
Registered
Activity