Как стать автором
Обновить
386.73

Веб-разработка *

Делаем веб лучше

Сначала показывать
Порог рейтинга
Уровень сложности

История про Arduino отработавшую 11 лет

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров254

Шел 2014 год, в моем поселке люди сидят на водозаборе и управляют по RDP скважинами удаленно.

Система работает круглые сутки и на мониторе уже видна "тень" красных и зеленых индикаторов.

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

Читать далее

Новости

Новый ЕМИСС 2.0 со сводными таблицами, API и погодой?

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

Привет, Хабр! Около года назад мне пришла странная идея: а что, если сделать новую версию ЕМИСС, хранилища российской статистики, чтобы наконец-то было удобно сводить данные. А то постоянно сопоставлять несколько показателей из множества Excel файлов – сущий ад. И вот уже год прошел с момента создания и написания первой версии и сайта, и статьи (недавно был небольшой пост).

Читать далее

Меня уволили почти день в день. Ответ на пост как после испытательного срока попросить поднятие зарплаты джуну

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров2.6K

Прошлый пост https://habr.com/ru/articles/902990/

И вот подходил испытательный срок к концу. Я в ожидание 1 on 1 с директором и hr-ом и вот захожу в гугл мит, и разговор начинается сразу:

HR: 'Привет, к сожалению у меня для тебя плохие новости.'
Я: 'Сижу в ахере так как считаю что перфоманс для джуна мастхэв'
Директор: 'Мы ожидали большей выработки, но к сожалению данных результатов не хватает'
Я: 'Да, я все понимаю. Ничего страшного, не расстроен. Просто не сошлись взглядами'
HR: 'Когда назначить дату увольнение'
Директор: '30 апреля последний день (к слову созвон 28 апреля. Даже за неделю не смогли предупредить)'
Я(в мыслях): 'Хотят меня пнуть чтобы майские не оплачивать. Работаем по ТК РФ. Я так просто не уйду и заберу небольшую котлетку:D'
Я(Вслух): 'Хорошо, перешлите мне приказ об увольнение мне надо с ним ознакомиться'
И на этом созвон закончился. HR начало поливать меня комплиментами какой я большой грин флаг, но понимаю что я очередной сотрудник, которого компания сливает чтобы сэкономить бабок.

P.S. К слову у меня 155 задач закрыто, 75 готовы к релизу.НО видимо надо больше. И это с зарплатой 67к руб на руки.

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

НО. Я так просто не ушел и начались споры с компанией чтобы они выплатили мне небольшую компенсацию. Что вот так просто за пару дней до конца испыта, меня выкидывают на улицу.

Об этом в следующем посте \o/

Читать далее

Меня заставили повайбкодить

Уровень сложностиСложный
Время на прочтение18 мин
Количество просмотров25K

Я давно пользуюсь кодогенерацией. Ещё во времена Yii фреймворка мне нравилось, что одним кликом мышки можно было сгенерировать CRUD с бэкендом, таблицами и формами. Backbone.js сразу из коробки обеспечивал REST API запросы и другие фичи. Между тем временем и нынешним днём — целый пласт инструментов для автоматизации, бутстрапинга и шаблонизации разработки. Приходилось и хрюкать, и глотать. То, что всё это, мягко говоря, так себе — уже отдельная история. Местами стало даже хуже. Хуже, чем когда вы неделю возились с конфигом Webpack.

В этой статье мы рассмотрим вайбкодинг. В чистом виде так сказать.

Читать далее

Валидация сложных форм с помощью Constraint Validation API

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

DOM предоставляет API для валидации пользовательского ввода. Вообще говоря, мы им пользуемся часто, например:

Читать далее

T-SQL в .NET Core EF Core: Гибридный подход к производительности и гибкости

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

В мире .NET разработки, работа с базами данных – неотъемлемая часть. Entity Framework Core (EF Core) предоставляет удобный способ взаимодействия с данными, но при работе с SQL Server, особенно в сложных сценариях, LINQ запросы могут уступать в производительности и гибкости T-SQL. Статья рассматривает эту дилемму, предлагая гибридный подход. Мы погрузимся в проблему: как эффективно использовать мощь T-SQL, не отказываясь от преимуществ EF Core? Обсудим интеграцию T-SQL через Raw SQL, Views, UDF и Stored Procedures. Раскроем лучшие практики: разделение ответственности, оптимизацию запросов, безопасность и тестирование. Поймем, как сочетать удобство ORM с производительностью SQL Server, применяя Data-Driven Design и, при необходимости, Domain-Driven Design. Статья – руководство для .NET разработчиков, стремящихся к оптимальному балансу между производительностью, гибкостью и удобством разработки при работе с SQL Server и EF Core.

Читать об этом

Как я уязвимости в школьном электронном журнале искал

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

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

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

Читать далее

Меню для отзывчивого интерфейса без скриптов

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

В этой статье мы расскажем как создать отзывчивое меню по принципу mobile-first, используя только HTML и CSS — без JavaScript. Полный код, используемый в этой статье, доступен в репозитории на GitHub.

Читать далее

JavaScript. Как сделать невероятно быстрый многопоточный Data Grid на 1 000 000 строк. Часть 2/2: работа с потоками

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

Demo | GitHub

Особенности Fast Data Grid:
— Невероятно быстрый
— Многопоточный
— Всего 523 строчки кода
— Нет зависимостей
— Vanilla JavaScript

Попробуйте скролл и поиск по 1 000 000 строк — Fast Data Grid.

В статье расскажу про работу с потоками.

Читать далее

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 12

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


Хабр, я снова пришёл к вам с практическими советами про доступность вместе с Ильей. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья — мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке.


Сегодня мы рассмотрим следующие аспекты:

  • что можно сделать лучше для пользователей с дислексией;
  • как незаметно улучшить интерфейс для пользователей с травмой кистей рук;
  • есть ли сложности с сокращениями для пользователей скринридера.

Давайте начнём!

Читать дальше →

Как аргументированно попросить повышение после испытательного срока джуниору?

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.7K

Во-первых постараюсь объяснить почему я хочу больше:)
По итогам собеседования меня взяли на позицию джуниор фронтенд разработчик в одну из московских айти компаний на удаленку. И вот какие были условия на момент принятия оффера
- Позиция джуниор фронтенд разработчик
- Будет ментор у которого всегда можно будет спросить
- Испытательный срок 3 месяца

В итоге узнается что ментор это такой

Читать далее

Для защиты своего сервера я использую zip-бомбы

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров71K

Основной объём трафика в вебе возникает из-за ботов. По большей части, эти боты используются для обнаружения нового контента. Это читалки RSS-фидов, поисковые движки, выполняющие краулинг вашего контента, а сегодня и боты ИИ, собирающие контент, чтобы скармливать его LLM. Но есть и зловредные боты. Их создают спамеры, скрейперы контента и хакеры. На моём прежнем месте работы бот обнаружил уязвимость Wordpress и встроил в наш сервер зловредный скрипт, а затем превратил машину в ботнет, используемый для DDOS. Один из моих первых веб-сайтов был полностью выдавлен из поиска Google из-за ботов, генерирующих спам. Мне нужно было найти способ защиты от этих ботов, поэтому я начал пользоваться zip-бомбами.

Читать далее

Cookie Store API

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



До недавнего времени программный доступ к куки в браузере осуществлялся через API document.cookie — простой строковый геттер/сеттер. Для получения одного файла куки приходилось разбирать всю строку вручную и преобразовывать ее в удобный формат. А чтобы записать куки, нужно было сначала сформировать структурированные данные, затем сериализовать их в строку и только после этого присвоить значение document.cookie. Разработчики часто используют популярные библиотеки, например js-cookie, которые делают работу с куки гораздо удобнее.

Читать дальше →

Ближайшие события

Понимая реактивные системы: асинхронные вычисления

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

Сегодня мы продолжим разбирать базовые концепции реактивности, изложенные Райаном Карниато (Ryan Carniato), автором SolidJS. Если ранее мы затрагивали производные и их планирование, то сегодня разберём более сложную тему — асинхронность в контексте реактивного программирования. Эта концепция добавляет новый уровень сложности, поскольку требует учёта динамических процессов, выходящих за рамки синхронных операций.

Читать далее

Реализация протокола SRP на эллиптических кривых

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

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

Статус документа: запрос на обсуждение сообществом (Request For Comments).

ВНИМАНИЕ: Это учебный криптопротокол, не рекомендуется его реализовать на продуктивных системах до тех пор, пока он не пройдет экспертизу специалистами.

Назначение статьи: привлечь к первичному аудиту специалистов по эллиптическим кривым (профильных математиков и криптоаналитиков)

Участники взаимодействия: Алиса - клиент веб-сервера, Боб - веб-сервер (или его владелец) с ограниченным доступом, Ева (Eve) - пассивный слушатель сообщений, Меллори - активный злоумышленник, пытающийся вмешаться во взаимодействие Алисы и Боба, проксировать соединение, выдавая себя за Боба для Алисы, и за Алису для Боба.  Будем рассматривать наихудший сценарий, когда Меллори обладает некоторой важной информацией, помогающей ему вмешиваться в канал (он обладает верификатором V Алисы, в результате взлома веб-сервера Боба).

 

Необходимые параметры взаимодействия:

i - идентификатор Алисы на сервере Боба. Это может быть логин, электронная почта или 128-битное  произвольно выбранное натуральное число .

x - секрет Алисы. Это может быть 128-битное случайно выбранное число или результат криптографического преобразования пароля Алисы: x = Scrypt(Password), где

Scrypt - адаптивная криптографическая функция формирования ключа на основе пароля, созданная офицером безопасности FreeBSD Колином Персивалем для противодействия атакам методом грубой силы.

Читать далее

Сигналы, роутинг, реактивность, Fusor приложение

Время на прочтение2 мин
Количество просмотров358

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

Читать далее

Небольшая утилитка WP-Seeders для Вордпресса

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.4K

Массовая генерация разделов для таксономии в WP через массив и команду wp-cli.

Прикольная штука вроде, удобная.

Открыть

Оценка задач в IT: делать или не делать — вот в чем вопрос?

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

Оценивать ли время на выполнение задач в IT? А может быть просто пойти и начать делать? А может быть можно оценить объем задач, а не время? И что же вообще нужно и можно оценить? 

В этой статья я рассказываю про 4 метода оценивания задач в IT — от угадывания до хороших и честных расчётов.

Читать далее

Как правильно пофиксить INP и весь Performance: опыт команды ОК

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

С 12 марта 2024 года метрика FID (First Input Delay) из семейства Core Web Vitals заменена метрикой INP (Interaction to Next Paint), которая оценивает скорость отклика сайтов. При этом, согласно оценке Google, по метрике FID было оптимизировано 93% сайтов, но лишь 65% — по INP. 

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

Меня зовут Кирилл Радыгин. Я руководитель фронтэнд направления в компании Одноклассники. В этой статье я расскажу, как команда ОК адаптировала соцсеть под изменившийся набор метрик оценки перформанса.

Читать далее

Не так страшен Битрикс24, как о нем говорят: практический опыт модульной доработки для бизнеса

Уровень сложностиПростой
Время на прочтение21 мин
Количество просмотров565

Всем привет, я Сергей — ведущий программист в e-commerce агентстве KISLOROD.

Чаще всего я решаю задачи разработки для сайтов на 1С-Битрикс, но также иногда работаю с Битрикс24. Сегодня хочу рассказать о модульной доработке Б24 в одном из кейсов.

Читать далее
1
23 ...