Рубрика «Программирование» - 1030

image

У нас в гостях Михаил Ивановский и Матвей Круглов из компании «Комтет». Как устроен хостинг изнутри, какие технологии, какое железо использует хостинг-провайдер. Особенности организации работы с клиентами и как затрагивают хостеров нововведения в законодательстве.

В выпуске:

  • Внутренняя кухня хостинга «Комтет». Интервью с Михаилом Ивановским и Матвеем Кругловым.

Слушать в Itunes
слушать на podfm
скачать файл(45.4 Мб)
Читать полностью »

Вашему вниманию предлагается текст технического проекта ИС «1С: Розница», он описывает создание механизмов администрирования пользователей распределенной информационной базы.

Волею судьбы я стал автором и разработчиком информационной системы автоматизации розничной торговли «1С: Розница». Система получила широкое распространение в России и странах ближнего зарубежья. Очень многие специалисты вовлечены в процесс интеграции «1С: Розница» в корпоративные системы розничных предприятий. В помощь этим уважаемым людям я решил выложить тексты технических проектов, автором которых являюсь. Эти тексты позволят понять «внутренность» ИС, причины и способы реализации той или иной функциональности. Для тех, кто не работает с «1С: Розница» (или с платформой «1С: Предприятие») — эти тексты могут дать представление о том, как разрабатываются и пишутся технические проекты.
Читать полностью »

Всем доброго дня.

Завершились отборочные этапы открытого соревнования по программированию искусственного интеллекта Russian AI Cup 2012. Напомним, что участникам чемпионата предлагается запрограммировать искусственный интеллект для танков, сражения между которыми симулируется игровой системой.

Интересная статистика:

Интересно посмотреть, как меняется процент распределения используемых языков с прогрессом в этапах чемпионата. Так,
* C#, C++, Java практически не меняют свои доли;
* Pascal сделал рывок в Раунде 2;
* Python 2 стабильно растет на протяжении всех этапов;
* Python 3 стабильно падает на протяжении всех этапов.

Чем обусловлена такая динамика Python 2 против Python 3 – загадка.

Читать полностью »

Штатная десериализация .net всегда создает граф новых объектов. Это не всегда удобно.

  • Например если объекты содержат несериализуемые данные, открытые хэндлы и прочее.
  • Объекты не попадающие в сериализацию могут иметь ссылки на зачитываемые объекты и т.п. Особенно это актуально, если ваша сборка используется еще кем то, и вы не можете решить все подобные случаи при помощи правильного дизайна.
  • И в конце концов, ради небольшого Undo полностью пересоздавать объекты нерационально.

Поиск не дал готового ответа. Есть не самые простые решения с использованием protobuf и прочих сторонних сериализаторов, но это не всегда применимо.

Задача в целом несложная, и мое решение не является чем то выдающимся, но с другой стороны, тем кто впервые столкнется с похожей проблемой — будет проще.

Читать полностью »

в 21:26, , рубрики: c++, Программирование, метки:

Предистория

Советы по C++
За 2 года, я прочитал очень много книг по C++. Лучшим вариантом запоминания информации считаю ведение конспектов.
Несколько дней назад я остался без компьютера и интернета. Чтобы не тратить время впустую решил пересмотреть все свои записи. В тот момент ко мне и пришла идея сервиса, о котором я расскажу ниже.
Читать полностью »

При запуске нового продукта всегда наблюдал один интересный эффект, который осознал и стал учитывать только в последние пару лет:

«Эффект первого пользователя» или «Бойтесь пользователей, фидбек приносящих».

С одной стороны, программист чаще всего «просто пишет» продукт, не особо задумываясь о его потенциальных пользователях. В большом количестве случаев — под себя или просто потому, что нравится.

Редко, когда кто-то общается с потенциальными клиентами до первой версии. Кто-то — боится конкуренции, кто-то — самоуверенно считает, что «он и так все знает», кто-то — витает в облаках, кто-то — просто испытывает удовольствие от создания продукта и до пользователей ему дела нет.

В день первого публичного релиза вы получаете фидбек. Иногда — очень много фидбека, особенно если продукт бесплатный или free-to-try. И вот тут-то начинается самое интересное:

Читать полностью »

Классы std::function и boost::function являются высокоуровневыми обертками над функциями и функциональными объектами. Объекты таких классов позволяют хранить и вызывать функции и функторы с заданной сигнатурой, что бывает удобно, например, при создании callback вызовов (например, мы можем регистрировать несколько обработчиков, и это могут быть как обычные функции, так и объекты с определенным оператором =)

Если вам интересно, каким образом реализуется данный функционал, то прошу под кат
Читать полностью »

image

Порой возникает желание размять свой погрязший в объектно-ориентированном программировании мозг чем-то новеньким и необычным. Конечно, на помощь в этой ситуации может прийти любой функциональный язык программирования, например, Haskell, Erlang, Lisp или OCaml. Но сейчас даже ими уже вряд ли кого-то можно удивить. Нет, хочется чего-то совершенно другого. В такой ситуации на помощь к нам спешит Forth — стековый язык программирования.

Читать полностью »

Адептам «новых и улучшенных» языков программирования посвящается.
Просто поставьте галочки в нужных местах :)

Так получилось, что твой любимый язык:
[ ] функциональный [ ] императивный [ ] объектно-ориентированный
[ ] процедурный [ ] основанный на стеке [ ] «мульти-парадигменный»
[ ] «ленивый» [ ] быстрый [ ] статически-типизированный [ ] динамически-типизированный
[ ] безупречный [ ] не безупречный [ ] не «стерильный» [ ] визуальный [ ] легкий для начинающих
[ ] сложный для программистов [ ] абсолютно непонятный

Этот язык не станет популярным, и вот почему:

Читать полностью »

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

Я долгое время совершал эту ошибку и считал ниже своего достоинства делать что-нибудь серьезное на PHP, допустим. Или в десктопе: WinForms — фи. По той же причине всегда пытался быть «на острие» современных технологий, раз за разом переделывая свои продукты на новые фреймворки/технологии.

Помню, когда на одной из последних работ я встретил человека, сделавшего SCADA-систему на Delphi. Я тогда программировал на Visual C++ и посчитал, что это — не серьезно. Вот если бы на C++… При этом его система была реально запущена в продакшен, а моя… ну, вы поняли.

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

Оттачивая свои скилы в использовании простых решений, чаще получаешь красивые и эффективные решения, нежели «прыгая» по новым технологиям.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js