Hi! Can I advice someone who doesn't know any prog...
# getting-started
p
Hi! Can I advice someone who doesn't know any programming, Kotlin, as a first language? If yes, what (preferably free) resources should I recommend them?
k
also not any java? or any other programming languages? because this makes a huge difference in my opinion. As complete starter i think codecademy might be useful https://www.codecademy.com/learn/learn-kotlin
gratitude thank you 1
t
i love these for anyone without any experience: https://typealias.com/start/
💯 1
thank you color 3
i
The best approach is to learn some basics and then try to build something and learn as you go. Few ideas 1. To-Do List App: Create an application where users can add, delete, and mark tasks as completed. This will help you understand basic CRUD operations. 2. Weather App: Fetch weather data from a free API and display it. This will introduce you to network operations and JSON parsing. 3. Calculator: A basic arithmetic calculator to perform operations like addition, subtraction, multiplication, and division. 4. Note-taking App: Allow users to write, save, and delete notes. This can be extended to include features like categorizing notes or adding reminders. 5. Timer or Stopwatch: Design an app with start, stop, and reset functionalities. This will help you understand Kotlin's handling of time. BTW Goa especially at the beginning is to make it work, you will lar not to write proper code overtime 😉
1
m
And of course all of the above ideas can be command-line apps, so you can learn the basic concepts without getting lost in GUI frameworks - which are concept heavy by themselves if you are not familiar with programming.
k
Don't use command line to learn programming. IDEs are very helpful especially for beginners.
m
I didn’t suggest not using an IDE.
t
He was referring to writing apps that run in cmd without a specific ui framework, i think you are confusing that with a IDE vs. pure text editor discussion I’d definitely second what @Marcin Wisniowski said about skipping UI stuff and focusing on the language itself
k
Ahh sorry misunderstood
m
I’ve seen people trying to learn programming by writing an Android app, and it’s a recipe for disaster. There is too much to learn at once if you don’t already understand programming itself, and the language.
i
Yes thisnis a good point. Skip Android and Spring for now as they adding a lot of comlexity. Build pure kotlin Apps (like the one presented above), use command line as input/output to keep things simple. Focous on the code first, the overtime you can add some UI elements.
👍 1
w
For learning Kotlin I'd say the best source is always the academy created by the creators of Kotlin 🙂 https://www.jetbrains.com/pages/academy/kotlin/
s
Atomic Kotlin was written as a Kotlin-book that doesn't require prior programming knowledge: https://www.atomickotlin.com/
p
Ok, some notes about the links, which my friend tried https://typealias.com/start/ Very nice, illustrated explanations. It is a good supplemental material, but my friend said it needs to be combined with practical excercises https://www.atomickotlin.com/ It has exercises embedded into IntelliJ, but for eg. the type coercing example, if you would like to understand the error messages too hard. Operator overloading and polimorphism should be known to understand it fully, but it is of course not described before. So I do not recommend atomic Kotlin.