Задать вопрос
  • Какие видеоуроки/книги/советы посоветуете начинающему программисту?

    hint000
    @hint000
    у админа три руки
    какие-нибудь своеобразные, но полезные советы

    1. Любой конкретный язык программирования - фигня (хотя без него никак), а важнее алгоритмы и структуры данных.
    2. Когда размер ваших програм перевалил за десяток строк, пора осваивать методы отладки (debug). Это 99% практики и 1% теории. Практически невозможно (даже для гения) сразу без ошибок написать программу на тысячу строк. И будут моменты, когда вы готовы биться головой о стену, потому что уже десять раз всё проверили, и весь код правильный, но всё равно выдаёт неправильный результат; и приходят мысли, что это какой-то неизвестный глюк в операционной системе и т.п. Вот это будет ваш личный момент истины. Это будет означать, что нехватает опыта в отладке. Выловить ошибки в программе на тысячу строк (в своей) не слишком просто, но вполне по силам студенту.
    Ответ написан
  • Какие видеоуроки/книги/советы посоветуете начинающему программисту?

    saboteur_kiev
    @saboteur_kiev Куратор тега Книги
    software engineer
    допустим человек, который впервые решил заняться боевыми искусствами пишет вопрос

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

    Просто изучай базу
    Делай простые приложения.
    До того, как писать код на 1000 строк, пиши на 100.
    Разберись с тем, как происходит компиляция.
    Почитай про name convention
    почитай про git
    задавай конкретные вопросы, приводя кусок кода, в котором у тебя что-то не выходит.
    Общих вопросов в интернете полным полно и пользы они никому особой не приносят
    Ответ написан
  • Визуализация ЭЦП в PDF и документах Word?

    hint000
    @hint000
    у админа три руки
    Таким образом вы убиваете смысл ЭЦП.
    Идея ЭЦП в том, что ЭЦП позволяет убедиться (в частности), что документ не был изменён после подписания. Если в документе изменить хоть один байт, то проверка подписи покажет, что подпись недействительна.
    Теперь посмотрим, как вы хотите сделать.
    У вас есть документ. Вы его подписываете. Потом вы добавляете в документ "визуализацию ЭЦП", тем самым изменяя документ и делая подпись недействительной.
    Ответ написан
  • Как можно создать дистрибутив Linux на основе Debian?

    @rPman
    полагаю ты не понимаешь что такое создать дистрибутив linux.

    Дистрибутив это не только набор пакетов но и инфраструктура, обслуживание репозитариев, интегрирование обновлений и т.п. Еще есть юридические моменты, так как в мире linux 'благодаря' производителям железа все полностью открытым быть не может (но да debian старается) то нужно еще следить, чтобы ни чьи интересы не задел, добавляя какой то пакет у себя (например были споры по названию браузера firefox, так как пакетом хотел рулить debian, называть его таковым он не имел права, пришлось переименовать в iceweasel)
    Ответ написан
    Комментировать
  • Самопроизвольное объявление define'ов в проекта?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Получается, магическим образом, самопроизвольно, между включениями VulkanTexture.h и VulkanglTFModel.h был объявлен define.

    А на самом деле где этот define определяется и как это место относится ко всем этим заголовочным файлам?

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

    Нет, не может, но возможно ты не вполне понимаешь сам, в каком порядке ты написал их подключение. Так, например, Helpers/VulkanTexture.h и VulkanTexture.h -- это один и тот же файл, или разные? Если один и тот же, то из-за #pragma once в нём он не подключается в VulkanglTFModel.h, а если разные -- то подключается.

    Понять, что фактичиски куда подключается можно выполнив вместо шага компиляции только препроцессирование (например, для gcc заменив в команде компиляции ключ -c на -E). В выводе препроцессора не видно дефайнов, но видно когда подключается тот или иной файл и видно весь исходный код не относящийся к препроцессору.
    Ответ написан
    Комментировать
  • Имею базу в формате txt размером 2gb, как отсортировать по количеству символов на строку?

    @rPman
    Для таких операций уже несколько десятилетий в linux существует утилита awk со своим языком программирования (он достаточно простой хоть и странный), так же можно соорудить регулярное выражение и с помощью утилиты sed или grep, несколькими проходами пройти по файлу, и сначала вывести все короткие строки, вторым проходом все длинные.

    так же можно написать приложение на любом языке программирования, построчно читать файл, измерять длину строки или какое тебе нужно условие и записывать в нужный файл, кода строк на 5-6
    Ответ написан
    Комментировать
  • Как реализовать рекурсию в UML (диаграммы классов)?

    Vindicar
    @Vindicar
    RTFM!
    Особенно никак? Диаграмма классов не описывает содержимое методов, а приведённый код бессмысленен даже как пример.
    Можно, конечно, сделать отношение зависимости от Foo к нему же, но будет затруднительно пояснить его природу.
    Ответ написан
    Комментировать
  • Правильно ли написано уравнение на c++?

    Разделителем целой и дробной части должен быть символ "точка" (.)
    Ответ написан
    7 комментариев
  • Объясните на простом примере разницу между ООП и ФП?

    Griboks
    @Griboks
    В чистом ФП будет примерно так:
    releaseSocket(releaseConnection(releaseRouter(json(get('/users',prepareRequest(createRouter(routerParams,connect(createSocket('TCP'),ip, port)))),users))))

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

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Никак.
    Лицензия получается XOR'ом ключа с вычисляемой (на самом деле, фиксированной) гаммой.
    Зная только часть лицензии можно получить только соответствующую часть ключа.
    Если знать все части лицензии, то достаточно записать их через '|', проXORить с вычисленной гамой и закодировать в BASE64.
    Ответ написан
    4 комментария
  • Как вставить элемент в середину листа?

    MrDecoy
    @MrDecoy Куратор тега JavaScript
    Верставший фронтендер
    jquery
    native js

    Правила сервиса
    2.2 Убедиться в том, что в сети Интернет, и на страницах Сервиса в частности, отсутствуют ответы на данный вопрос. Специально для этого талантливые IT-специалисты создали и развивают поисковые системы Яндекс и Google.
    Ответ написан
    Комментировать
  • Нужно ли использовать interface?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Нет, ничего указывать не надо.
    Тут и без интерфейсов получатся отличные самолёты из соломы и палок.
    Ответ написан
  • Можете посоветовать видео блогеров обучающие программированию на Python?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Видео нужно тогда, когда ты прочёл книгу, вроде всё понял, но куда тыкать пока не понял. В видео можно посмотреть чисто практические приемы работы с IDE, с консолью, с системой. То, что слабо отражено в книгах. Чтоб не тыкаться как кутёнок в незнакомый интерфейс.
    А собственно язык лучше по хорошей книге и затем кодить, кодить, читать исходники других проектов, вникать, дебажить.

    Самое главное - понять, что язык программирования - это как лопата у агронома. Лопатой надо владеть? Надо. Достаточно ли агроному лопаты? Нет. Ему надо знать и уметь много чего - сорта, почвы, технологии, химию, а лопатой он делает только некоторую часть операций.
    Программисту надо знать в той или иной степени информатику, алгоритмы, структуры данных, языки программирования, базовые библиотеки, БД и СУБД, API, ООП, фреймворки, сети, протоколы, ИБ, тестирование (в части, касающейся программеров), да много чего. Язык там не на первом месте.

    Видосиками это не изучишь, как ни старайся.

    Из более-менее полезного видео поищи «алгоритмы и структуры на Python» от МФТИ, там десятка полтора лекций Хирьянова. Но это лучше после книги «Изучаем Python» М.Лутца.
    Ответ написан
    1 комментарий
  • Максимально производительные GUI-библиотеки для плюсов (Windows)?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Возникла проблема - требуется писать программы быстрыми, чем быстрее - тем лучше.


    Ты решаешь какую-то искусственную проблему. Стандартные компоненты пишет целая корпорация и анализируют тыщи тестировщиков. Сомнительно что ты сможешь написать нечто даже близко подходящее по возможностям.

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

    Спецификация - сильная вещь. И многие юные амбициозные кодеры беруться писать нечто неспецифицированное и в результате создают гоммункула который никому не нужен или создают что-то ограниченное.

    Яркий пример - создатели своих DBMS. Тыщи их. Но никто не в состоянии довести разработку даже до альфа-версии. А уж о том чтобы ее показать на презентации - вообще и речи нет.
    Ответ написан
    3 комментария
  • Как автоматизировать установку программного обеспечения и настройку windows машины?

    3r1k
    @3r1k
    the quieter you become, the more you hear
    Может проще сделать виртуалку, раскатать там всё ПО, сделать бэкап и каждый раз восстанавливать, как новую...
    Ответ написан
    8 комментариев
  • Как раздавать уникальные записи таблицы во многопоточном парсере?

    ipatiev
    @ipatiev
    Потомок старинного рода Ипатьевых-Колотитьевых
    Никакие транзакции тут не нужны. транзакции вообще не про это. Почему-то новички упорно путают транзакции с блокировками. Транзакция - это про целостность данных. А чтобы два процесса не считали одну строку - это блокировка.
    Но явные блокировки тут тоже не нужны.

    Сначала забираем запись на себя
    update urls set proxy=proxy_id where done=null and proxy=null limit 1
    потом уже её селектим, работаем, и в конце отпускаем
    select * from urls where proxy=proxy_id
    ...
    Update urls set proxy=null, done=1 where proxy=proxy_id
    Ответ написан
    9 комментариев
  • С чего начать изучение С++ новичку?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    С учебника. Курсы приносят пользу только их создателям.
    Ответ написан
    3 комментария
  • Какие существуют конструкторы веб-приложений?

    @12rbah
    Например, создать простой личный кабинет, не программируя его, а используя конструктор.
    Соединить с базой данных, создать таблицы пользователей, параметров. Задать интерфейс.
    И чтобы компилировалось в код по итогу из конструктора.
    CMS?
    Ответ написан
    Комментировать
  • Возможно ли учить два языка программирования одновременно?

    @dmshar
    В вашем конкретном случае - не стоит. Почему? Потому что вы спрашиваете. Такое впечатление - что торгуетесь "Вот выучу два языка, а какую конфетку я за это получу?"
    А тот кому это действительно интересно - тот не спрашивает окружающих, а берет и учит. Потому что делает это не ради "конфетки", а что-бы реально набраться ума-разума.
    Ответ написан
    1 комментарий