Когда я только знакомился с принципами SOLID, я искал понятные статьи на Хабр. При этом пришлось прочитать не одну статью, и полное понимание пришло сильно позже. Хотелось бы, чтобы новички на более простых примерах смогли почувствовать, о чем эти принципы.
Программист
Вопросы и ответы для собеседования на позицию frontend-разработчик. Часть 2
Всем привет! В этой статье (части) рассмотрим вопросы, связанные с великим и могучим TypeScript'ом, которые задают на собеседованиях. Если вы не читали прошлую статью, где описаны вопросы по JS, вот ссылочка. Пожалуйста, не заучивайте вопросы, это вредно для вашего здоровья!)
Как разработать свой SaaS повышения конверсии сайтов
Сегодня хочу рассказать о том, как создаются SaaS продукты, какие этапы разработки и запуска вам предстоит пройти, как монетизировать, развивать такие проекты и, конечно же, сколько это стоит.
О найме. Взгляд оттуда
Давайте поговорим о том как нам обустроить Россию правильно нанимать людей и не задавать глупые вопросы на интервью.
Еще раз про Oracle standby
До этого момента мы вполне обходились ежедневным или даже еженедельным бэкапом («горячим» или «холодным» копированием, а может и просто экспортом данных) и нас устраивало время восстановления системы порядка суток (будем считать, что данных у нас на пару терабайт).
И вот оказалось, что на восстановление системы нам отводится не более часа, и никакие данные нам терять нельзя.
Итак, все указывает на то, что нам придется поднимать standby сервер.
В принципе, большая часть из того, о чем говорится в этой статье, описано в «Oracle Data Guard Concepts and Administartion», а также в куче мест на просторах Сети, но, по большей части, это инструкции, содержащие последовательность команд, без особого описания их смысла и, главное, без рекомендаций, что делать, если что-то идет не так.
Я постараюсь описать процесс развертывания физической standby базы максимально подробно с указанием тех грабель на которые когда-либо натыкался.
Указание на случайно не обнаруженные мной проблемы, а также любые уточнения и дополнения всячески приветствуются.
Нужен бесплатный SSL-сертификат? Легко
Если вам нужен SSL-сертификат, но вы не являетесь специалистом в веб-технологиях, то эта заметка для вас. Описан простой способ выпуска базового SSL-сертификата Let’s Encrypt в ручном режиме, на локальном компьютере с Windows, с помощью приложения Certbot. Этот способ позволяет получить файлы SSL-сертификата в папку на своём локальном компьютере, после чего можно установить сертификат на свой хостинг.
Потребность в SSL-сертификатах возникла у меня в связи с тем, что срок старых истёк, а создать новые оказалось невозможным из-за возникших ограничений на доменные зоны RU и РФ. Если у вас такая же проблема или вам просто надоело искать веб-сервис для выпуска SSL-сертификатов, то эта заметка вам поможет.
Поскольку я пока не знаю наилучшего пути, то ниже просто опишу ту последовательность действий, которую сам выполнил и которая позволила мне создать SSL-сертификаты для десяти своих доменов (в том числе в зонах RU и РФ), а значит и вам этот способ может помочь.
Как я пишу HTTP-сервисы спустя 13 лет работы с Go
Примерно шесть лет назад я написал пост о том, как пишу HTTP-сервисы на Go, и сегодня я снова хочу рассказать, как пишу HTTP-сервисы.
Тот пост оказался довольно популярным и вызвал обсуждения, повлиявшие на то, как я делаю это сегодня. И спустя годы ведения подкаста Go Time, обсуждения Go в X/Twitter и поддержки подобного кода я решил, что настало время обновить информацию.
(Если вы педант и скажете, что Go не совсем 13 лет, то я отвечу, что начал писать HTTP-сервисы на Go версии .r59.)
В этом посте рассматривается широкий спектр тем, связанных с созданием сервисов на Go
Я создаю Систему (RealRPG) в реальной жизни
Ты не задумывался никогда, почему мы не играем в собственную жизнь как в RPG игру? Ведь все похоже, только графика получше.
У нас есть цели (краткосрочные, долгосрочные, свои и навязанные необходимостью выживания), гринд и фарм, навыки, ресурсы (как материальные так и нематериальные), квесты, задачи, награды и достижения. И даже аналоги рейд-боссов и эпик-квестов.
В играх, часто, у нас не получается достигнуть желаемого с первого раза. И мы перепроходим этот участок день за днем пока у нас не получится. А вот в жизни - такое поведение - редкость.
Все о триггерах в Oracle
- Общие сведения о триггерах Oracle
- DML triggers
- Системные триггеры (System triggers)
- Компиляция триггеров
- Исключения в триггерах
- Порядок выполнения триггеров
- Включение/отключение триггеров
- Права для операций с триггерами
- Словари данных с информацией о триггерах
Прощайте, базы данных, да здравствуют векторные базы данных
Революция в области искусственного интеллекта переформатирует все отрасли нашей жизни, с одной стороны обещая невероятные инновации, а с другой ー сталкивая нас с новыми вызовами. В безумном потоке изменений эффективная обработка данных становится приоритетом для приложений, на основе больших языковых моделей, генеративного ИИ и семантического поиска. В основе этих технологий лежат векторные представления (embeddings, дальше будем называть их Эмбеддинги), сложные представления данных, пронизанные критической семантической информацией.
Эти вектора, созданные LLMs, охватывают множество атрибутов или характеристик, что делает управление ими сложной задачей. В области искусственного интеллекта и машинного обучения эти характеристики представляют различные измерения данных, необходимые для обнаружения закономерностей, взаимосвязей и базовых структур. Для удовлетворения уникальных требований к обработке этих вложений необходима специализированная база данных. Векторные базы данных специально созданы для обеспечения оптимизированного хранения и запросов векторов, сокращая разрыв между традиционными базами данных и самостоятельными векторными индексами, а также предоставляя ИИ-системам инструменты, необходимые для успешной работы в этой среде нагруженной данными.
Никогда не забывай об этом, когда делаешь open-source проект
Если составлять топ самых крутых изобретений человечества, то второе место сразу после кофеварки наверняка займёт opensource – разработка проектов с открытым исходным кодом, которая помогла родиться поистине огромному числу полезных и гениальных продуктов. Причём опенсорс важен не только для сообщества программистов в целом, но и для каждого конкретного разработчика: участвуя в создании программ с открытым кодом, они могут неплохо развить свои скиллы, обрести новых друзей со сходными интересами и, конечно же, потешить своё самолюбие. Признайтесь, вам хотелось бы, чтобы вашей библиотекой пользовался весь мир?
Один маленький tap для SMS OTP, но гигантский скачок для всего человечества
Привет Habr!
Не так давно застал себя врасплох, когда заполнял очередную web-форму, на которой надо было вводить код SMS руками посимвольно! Мелочь, но раздражает. Особенно, когда понимаешь, что современные обозреватели сами проделают всю работу – просто удели немного времени и пользователи не будут испытывать не нужный негатив.
Почему до сих пор хватает ресурсов на просторах рунета, где подобные вещи надо исполнять не в один “tap”? (речь про мобильные сайты)
Свято верю в то, что наш коллективный разум найдет-таки возможность достучаться до тех, кто еще не встал на путь истинный по данному вопросу. Возможно, это ваш сосед по лестничной клетке, или коллега из соседнего департамента, который заведует web-формой, которой пора уже выйти на “новый уровень” 😁. Я и у себя в “хозяйстве” нашел подобное. Чего греха таить? – исправляемся.
Давайте по классике - лучше один раз увидеть. На скринах ниже показал несколько наглядных примеров из жизни о том, как браузеры могут отобразить на экранной клавиатуре код из SMS – нажми на него один раз и о чудо, весь код оказывается в нужном месте в нужное время. Уровень напряга 0%.
Оптимизация SQL-запросов в Oracle
Всем привет. Меня зовут Михаил Потапов, я - главный системный аналитик компании "Ростелеком Информационные Технологии". В компании занимаюсь разработкой отчетности для сегмента B2B и проектированием хранилища данных, на базе которого эта отчетность функционирует. Работоспособность каждого отчета напрямую зависит от корректно выстроенных SQL-запросов к базе данных Oracle, поскольку при работе с большими объемами данных скорость выполнения запросов может существенно снижаться. Снижение скорости сильно затрудняет работу с отчетами для конечного пользователя, а в некоторых случаях и вовсе делает ее невозможной.
В этой статье мы рассмотрим основные принципы оптимизации запросов в Oracle SQL, которые помогут ускорить работу с базой данных и повысить эффективность работы. Сразу отмечу, что статья рассчитана на junior и middle-специалистов, которые пишут сложные запросы к базе данных, работают с большими объемами данных и при этом ранее с вопросом оптимизации не сталкивались. Статья не содержит подробное руководство к действию, но описывает базовые основы "культуры кода", соблюдение которых позволит снизить нагрузку на БД и даст возможность более эффективно извлекать из нее данные.
IronZen: как мы решили боль тысяч тревожных людей, разработав собственное мобильное приложение
Кейс о том, как компания друзей с опытом в IT и digital на досуге начала разрабатывать приложения, и в первом же проекте закрыла острую проблему людей с повышенной тревожностью и ОКР, дав старт собственной кузнице аппок.
[Разбор резюме] SAP-разработчик, ушедший в Backend: как оформить резюме, когда сменил специализацию
Сегодня у нас на разборе интересное резюме: у человека большой опыт, но в SAP-разработке. Буквально год назад он решил переквалифицироваться в Go-разработчики. Разберем его резюме и посмотрим, как правильно показать большой трудовой опыт, при этом сделав акцент на новых рабочих навыках.
Маленький поисковик, который не смог
Сридхар Рамасвами ушёл из Google не для того, чтобы создать другой поисковый движок. По крайней мере, изначально. В завершение своей 15-летней карьеры в Google Рамасвами управлял целым рекламным отделом компании, руководя более чем десятью тысячами людей, и лучше других знал, какой объём работы необходим, чтобы реализовать поиск правильно.
Нельзя переоценить степень доминирования Google в мире поиска. По данным большинства исследований, Google владеет примерно девяноста процентами мирового рынка поисковиков, и это число стабильно росло в течение двадцати лет. Google — поисковый движок, используемый по умолчанию почти в каждом браузере, почти на каждом устройстве. Мы не выполняем поиск в Интернете, мы гуглим. Вторым и третьим в списке идут Bing и Yahoo, но когда вы в последний раз искали что-нибудь в Bing или Yahoo? Для поддержания своего доминирования Google тратит огромные политические, инженерные и финансовые капиталы.
Но больше остальных Рамасвами знал и то, что Google не может или не хочет сделать со своим движком. Имея миллиарды пользователей и сотни миллиардов долларов, Google не будет рисковать, исследуя существенные изменения в своей странице результатов, новые бизнес-модели или любые продукты, которые заставят пользователей меньше заниматься поиском (Рамасвами тестировал функцию Google Contributor, позволявшую людям платить за отсутствие рекламы на некоторых сайтах, но система не взлетела). Возникла возможность, которой Google просто не могла и не хотела бы пользоваться. Поэтому когда Рамасвами ушёл из компании в 2018 году, они с Вивеком Рагхунатаном (давним руководителем высшего звена Google и YouTube) основали компанию Neeva для создания поискового движка будущего.
Как делается OpenSource: личный опыт
Я - автор двух пакетов, входящих более-менее во все дистрибутивы Linux: sane-airscan и ipp-usb.
Кроме того, sane-airscan входит во все основные дистрибутивы BSD (FreeBSD, NetBSD и OpenBSD) и в ChromeOS. ipp-usb в ChromeOS не взяли потому, что он написан на Go, а у них там очень жестко с размером исполняемых файлов, вместо этого они написали свое на Rust, но предпочли бы взять моё изделие, если бы могли. Совсем недавно появился порт ipp-usb на FreeBSD, вероятно, другие BSD тоже скоро подтянутся.
Вместе эти два пакета образуют стек "бездрайверного" сканирования документов для Linux и *BSD, а в перспективе нескольких лет, когда старые сканеры, наконец, вымрут, вероятно других драйверов и не останется.
Кроме того, ipp-usb делает возможным "бездрайверную" печать на USB-устройствах.
Здесь я хочу рассказать, каково оно, быть автором популярных OpenSource пакетов. Хоть эта работа и не принесла мне особых денег (на что я, впрочем, особо и не рассчитывал), она принесла мне бесценный опыт.
В целом, я полагаю, продвижение OpenSource пакетов структурно близко к продвижению на рынок программных продуктов. Занимаясь этой деятельностью, очень хорошо начинаешь понимать разницу между (1) написать программу, которая работает для меня (2) написать программу, которую можно назвать продуктом (3) вывести продукт на рынок.
Первое занимает гораздо меньше времени, чем второе. Второе - гораздо меньше времени, чем третье.
Уроки, которые я вынес из десяти лет работы над проектом с открытым кодом
Вы будете правы, если предположите, что за эти десять лет SpiderFoot стал довольно большой частью моей жизни. Я проводил большую часть свободного утреннего и вечернего времени за «работой» над ним и часто вел беседы о нем с женой, детьми и друзьями. Он принес мне много радости, хотя подчас и действовал на нервы.
Поэтому сейчас, как представляется, наступил удачный момент для того, чтобы оглянуться назад, поразмышлять и сформулировать те уроки, которые я вынес из опыта и впитал в себя за это время. Эту статью я пишу отчасти для собственной пользы, но также и с надеждой, что она пригодится другим людям, которые или пошли похожим путем, создав свой проект с открытым кодом, или подумывают об этом, но еще не решились.
Управление ресурсами нашего мозга
Эта статья по своей сути что-то вроде конспекта по вебинарам Ани Обуховой об эффективном использовании ресурсов нашего мозга, дополненного моими умозаключениями и рекомендациями.
Если хотите посмотреть оригиналы, то вот ссылки на её видео:
Как изменить mindset в Agile сторону
OKR изнутри — как мозг ставит цели
Аня очень харизматично и доступно подаёт информацию, не влюбиться в тему просто невозможно. Но материл всё-таки очень сложный для понимания, особенно на слух. Поэтому иметь такой конспект под рукой будет очень полезно, особенно на начальных этапах, когда пытаетесь всё осознать и начать внедрять в свою жизнь.
Самые распространенные логические ошибки
Изучение логических ошибок помогает в развитии критического мышления, необходимого во всех сферах жизни. School of Thought проделала отличную работу, описав 24 наиболее распространенные логические ошибки.
Информация
- В рейтинге
- Не участвует
- Откуда
- Ростовская обл., Россия
- Работает в
- Дата рождения
- Зарегистрирован
- Активность