Another programming language

Another programming language

It is worth learning at least one programming language every year-the authors recommend “Pragmatic Programmer. From journeyman to master.” Which language to bet on when we already know at least one?


Go

Also known as Golang language is the work of Google developers. He saw the light of day in 2009 and since then consistently stumps in the popularity rankings. It’s a modern and relatively simple language. He grew out of the C tradition, but he puts on more expressiveness and concurrence-these are his decisive advantages. It has a built-in Garbage collector. It is very simple and intuitive, has a huge library.

For whom

  • Backendwho are looking for an efficient language for creating microservices-especially those where concurrence is useful.

Online courses

  • A Tour of Go – official Go language tutorial. It presents further elements of this language in the form of an interactive tutorial.

  • Go Tutorial (for beginners) – a very synthetic, free tutorial in English, from which we will learn how to prepare the environment for programming in Go and write the first program.

  • GolangBot (for beginners) – a short but very informative tutorial in English, which also shows how to prepare tools for programming.

Books

  • Effective Go – item for people who already know the basics of it such as syntax and want to learn how to effectively use this language to write applications. The document indicates how and when to use specific language constructs to best use the language’s potential
  • The Go Programming Language (for beginners) – a very interesting manual for those who want to quickly master the language. Clearly described both the basics of the language and the issues that arise in advanced projects based on it.

  • Programming in Go. Concepts and examples (for beginners and advanced) – very good introduction to the language. We will read not only about the basics, but also the scalability, performance and architecture of the software.

  • Cuncurrency in Go. Tools and Techniques for Developers (for advanced) – a manual for those who want to enter a higher level of insight and make the most of the main advantage of this language-concurrence.

Online tasks

  • CodeEval (all levels) – a set of programming tasks for both beginners and advanced. Go is available among 26 languages.

  • CoderByte (all levels) – here we will test your skills in practice


Community

Scala

The language appeared in 2003. Its creator is Martin Odersky from the École polytechnique fédérale de Lausanne. It combines features of functional and object language. The name itself is intended to emphasize its high scalability.

For whom

  • Developers in particular Java (but not only!), looking for greater expressiveness while maintaining the security that static typing or a functional paradigm gives.

Online courses

  • TutorialsPoint (for beginners) – a portal with numerous online courses, visited by several million users around the world.

  • Scala Tutorials (for beginners) – tutorial focused on the basics and key aspects of the language.

  • Functional Programming Principles in Scala (advanced) – course available in English and French, prepared by the creator of the language Scala.


Books

  • Programming in Scala (for beginners) – book available free online. Again, the author is the creator of the language.

  • Scala from lining (for beginners) – a clear guide for people who are just starting an adventure with the language. In addition to the basics, there is also a chapter on integrating Scala with Java.

  • Learning Scala. Practical Functional Programming for the JVM (for beginners and advanced) – thanks to this book, we will learn both the basics of Scala and learn why it is the ideal language for Ruby and Python programmers.


Online tasks

  • CodeEval (all levels) – the portal mentioned above offers many programming challenges in different languages, including in Scala.


Community


Swift

Apple’s proposed language to replace Objective-C. Currently, Tiobe index ranks 13th among the most popular programming languages, it is used by about 7% of users of the Stack Overflow portal.

For whom

  • For iOS developers it becomes mandatory. It can be used on the backend, but its ecosystem is not as mature as in the languages listed above or the more popular alternatives.


Online courses


Books

  • Swift from the ground up. Practical guide (for beginners) – Paweł Pasternak’s book is the perfect guide for anyone who is starting to program in swift and get to know Xcode. Absolute basics and more advanced issues.

  • Swift Programming: The Big Nerd Ranch Guide (for beginners and advanced) – a practical manual that teaches not only the basics of swift, but also independently solve programming problems and create advanced applications on iOS.

  • Swift Fundamentals: the Language of iOS Development (for beginners) – Mark A. Lassoff is a real authority not only when it comes to swift, but the art of programming in general. He wrote a very accessible textbook with lots of examples and exercises.


Online tasks

  • CoderByte (different levels) – from time to time there are very interesting tasks and programming challenges for programmers in swift.

  • Raywenderlich (for advanced) – a set of very interesting tasks to solve.


In addition

Rust

According to the 2017 Stack Overflow report, Rust is the most popular of all programming languages among the users of the portal. among the users of the portal. It was chosen by 73% of respondents-and this is the second year in a row. This is a great achievement for a language whose first stable version appeared in 2015. Although Rust was mentioned in 2006.

For whom

  • Mostly for system developers, because it is supposed to replace C, providing comparable speed, and much greater stability. However, more ambitious backenders can also take a closer look at it. This is definitely not the language from which you should start your programming adventure.


Online courses

  • The Rust Programming Language (for beginners) – more than five hours of footage on the basics of programming in rust.

  • Rust by Example (for beginners and advanced) – a collection of examples and tips on programming in rust.

Books

  • The Rust Programming Language (for beginners) – free book on the basics of programming in Rust

  • Programming Rust (for beginners and advanced) – the basics of rust given in a clear and accessible way. The author clearly emphasizes the advantages of language.

  • Why Rust? (for advanced) – a lot of interesting things about Rust, also its characteristics in the background of C and C++


Community

Kotlin

In one of the articles we wondered if Kotlin is the future of Android. There are many indications that this will be the case. Increasingly Kotlin is compared to Swift, which is intended to replace Objective-C. Now it is worth starting to learn Kotlin as a second language. You will also be convinced by Artur, a Full-stack developer who wrote with us about the web developer basin.

For whom

  • Mainly for Android developers. It can also be considered as a general-purpose language and especially in this field is now gaining the sympathy of developers.

Online courses

  • Kotlin Koans – here you can learn the basics.

  • The Complete Android Kotlin Developer Course (for beginners) – very extensive course-more than 30 hours of videos and additional materials. You can learn not only the basics of programming in Kotlin, but also to create advanced applications (for example, games on Android).

  • Learn Kotlin (for beginners) – a good introduction for those programmers who take learning Kotlin really seriously. Very synthetic course.


Books


Online tasks


Community

Which language do you choose? Regardless of the decision, we wish you perseverance in learning!

Go to our cases Get a free quote