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 .
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
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
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
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