Pull to refresh
0
0
Send message

Green server для PET-проектов на базе Raspberry Pi – часть вторая(большой брат)

Reading time6 min
Views9.6K

После не самого удачного опыта с Raspberry Pi 2 B в качестве домашнего сервера, я на пару лет бросил идею с домашним хостингом. Но количество PET проектов только увеличивалось. Тогда я раздобыл старенькую рабочую лошадку - полноразмерный HP сервер 1U с 8gb оперативной памяти, intel xeon. Разместил этот юнит в колокейшине и платил 35$/месяц за размещение. Помимо Ubuntu Server, там ещё стоял Windows Server для разработки и тестирования ASP.NET сервера. Пока один из проектов приносил прибыль, мне было выгодно размещать сервер в колокейшине. Через год, проект приносящий прибыль - заморозили, а привычка иметь собственный DEV сервер - осталась. Тогда я решил запустить этот сервер дома, даже не задумываясь о том, сколько шума он будет издавать. Чтобы вы понимали, я жил в панельном многоквартирном доме. И ко мне иногда приходили соседи с вопросом: «А чего у вас так долго пылесос работает?». Конечно же, мне это быстро надоело и я отключил сервер, положив на полку как сувенир. А без сервера было скучно…

Через некоторое время, один из моих проектов заинтересовал Швейцарскую компанию, которая занимается продажей золота. Если вкратце, это сервис, который выполняет работу ERP системы(учёт клиентов, контрактов, хранение документов, pdf сервис и всяческие отчёты). Этот проект необходимо было адаптировать под потенциально клиента, попутно переписать с устаревшей версии ASP.NET и всего стека Microsoft, на что-то быстрее и проще. В этот момент я выбрал GoLang, PostgreSQL, S3, Docker и парочку вспомогательных технологий, так как имел опыт работы с ними. Так вот, это эксперимент и клиент может в любой момент сказать, что ему это решение не подходит. Было решено, что хостить буду его - дома, дабы избежать лишних расходов и не тратить время на настройку облачных служб. Ну и хотелось попробовать решить проблему с предыдущей версией малинки.

Читать далее
Total votes 7: ↑6 and ↓1+6
Comments37

Основы внутреннего устройства JavaScript

Reading time6 min
Views42K
image

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

Введение


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

В этом посте мы подробно разберём эти концепции и объясним, как же работает JavaScript. Благодаря знанию этих подробностей вы сможете писать более оптимальные приложения, надлежащим образом использующие API. Если вы работаете с JavaScript относительно недавно, этот пост поможет вам понять, почему JavaScript настолько «странный» по сравнению с другими языками. А если вы опытный разработчик на JavaScript, то он позволит вам по-новому взглянуть на внутреннее устройство JavaScript Runtime, с которым вы работаете каждый день.
Читать дальше →
Total votes 26: ↑23 and ↓3+29
Comments5

Почему Starlink от Маска — это скам

Reading time15 min
Views202K


В тоннелях Boring Company, построенных, чтобы не было пробок, теперь пробки. Cybertruck не поедет до 2023 года Но все это мелкие проблемы по сравнению с тем, чем обещает стать Starlink. Это главный проект Илона Маска, который должен спонсировать SpaceX, и собрать достаточно денег, чтобы обеспечить полет на Марс. Но он может стать и самой большой ошибкой.


1500 спутников уже запущены и работают, 145 000 пользователей в США и Канаде уже довольны своим интернетом. Тем не менее верить в успех этого проекта, скорее всего, преждевременно. И даже более того: возможно, нам будет лучше, чтобы это будущее никогда не наступило.


Осторожно, в тексте много цифр. И, если вы продолжаете верить в Starlink, он может вас сильно разочаровать.

Читать дальше →
Total votes 435: ↑286 and ↓149+200
Comments984

JavaScript-классы — это не просто «синтаксический сахар»

Reading time6 min
Views29K
После того, как я прочитал очередную статью, где говорится о том, что JS-классы — это всего лишь «синтаксический сахар» для прототипного наследования, я решил написать материал, призванный (в который раз!) прояснить вопрос о том, почему данное утверждение неверно. Тут я, надеюсь, смогу объяснить разницу между JS-классами и прототипным наследованием, и смогу рассказать о том, почему важно понимать эту разницу.


Читать дальше →
Total votes 39: ↑38 and ↓1+53
Comments25

Дайджест интересных материалов для мобильного разработчика #392 (26 апреля — 2 мая)

Reading time3 min
Views2.8K
Уходим на длинные выходные с новой подборкой интересных статей и новостей. В ней библиотеки и борьба с Apple, карточки ВКонтакте и качество кода, Flutter и Kotlin, умение заканчивать проекты, понимать путь клиента и многое другое!

Читать дальше →
Total votes 3: ↑3 and ↓0+3
Comments0

Нестандартные шрифты: как подключить и оптимизировать

Reading time8 min
Views65K

Самый простой вариант — вообще не подключать сторонние шрифты. Можно пользоваться стандартными, которые предустановлены в большинстве операционных систем. Это хорошо знакомые Arial, Times New Roman и так далее — эти шрифты называются веб-безопасными, достаточно просто указать название одного из таких шрифтов в коде, и всё будет работать. 

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

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments5

Отслеживание брошенных корзин с помощью Google Analytics: 4 простых шага

Reading time5 min
Views5.7K

Пожалуй один из главных вопросов всех владельцев магазина на Shopify звучит как: почему покупатель бросает корзину и не совершает покупку? Представьте, если бы вы пошли в супермаркет, набрали полную тележку продуктов, но уже подойдя к кассе решили вовсе уйти из магазина, оставив сотрудников магазина в недоумении. В среднем, 70% покупателей покинет магазин, так и не купив товар, добавленный в корзину.

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

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments0

5 React-хуков, которые пригодятся в любом проекте

Reading time7 min
Views28K
Хочу рассказать о пяти простых React-хуках, которые пригодятся в любом проекте. Причём, полезность этих хуков не зависит от того, в каком именно приложении их будут использовать. Описывая каждый из них, я рассказываю о его реализации и привожу пример его использования в клиентском коде.


Читать дальше →
Total votes 37: ↑32 and ↓5+43
Comments19

Самодельный стратостат

Reading time28 min
Views20K

result_lowres


Допустим, вы интересуетесь космосом, но космос для вас недоступен. Выше 10км не подняться, а посмотреть "что там?" очень хочется. По классификации NASA — нижняя граница космоса начинается на 100км от поверхности Земли. Эта статья будет не совсем про космос, но про возможность создания своего стратосферного зонда с нуля. Я много видел примеров успешного запуска и несколько статей на Хабре, но почти все они — это отчеты. Я же хочу оставить статью, которая сможет претендовать на "complete guide" для юных покорителей. Запаситесь терпением и безлимитным интернетом — будет много текста, картинок и даже пару видео. Это был долгий путь для нас, но я намерен сделать его не таким изнурительным для всех желающих. Поехали?

Читать дальше →
Total votes 51: ↑51 and ↓0+51
Comments39

Как переоптимизация и переспам влияют на трафик в Яндексе

Reading time3 min
Views5.1K

После проведения основных SEO-работ на сайте косметологической клиники трафик в Google резко вырос, тогда как в Яндексе он оставался на прежнем уровне. Тогда мы внимательно изучили тексты, и нашли проблему.

Читать далее
Total votes 7: ↑4 and ↓3+3
Comments6

«For Those Who Do!» или ультимативная платформа для игр эпохи Windows XP

Reading time7 min
Views7.6K

Несколько лет назад я загорелся идеей раздобыть себе ThinkPad, и не в последнюю очередь, из-за частых статей об этой серии ноутбуков на Хабре. Особенно, меня сподвигла к покупке статья про ноутбуки на орбите. Там были замечательные фотографии строгих черных квадратов в невесомости, после которых я понял - оно, беру, мне надо. 

Окунуться в очень черные квадраты!
Total votes 5: ↑4 and ↓1+5
Comments7

О хранении JWT токенов в браузерах

Reading time3 min
Views65K

Открытый стандарт JWT официально появился в 2015 (rfc7519) обещая интересные особенности и широкие перспективы. Правильное хранение Access токена является жизненно важным вопросов при построении системы авторизации и аутентификации в современном Web, где становятся все популярнее сайты, построенные по технологии SPA.

Неправильное хранение токенов ведет к их краже и переиспользованию злоумышленниками.
Читать дальше →
Total votes 24: ↑23 and ↓1+30
Comments102

Как я решил протестировать нагрузочную способность web сервера

Reading time15 min
Views11K

В одно прекрасное утро вдруг пришла "гениальная" мысль – а не протестировать ли мне что ни будь? Посмотрев по сторонам, на глаза мне попался он - герой этой статьи.

Это была вступительная минутка юмора, а если серьёзно то вопрос о тестировании web сервера стоял уже давно. Какого-то комплексного решения не было, поэтому я решил сделать хоть какие то первые шаги. Получить первые цифры. Благодаря которым можно было бы уже предметно разговаривать и продумывать дальнейшую стратегию.

И так дано - web сервер. Написан на .net core. Сервер используется в корпоративной разработке.

Посмотреть, как работает можно, например здесь – бесплатный сервис хранения ссылок http://linkin.link. Про него я писал тут.

Читать далее
Total votes 14: ↑9 and ↓5+5
Comments30

Мой стейт менеджер для React, Preact, Inferno

Reading time5 min
Views4.6K

Люблю изобретать велосипеды и прочие нужные предметы заново. Получается не всегда хорошо, но процесс интересный. Предлагаю вашему вниманию библиотеку управления стейтом для React, Preact (вес всего 4.8Кб). Библиотека еще находится разработке, но уже можно попробовать.

Начнем с примера всеми любимого TODO органайзера. Исходный код на гитхабе. Для начала создадим основной компонент main.js.

Читать далее
Total votes 5: ↑2 and ↓3+3
Comments3

Information

Rating
Does not participate
Registered
Activity