Re: [go-nuts] Go as your first language

2018-01-16 Thread matthewjuran
Here's an experience report on teaching new programmers with 
Go: http://www.monogrammedchalk.com/go-2-for-teaching/

On Tuesday, January 16, 2018 at 8:42:34 AM UTC-6, matthe...@gmail.com wrote:
>
> From my experience:
>
> Expecting somebody at 0 to become a software engineer via coursework or a 
> book doesn’t seem reasonable to me. There’s at least a couple years of 
> mentorship and experience required just for the baseline.
>
> JS or Go can get you far without knowing about stack traces, processor 
> constraints like data width, how to use issue trackers and code revision, 
> the importance of error handling, how to write structures (like trees of 
> functions) that are maintainable, type crafting, minimizing code 
> copy-paste, text parsing, code formatting arguing, and other 
> language-agnostic skills. Then there’s navigating people and deadlines.
>
> For an experienced software engineer writing code that doesn’t suck 
> requires working on a similar project first. Ideally these projects are 
> written by other software engineers with the specific experience.
>
> Go would be a good general purpose foundation language, probably the best, 
> but good mentors are more important than language choices on a professional 
> track, and multiple languages have to be learned for even just the baseline.
>
> Matt
>
> On Tuesday, January 16, 2018 at 8:20:28 AM UTC-6, Ayan George wrote:
>>
>>
>>
>> On 01/16/2018 02:10 AM, James Pettyjohn wrote: 
>> > 
>> > Are there tracks of knowledge to take someone from 0 to understanding 
>> > baseline knowledge? 
>> > 
>> > And from there through taking them to a professional grade standard? 
>> > 
>>
>> I think "Introducing Go" is a great book for someone relatively new to 
>> programming: 
>>
>>   amzn.com/1491941952 
>>
>> It is fairly short and gives a really gentle introduction to Go without 
>> (IIRC) complaining about other languages. 
>>
>> I'd probably recommend the following in order: 
>>
>>   * Introducing Go 
>>   * The Go Programming Language 
>>   * Concurrency in Go 
>>
>> -ayan 
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] Go as your first language

2018-01-16 Thread matthewjuran
>From my experience:

Expecting somebody at 0 to become a software engineer via coursework or a 
book doesn’t seem reasonable to me. There’s at least a couple years of 
mentorship and experience required just for the baseline.

JS or Go can get you far without knowing about stack traces, processor 
constraints like data width, how to use issue trackers and code revision, 
the importance of error handling, how to write structures (like trees of 
functions) that are maintainable, type crafting, minimizing code 
copy-paste, text parsing, code formatting arguing, and other 
language-agnostic skills. Then there’s navigating people and deadlines.

For an experienced software engineer writing code that doesn’t suck 
requires working on a similar project first. Ideally these projects are 
written by other software engineers with the specific experience.

Go would be a good general purpose foundation language, probably the best, 
but good mentors are more important than language choices on a professional 
track, and multiple languages have to be learned for even just the baseline.

Matt

On Tuesday, January 16, 2018 at 8:20:28 AM UTC-6, Ayan George wrote:
>
>
>
> On 01/16/2018 02:10 AM, James Pettyjohn wrote: 
> > 
> > Are there tracks of knowledge to take someone from 0 to understanding 
> > baseline knowledge? 
> > 
> > And from there through taking them to a professional grade standard? 
> > 
>
> I think "Introducing Go" is a great book for someone relatively new to 
> programming: 
>
>   amzn.com/1491941952 
>
> It is fairly short and gives a really gentle introduction to Go without 
> (IIRC) complaining about other languages. 
>
> I'd probably recommend the following in order: 
>
>   * Introducing Go 
>   * The Go Programming Language 
>   * Concurrency in Go 
>
> -ayan 
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] Go as your first language

2018-01-16 Thread Ayan George


On 01/16/2018 02:10 AM, James Pettyjohn wrote:
> 
> Are there tracks of knowledge to take someone from 0 to understanding
> baseline knowledge?
> 
> And from there through taking them to a professional grade standard?
> 

I think "Introducing Go" is a great book for someone relatively new to
programming:

  amzn.com/1491941952

It is fairly short and gives a really gentle introduction to Go without
(IIRC) complaining about other languages.

I'd probably recommend the following in order:

  * Introducing Go
  * The Go Programming Language
  * Concurrency in Go

-ayan

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] Go as your first language

2018-01-15 Thread James Pettyjohn
I've had multiple occasions where I've needed to train someone to be a 
programmer from scratch in a Go environment.

Trouble I've found is while the go texts are simple and straightforward, 
relatively speaking, they often written by someone who sought a better life 
in go, fleeing Java/C/C++. They will routinely reference these other 
languages in examples, touting the benefits of go is comparison to the old 
language. Much like reading GOF design patterns without a background in 
smalltalk, it is hard for new developers to pick up when they don't know 
other languages first. Commonly they cut it back and learn JS first.

Assuming they eventually picked up the language they now need to learn how 
to be a software engineer and write code that doesn't suck. Especially 
present with those who just learned how to program using JS. And what I've 
seen on the subject often expects a knowledge of another language.

Are there tracks of knowledge to take someone from 0 to understanding 
baseline knowledge?  

And from there through taking them to a professional grade standard?

Best,
James

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.