Какой путь для написания конкретной программы наиболее эффективен для новичка?
================================================================================

 Я - новичок в программировании, имею лишь общие представления. Хочу написать для своих нужд кроссплатформенную программу-приложение на С++ в компиляторе QT. Подскажите, пожалуйста, какой путь будет наиболее эффективным для решения этой задачи в кратчайшие (желательно) сроки. Мои предположения таковы:  
  

1) выбрать один из многочисленных курсов в интернете по программированию на C++ в QT (буду очень благодарна если посоветуете, какой именно), последовательно пройти его чтобы получить некие базовые представления, которые затем пытаться применить к созданию нужной программы. На этом этапе искать в интернете решения уже конкретных вопросов, которые будут возникать в процессе разработки, в том числе задавать вопросы специалистам на ресурсах вроде этого. Это, как мне видится, более долгий путь.  
  

2) найти программиста, который написал бы эту программу для меня. Но тут два момента: во-первых, финансы ограничены (пока не имею представления, сколько бы стоила такая работа); во-вторых, мне хотелось бы понимать суть работы программы и при необходимости вносить изменения и корректировать под себя. В идеале чтобы специалист выступил в роли как бы репетитора, и чтобы давал объяснения в процессе работы над программой, чтобы писали мы её совместно и я могла понимать основные моменты. К тому же, у меня есть задумки ещё нескольких программ, которые хотелось бы потом осуществить.  

Этот путь, вероятно, более короткий.  
  

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

Кратко о программе которую я хочу написать. Это база данных собственных ошибок (в разных областях), которая позволяет их фиксировать, анализировать, делать выводы и не повторять. Каждый день заносится ошибка с описанием, которая относится к определённой категории, ситуации (контекст), классифицируется как новая или повторная, делается анализ либо вывод, и т.д. Эти данные должны затем обрабатываться, чтобы выдавать статистику: количество ошибок за день, неделю, месяц и тд; качественный состав по категориям, крупности, ситуациям и контекстам; количество повторных и новых; наиболее часто встречающиеся и тд. Отдельно должна быть возможность выдачи выводов на будущее (по отдельным контекстам и ситуациям), сделанных на основе анализа ошибок, для уменьшения вероятности их повтора. Программа чем-то напоминает приложения для учёта финансов, времени и т.п., но со своей спецификой. То есть в основе, если я правильно понимаю, ведение базы данных с дальнейшей их обработкой и представлением в статистической форме (таблицы, графики, диаграммы и т.д.). 

 Оптимальный путь:  
1. Подтянуть теорию и узнать что такое язык программирования, компилятор, фреймворк, базы данных.
2. изучить основы C++
3. познакомиться с основами фреймворка Qt по официально документации.
4. изучить основы реляционных баз данных и познакомиться с такой СУБД как SQLIte.

  
  

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

> на С++ в компиляторе QT

  

1. В компиляторе не пишут  

2. Qt - это не компилятор  
  

За вас ваш вопрос никто не решит.  

Если хотите написать программу самостоятельно, то изучайте С++, Qt, базы данных. Это конечно не хай-лвл программа, но новичку написать реально, если должно подойти к этому делу.  

Если же вы хотите чтобы за вас все написали, и написали именно так как вы хотите, то придется платить :)  
  

По времени оптимален второй вариант, по цене - первый.  

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

> Хочу написать для своих нужд кроссплатформенную программу-приложение на С++ в компиляторе QT.

  

Напишите лучше WEB приложение. Это будет хороший расчет на будущее. 

> Кратко о программе которую я хочу написать. Это база данных собственных ошибок (в разных областях)

  

Это описание похоже на excel-файл, не более.  
  

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

 Благодарю всех за ответы, сейчас уже кое-что прояснилось в плане того, как лучше действовать. Возможно, стоит для начала поэкспериментировать с excel. Может ли кто-нибудь подсказать кроссплатформенный аналог excel, который поддерживает скрипты? (желательно бесплатный) 

 какой-то багтрекер получается у вас =)  

посмотрите готовые, типа redmine, jira и прочих. там есть возможность настроить workflow под себя.