D Programmer Jobs at Sociomantic Labs
Chris
wendlec at tcd.ie
Tue Nov 5 02:05:40 PST 2013
On Tuesday, 5 November 2013 at 06:21:34 UTC, H. S. Teoh wrote:
> On Mon, Nov 04, 2013 at 06:12:33PM +0100, PauloPinto wrote:
>> On Monday, 4 November 2013 at 16:49:10 UTC, simendsjo wrote:
>> >On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby
>> >wrote:
>> >>On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
>> >>>"Who D is Not For
>> >>>- As a first programming language - Basic or Java is more
>> >>>suitable for beginners. D makes an excellent second language
>> >>>for intermediate to advanced programmers."
>> >>>(http://dlang.org/overview.html)
>> >>
>> >>I'd argue against this. I think D would make a terrific first
>> >>language.
>> >(...)
>> >>
>> >>Something like C or D (i'd opt for D) should be any devs
>> >>first
>> >>language. Simply to educate them in the basics.
>> >
>> >I would say that it really depends on the age too. D as a
>> >first
>> >language for an 18 year-old technically savvy person might
>> >work,
>> >but for a 10 year-old?
>>
>> Well I was looking at Z80 Assembly code at the age of 12.
>
> I started programming Applesoft BASIC around that age too, and
> when I
> was 14 or so, I was programming in Motorola 6502 assembly
> language. When
> I was 16 one of my assembly programs was sold in a bookstore.
> Thereafter
> I moved on to Intel 8088 assembly language. It was only years
> later, in
> college, that I learned C and C++.
>
> I think BASIC introduced me to the concept behind imperative
> programming, even if at the time it has almost no structured
> constructs
> and most programs were just GOTO spaghetti soup. Going from
> there to
> assembly language was actually not that much of a stretch, and
> with big
> performance payoffs, too.
>
> Of course, the world has moved on since those days, so nowadays
> we don't
> usually bother with that level of performance fine-tuning
> except in
> performance critical bits of code.
>
> But anyway, w.r.t. the OP, if I were to be in charge of
> designing a
> curriculum, I'd put assembly language as the first language to
> be
> learned, followed by a good high-level language like D. On
> this, I agree
> with Knuth's sentiments:
>
> By understanding a machine-oriented language, the programmer
> will tend to use a much more efficient method; it is much
> closer
> to reality. -- D. Knuth
>
> People who are more than casually interested in computers
> should
> have at least some idea of what the underlying hardware is
> like.
> Otherwise the programs they write will be pretty weird. -- D.
> Knuth
>
>
> T
If someone doesn't know assembly, this book might help "Write
Great Code, Volume 2: Thinking Low-Level, Writing High-Level".
http://www.amazon.com/Write-Great-Code-Volume-High-Level-ebook/dp/B008Z6ASGC/ref=sr_1_2?ie=UTF8&qid=1383644591&sr=8-2&keywords=thinking+low+level
At least one can get an idea of what's going on under the hood.
My old man was programming with assembly for a while and told me
that the suicide rate among assembly programmers was quite high.
He also told me about the rule of diminishing returns*. If with
well written C program you can get 90% of assembly's performance,
leave it at that. If you wanna get the remaining 10% and use
assembly instead, the cost of it may not be worth the returns.
*(http://en.wikipedia.org/wiki/Diminishing_returns)
More information about the Digitalmars-d
mailing list