Photo by Vishnu R Nair on Unsplash
As the first platform for sharing various technologies, frameworks, libraries and collections, GitHub provides a large number of shared resources, but the problem is how to find the most useful library for you. To this end, this article has compiled a list of 10 great GitHub libraries, which can provide great value for all software engineers. These libraries have a large number of GitHub stars, showing their relevance, popularity and utility.
Some of these libraries can help you learn new knowledge, others can help build cool things, all of which will help developers become better software engineers.
1. Build Your Own X
This wonderful repository is a collection of tutorials on how to build your own technology. Examples are provided to help you understand how to build command-line tools, operating systems, search engines, 3D renderers, and more.
Ever dream of creating your own programming language? Or your own docker or git?
Well, this library is a good choice for you.
2. Free Programming Books
Although the library’s name is free programming books, it provides more than that. The library is available in multiple languages, including free online courses, interactive programming resources, problem sets and competitive programming, as well as podcast and programming exercises.
But most of them are programming books, and there are a lot of them.
3. Oh My Zsh
Oh my Zsh is a community driven open source framework for managing Zsh configuration. Zsh is not only an interactive shell, but also a powerful scripting language used by many developers.
Oh my Zsh has a variety of plug-ins and beautiful themes, allowing users to customize settings. Although you can get it up and running, there are plenty of good tutorials and other developer examples on the web to help you find the best settings for yourself.
4. Coding Interview University
If you want to be a software engineer for a big company like Amazon, Google or Facebook, the months long coding interview University short-term learning program is perfect for you. It targets new software engineers (though they still need to know basic CS knowledge) and provide suggestions on how to become a reliability engineer or operation and maintenance engineer.
The original intention of the library is to develop a personal to-do list to track their learning process. After learning for 8-12 hours a day, he finally got his dream job as a software development engineer for Amazon.
Coding interview university can help you prepare for technical interviews with companies like Google, Microsoft, Facebook, etc. Please make the most of it.
5. Gitignore: collection of templates
The library works just like its name: a collection of useful. Gitignore templates. Every time you create a new project library on GitHub, you must have a. Gitignore file to filter the uploaded content. The content of the. Gitignore file changes with the project and language. The library contains templates for almost all languages and frameworks (such as rails, python, Perl, larravel, Java, etc.), and even has templates for Fortran!
6. System Design Primer
This library is a great library of software engineers that can help you learn how to design large-scale systems and become better engineers. The library provides a large number of systematic resources for this broad topic.
Since system design is usually an essential part of technical interview in many enterprises, the library also provides technical interview support for engineers, including learning guide, interview suggestions, interview questions and solutions, interactive learning of anki card set, and interactive programming challenges.
7. Public API
The library contains free API lists for projects and applications, covering a variety of topics, such as business, animation, animals, news, finance, games, etc.
The cats API and dogs API can provide images of cats and dogs. Some more useful APIs are also available, such as the Gmail API or the Google Analytics API.
This library contains a large number of APIs, which can be viewed by readers themselves.
8. The Art of Command Line
Developers often ignore how to deal with the command line, but for engineers, using the command line can improve work efficiency and flexibility. The library contains effective tips and suggestions for using command line in Linux environment, as well as content suitable for windows or Mac OS system. General recommendations apply to other UNIX based operating systems. The library is suitable for beginners and experienced developers.
Although the library does not seem to be actively maintained, it still provides very good advice to help developers use the command line. Readers can fork the library and maintain it by themselves.
9. Java algorithm and data structure
The library contains several Java common algorithms and data structure examples. Each example is labeled “introductory” or “advanced” to indicate difficulty. In addition, the library also contains examples of hash table, heap, queue, stack, math, strings, sets, etc.
10. Developer Roadmap
The library contains a large number of charts showing the different learning paths and technologies to be taken to become a front-end, back-end or R & D Engineer. It may seem overwhelming at first, but this library provides useful guidance on trends and the skills needed by engineers in this rapidly changing industry.
The library is updated annually to reflect ecosystem changes.
I hope these databases can help you, and can use them to become better software engineers. Thanks for reading ~
Link to the original text: https://medium.com/better-programming/10-extraordinary-github-repos-for-all-developers-939cdeb28ad0
Welcome to click “Jingdong Zhilian cloud” to learn more.
The above information is from the Internet, compiled by the official account of Jingdong cloud developer, and does not represent Jingdong’s cloud location.