addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscontroller-playcrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1light-bulblinklocation-pinm-swarmSearchmailmessagesminusmoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonprintShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruserwarningyahoo

Re: [ljc] How to think as "functional language programer"

From: Gareth W.
Sent on: Wednesday, October 2, 2013 11:57 AM
I agree. I don't consider myself to be an experienced functional programmer, but I found the Functional Programming Principles course to be a great start. I struggled a bit towards the end, but it helped when I discovered that several colleagues were also taking the course and we discussed the material in person (rather than via email, message boards, etc.). That said, the Coursera forums were also very helpful.

So just to reiterate what Joel said: Stick with it and it does become more intuitive with time and practice.

Also of note: there is a follow-on Coursera course entitled "Principles of Reactive Programming" starting on November 4th which looks to be interesting:



On 02/10/13 12:49, Joel Gluth wrote:
My main piece of advice would be simply to stick with it.

The Coursera "FP in Scala" course is a decent introduction (I had my team of OO developers take it, at my last job). It might feel like you are spraining a frontal lobe making the transition from mutable to immutable coding styles, but the exercises in Odersky's course are presented in a reasonably well thought out order.

Struggle through... the lightbulbs will go off. Having someone to talk to about it might be a good thing - are the Coursera forums of use?

Scala is a bit of a funny one in that it gives you the tools for mutable programming up front and it can be tempting to lean on them (unlike, say, Clojure, where the mutability keys are put on a slightly higher shelf). Ignore the crutches. Don't be put off by the fact that you are finding it hard... if you are totally new to FP, it's definitely a lot of mental gear shifting.

Hang in there.

On Wed, Oct 2, 2013 at 10:38 AM, Sivaji <[address removed]> wrote:
Hi all,
recently I have started learning Scala course offered by coursera (by martin odersky) but I am still not getting the crux of it by writing programs in functional way. Most of the time I am thinking like a imperative prog language developer and all examples/exercises are given in the course need to be solved with out mutation (complete functional).

so my question is, Is this quite normal for a developer from java background or you have any learning resources to tune my mind to write programs in functional programming language as well... I am loosing confidence for the first time as I am struggling to write a simple dummy tweeter application,.Scala language syntax/constructs/concepts are not a problem to understand but thinking everything in recursion and thinking very abstraction is nightmare for me now. Anybody faced similar issue (may not be with scala but other functional prog language) and want to share their experiences, it is highly appreciated??

sivaji k

Our Sponsors

  • Our Blog

    Read the latest news from the LJC

  • RecWorks Ltd

    Fixing Tech Recruitment using the Power of Community

  • jClarity

    Java/JVM Performance Analysis Tools & mentoring for Java related matters

  • LJC Aggrity

    Our LJC Aggrity site contains blog posts from our members

  • LJC Book Club

    Our Book club with book reviews from our members

  • Devoxx UK

    Java Community Conference in collaboration with the LJC, 8-10th June 16

  • SkillsMatter

    "Host, help organise, promote, film many of our meetings."

  • IBM

    Build Enterprise-grade apps at start-up speed.

  • New Relic

    New Relic makes sense of billions of metrics a day in real time.

  • Hazelcast

    Hazelcast is the leader in operating in-memory computing.

  • Java.Net

    We are an official Java User Group recognised by Oracle's JUG program

  • JRebel

    Free 3 month J-Rebel license.

  • O'Reilly

    40% discount on printed books and 50% on e-books.

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy