Programming Learning Resources
We have collected some online resources for learning how to code or how to write better code. We hope you will find them useful too We encourage you to explore them!
Please add to this page if you find a great tutorial that has helped you or resources that cover subjects that we did not list.
Java
- https://www.tutorialspoint.com/java/index.htm I find this very helpful in learning the Java language starting from the basics. I hope it will help someone out there .
- Udemy Java Courses
- https://www.codecademy.com/learn/learn-java This is an interactive course helpful for beginners.
TODO -
JavaScript
JavaScript (JS) is what we use when developing our user interfaces. For example, in https://github.com/openmrs/openmrs-core, we use JS to make the OpenMRS installation wizard dynamic. You can find some more at https://github.com/openmrs/openmrs-module-legacyui, where the older OpenMRS user interface is built in JavaScript.
General
- Tutorials/Language/API Documentations
- https://developer.mozilla.org/en-US/docs/Web/JavaScript - simply the best . A great start for learning the basics of Javascript and the go-to resource when you want to look up how a specific API works
- Tutorials/Courses
- https://javascript30.com/ - a super fun course that can improve your knowledge of browser APIs, Javascript and CSS
- It is a good idea to have a look at https://wesbos.com/courses/ since Wes continuously adds courses that are always very thoroughly explained, fun, and often free
- https://nodeschool.io/#workshopper-list - once installed you can work on these workshops offline :)
- the first ones to look at when getting started are javascripting, scope-chains-closures, planetproto, how-to-npm, promise-it-wont-hurt, js-best-practices, functional-javascript-workshop but there are many more
- https://javascript30.com/ - a super fun course that can improve your knowledge of browser APIs, Javascript and CSS
- Books
- https://github.com/getify/You-Dont-Know-JS - very good and in-depth books about how Javascript works, a good read for everyone (beginners, more experienced JS developers)
- http://exploringjs.com/ - great books explaining everything from the older to the newest Javascript language features
- https://drboolean.gitbooks.io/mostly-adequate-guide-old/content/ - a book on functional programming in Javascript, you might want to start with the above first and come to this one a bit later. It is worth checking out though, since its always interesting and good to challenge your way of thinking
- Newsletters
- http://esnextnews.com/ - stay up to date and learn about language features you did not yet know
Build/Maintenance
- Books
- https://survivejs.com/webpack/preface/ - extensive explanation and examples to follow along on how to package/build/optimize your front-end application using https://webpack.js.org/
- https://survivejs.com/maintenance/ - how to publish/maintain JavaScript applications or packages
Frameworks/Libraries
Angular
TODO -
React
ReactJS is a popular Javascript framework (out of many out there) and it is one of the frameworks used by some of our Open Web Apps in OpenMRS and http://bahmni.org/. Make sure that the module/project you will be working on is using ReactJS (and or Redux) before diving into these tutorials because it might also use another JS framework.
- https://reactjs.org/tutorial/tutorial.html - this is a must if you haven’t used react before
- https://learnredux.com/ - very good course on redux which can also improve your react knowledge
- Udemy React Courses
Books
CSS
- https://css-tricks.com/guides/ - great articles about CSS
- https://flexbox.io/ - free course on CSS flexbox
- https://cssgrid.io/ - free course on CSS grid
- Udemy CSS
Extensive Curriculum
We put https://www.freecodecamp.org/ in its own category since they offer very extensive courses that require more time to go through. freecodecamp is definitely worth the effort. They have different tracks such as
- Front End Development Certification
- Data Visualization Certificate