Go Down

Topic: Call for a list of useful programming threads (Read 18001 times) previous topic - next topic

nickgammon

Mar 04, 2016, 11:29 pm Last Edit: Mar 04, 2016, 11:30 pm by Nick Gammon
Good day.

Following on from discussions in this thread I am calling for a list of useful threads (in the Programming section).

A couple of obvious candidates are the existing sticky threads:

Serial Input Basics

Planning and Implementing an Arduino Program

What is Scope?





Please reply to this post suggesting further similar posts that would be useful for quick reference.

They can be compiled into a "master sticky" here, and then the other threads de-stickied, otherwise the number of sticky threads will start to overwhelm the top of this section.

I suggest a heading, link, and brief explanation, eg.




Variable Scope and Lifetime

What is Scope?

A discussion of the use of variables in C++ programs, focussing on their scope and lifetime. Discussions will include local and global variables, and the use of the extern keyword.




We are particularly interested in reference posts - not one which just solve a particular problem for a particular situation.

Other possible topics could be;

  • Programming tips / pitfalls
  • How to get an assembler listing of your code
  • How to use interrupts






I'll throw open for discussion: Should this be limited to on-site posts? (ie. this forum).

There might be posts on other sites (eg. my post about Interrupts) that could appear in the list, even though it is off-site for this forum.
Please post technical questions on the forum, not by personal message. Thanks!

More info: http://www.gammon.com.au/electronics

ChrisTenone

...

I'll throw open for discussion: Should this be limited to on-site posts? (ie. this forum).

There might be posts on other sites (eg. my post about Interrupts) that could appear in the list, even though it is off-site for this forum.
I think that it should focus on posts from this forum, but include links to off-site supporting material as well. Topics that originate here will help to insure it is about topics of interest to forum members.
What, I need to say something else too?

Robin2

#2
Mar 05, 2016, 09:28 am Last Edit: Mar 05, 2016, 09:34 am by Robin2
At the risk of being arrogant or self-centred, may I suggest

Several Things at a Time

Planning and Implementing a Program

Python - Arduino demo

which are also already stickies

and

Stepper Motor Basics

I have some others that I may argue for, but I will wait until this is bedded in.

I don't have a problem with links to stuff on other websites as long as it is directly relevant - such as Nick Gammon's Interrupts tutorial

One that comes to mind is PighiXXX's Arduino Connection Diagrams

...R

Two or three hours spent thinking and reading documentation solves most programming problems.

Robin2

#3
Mar 05, 2016, 09:54 am Last Edit: Mar 05, 2016, 10:00 am by Robin2
Nick, I am just repeating a couple of suggestion I made in the Discussion about "What is Scope?" Thread.

I think you should now create the Sticky with the actual links in it so that we can see what the final result will look like. It could just be called "Useful Links". It would be easy to delete it if the concept does not work.

I think it will be very important that only Moderators can add things to the list. There could be another editable Thread called "Suggestions for Useful Links" (not sure if it needs to be a sticky - but maybe this sticky could morph into it.

I don't think there is anything to be gained by distinquishing "programming" links from other useful links. Everything should go in the one list. There could be a "Useful Links" sticky at the top of every other section which are just links to the list in this section.

Thanks for taking the initiative.

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

ChrisTenone

I agree that additions to the thread should be vested in the moderators. This should keep the thread conservatively edited, and especially added to.

Robin, I also agree with Several Things at a Time ,  Planning and Implementing a Program , and Stepper Motor Basics , but I feel that Python - Arduino demo lacks grounding Perhaps a preliminary post or thread that explains the basic role, need and advantage of a Python program is in order. But it doesn't seem to come up to the level of the other threads you listed, yet.

On the other hand, it seems to me that a 'ground-level' tutorial for Processing might be well received ...

(If you make the case that Python can fulfill Processing's role, I would be all fangs. er ... ears!)
What, I need to say something else too?

Robin2

The Python - Arduino demo is already a sticky.

It was not written to promote Python - simply to give a working example of PC-Arduino communications. I don't see that it needs any further "grounding".

By all means feel free to provide an equivalent using Processing.

I refuse to try Processing because they deliberately decided to remove the ability to use an external text editor.

My guess is that Python is more widespread than Processing.

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

ChrisTenone

#6
Mar 05, 2016, 11:34 am Last Edit: Mar 05, 2016, 11:41 am by ChrisTenone Reason: - I keep forgetting to disable the wysiwyg editor!
The Python - Arduino demo is already a sticky.

It was not written to promote Python - simply to give a working example of PC-Arduino communications. I don't see that it needs any further "grounding".

By all means feel free to provide an equivalent using Processing.

I refuse to try Processing because they deliberately decided to remove the ability to use an external text editor.

My guess is that Python is more widespread than Processing.

...R
Yep. Saw it and read it. _ thank you for posting it!

I probably came off too oppositional in my last post. I am not against including your Python thread. I  just don't think the case for it's inclusion is as strong as the other threads you mentioned.


I wish I could post a proper Processing thread, but I will have to appeal to others for that. I don't know, use or like Processing. Maybe it's just the name, but I find that I prefer self contained devices, and do not find communicating with computer(s) to be that compelling (again, this is just me.) I would prefer to learn Python.


Your demonstrations of a time-based scheduler (many things) and over-all structure (planning and implementing), stand out in the Arduino world. It's tough to rise to their level. I want a Python demo that does that. Is your's that thread? I'm certainly not the decider about that, but I'm sure others will chime in.  :-[  :-*  :'(


But Many Things and Planning for sure.

____________________________________
(does that set the bar too high?)
What, I need to say something else too?

aarg

#7
Mar 05, 2016, 11:44 am Last Edit: Mar 05, 2016, 12:25 pm by aarg
How about  "RTC basics"? Supposing that I wanted to create a thread, what would I do with it?
  ... with a transistor and a large sum of money to spend ...
Please don't PM me with technical questions. Post them in the forum.

ChrisTenone

#8
Mar 05, 2016, 12:06 pm Last Edit: Mar 05, 2016, 12:34 pm by ChrisTenone Reason: ... or less.
If we emphasize 'Basics', gimme a couple weeks ... or less.
What, I need to say something else too?

Robin2

I would prefer to learn Python.
That says all that I reckon is needed :)

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

ChrisTenone

What, I need to say something else too?

Robin2

#11
Mar 05, 2016, 04:48 pm Last Edit: Mar 05, 2016, 04:49 pm by Robin2
If locked, what is recommended process they follow to get help?

Who keep this up to date?
In my opinion a person with a question should start his/her own Thread. It would not be practical to provide endless advice on any of those "tutorial" Threads even if they were not locked.

In my opinion the Moderators should keep it up to date. I believe all that will require is adding another link to the page.

-------------
@LarryD, As a separate issue, do you have links to suitable tutorials for the subjects you have mentioned?

I don't believe the purpose of the proposed list (or this Thread) is to make a demand for a Tutorial to be written.

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

econjack

LarryD's list points out several things we need to consider. First, some of the topics are already touched on if you do a search on this site. I'd add, for example, Stepper Motors and Encoders. However, both of those topics already exist as searchable topics. What I'd like to see is a list like Larry's, but with a link to a subheadings file that holds subheading links like you often see on document web sites. For example, A file with very broad topics like Larry's. Click on the "Encoders" link and you go to another file that has something like:

   Introduction
   Mechanical Encoders
         Debouncing
            Software
            Hardware
         Examples
   Optical Encoders
         Examples
            Manual
            Machine-driven

The list above could then have more links that send you to previous-posted replies, web sites with good content, etc. It would be easier to expand and grow this organizational list than the "main" list itself.

The problem today is not finding information, it's finding the information that applies to your specific situation. That is, winnowing the wheat from the chaff.

Part of the problem here will be who is responsible for maintaining the list. The obvious answer is the moderators, but I can't imagine the time they spend now, let along placing something like this on them. I'm not sure what the viable solution is.

Robin2

I can also erase my post if need be.
I certainly had no intention that you should erase your post. It has lots of useful ideas.

However, both of those topics already exist as searchable topics.
My understanding is that this Thread arose because some people (including me) felt that there are getting to be too many stickies which mean you have to scroll well down the page to get to the new questions.

And I thought the suggestion was to put links to the stickies in a separate "Useful Links" sticky. Then the existing stickies could be released. A system like that would not impose any additional load on the Moderators after the initial setup.

I do appreciate the value of the sort of system @econjack has proposed but, as he said himself, it would entail a lot of work by somebody and I can't see it happening. I am certainly not volunteering to do it. I must also say I am doubtful if the people who use the Forum would actually use it. Those with the initiative to do so can probably find all they want with Google. There are others who seem quite incapable of doing any research.

I would not like to see the introduction of the simple system deferred while we discuss a more complex system. In any case the two ideas are not mutually exclusive. It would be great to have both.

...R
Two or three hours spent thinking and reading documentation solves most programming problems.

econjack

You're probably right, Robin. Perhaps a "Useful Stickies" at the top and be done with it.

Go Up