Наши услуги

Мы предлагаем

serv2
Сайт визитка - лендинг
Одна шаблонная страница - когда надо сегодня
serv2
Сайт магазин с CRM
Главная страница, каталог товаров/услуг, личный кабинет продавца
serv2
Дизайн для своего сайта
Нарисуем вам новый дизайн
serv2
Доработка существующего сайта
Когда что-то сломалось
serv2
Дизайн печатной продукции
Визитки, баннеры, стикеры и прочее нецифровое, что можно будет потрогать :)
serv2
Не знаю как объяснить - посмотрите сами
И такое делаем :)

Почему мы?

Минимум взаимодействий
Минимум взаимодействий
Из материалов только ваша страница или сайт
Всегда на связи
Всегда на связи
Голосовые, текст, видео - как удобно :)
Бывает и дорого, но есть бесплатно
Бывает и дорого, но есть бесплатно
Качество не зависит от цены
Индивидуальный подход
Индивидуальный подход
Разумеется :)
business
Коротко

О нас

wow5
2015
работаем успешно с
wow3
5
Реализованных проектов

Это начало интересного текста обо мне

Чуть позже напишу тут интересный текст

Партнёров пока нет
Но, ты пиши если что :)

Наши работы

Работа 1
Работа 2

Ознакомьтесь с нашим сервисом и комфортным сотрудничеством

Тарифы

Сайтик фри
0
Точно такой лендинг
checkedВаши фото, контакты и тексты
checkedИмя сайта имя.dencompany.ru
checkedБез мелкого шрифта и камней
Лайт
от
5 000
₽/год
Когда сайт пробник понравился и надо расширяться
checkedСамостоятельное имя сайта
checkedИндивидуальные настройки
checkedCRM (личный кабинет продавца)
checkedБез мелкого шрифта и камней
Хочу всё
от
15 000
₽/мес
Когда налажен процесс или не очень, но надо много и не хочется вникать
checkedСамостоятельное имя сайта
checkedИндивидуальный дизайн
checkedCRM (личный кабинет продавца)
checkedПеренос товаров с текущего сайта
checkedБез мелкого шрифта и камней

Профессионалы своего дела

Наша команда

Фото
Fullstack ведущий программист
Денис

О нас говорят

Отзывы клиентов

Фото отзыв
Я — специалист по SMM
Linda
Дизайнер
Фото отзыв
Отзыв 1
Mark
Backend разработчик
Смотреть все

Все, что нужно знать о бизнесе

Блог

Читать блог
Фото блог
08
05.2026
5 основных инструментов для продвижения интернет-бизнеса
Я — специалист по SMM.
Фото блог
08
05.2026
5 основных инструментов для продвижения интернет-бизнеса
Раньше работала дома.
Фото блог
08
05.2026
5 основных инструментов для продвижения интернет-бизнеса
Я работала дома.

Все, что нужно знать о создании сайтов

Статьи

08.05.2026
Проектирование базы данных для CMS на FoxPro Разработка системы управления контентом (CMS) на языке FoxPro требует тщательного проектирования базы данных, так как от этого зависит производительность, масштабируемость и удобство администрирования сайта. FoxPro, несмотря на свой возраст, остается мощным инструментом для работы с табличными данными, особенно в legacy-системах и корпоративных решениях. Рассмотрим ключевые этапы и принципы создания такой базы данных. Основные сущности CMS Любая CMS оперирует несколькими базовыми сущностями. Для FoxPro их удобно представлять в виде отдельных DBF-файлов (таблиц). Пользователи (users.dbf): содержит логины, пароли (в захэшированном виде), права доступа и email. Страницы (pages.dbf): хранит URL, заголовки, мета-описания и основной контент. Категории (categories.dbf): древовидная структура для группировки материалов. Медиафайлы (media.dbf): ссылки на изображения, документы, видео с указанием путей и типов. Связи между таблицами Для обеспечения целостности данных в FoxPro важно правильно настроить индексы и связи. В отличие от SQL-серверов, здесь связи реализуются программно или через SET RELATION. Связь "страница-категория": поле category_id в таблице pages.dbf ссылается на уникальный id в categories.dbf. Это позволяет фильтровать контент по разделам. Связь "автор-страница": поле author_id в pages.dbf связывается с id в users.dbf для отслеживания, кто создал или редактировал материал. Медиа-галерея: отдельная таблица page_media.dbf с полями page_id и media_id реализует связь "многие ко многим" между страницами и файлами. Оптимизация производительности FoxPro чувствителен к структуре индексов. Для CMS, где важна скорость выборки контента, следует: Создавать первичные индексы по полям id для всех таблиц. Использовать составные индексы для часто используемых запросов, например, по полям status и publish_date для вывода только опубликованных страниц. Избегать хранения больших текстовых полей (мемо-полей) в основных таблицах, вынося их в отдельные файлы, если объем контента велик. Безопасность и целостность При проектировании базы данных для CMS на FoxPro необходимо предусмотреть защиту от повреждения данных: Использовать транзакции (BEGIN TRANSACTION и END TRANSACTION) при массовых операциях, таких как импорт статей или обновление структуры. Регулярно выполнять упаковку таблиц (PACK) для удаления помеченных на удаление записей и восстановления дискового пространства. Хранить настройки сайта в отдельной таблице settings.dbf с ключом и значением, чтобы избежать редактирования кода для изменения параметров. Заключение Правильно спроектированная база данных для CMS на FoxPro позволяет создать надежную и быструю систему управления сайтом, которая будет стабильно работать даже при значительных объемах контента. Уделив внимание нормализации таблиц, настройке индексов и программной реализации связей, вы получите решение, которое легко поддерживать и расширять в будущем.
07.05.2026
Безопасность в Scala: объясняем ребенку на примере весеннего кода Май 2026 года — время, когда солнце пригревает все сильнее, а вместе с ним активизируются не только цветы, но и киберугрозы. Даже если ты пишешь на таком мощном языке, как Scala, важно помнить о безопасности. Представь, что твой код — это домик в лесу, а злоумышленники — это хитрые лисы. Сегодня мы научимся защищать этот домик так, чтобы даже самый умный «лис» не смог пробраться внутрь. Почему Scala особенная? И при чем тут весна? Scala сочетает в себе объектно-ориентированное и функциональное программирование. Весной, когда все обновляется, программисты часто переписывают старые проекты. Это отличный момент, чтобы заложить безопасность с самого начала. Представь, что ты строишь скворечник: лучше сразу сделать его прочным, чем потом латать дыры. Главные правила безопасности для юного Scala-разработчика Объясню на простых примерах, как сделать твой код надежным, как весенний лед на реке — только крепким. Никогда не доверяй входящим данным. Представь, что незнакомец на улице предлагает тебе конфету. Ты же не возьмешь ее, не проверив? В Scala то же самое: любой ввод от пользователя (например, из веб-формы) — это потенциальная «конфета с сюрпризом». Всегда проверяй, что пришло. Используй строгие типы. Scala — строго типизированный язык. Это как табличка на двери: «Вход только для чисел» или «Только для текста». Не позволяй данным превращаться во что-то другое без твоего ведома. Не оставляй секреты в коде. Пароли, ключи API — это как ключи от дома. Весной, когда открываешь окна, легко забыть ключи на подоконнике. В Scala используй файлы конфигурации или переменные окружения, а не пиши секреты прямо в коде. Практические советы на май 2026 В это время года многие переходят на удаленную работу или учатся из дома. Вот что нужно проверить в твоем Scala-проекте прямо сейчас. 1. Защита от SQL-инъекций Если твоя программа работает с базой данных (например, хранит список игрушек), никогда не склеивай строки с SQL-запросами вручную. Это как если бы ты написал записку: «Купи молоко, а потом выбрось все деньги из кошелька». В Scala используй библиотеки вроде Slick или Doobie, которые сами следят за безопасностью. Пример для ребенка: Представь, что ты просишь друга принести тебе мяч. Если ты скажешь: «Принеси мяч и заодно отдай свой телефон», — это глупость. В коде то же самое: не позволяй пользователю вставлять свои команды в твой запрос. 2. Обновляй зависимости Весна — время уборки. Проверь, какие библиотеки ты используешь. Устаревшие версии — это как старый замок на двери, который ломается от одного удара. Запускай команду sbt dependencyUpdates и обновляй все, что нужно. 3. Логирование без секретов Когда ты пишешь логи (записи о работе программы), не выводи туда пароли. Это как если бы ты вел дневник и записывал туда код от сейфа. Используй библиотеку Logback и настрой фильтры, чтобы скрывать чувствительные данные. Как объяснить ребенку: метафора «Весенний патруль» Представь, что твоя программа — это робот-помощник, который весной выходит на улицу следить за порядком. У этого робота есть три главных правила: Правило «Проверь документы» — все данные, которые приходят в робота, должны показать «удостоверение личности» (тип данных). Правило «Закрытый люк» — робот никогда не открывает доступ к своей памяти без спроса (безопасная работа с памятью и файлами). Правило «Чистые руки» — после работы робот моет руки (очищает переменные и не оставляет мусора). Следуя этим правилам, твой Scala-код будет таким же надежным, как весеннее солнце — ярким и безопасным. Помни: хороший программист не тот, кто пишет сложный код, а тот, кто пишет безопасный код, который не подведет ни в майский дождь, ни в летнюю жару.
28.04.2026
Perl с нуля: ваш первый шаг в мир практичного программирования Perl — это язык, который часто пугает новичков своим внешним видом, но на самом деле он создан для решения реальных задач. Если вы только начинаете свой путь в программировании и хотите быстро научиться писать полезные скрипты, Perl может стать отличным стартом. Он не требует глубокого погружения в теорию классов и объектов на первых порах, а позволяет сразу перейти к делу. Почему Perl стоит вашего внимания В отличие от многих современных языков, Perl был создан как практичный инструмент для извлечения данных и генерации отчетов. Его главный девиз — «Есть больше одного способа сделать это» (TIMTOWTDI). Это означает, что вы не будете застрять в поиске единственно правильного синтаксиса. Вы сможете писать код так, как вам удобно, а язык подстроится под ваш стиль мышления. Главные преимущества для новичка Быстрый старт: Вам не нужно устанавливать громоздкие IDE или разбираться в сложных системах сборки. Достаточно установить интерпретатор Perl (он есть на любой Unix-системе и легко ставится на Windows) и открыть текстовый редактор. Мощная обработка текста: Perl изначально проектировался для работы со строками. Регулярные выражения встроены прямо в синтаксис языка. Вы сможете парсить логи, чистить данные или менять формат файлов буквально одной строкой кода. Огромная библиотека модулей: CPAN (Comprehensive Perl Archive Network) содержит десятки тысяч готовых решений. Хотите работать с JSON? Пишете use JSON;. Нужен веб-сервер? Ставите Mojolicious. Вам не придется изобретать велосипед. С чего начать: первая программа Давайте напишем классический «Hello, World!». Откройте любой текстовый редактор и сохраните файл как hello.pl. Содержимое файла: #!/usr/bin/perl use strict; use warnings; print "Привет, мир!\n"; (Строки use strict; и use warnings; — это ваши лучшие друзья. Они заставят Perl ругаться на глупые ошибки вроде опечаток в именах переменных.) Запустите скрипт командой perl hello.pl. Если вы увидели приветствие — поздравляю, вы только что написали свою первую программу на Perl! Основы синтаксиса для новичка Переменные и типы данных В Perl три основных типа переменных: $скаляр: одно значение (число или строка). Пример: $name = "Анна"; $age = 25; @массив: упорядоченный список значений. Пример: @colors = ("red", "green", "blue"); $хэш (ассоциативный массив): пары ключ => значение. Пример: $person{"name"} = "Иван"; $person{"age"} = 30; (Обратите внимание на значки перед именем: $ — скаляр, @ — массив, % — хэш. Это помогает сразу понять тип данных.) Условные операторы и циклы if/else: работает привычно для всех языков. if ($temperature > 30) { print "Жарко!\n"; } else { print "Нормально.\n"; } Циклы for и foreach: for my $i (1..5) { print "$i "; } foreach my $color (@colors) { print "$color\n"; } Как учить Perl эффективно: план действий на 7 дней День 1-2: Установите Perl (например, Strawberry Perl для Windows или используйте встроенный perl на Mac/Linux). Прочитайте про базовые типы данных ($scalar, @array, %hash). Напишите простые скрипты с выводом текста. День 3-4: Изучите работу со строками и регулярными выражениями (=~ m/.../ , s/.../.../ ) . Попробуйте прочитать текстовый файл построчно (<FILE>) и вывести строки, содержащие определенное слово. День 5-6: Освойте работу с функциями (&my_function($arg)) и модулями (`use File::Copy;` ) . Напишите скрипт для автоматического переименования файлов в папке. День 7: Загляните на CPAN (metacpan.org). Найдите модуль для работы с Excel или веб-скрапинга (`Web::Scraper` ) . Соберите свой первый небольшой проект: например, парсер погоды с сайта. "Подводные камни" для начинающих (советы бывалого) "Контекст" решает всё.: Одна и та же функция может возвращать разное количество значений в зависимости от того, ждете ли вы скаляр или список. Например: $count = @array;(вернет длину), а (@new_array) = @array;(скопирует элементы). Не пугайтесь — привыкнете быстро. "Autovivification" (автоживление): : Если вы обращаетесь к несуществующему элементу хэша или массива через ссылку — он создается автоматически. Это удобно для создания сложных структур данных «на лету», но может привести к трудноуловимым багам. Всегда используйте `exists` , чтобы проверить наличие ключа перед записью. "Тайный оператор 'or die': : При работе с файлами всегда проверяйте результат открытия: `open(my $fh, '<', 'file.txt') or die "Не могу открыть файл: $!";` . Иначе ваш скрипт молча упадет без объяснения причин. Заключение: ваш путь к мастерству Perl не умер — он просто стал незаметным героем системного администрирования и DevOps. Начните с малого: напишите скрипт для бэкапа папки, затем усложните его добавлением архивации, а потом научитесь отправлять отчет по электронной почте. Каждый такой маленький проект будет давать вам реальную пользу, а не абстрактные примеры из учебника. Помните главное правило изучения любого языка: лучше написать 10 маленьких полезных программ, чем прочитать 100 страниц теории без практики. Установите Perl прямо сейчас, откройте терминал и сделайте свой первы
Открыть все статьи
bg_1
Остались вопросы? Задавайте их немедленно.
мы проконсультируем совершенно бесплатно