|
|
I need to know how things are meant to interact with each other, not just a list of methods and properties.
Win32 API documentation is 10 times better, and the old Win16 documentation is priceless - I had to use it to locate a possible bug in the linker (turns out it was a simple mismatch of structure size between exe and DLL but since it was all in the allotted memory space no Access Violation happened, just a static variable misteriously reset to 0 on 'random' occurrences).
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
|
When I was writing documentation for a complex product with a built-in language (Rexx) and extended functions I ended up writing two documents. A technical Reference that listed everything you could do, lists of API calls, etc. and a User's Guide showing how to do certain tasks and what to use to do them with examples of common things.
- I would love to change the world, but they won’t give me the source code.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
When I'm learning a new language, I like to simply play around and get a feel for how it works.
Give me some example syntax, how to handle errors and let me at it.
A quick reference is good, but from that point on, google is my friend.
|
|
|
|
|
This isn't relevant for several languages, because the definition is too bl**dy complex. But for simpler languages, it can be a great aid to really understand all aspects of a language.
In the old days, when I learned Pascal (which is certainly not too complex for a formal definition), I learned a whole lot by studying the 'blob-and-arrow' diagrams for the syntax. For other languages, I still search for a BNF definition of sorts - it is still helpful for data definition languages (langages are a lot more than loops and if-else-constructs!). For communication languages (a.k.a. protocols), MCSs may be very helpful to understand the language.
Part of the reason why formal specifications are rarely seen today is that you can't take for granted that today's young programmers are familiar with any formal specification language, not even basic BNF. If they were to read a formal specification, they would have had to learn the specification language first, before learning the programming language!
|
|
|
|
|
trønderen wrote: This isn't relevant for several languages, because the definition is too bl**dy complex.
And that's a red flag as big as a city block. The language should be simple and powerful, the cool functionalities built on top of it. C++ before the Crazy Committee Catastrophe was almost there.
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
What I prefer is a 5-minute video on how to get started.
|
|
|
|
|
A five minute YouTube video to get started with a new programming language?
Oh well, we've got different ways, different preferences
|
|
|
|
|
Five minutes are enough to learn "Hello World" in that language. Then follows a deeper study.
|
|
|
|
|
Why a 5 minute video when 5 paragraphs are enough? Ugh, I can't stand people talking and yapping.
GCS d--(d-) s-/++ a C++++ U+++ P- L+@ E-- W++ N+ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
|
|
|
|
|
After 230 votes, the span of the results runs from 3.21 to 3.94 (6 of 9 between 3.39 and 3.83).
For this survey, we should have had the counts of each rating 1-5, not just the averages. It would have been fascinating to see which features we all agree about, and which are absolutely required by some, but of no value to others.
|
|
|
|
|
I happened to let my mouse cursor rest for a few seconds on the orange bar indicating the average score ... and up popped a small window displaying five vertical bars, labeled 1 to 5. You won't win a gold medal for the formatting, but at least the information is there.
(I guess that this display feature has been around for a long time, but I have never stumbled over it before!)
|
|
|
|
|
That's cool. I didn't know this existed, thanks.
- I would love to change the world, but they won’t give me the source code.
|
|
|
|
|
Tell my why I should use this language over C++ and C#. If there's any good reason why I should use it, then the other stuff can follow. Otherwise I don't have the time.
|
|
|
|
|
In a non-hobbyist setting, that may be be important to you, your company or your customer(s). Frequently (maybe in most cases, this is strongly affected by factors unrelated to the technical language properties, and you are not likely to find it in the documentation on the language.
I've learned new languages: When the company decided to switch to a less used language to protect their IP rights in case the source code was stolen. When entering a new position, and a management decision had been made about language choice before I entered. When getting the responsibility for maintaining existing software in a language new to me. When the context, such as html, restricted the languages available. When a test framework was introduced where test procedures was written in a language new to me. When direct interface to hardware was required, so I had to learn another assembly language. When I had to modify the system build functionality of the 'editor' (well, some people say that emacs is a good OS, but it lacks a decent editor ...).
I have experienced all of these situations. I can imagine several others: A needed library may available only in a specific language (years ago, IBM had some great graphics software in APL). Your customer is buying the source code, dictating your language selection. Your team are experts in a domain specific language new to you. ... We could probably dig up a dozen other examples of restrictions not related to the language itself, but to your specific context.
The language documentation may of course boast: This is the perfect language for everything! without going into any specifics, or only things unrelated to your specific situation (such as 'You can program your editor's behavior', which is irrelevant if your editor is non-programmable or only in another language).
As a hobbyist, you have a great freedom to pick the language of your choice. A small one-man or few-men company restricted to a small class of software, such as small freestanding closed-source applications, interfacing with other software only through IP based protocols (or not at all) may have a similar freedom. And, you have the freedom to shy away from employers expecting you to program in languages other than those you already know.
|
|
|
|
|