Обновить
1141.72

Программирование *

Искусство создания компьютерных программ

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

Как с помощью ИИ починить любой сломанный код и заставить его работать. Теперь не нужно писать нейронке «код не работает» по 20 раз и смотреть на её мучения — достаточно этого промпта:

“Reflect on 5–7 different possible source of the problem, distill those down to 1–2 most likely sources, and the add logs to validate your assumptions before we move onto the implementing the actual code fix”.

Промпт универсальный и работает в любой нейронке и ИИ-среде — от ChatGPT до Cursor.

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

🗓 17.02.1983 - Утвepждeн cтaндapт языкa пpoгpaммиpoвaния «Ada» [вехи_истории]

Этот язык создавался для решения сложных задач в области критически важных систем – авиации, космоса, телекоммуникаций и военной техники. Он получил свое название в честь Ады Лавлейс, первой в истории женщины-программиста, которая еще в XIX веке работала над алгоритмами для аналитической машины Бэббиджа.

🗓 17.02.1983 - Утвepждeн cтaндapт языкa пpoгpaммиpoвaния «Ada»
🗓 17.02.1983 - Утвepждeн cтaндapт языкa пpoгpaммиpoвaния «Ada»

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

📼 ЯП применяются в том числе и для создания операционных систем, а про одну из них ролик уже на канале:
Удивительная история Android! Вы этого НЕ ЗНАЛИ
YouTube | VkVideo

Теги:
Всего голосов 2: ↑2 и ↓0+4
Комментарии2

Разработчик под ником madprops предложил способ для быстрого поиска команд в терминале

«Я очень часто обращаюсь к истории действий в shell, чтобы снова и снова запускать одни и те же команды. Пока нет эффективного способа сделать это. Я думаю, что это проблема, которую нужно решать с помощью специализированного инструмента. Я могу попробовать сделать инъекцию оболочки с помощью rofi позже. Но сейчас я придумал трюк, который помогает в работе. Добавьте значки к командам, чтобы вы могли мгновенно распознавать их по стрелкам вверх:

  • : ✅;./utils/check.sh

  • : ⚡;./scripts/tag.py

  • : 📚;./scripts/makedocs.sh

Обратите внимание на двоеточия и точки с запятой. Значки не являются частью команды, они ничего не делают. Но теперь ваше зрение очень быстро распознает нужный элемент. Вместо иконок можно использовать текст, который можно легко отфильтровать позже», — пояснил madprops.

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

Готовим валентинку в Python:

1. Заходим сюда;

2. Копируем и вставляем код:

print('\n'.join
 ([''.join
   ([('Name'[(x-y)%4 ]
     if((x*0.05)**2+(y*0.1)**2-1)
      **3-(x*0.05)**2*(y*0.1)
       **3<=0 else ' ')
        for x in range(-30,30)])
         for y in range(15,-15,-1)]))

Замените Name на название\имя, а число в конце этой же строки — на количество букв в этом слове;

3. Жмём Run.

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

Расширенные алерты в Amvera Cloud

Сегодня мы выпускаем функционал расширенных алертов.

Теперь каждый наш пользователь сможет получать уведомления в специальный бот, если:

  1. Проект ушел в ошибку.

  2. Произошло превышение ОЗУ или ЦПУ выше заданного порога

  3. Сработала Liveness или Readiness проба.

  4. Произошла ошибка сборки или запуска проекта.

  5. Встретилась заданная фраза в логе.

Amvera Cloud — это облако для простого деплоя приложений через git push. Встроенный CI/CD, бэкапы и мониторинг позволяют развернуть проект тремя командами в IDE и не думать о настойке инфраструктуры. Amvera проще, чем использование VPS или Kubernetes-кластера.

Теги:
Рейтинг0
Комментарии0

Почему Go — выбор крупных IT-компаний? Узнайте в нашем новом подкасте 🎧

В нем Владимир Балун, основатель Балун.Курсы, пообщался с командой Cloud.ru про тренды в программировании, опыт перехода на Go и подготовку к алгоритмическим собеседованиям.

А еще:

  • как глобальные изменения в отрасли влияют на требования к разработчикам;

  • почему Go стал одним из основных языков для веб-разработки и высоконагруженных приложений;

  • как AI и автоматизация формируют будущее простых задач, таких как верстка.

👉 Посмотреть подкаст также можно на YouTube.

Теги:
Всего голосов 2: ↑1 и ↓1+2
Комментарии0

15 правил вайб-программироания от Cursor:

  • начинайте с шаблона — используй готовые репозитории с GitHub для старта.

  • используйте режим агента — для создания, редактирования и управления файлами с помощью команд на естественном языке.

  • используйте Perplexity — для поиска дизайнов и API из интернета, получения инструкций и примеров кода.

  • создавайте новые чаты в Composer — для каждой отдельной задачи, держи чаты короткими.

  • запускайте локально, тестируй часто — находи ошибки на ранних этапах.

  • итерируйте и дорабатывайте — не стремитесь к идеалу сразу, улучшай проект постепенно.

  • используйте голосовой ввод — например, Whispr Flow для быстрого ввода текста.

  • клонируйте и форкайте с умом — берите готовые репозитории, адаптируйте их под себя

  • копируйте ошибки и вставляйте в Composer — часто агент сразу предложит решение.

  • не забывайте, что можно восстановить старые чаты — сохраняйте работу, чтобы при необходимости вернуться к предыдущей версии.

  • храните данные в переменных среды — не прописывайте API-ключи в коде напрямую.

  • чаще коммитите в GitHub — регулярно фиксируйте прогресс.

  • разворачивайте проект рано — например, через Vercel, чтобы вовремя выявлять проблемы.

  • сохраняйте лучшие промпты — чтобы в будущем использовать их снова.

  • наслаждайся процессом – кодьте, экспериментируйте, учитесь и получайте удовольствие.

Ранее Сооснователь компании OpenAI, экс-директор по ИИ и бывший глава отдела разработки автопилота Tesla Андрей Карпаты сообщил, что занялся вайб-программированием и ему это нравится.

«Есть новый вид программирования, который я называю вайб‑программированием (vibe coding), где вы полностью отдаётесь вибрациям, принимаете экспоненты и забываете, что код вообще существует. Это возможно, потому что большие языковые модели (LLM, например, Cursor Composer w Sonnet) становятся слишком хороши. Также я просто общаюсь с Composer с SuperWhisper, поэтому я почти не касаюсь клавиатуры. Я прошу о самых глупых вещах, таких как „уменьшить отступ на боковой панели вдвое“, потому что мне слишком лениво, чтобы найти его. Я всегда „Принимаю всё“ (Accept All), я больше не читаю diffs. Когда я получаю сообщения об ошибках, я просто копирую и вставляю их без комментариев, обычно это исправляет ситуацию. Код выходит за рамки моего обычного понимания, мне приходится действительно читать его некоторое время. Иногда LLM не могут исправить ошибку, поэтому я просто обхожу её или прошу вносить случайные изменения, пока она не исчезнет. Это не так уж плохо для одноразовых проектов на выходные, но все равно довольно забавно. Я создаю проект или веб‑приложение, но это не совсем программирование — я просто вижу что‑то, говорю что‑то, запускаю что‑то и копирую, вставляю что‑то, и это в основном работает», 

рассказал Карпаты.

Теги:
Рейтинг0
Комментарии3

Должен же тимлид смотреть Merge Request (Pull Request)? 

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

  • контролировать качество кода программистов команды;

  • следить за соблюдением принятых стандартов;

  • управлять рисками кодовой базы команды;

  • обучать участников команды через ревью их кода;

  • держать руку на пульсе того, чем занимаются участники команды. 

Однако что делать, если у вас кросс-функциональная команда, состоящая из двух бэкендеров, пары фронтендов, QA и аналитика? Нужно ли вам просматривать все их MR? Сможете ли вы адекватно оценить код на PHP, код на React + TypeScript и автотесты на Python? Очевидно, что нет. 

Для разрешения данной ситуации вы можете:

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

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

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

 Как поступить?

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

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

Автоматическое распределение код-ревью среди всех участников функции (все фронтенды, все бэкенды), вне зависимости от проекта, с фиксацией лица, поставившего одобрение. Автоматически напомните человеку, что он превысил установленные компанией сроки на проведение ревью.

То есть программисты из других команд могут не разбираться в вашем домене, но они способны проверить, что код не делает ничего лишнего и корректно функционирует в рамках проекта (при нагрузке, сущностях, подходах). А факт рандомности ревьювера и фиксации апрува, не позволит им проводить ревью формально.

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

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

P.s. Рекомендую: Эволюционная архитектура - автоматизированное управление программным обеспечением - Нил Форд`

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии1

Запланируйте, какие вебинары посетите в феврале 📅

Регистрируйтесь на бесплатные вебинары, чтобы узнать больше про работу с сервисами платформы Cloud․ru Evolution:

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

Присоединяйтесь!

Теги:
Рейтинг0
Комментарии0

База по JavaScript

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

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

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Новые фичи JS, о которых стоит знать

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

JS развивается каждый год, но многие продолжают писать код, как привыкли, не используя свежие возможности языка. Я стараюсь бороться с этим и внедрять новшества в свою повседневную работу и недавно пошел посмотреть что там нового подвезли в ECMAScript 2024 (ES15). А там оказалось довольно много интересного.

Например, новые методы массивов. Раньше методы вроде .sort() и .reverse() изменяли исходный массив, что могло привести к неожиданным багам.

const arr = [4,1,6,5]
const sortedArr = arr.sort()
console.log(sortedArr) //[1,4,5,6]
console.log(arr) // [1,4,5,6] оригинал также изменился

В ECMAScript2024 (ES15) были добавлены новые методы, которые позволяют работать с копиями массивов не трогая оригинал без дополнительного кода:

const nums = [1, 2, 3];
const reversedNums = nums.toReversed();
console.log(reversedNums); // [3, 2, 1]
console.log(nums); // [1, 2, 3] оригинал не изменился

Точно так же работают новые методы .toSorted() и .toSpliced(). Они делают код более предсказуемым и чистым.

Также, я с огромным восхищением прочитал про Temporal - новый объект для работы с датами и временем. Например, меня всегда поражало , что в Date месяцы индексируются с 0 (январь – это 0), а вот дни месяца начинаются с 1. Temporal фиксит эти проблемы и теперь можно:
✅ Создавать объекты только с датой или только со временем
✅ Удобно складывать и вычитать даты
✅ Работать с часовыми поясами без боли
В общем делать все, для чего мы раньше тащили в проекты всякие moment и day.js.

К огромному сожалению Temporal пока не поддерживается в браузерах, но когда выйдет – работа с датами в JS станет в разы удобнее.

Если вам интересны такие обновления подписывайтесь на мой Telegram-канал!

🔗 t.me/+qbK9ZPuAocI2MWUy

Там делюсь продакшн-опытом,новостями из мира веб-разработки и разбираю реальные кейсы. Подписывайтесь! 🚀

Теги:
Всего голосов 5: ↑3 и ↓2+2
Комментарии2

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

Курсы и задачи:

Интерактивные платформы:

Видеоуроки:

Книги:

Бонус: в Steam вышла игра Joy of Programming — Software Engineering Simulator от разработчика на Python.

Теги:
Всего голосов 4: ↑4 и ↓0+4
Комментарии1

Осваиваем 23 самых популярных языка программирования с нуля. Учебная база содержит практические курсы для начинающих разработчиков, которые хотят изучить новые ЯП, включая всю необходимую теоретическую часть с разделами по ООП и асинхронным программированием. На каждый урок есть практические задачи — читаем теорию и тут же оттачиваем навыки. Авторы проекта показали самые востребованные связки языков программирования и фреймворков. 

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

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

flushSync в React – костыль или спасение?

Вчера впервые попробовал flushSyncб который подвезли в React еще в 18 версии.
Классное решение для определенных моментов! Выглядит так, будто React выдал нам костыль, но сразу предупредил: пользоваться с осторожностью.

❓ Почему это вообще нужно? (Для тех, кто не совсем в теме)
В React изменения в useState или в useEffect выглядят синхронными, но на самом деле они асинхронны.

Простой пример:

...

const [count, setCount] = useState(0);

console.log(count); // 0

setCount(1); console.log(count); // Всё ещё 0! 😲

...

Кажется, что setCount(1) сразу меняет count, но на самом деле новое значение попадёт в консоль только при следующем ререндере.

То же самое в useEffect:

...

useEffect(() => { console.log("Эффект сработал!"); }, [count]);

setCount(1); console.log("А это после setCount");

...

Лог "А это после setCount" появится в консоли раньше, чем "Эффект сработал!", потому что useEffect выполняется уже после рендера.

Как flushSync меняет поведение?

Обычно React группирует обновления (batching) и откладывает ререндер до конца текущего цикла. flushSync ломает это поведение и заставляет React сразу выполнить ререндер.

function Example() { 
    const [count, setCount] = React.useState(0); 
    const ref = React.useRef(null);
    const handleClick = () => { 
        flushSync(() => setCount(count + 1)); 
        console.log("Высота элемента:", 
            ref.current?.offsetHeight); 
        };

    return (<button onClick={handleClick}>
        Добавить  {count}
    </button>); 
} 

Что тут происходит?
Без flushSync React подождал бы до конца текущего вызова и только потом обновил DOM.
С flushSync обновление происходит немедленно, и console.log видит уже новый DOM.

React нас предупреждает
В документации прямо сказано:

"flushSync – это низкоуровневый API. Используйте его только тогда, когда вам действительно нужно измерить DOM сразу после обновления состояния."

Когда не стоит использовать flushSync?
Если можно обойтись обычными useEffect или useLayoutEffect.
Если batching работает нормально и не мешает.
Если нет необходимости немедленного ререндера (иначе можно уронить производительность).

Итог
flushSync – мощный инструмент, но использовать его нужно осознанно. Он нужен в случаях, когда важно немедленно обновить стейт и тут же прочитать DOM (например, для анимаций).

Если понравился пост присоединяйтесь к моему каналу в Telegram по ссылке https://t.me/+qbK9ZPuAocI2MWUy.
Там я делюсь своим опытом и пишу материалы которые будут полезны как новичкам, так и матерым разработчикам.

Теги:
Рейтинг0
Комментарии0

Как эффектно ворваться в mob-программирование? Узнай из выступления нашего бэкенд-лида! 

В прошлом году Витя Михайлов, Backend lead Garage Eight, выступил на конференции TechLead 2024 с докладом про mob programming. Он рассказал про пользу этого подхода к разработке, а также трудности его внедрения. А еще поделился приемами, которые помогут вовлечь в этот процесс команду, справиться с «болячками» и сделать mob-программирование частью ежедневной работы.

Если не смог побывать на мероприятии, то самое время смотреть запись ;-)
> YouTube
> VK

Кстати, у Вити есть свой ламповый канал, где он разгоняет про бэкенд, менеджмент и процессы разработки. Заглядывай почитать! 

Теги:
Всего голосов 3: ↑0 и ↓3-3
Комментарии0

Три важных вопроса о регистрации программ в Роспатенте

Мы продолжаем нашу серию о защите программ в Роспатенте.

Если поменять название программы или часть кода, потребуется ли новая регистрация программы для ЭВМ?

Название программы не является объектом правовой охраны при регистрации программы для ЭВМ. Название нужно зарегистрировать как товарный знак и если вы его поменяете, нужно будет подать новую заявку на регистрацию товарного знака. 

А вот изменение части кода = появление новой версии программы. Однако по Гражданскому Кодексу каждая новая версия ПО — это формально новая программа, поэтому вам нужно будет подать новую заявку на регистрацию программы для ЭВМ.

Если исходный код программы для ЭВМ еще не дописан, можно ли начать процедуру регистрации в Роспатенте уже сейчас?

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

Срок и территория действия прав на программу для ЭВМ

Начало действия исключительного права на программу для ЭВМ отсчитывается с даты ее создания.

Срок действия прав — в течение всей жизни автора (создателя), и далее 70 лет с 1 января, следующего за датой его смерти.

Если авторы программы — это коллектив разработчиков, то срок действия истекает в год смерти последнего из них.

Территория. После регистрации программы она имеет правовую охрану не только в России, но и автоматически во всех странах, которые входят в Бернскую конвенцию (на 2022 год входит 181 государство).

Бесплатный поиск, мониторинг и регистрация товарных знаков  и других объектов интеллектуальной собственности.

Поиск по программам для ЭВМ

Регистрация программы для ЭВМ

Теги:
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Модель TCP/IP (Transmission Control Protocol/Internet Protocol) является основой для функционирования Интернета и большинства современных компьютерных сетей. Она описывает, как данные передаются между устройствами, обеспечивая надежную и эффективную связь. Модель состоит из нескольких уровней, каждый из которых выполняет определенные функции и использует свои протоколы для обработки данных.

Основные Протоколы

Два ключевых протокола, на которых основана модель TCP/IP, это:

  • TCP (Transmission Control Protocol): отвечает за надежную передачу данных, гарантируя, что информация будет доставлена в целостности и в правильном порядке.

  • IP (Internet Protocol): отвечает за адресацию и маршрутизацию данных, разбивая их на пакеты для передачи по сети.

Уровни Модели TCP/IP

Модель TCP/IP делится на четыре основных уровня:

  1. Канальный уровень (Link Layer):

    • Этот уровень управляет передачей данных между узлами одной локальной сети.

    • Протоколы канального уровня определяют, как данные взаимодействуют с физической средой передачи (например, Ethernet).

    • Он обеспечивает передачу данных на физическом уровне и зависит от используемого оборудования.

  2. Сетевой уровень (Network Layer):

    • Отвечает за маршрутизацию пакетов данных по сети.

    • Основной протокол этого уровня — IP, который не гарантирует порядок доставки пакетов или их полное получение.

    • В настоящее время используются две версии IP: IPv4 и IPv6. IPv4 поддерживает около 4,3 миллиарда адресов, тогда как IPv6 предлагает значительно большее количество адресов (примерно 3.4×10383.4×1038) для решения проблемы исчерпания адресов.

  3. Транспортный уровень (Transport Layer):

    • Этот уровень инкапсулирует протоколы TCP и UDP.

    • TCP обеспечивает надежную передачу данных с контролем ошибок и гарантией порядка доставки.

    • UDP, в отличие от TCP, не устанавливает соединение и может использоваться для приложений, где скорость важнее надежности.

  4. Прикладной уровень (Application Layer):

    • Этот уровень включает протоколы, с которыми взаимодействуют пользователи и приложения (например, HTTP, FTP, SMTP).

    • Он обеспечивает интерфейс для программного обеспечения для обмена данными через сеть.

Значение Модели TCP/IP

Модель TCP/IP является краеугольным камнем современных сетевых технологий. Она обеспечивает совместимость между различными устройствами и операционными системами, позволяя пользователям обмениваться данными независимо от их местоположения или используемых технологий. Благодаря этой модели стало возможным создание множества интернет-приложений и сервисов, которые стали неотъемлемой частью повседневной жизни.

Заключение

Понимание модели TCP/IP и ее уровней критически важно для всех профессионалов в области информационных технологий. Эта модель не только описывает механизмы передачи данных в Интернете, но также служит основой для разработки новых сетевых технологий и приложений. Развитие модели продолжает адаптироваться к новым вызовам и требованиям современного мира связи.

Теги:
Всего голосов 8: ↑6 и ↓2+4
Комментарии0

Слева сидит Лёша

Он не смог решить задачу и был отчислен из вуза. Аппетита нет, шаверма остывает. А ведь нужно было просто написать программу, которая построит симметричную матрицу размерности NxN (1 < N <= 100).

Может, у вас получится помочь Алексею решить задачу? Тогда переходите в Академию Selectel.

Теги:
Всего голосов 9: ↑5 и ↓4+2
Комментарии2

Как продолжить изучение Python? Работа с БД, парсинг и идеи для пет‑проектов

В Академии Selectel вышел новый бесплатный курс по Python. Не рассказываем про основы — наоборот, помогаем сделать первые шаги в мире реального программирования.

После прохождения курса вы научитесь:

  • работать с базами данных и брокерами сообщений,

  • создавать приложения с графическим интерфейсом,

  • автоматизировать получение данных.

На вдумчивое ознакомление со всеми материалами уйдет около четырех часов.

Приглашаем изучить курс в Академии Selectel.

Теги:
Всего голосов 7: ↑7 и ↓0+8
Комментарии0

Что я смогу защитить с помощью авторского права?

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

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

Авторское право действует на:

  • тексты: книги, статьи, стихотворения, посты, учебники, сценарии, переводы;

  • визуальные произведения: картины, рисунки, фотографии, комиксы, графику, дизайн;

  • аудио: песни, мелодии, альбом;

  • видео: фильмы, ролики, клипы, ТВ программы;

  • театральные и хореографические произведения: постановки, танцы, цирковые представления;

  • архитектурные произведения и работу дизайнеров: ландшафтный дизайн, включая чертежи, проекты, макеты, элементы градостроительства;

  • IT-продукты: ПО, приложения для смартфонов или ноутбуков, онлайн-сервисы, облачные технологии, базы данных, игры;

  • географические карты.

Авторское право не действует на:

  • идеи;

  • концепции;

  • принципы;

  • методы;

  • процессы,

  • факты, языки программирования;

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

Срок действия авторского права

В России авторское право действует в течение всей жизни автора и еще 70 лет после его смерти.

Составляющие авторского права

Авторское право является интеллектуальным правом и состоит из:

  • исключительных имущественных прав;

  • личных неимущественных прав автора;

  • и иных прав.

Депонирование произведения

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

— Для программ для ЭВМ и баз данных ГК РФ предусматривает добровольную государственную регистрацию в Роспатенте;

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

При депонировании автор или правообладатель передает на хранение копию своего произведения в виртуальную ячейку.

Защитить свою программу можно здесь. А базу данных вот тут.

Теги:
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Вклад авторов