We use cookies and other tracking technologies to improve your browsing experience on our site, analyze site traffic, and understand where our audience is coming from. To find out more, please read our privacy policy.

By choosing 'I Accept', you consent to our use of cookies and other tracking technologies.

We use cookies and other tracking technologies to improve your browsing experience on our site, analyze site traffic, and understand where our audience is coming from. To find out more, please read our privacy policy.

By choosing 'I Accept', you consent to our use of cookies and other tracking technologies. Less

We use cookies and other tracking technologies... More

Login or register
to apply for this job!

Login or register to start contributing with an article!

Login or register
to see more jobs from this company!

Login or register
to boost this post!

Show some love to the author of this blog by giving their post some rocket fuel 🚀.

Login or register to search for your ideal job!

Login or register to start working on this issue!

Engineers who find a new job through Golang Works average a 15% increase in salary 🚀

Blog hero image

Now is the Time to Learn Functional Programming

Craig Dennis 25 August, 2017 | 2 min read

Functional Programming has been getting a lot of buzz lately. What makes that weird is that it’s been around for a long time. In order to understand why it’s so popular now, I think it is important to take a look at the history of how we got to where we are now.

Acceptance

Over time just about every Object Oriented language has started adding more and more functional tools to its toolbox. When these functional more declarative features are first introduced, they are often met with resistance. I think this is natural and understandable, I don’t blame anyone for feeling confused as to why they would need a new way to do things. The old way works fine! There have been many solutions to many of these problems, however, they have been built in a different paradigm, an imperative one.

Functional Programming is a different way of thinking and it will take some patience and open-mindedness to pick it up, but it will be beneficial as things are rapidly heading that direction. If you are skeptical, I’m asking that you give it a chance.

Functional Programming in Java

Java joined the Functional Programming game with the release of Java 8 in March of 2014. It introduced a brand new way to gather, aggregate and reduce your data using a new language concept known as a Stream. A stream is a pipeline of functions that expose a more declarative way to accomplish tasks, and can very easily be parallelized, thus addressing the problem space of our many computers and endless processing power.

I’ve found that most people who use them, fall in love with them very quickly. I’d love to introduce you two, so come check out my latest Introduction to Functional Programming course. You have never seen Java like this before. I promise.

And more!

If you are enjoying yourself and would like to go on a second date, please go to a viewing of one our new releases Introduction to Scala. Scala is a programming language that runs on the Java Virtual Machine, and therefore can interoperate with Java seamlessly. Scala is a portmanteau for scalable language, and it is an attractive, expressive and succinct language. You’re gonna dig it.

We also offer functional programming courses and workshops in our many of our other topic areas, such as Functional Python and iOS with Functional Reactive Programming in Swift. If you choose, you can experience it being used first hand in a handful of other courses such as our C# course Querying with Linq our JavaScript based React Basics course, or our Android focussed RxJava workshop as well.

So what are you waiting for? Let's get functional!

Treehouse brings affordable technology education to people everywhere in order to help them achieve their dreams and change the world.

If you are interested in working with Haskell and other FP languages, check out our Functional Works job-board!

Originally published on blog.teamtreehouse.com

Author's avatar
Craig Dennis
Teacher @treehouse | Dev @thingsSDK
    JavaScript
    Java
    Python

Related Issues

viebel / klipse-clj
viebel / klipse-clj
  • Open
  • 0
  • 0
  • Intermediate
  • Clojure
viebel / klipse
  • Open
  • 0
  • 0
  • Intermediate
  • Clojure
viebel / klipse
  • 1
  • 0
  • Intermediate
  • Clojure
viebel / klipse
  • Started
  • 0
  • 1
  • Intermediate
  • Clojure
  • $80
viebel / klipse
  • Open
  • 0
  • 0
  • Advanced
  • Clojure
  • $80
viebel / klipse
  • Started
  • 0
  • 2
  • Advanced
  • Clojure
  • $180
viebel / klipse
  • Started
  • 0
  • 1
  • Intermediate
  • Clojure
viebel / klipse
  • Started
  • 0
  • 3
  • Intermediate
  • Clojure
  • $80
viebel / klipse
  • 1
  • 0
  • Advanced
  • Clojure
  • $300

Get hired!

Sign up now and apply for roles at companies that interest you.

Engineers who find a new job through Golang Works average a 15% increase in salary.

Start with GithubStart with Stack OverflowStart with Email