Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Which types of learning resources do you find the most helpful, for which kinds of learning and/or perhaps at specific times?

Some examples of types of learning you could consider:

  • When starting to integrate a new SDK inside an existing codebase
  • When learning a new framework without having to integrate legacy code
  • When digging deeper into an already-used SDK that you may not know very well yet

For example - (video) tutorials are usually very easy to follow and tells a story from beginning to end to get results, but will nearly always assume starting from scratch or a previous tutorial. Therefore such a resource is useful for quick learning if you don't have legacy code around, but less so if you have to search for the best-fit to the code you already have.

SDK Documentation on the other hand is well-structured but does not tell a story. It is more difficult to get to a specific larger result with documentation alone, but it is a better fit when you do have legacy code around and are searching for perhaps non-obvious ways of employing the SDK or library.

Are there other forms of resources that you find useful, such as interactive training?

share|improve this question

closed as not constructive by World Engineer, Joachim Sauer, gnat, Walter, Caleb Sep 18 '12 at 15:26

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

    
The "learning" part is nice, but don't forget that there'll be situations when your users are stuck and they need to know how a specific method/class/thingamabob works exactly. At this point documentation is absolutely necessary. –  Joachim Sauer Sep 18 '12 at 6:17
add comment

5 Answers

This is highly subjective based on the person.

I'm an intuitive learner, I have to stick my hands into something and wiggle them about, get cut and bit to learn. So I go straight to the documentation to find the knobs and wheelies I can turn. But for many, this method is as good as tea leaves.

I think based on the way education systems tend to teach people (at least the one I'm familiar with, and I think many follow similarly) it is more common for people to have a learning style suited to tutorials. For many however these simply are not effective.

Some people learn very well from visual such as in a video tutorial, while many learn better from reading tutorials.

I'm not sure you're goal here, but I guess my point is:

  • If you must generate training, use all 3.
  • If you are looking for a technique to learn, use the one which you find works best for you.
share|improve this answer
    
Thanks for the feedback! My goal's to make it as easy as possible for developers to use an SDK my team has built. Like you said, different devs might have different preferences, but I'm looking to find the best way to serve the majority. –  Cat Sep 18 '12 at 4:45
    
The best way is multiple ways. But if you do only one, that shall be documentation. For a whole lot of people documentation is essential. And if it's not good, they'll pass. I, for one, sometimes look for the documentation link/tab on the site before reading the description or the about. But most importantly, everybody, when they start using your SDK, will need documentation. And it better be good. Tutorials and video tutorials may add value on top of that, especially for starters. You want all three, but if you are going to do only one, it has to be great documentation. –  Analog File Sep 18 '12 at 6:21
    
I completely agree with your last points. BTW, I'd say I'm mostly a documentation and tutorials person. Documentation is essential because you can't come up with tutorials for all in-depth use cases. Tutorials are great for quickly getting your hands dirty, and I find videos to be best for abstract, high-level concepts - e.g. watching someone quickly go through a language you've never seen before. I wouldn't want to "read" the Java API documentation / MSDN as videos, however. So, having all 3 is the best, if you can. –  Daniel B Sep 18 '12 at 11:52
    
@Cat: Seriously, it doesn't have to be a lot for each of the 3, but a 3 minute youtube clip of slides and you setting up a simple use case will go a long way for those who this works for. And many won't even look at your documentation without first seeing a short tutorial page that shows it does work and how, think hello world size tutorial page on a wiki. As for me, without an immediate API reference I won't even bother. Really, do all 3. –  Jimmy Hoffa Sep 18 '12 at 13:19
add comment

There are various theories about how people learn. On the other hand, most programmers have some things in common: We generally don't have much time, and we are good at reading.

Nothing makes me more mad than trying to find information about a framework/sdk/library to see if it will have any use for me in a 2 hour long video.

Here is a common strategy:

  1. A basic overview on what it does(article, video)
  2. Comparison with similar stuff(article)
  3. Detailed API documentation(articles)
  4. Beginner tutorials(articles, video)
  5. Cookbooks(articles, video)

My advice, go with articles/documentation, and add some videos/screencasts when you have more time.

share|improve this answer
add comment

None of those enumerated. The best source of learning is represented by books. They are more detailed than a tutorial pointing out details and are not so blunt in expressing ideas like documentation.

share|improve this answer
    
Thanks for the feedback, that definitely makes sense. How about in the case of integrating a smaller sized SDK? The reduced number of developers in need of help using it might not justify writing and publishing a book. In that situation, what's the best alternative out of the 3 (docs, tutorials, videos)? –  Cat Sep 18 '12 at 7:40
    
@Cat Personally I would not consider learning a SDK if there is not at least a book written for it; it is not going to be very useful. Unless it's in-house for the company you're working for and you have to; in this case you have to learn from documentation or directly from those who wrote it. –  m3th0dman Sep 18 '12 at 8:23
add comment

It will depend!

The right answer will really depend on type of technology/framework that you are trying to promote or learn.

For example, a series of blog posts about new emerging framework/technology might be interesting for some developers, while others may enjoy watching tutorial videos and/or webcasts.

Thus, it is really subjective question and it is hard to say what will work and what not. Because, you are dealing with human preferences on over another. I guess polling of this question may provide you a better result.

However, taking into account the effort to learn, I would rate it as "documentation < tutorial < video tutorial".

share|improve this answer
add comment

I think that all tree are important, but, to me, you have to take them in the right order. I've learned iOS Dev by myself. So my experience leads me to tell you to go for the easiest first and then get deeper into it.

So I have started with video tutorials, then some tutorials and finally books.

Because learning new stuff is hard to add to your current work load, you have to pay attention to your motivation. So, start with a TV-like approach and when you're at ease with new concepts and terms, dig into the real references.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.