LearningHowToLearn-JAVA
Episode 01: Learn git:
Basics git: http://rogerdudler.github.io/git-guide/index.pt_BR.html (portuguese)
Basics github: https://guides.github.com/activities/hello-world/
Video option: https://www.youtube.com/watch?v=WVLhm1AMeYE&list=PLInBAd9OZCzzHBJjLFZzRl6DgUmOeG3H0 (portuguese)
Episode 02: Learn the basics concepts of java programming:
Basic concepts: http://www.progressivejava.net/p/if-you-are-starting-in-java-we-sugest.html
http://www.javaprogressivo.net/p/curso-completo-de-java-para-iniciantes.html (Same content of above but in portuguese)
Mobile option: https://www.sololearn.com/Course/Java/
Learn praticing: https://www.codecademy.com/pt-BR/learn
Videos option: https://www.youtube.com/playlist?list=PLGxZ4Rq3BOBq0KXHsp5J3PxyFaBIXVs3r (portuguese)
https://www.hackerrank.com/domains/tutorials/30-days-of-code (Solve the 30 days of code.)
Episode 03: Learn Object oriented and software architecture concepts:
Videos options to OO: https://www.coursera.org/learn/orientacao-a-objetos-com-java (portuguese)
Videos options to TDD: https://www.coursera.org/learn/tdd-desenvolvimento-de-software-guiado-por-testes/home/welcome (portuguese)
Episode 04: Learn data structure:
(Needs content)
Episode 05: Enter inside the comunity:
https://github.com/ (Here you can follow projects and discovery how coders get things done.)
http://stackoverflow.com/ (Here you can answer and ask questions.)
https://www.reddit.com/ (Here you can meet great programmmers.)
https://medium.com (Here you can learn articles everyday about programming and the new trending, and share your knowledge.)
https://twitter.com/ (Follow coders and companies and talk to them about code.)
Episode 06: Learn about frameworks and patterns:
What way do you want follow first? Android or java web?
Android:
Create your first app: https://developer.android.com/training/basics/firstapp/creating-project.html
Video option beginner: https://br.udacity.com/course/android-basics-nanodegree-by-google--nd803/
Video option intermediate: https://www.udacity.com/course/android-developer-nanodegree-by-google--nd801
- Patterns to learn the concepts:
MVC, MVP, singleton, observer, dependency injection, adapter and factory.
- Frameworks to upgrade your app like a pro:
https://projectlombok.org/ (writte the model methods to you).
http://jakewharton.github.io/butterknife/ (inject views and button actions).
https://medium.com/android-dev-br/introdu%C3%A7%C3%A3o-ao-dagger-2-56d193118a6c (Release the same object to all your classes).
http://square.github.io/retrofit/ (Connects with JSON and convert to model using the gson converter).
https://github.com/orfjackal/retrolambda (Applys android studio to use lambda functions, important at map in RxJava).
https://realm.io/docs/java/latest/ (Make the persistence like sqlite but easier).
https://code.tutsplus.com/pt/tutorials/getting-started-with-reactivex-on-android--cms-24387 (RxJava helps with asynktasks like download API's)
Some tips at my blog: https://medium.com/@danilosilvadev
Web:
(Need info.)
Episode 07: Hackaton
We met at a day and for 24 hours we create a new project with all information that we learned.