@Marcus, Thanks for your kind words, Marcus.

@Gareth, +1. I feel re-implementing a past solution is a really good 
learning technique.
Half the battle is to correctly understand a problem/domain and work out 
how to solve it.
No point taking on that kind of friction if the purpose is to learn a new 
language.



On Thursday, March 27, 2014 10:20:11 PM UTC+5:30, Marcus Blankenship wrote:
>
> Awesome, thanks for the advice.  I need to find something I’ve written and 
> translate it to Clojure...
> On Mar 26, 2014, at 7:14 PM, gaz jones <gareth....@gmail.com <javascript:>> 
> wrote:
>
> A technique I use whenever I need to learn a new language is to write the 
> same application I already have in another language.  I generally choose 
> downloading nzbs from usenet as it can involve a number of interesting 
> programming techniques, at least enough to give you a pretty good idea of 
> how a language handles things like:
>
> * threading and work queues (downloading files concurrently)
> * socket io (writing a simple nntp client)
> * xml processing (parsing nzb files)
> * binary encoding/decoding (yenc implementation)
> * curses style ui
> * web ui
> * command line arguments
> * configuration
> * signal handling
> * testing (haha kidding)
>
> TBH I usually get about 50% of the way through and have enough of a handle 
> on the language at that point to abandon my efforts and move on.
>
> On Wed, Mar 26, 2014 at 7:22 PM, Daniel Higginbotham 
> <nonrec...@gmail.com<javascript:>
> > wrote:
>
>> Chiming in a bit late, but here was my path:
>>
>> * Read "Land of Lisp" by Conrad Barski. This was my first real contact 
>> with lisp and functional programming. I found it challenging, but the book 
>> is well-written and the technique of teaching through writing games was 
>> perfect for me. It uses common lisp which is almost baroque compared to 
>> Clojure, but it was helpful later in getting a better sense of Clojure's 
>> roots. Also, most of the classic lisp books out there use common lisp
>> * Tried to write my own web-based game using common lisp. This was true 
>> fun and I learned a ton
>> * Read "On Lisp" by Paul Graham. It is an excellent book
>> * Was introduced to Clojure through a talk given by Alan Dipert at my 
>> workplace
>> * Learned Clojure by skipping around Clojure in Action, Programming 
>> Clojure, and Clojure Programming. Settled on Clojure Programming.
>> * projecteuler.net has been a good help
>> * I've been teaching Clojure to folks at work, which forces me to deeply 
>> understand the material
>> * At the same time, I've kept building little web apps to solidify my 
>> knowledge. One of them, http://gratefulplace.com, is actually used :)
>>
>> I feel like I know enough to get stuff done, but there's still so much 
>> more to learn. Most recently I've been brushing up on math/logic so that I 
>> can better understand the more mathy texts whenever I encounter them.
>>
>>
>> On Thursday, March 20, 2014 9:08:41 PM UTC-4, Marcus Blankenship wrote:
>>>
>>> Hi Folks, 
>>>
>>> I'm a post technical PM who's fascinated by Clojure, and want to learn 
>>> it, but am having a hard time without a "real" project to work on. It's 
>>> actually excited me so much I'm considering hanging up my PM hat and diving 
>>> back in the "programmer pool" again! 
>>>
>>> My problem appears to be 1) focus, and 2) fear. Focus because I can't 
>>> (yet) earn a living on a clojure project, so it must be done during "off 
>>> hours". Fear because it's harder and more different than the old OO 
>>> languages I've used in the past. 
>>>
>>> So I'm curious: how did you learn Clojure well enough to be proficient 
>>> with it, or how are you working on learning it? 
>>>
>>> Anyone else facing the focus + fear dilemma? 
>>>
>>> Sent from my iPhone
>>
>>
>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clo...@googlegroups.com<javascript:>
>> Note that posts from new members are moderated - please be patient with 
>> your first post.
>> To unsubscribe from this group, send email to
>> clojure+u...@googlegroups.com <javascript:>
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to clojure+u...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
> -- 
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clo...@googlegroups.com <javascript:>
> Note that posts from new members are moderated - please be patient with 
> your first post.
> To unsubscribe from this group, send email to
> clojure+u...@googlegroups.com <javascript:>
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> --- 
> You received this message because you are subscribed to the Google Groups 
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to clojure+u...@googlegroups.com <javascript:>.
> For more options, visit https://groups.google.com/d/optout.
>
>
> Best,
> Marcus
>
> Marcus Blankenship
> \\\ Problem Solver, Linear Thinker
> \\\ 541.805.2736 \ @justzeros \ skype:marcuscreo
>  
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to