Skip to content
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 72 additions & 0 deletions README.beginner-developer
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
This is some collection to help recently joined coders to start with.
You can try the hard way. Then you just do not need to read any further.
Beleive me, at least for me, adds unnecessary frustration.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, among four of us, please let me explain my frustration. Not professional behaviour, I admit, and must excuse me for it...

Today I have somehow found out my root problem to this. In mid-school, I had a subject (~course), technical drawing, screws and other mechanical things, wiring diagrams, etc. We regularly used to have homework. For some, it was always accepted. For others, usually including me, it was rejected with the worst note, and when asking, why, the response always sounding "the newest standards....". Never seen anybody ever having seen such standards, by the way ;-) . And each and every week other standards ;-) ... Well, it did not disturb us very much that time, saying "she is an idiot". Nor did I face any similar situation since then, almost 50 years now. However, with tlf, both my two contributions resulted in this... Well, I know I do not get bad notes any more. Well, I know, everybody helps me, and everybody is happy to see any useful contributions. Still the fact is, I did my best, Zoli has checked it, I only wanted to lean back and be proud and happy, and then still again I was asked to correct things that I could in no way know in advance.

Such a list like this could have helped me. Kindly ask you, to your best, do please support this for me and for all future mates.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is part of collaborative development. I submitted some pull requests last month and there were some obvious things I missed that the others saw and their solutions were clearly better. For me it is an opportunity to learn and get better especially since I am self-taught in programming with no formal education in the field whatsoever. My studies were in electronics 30 years ago. I still melt solder on occasion but I greatly enjoy working with a few software projects.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, I also am ready to learn. However, unhappy when I suddenly get the feeling I should have known something nowhere documented... And that was my feeling at the end, no matter how nice the missing point communicated to me by nice fellows...

You lean back, feeling as (almost) on top of the World -- just to have to
learn somewhat later when asking for merge your work, that you are far from done...

In spite of every effort, this doc will (and can) never become complete.
Any comments, critisisms, suggestions, improvement requests are
and will a l w a y s and f o r e v e r remain W E L C O M E .

To begin with, each project using any computer language, ususally is built upon
- partly some project conventions
- partly some personal tastes.

Individual tastes are no problem for one-man projects.
However, for bigger and long-lasting projects, individual tastes obviously
do not help readibility or maintenability.
My personal note, IMHO project conventions are also mainly of
personal taste of somebody in the project much before you joined ;-) ...

The following is the list we could collect so far.
This list is only numbered for easy reference.
This list is not considered to be sorted upon importance,
nor do I think there could be any such importance.
Please never re-number this list.
In case anybody feels in absolute need of picking some points upon importance,
please simply use a list in the header immediately below this introduction, like:

important by HA5SE: 1, 2, 3 // sample



Currently documented conventions
================================


1) TLF is a combination of old code mixed with many new updates.
Old code is as-is, you should never count on conventions in old
code would still continue to be considered as current.

Recent code uses different conventions.

Code is considered old when before ...

You can check the age of any line or block using

git blame ...


2) No need to update Changelog . It only will be updated once for all changes so far
for each single new release by the maintainer. [thanks to HA5CQZ]


3) In turn, it is your responsibility to update the manual page tlf.1.in if your contribution
brings in visible changes to end-users. Such changes include e.g. new config keywords.


4) Do not include your callsign or reason or similar in your modification. [thanks to HA5CQZ]
No need to anything like

// 2021-02-01 HA5SE implementing TUNE_LNG=

Instead of comments like that, rather count on "git blame"


5) When defining global variables we have to choices: [thanks to DL1JBE]

- Variables which are only part of an module should be defined in the module itself
and made known to other modules by declaring them extern in the modules header file
- Alternatively if the variable is not clearly related to a functional module we have
concentrated them in one place - at the moment in main.c (with test/data.c a shadow
copy for testing purposes). The variable should then be declared in globalvars.h