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

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

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

SwiftUI уроки (часть 7)

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

В этом разделе вы узнаете, как рисовать линии, дуги и диаграммы  с помощью Path и встроенных форм, таких как Circle и RoundedRectangle, в SwiftUI. Вот что мы изучим:

* Понимание Path и рисование линий

* Что такое протокол Shape и как нарисовать настраиваемую форму путем соответствия протоколу

* Рисование диаграммы

* Создание индикатора прогресса с помощью открытого круга

* Рисование «pie chart» диаграммы

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

Создание серверного Live Chat приложения с использованием Next.js, Fauna и WunderGraph для GraphQL Live Queries

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

Пошаговое руководство по созданию масштабируемого, чат-приложения реального времени с использованием серверных технологий... с небольшой помощью от NextAuth.js для входа через GitHub. Кому нужны WebSockets, когда у вас есть Live Queries? Не нам!

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

Но что, если ваше приложение является серверным - работает на инфраструктуре, управляемой облачным провайдером, таким как AWS или GCP?

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

Итак, какое решение для создания приложений в реальном времени на серверных архитектурах? Давайте выясним! Давайте создадим этот чат в реальном времени в стиле Slack/Discord, используя Next.js в качестве нашего JS-фреймворка, Fauna (с использованием GraphQL) в качестве нашей базы данных, и WunderGraph в качестве Backend-for-Frontend (BFF), который обеспечивает связь между ними. Наше приложение также будет использовать вход через GitHub, и мы будем использовать знаменитый NextAuth (теперь Auth.js!) для наших нужд в области аутентификации.

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

Чтение на выходные: «Чистая архитектура. Искусство разработки программного обеспечения» Роберта Мартина

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

Сегодня в рубрике снова Роберт Мартин. Он же — «дядюшка Боб». Мы уже отзывались о нём тепло в материале о другой его книге на Хабре, так как при чтении от страниц буквально веет оптимизмом и заботой о людях и идеалах — в виде чистого кода и не только. Мы планируем перечитать всего его книги. На этот раз взяли с полки «Чистую архитектуру».

Роберт Мартин — инженер и программист. Причем кодит он с 12 лет и с тех пор, когда писать код нужно было ещё на бумаге (это не шутка). Как автор он пишет отличные и понятные книги с чистой и лаконичной структурой: никакой воды, немного личных историй, всё по делу, по содержанию и иногда в табличках. Отнюдь не удивительно, что и с архитектурой программного обеспечения у него тоже всё хорошо.

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

Что стоит почитать по Python в 2024 году? Пять хороших книг

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

Литературы никогда не бывает много — ни художественной, ни технической. Это касается и книг по языкам программирования, включая Python. Разработчикам, как начинающим, так и опытным, нужны надёжные руководства для того, чтобы повышать свой профессиональный уровень. В сегодняшней подборке — пять книг, которые могут быть полезны для любого Python-разработчика.

Читать далее
Всего голосов 18: ↑11 и ↓7+14
Комментарии8

Beego в Golang для начинающих

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

Привет, Хабр!

Beego – это фреймворк для разработки веб-приложений на языке Go, ориентированный на быстрое развертывание и простоту использования. В его основе лежит идея создания полнофункциональных приложений с минимум усилиям на настройку и кодирование. Это достигается за счет широкого выбора инструментов, включая ORM, систему маршрутизации, интерфейс кмд и многое другое. Beego придерживается принципов RESTful и MVC.

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

Mojo может стать крупнейшим достижением в области разработки языков программирования за последние десятилетия

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

Mojo — это новый язык программирования, основанный на Python, который устраняет имеющиеся у него проблемы производительности и развёртывания.

Об авторе: Джереми Говард (Jeremy Howard) — Data Scientist, исследователь, разработчик, преподаватель и предприниматель. Джереми является одним из основателей исследовательского института fast.ai, занимающегося тем, чтобы сделать глубокое обучение более доступным, а также он является почётным профессором Университета Квинсленда. Ранее Джереми был выдающимся научным сотрудником в Университете Сан‑Франциско, где он был основателем Инициативы Уиклоу «Искусственный интеллект в медицинских исследованиях».

Mojo – это Python++
Всего голосов 64: ↑45 и ↓19+43
Комментарии272

Изучение TypeScript — полное руководство для начинающих. Часть 4 — Литералы и дженерики

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

Привет! В новой части руководства будут рассмотрены такие важные понятия, как литералы и дженерики. Итак, приступим.

Предыдущие части:
Часть 1 - Введение и примитивы
Часть 2 - Ссылочные типы данных
Часть 3 - Классы и интерфейсы
Часть 5 - Строгий режим и сужение типов

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

Дайджест уходящего года: релокейт в Европу и США, главное о карьере и сверхзанятости

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

Что ждет IT-инженера в Сербии, Швеции, США, Болгарии и Грузии? Чем Берлин отличается от остальной Германии в плане работы и жизни? Как правильно проходить собеседование на софт-скилы? Как расти в карьере? И каково это — полтора месяца работать на двух фултайм-работах? Собрали самые популярные статьи из блога getmatch за год — читайте, если пропустили.

Читать далее
Всего голосов 20: ↑15 и ↓5+13
Комментарии4

Jenkins и Gitlab CI/CD: что выбрать

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

Среди всех существующих CI/CD-инструментов есть два наиболее популярных — Jenkins и GitLab CI/CD. Хотя они решают схожие задачи, между ними есть отличия, которые важно учитывать. Мы пообщались с Кириллом Борисовым, старшим инженером-программистом VK, чтобы больше узнать о ключевых особенностях инструментов, разобраться в их сильных и слабых сторонах. 

В статье проанализируем возможности Jenkins и GitLab CI/CD через призму личного опыта и расскажем, как подобрать инструмент под требования проекта.

Читать дальше
Всего голосов 14: ↑10 и ↓4+7
Комментарии16

Как учат информатике в Европе (и в Чехии в частности)

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

Прочитав топик про образовательный процесс в МГТУ им. Баумана, я решила, что мне тоже есть что рассказать на эту тему. Я училась (собственно, еще формально учусь) в Карловом университете в Праге на физико-математическом факультете (на отделении информатики) и, думаю, многим, не только тем, кто подумывает об обучении за рубежом, будет интересно узнать, как же выглядит зарубежное образование для будущих программистов.

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

Читать дальше →
Всего голосов 184: ↑174 и ↓10+164
Комментарии260

Выравнивание в Bootstrap

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

При работе с фреймворком Bootstrap обычно сталкиваются с тремя основными проблемами:


  1. Как поместить контент внизу колонки?
  2. Как создать многорядную галерею колонок одинаковой высоты в одном .row?
  3. Как центрировать горизонтально несколько колонок, если их суммарная ширина меньше 12 единиц и оставшаяся ширина нечетна?

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


Решение третьей проблемы подсмотрено здесь.


Общий код


<style>
    [class*=col-] {position: relative}
    .row-conformity .to-bottom {position:absolute; bottom:0; left:0; right:0}
    .row-centered {text-align:center}   
    .row-centered [class*=col-] {display:inline-block; float:none; text-align:left; margin-right:-4px; vertical-align:top} 
</style>

<script src="assets/conformity/conformity.js"></script>
<script>
    $(document).ready(function () {
        $('.row-conformity > [class*=col-]').conformity();
        $(window).on('resize scroll', function() {
            $('.row-conformity > [class*=col-]').conformity();
        });
    });
</script>

Читать дальше →
Всего голосов 30: ↑16 и ↓14+2
Комментарии33

Метеостанция на Arduino с визуализацией данных

Время на прочтение6 мин
Количество просмотров35K
Paul Klee In The Style Of Kairouan

Введение


Про метеостанции на Arduino писали и не раз. В своё оправдание скажу, что был хакатон — а нашей команде (в составе меня и хабраюзера ViArt) хотелось попробовать работу с Arduino. Кроме того к нашей метеостанции прикручена визуализация данных. Если хотите узнать, какая база данных может получать данные по com-порту без промежуточных звеньев в виде web-сервера, файлов или ещё каких-то ухищрений, добро пожаловать под кат.
Читать дальше →
Всего голосов 20: ↑18 и ↓2+16
Комментарии20

Разминка перед выходными: есть Raspberry Pi, Arduino и свободный вечер

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

image alt text


Неделя плавно подходит к выходным, поэтому самое время придумать себе занятие на длинные праздники. Например, можно собрать из Raspberry Pi тепловизор для ответа на вечные вопросы "сколько греть двигатель" и “какова температура головы у программиста”. Или собственный вариант Google Glass на базе Arduino, пусть и узкоспециализированный.

Всего голосов 24: ↑22 и ↓2+20
Комментарии9

Ruby is not Rails

Время на прочтение3 мин
Количество просмотров4.9K
Последнее время о Ruby начали думать только как о Ruby on Rails. Но в мире Ruby ещё много красивых и иногда уникальных вещей. Поэтому, в целях борьбы с предрассудками, хочу вкратце рассказать о отличных и необычных Ruby-проектах.

Читать дальше →
Всего голосов 71: ↑63 и ↓8+55
Комментарии30

Простой цифровой термометр своими руками

Время на прочтение3 мин
Количество просмотров172K
Наткнулся недавно в интернете на интересный материал, идея заинтересовала, но после сборки отказалась корректно работать, погуглив дальше наткнулся на другой вариант, который и представляю.

Простой цифровой термометр с подключением через COM-порт.


Читать дальше →
Всего голосов 111: ↑108 и ↓3+105
Комментарии148

Как я на домашнем компьютере файлы организовывал, синхронизировал и создавал резервные копии

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


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

В универе файлов стало еще больше, количество компьютеров дома возросло до 3 штук, я начал делать бэкапы. Пока просто, делая копии текущих папок на компьютере, не особо заморачиваясь с их структурой. Под конец обучения я задумался, стоит ли хранить огромное количество своих документов на внешних серверах. Подумав немного, решил, что лучше так не делать и решил слезть с иглы Evernote. Предварительно я продумал структуру хранения файлов на компьютере, чтобы даже без поиска легко найти нужную информацию. Каждой теме, которая меня интересовала, я создавал папку в /home/username папке. Это я называл категориями. Внутри каждой категории были подпапки-проекты, обязательной была папка misc практически в каждой папке, чтобы в файловом менеджере не видеть кучи беспорядочно наваленных неструктурированных файлов. Например, у меня были папки Bioinformatics/Aligner, Development/Projects/GameOfLife. Были четкие правила наименования файлов и папок (без нижних подчеркиваний, camelCase, папки с большой буквы, файлы с маленькой). Всё вроде было хорошо, но я ленился и не всегда красиво выкладывал файлики в нужные папки, что в конечном итоге привело к захламлению моей структуры. Я решил попробовать что-то другое…
Читать дальше →
Всего голосов 25: ↑18 и ↓7+11
Комментарии33

Автоматизируем социальную активность вашего интернет стартапа с помощью ifttt.com

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

Начнём с описания ifttt.com



ifttt.com — это очень перспективный стартап, который в двух словах: Lets You Hack Together Web Apps, Without Coding Skills. Если детальнее, то это сервис позволяющий пользователям, без погружения в API огромного количества сервисов и каких либо знаний о разработке\языках программирования смешивать и автоматизировать различную активность друг с другом. В начале 2012 года получили посевные инвестиции в размере $1.5M.

В системе всего несколько сущностей, таких как задачи ( это правила ваших триггеров или реакций на внешнее событие), рецепты (это задачи, которые создали другие и поделились со всеми) и каналы ( это то, что с чем можно пытаться смешивать налаживая разные схемы выполнения задач, каждый канал следует привязать к ifttt.com ).

ifttt main screen
Экран задач выглядит так

Читать дальше →
Всего голосов 80: ↑65 и ↓15+50
Комментарии32

Адаптивный и мобильный дизайн с CSS3 Media Queries

Время на прочтение7 мин
Количество просмотров592K
Разрешение экрана в наши дни колеблется от 320px (iPhone) до 2560px (большие мониторы) или даже выше. Пользователи больше не просматривают сайты только на настольных компьютерах. Теперь пользователи используют мобильные телефоны, небольшие ноутбуки, планшетные устройства, такие как iPad или Playbook для доступа в интернет. Поэтому, традиционный дизайн с фиксированной шириной больше не работает. Дизайн должен быть адаптивным. Структура должна автоматически изменяться с учетом всех разрешений дисплеев. Эта статья покажет вам как создавать кросс-браузерный адаптивный дизайн при помощи HTML5 и CSS3 media queries.
Читать дальше →
Всего голосов 91: ↑90 и ↓1+89
Комментарии32

DDoS-атаки и электронная коммерция: современные подходы к защите

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


В маркетинговых материалах по защите от DDoS-атак, публикуемых всевозможными компаниями, раз за разом встречаются ошибки одного и того же плана. А именно, приводятся взятые из чьих-либо отчётов данные о зафиксированных атаках объёмом, например, 400 Гбит/с, делается вывод, что всё плохо и нужно срочно что-то делать, но при этом в характеристиках предлагаемых услуг указан верхний предел объёма фильтруемых атак в 10 Гбит/с. И такие несоответствия возникают довольно часто.

Происходит это потому, что специалисты, которые создают саму услугу, не очень верят в то, что столь мощные атаки вообще реальны. Потому что ни сами эти специалисты, ни кто-либо, кого они знают, с такими атаками не сталкивались. И потому возникает актуальный для e-commerce вопрос: какие угрозы действительно сейчас актуальны, а какие маловероятны? Как оценивать риски? Обо всём этом и многом другом рассказывается в докладе Артёма Гавриченкова на конференции Bitrix Summer Fest.
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии8

Почему я выбрал Yii2

Время на прочтение6 мин
Количество просмотров57K
Перевод некоторых глав из книги Bill Keck. Yii 2 For Beginners.

Предисловие


Добро пожаловать в Yii2 для начинающих. Эта книга проведёт вас шаг за шагом сквозь установку и развёртывание, а затем программирование на сегодняшний день самом увлекательном фреймворке Yii2.

Yii2 поставляется в двух вариантах, basic и advanced, и может показаться неестественно, использовать для начинающих шаблон advanced(продвинутый), но этот шаблон, по иронии судьбы, облегчает работу с приложением, если оно использует модели, которые хранятся в базе данных. Современные веб-приложения нуждаются в этой функциональности и шаблон advanced имеет в своём распоряжении для этого готовые решения.

Другое большое преимущество у шаблона advanced, это то, что приложение делится на frontend(пользовательская часть) и backend(модуль управления), который дает исчерпывающий ответ на постоянно возникающий вопрос: «куда же поместить модуль управления?»
Я бы хотел не только ввести вас в удивительный мир php фреймворка, но и так, же дать вам точку опоры, включающую все, в чем нуждается надежное веб-приложение управляемое базой данных. Хотя advanced шаблон содержит чрезвычайно полезные возможности, в нем, конечно же, отсутствуют важные части, которые мы будем пополнять с помощью этой книги.

Цель — предоставить вам модель шаблона, которую вы сможете использовать для всех ваших будущих проектов.

Возможности


С инсталляцией advanced шаблона вы получите некоторые возможности веб-приложения, включающие в себя:

  • предопределённую схему таблицы пользователей
  • форму входа и регистрации пользователей
  • функциональность восстановления забытого пароля
  • разделённые области пользователей (frontend) и администраторов(backend)
  • автоматическую генерацию кода для моделей, контроллеров и представлений
  • встроенную интеграцию с Twitter Bootstrap и приоритетную верстку для мобильных устройств
  • надежные виджеты и помощники для представления данных

Читать дальше →
Всего голосов 29: ↑13 и ↓16-3
Комментарии37
1
23 ...

Информация

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