[Maria-developers] To getting started for contribution at your GitHub repo
Respect sir, I Omkar Devgirikar , I am a student and as a beginner i want to start contributing in your server repo with C++ language . Can you please guide me with your project like resources for this project, how get started and some good first issues. Please look at my mail seriously and guide me please. I hope you will look at it. Thank You
Hello Omkar! I appreciate self-motivated letters, so I decided to guide you through basic contribution. Here is a simple task for you: https://jira.mariadb.org/browse/MDEV-25374 The work here is concentrated in `mysql` client. First, you need to compile the code base. I recommend going through these links: https://mariadb.org/get-involved/getting-started-for-developers/get-code-bui... https://mariadb.com/kb/en/generic-build-instructions/ If you use windows, here's another link https://mariadb.com/kb/en/Building_MariaDB_on_Windows/. Take a look into mysql.cc file and try to find what to fix. For a comfortable development install some C++ IDE. For big projects like MariaDB i recommend one of the following: * JetBrains CLion, but it 's hungry for RAM. Use it if you have more than 8GB. * QTCreator is good and feature-rich IDE * Visual Studio is a good choice if you use windows. Omkar, there are some other beginner-friendly tasks i'll be glad to share with you, but to make a more serious and notable contribution, you have to study computer science to a serious level. I want to give you some recommendations on this as well. SQL server work relies a lot on understanding how indexing works. So to participate at full power, you need a very good knowledge on algorithms and data structures. * Basic algorithms and algorithm complexity, O-notation. * Sorting algorithms, like qsort. binary search. Heap data structure. * Dynamic programming. Substring finding algorithms, like Knuth-Morris-Pratt * Graph algorithms. BFS, DFS, Shortest path algorithms. * Tree data structures: Binary balanced trees (AVL/red-black), Radix tree, Trie, Disjoint-Set Forests. I found some free course that resembles to what I mentioned: one https://www.coursera.org/learn/algorithms-part1, two https://www.coursera.org/learn/algorithms-part2, three https://www.coursera.org/learn/analysis-of-algorithms. * And I hardly recommend this amazing book: Cormen, Leiserson. Rivest: Introduction to algorithms https://sd.blackball.lv/library/Introduction_to_Algorithms_Third_Edition_(20... * Participate in ICPC https://icpc.global/. Ask your teachers how, maybe they'll help you find the training courses in your area. Programming contests really help a lot to sharpen your programming skills. Good luck! Nikita Malyavin MariaDB Developer P.S. You can email me back anytime, and I'll try to answer any questions and provide help. Also you can write me on Zulip: https://mariadb.zulipchat.com/. I am Nikita Malyavin there:)
Thank you, I will check it out. And I'll do my best
On Sat, Jan 28, 2023 at 6:53 PM Nikita Malyavin
Hello Omkar!
I appreciate self-motivated letters, so I decided to guide you through basic contribution.
Here is a simple task for you: https://jira.mariadb.org/browse/MDEV-25374
The work here is concentrated in `mysql` client.
First, you need to compile the code base. I recommend going through these links:
https://mariadb.org/get-involved/getting-started-for-developers/get-code-bui... https://mariadb.com/kb/en/generic-build-instructions/
If you use windows, here's another link https://mariadb.com/kb/en/Building_MariaDB_on_Windows/.
Take a look into mysql.cc file and try to find what to fix.
For a comfortable development install some C++ IDE. For big projects like MariaDB i recommend one of the following: * JetBrains CLion, but it 's hungry for RAM. Use it if you have more than 8GB. * QTCreator is good and feature-rich IDE * Visual Studio is a good choice if you use windows.
Omkar, there are some other beginner-friendly tasks i'll be glad to share with you, but to make a more serious and notable contribution, you have to study computer science to a serious level. I want to give you some recommendations on this as well.
SQL server work relies a lot on understanding how indexing works. So to participate at full power, you need a very good knowledge on algorithms and data structures. * Basic algorithms and algorithm complexity, O-notation. * Sorting algorithms, like qsort. binary search. Heap data structure. * Dynamic programming. Substring finding algorithms, like Knuth-Morris-Pratt * Graph algorithms. BFS, DFS, Shortest path algorithms. * Tree data structures: Binary balanced trees (AVL/red-black), Radix tree, Trie, Disjoint-Set Forests.
I found some free course that resembles to what I mentioned: one https://www.coursera.org/learn/algorithms-part1, two https://www.coursera.org/learn/algorithms-part2, three https://www.coursera.org/learn/analysis-of-algorithms.
* And I hardly recommend this amazing book: Cormen, Leiserson. Rivest: Introduction to algorithms https://sd.blackball.lv/library/Introduction_to_Algorithms_Third_Edition_(20...
* Participate in ICPC https://icpc.global/. Ask your teachers how, maybe they'll help you find the training courses in your area. Programming contests really help a lot to sharpen your programming skills.
Good luck!
Nikita Malyavin MariaDB Developer
P.S.
You can email me back anytime, and I'll try to answer any questions and provide help. Also you can write me on Zulip: https://mariadb.zulipchat.com/. I am Nikita Malyavin there:)
participants (2)
-
Nikita Malyavin
-
Omkar shivaji Devgirikar