-
Notifications
You must be signed in to change notification settings - Fork 466
GSoC 2019 Proposal: Create syslog ng configuration snippets for VSCode (chen assert)
The basic idea is to build a VSCode snippets plugin that can help users in writing syslog-ng conf file, which can make the using syslog-ng becoming easier and quicker and reduce the error probability.
- As syslog-ng being used in many systems and platforms, more and more developer and operations engineer want to use this tools to optimize their workflow, but the complexity of writing configure file may hinder someone's work, we need some way to simplify this work.
- VSCode is a famous cross-platform editor in programming, especially in operations engineers. By writing and release the snippets plugin in VSCode market, we could do a minor facilitate to its accessibility, accelerate users' workflow, perfect ecology and make this logging framework becoming a little more attractive.
- I usually use VSCode in both Windows and Linux, and I used to write many C++ macros to simply my work when solving algorithm question, but afterwards I found it is a little inconvenient and do some try to write them in VSCode snippets. This project really attracts me because I can really write some universal snippets and share to others, let my code could easily be reused in many places.
Code snippets are templates that make it easier to enter repeating code patterns, such as loops or conditional-statements, this function can accelerate and Simplify our code writing.
For example:
As a basic version of snippets
I can use that to quickly make my configure in syslog-ng
- Writing comprehensive code snippets for Syslog-ng's configurations.
- Pack snippets into a plugin and release it in VSCode market.
- Do a complete test about every snippet (in syntax and function).
- Make the plugin be easy to modify and update.
- I seldom use vim, but from my research, as the basic function of code snippets, the work in vim is similar with VSCode, and we shouldn't let the snippets code different in the two editors. So we could rewrite the snippets in vim's pattern to make them identical. Furthermore, we could try to use one language to generate two kinds of snippets, and finally even make a universal generator.
- As a released plugin in VSCode market, we could add more syntax check, code/option hints functions in the plugin to make VSCode better support to this framework and further improve the user experience.
- Basic knowledge about syslog-ng
- Ability about writing VSCode plugin
- C and Python programming
- Professional knowledge about configuration syntax
- Deep knowledge about writing code generator
- Making a CI process
- Read more concept about syslog-ng and VSCode plugin.
- Try to configure syslog-ng to verify my understanding and find user's need, familiarize the community and mentor.
- Start with the writing about code snippets.
- Use vsce to pack code snippets into plugin and release it to VSCode markplace
- Set up CI for the plugin's pack and release.
- Do manual and write automatic testing to every snippets
- As a user to use, get feedback and try to find some other user requirements
- Review the project
- Bug fixing
- Write documents
- Add some new interesting feature
- Try to wroking with the stretch goals(add code hints or making cross-platform generator).
Name: | ChenJingrui |
Emai: | jingrui.chen@ucdconnect.ie |
Location(In summer): | Beijing, China (UTC + 8) |
University: | University College Dublin |
Program: | Bachelor of Technology (Software Engineering) |
Year of Study: | 3 Year |
Phone: | +86 15201256700 |
Github: | https://github.com/chen-assert |
Blog(writing in Chinese): | https://chenassert.xyz |
I am chen-assert, a junior undergraduate student in Software Engineering at University College Dublin. As a teaching assistant at my university, I have many experiences to teach others about how to configure and use the basic function of a thing.
I also Interested in algorithm and got a bronze prize in 2018's ACM-ICPC regional competition. Besides, I did some learning about machine learning and statistic in Coursera, and have some experience to use remote services. I am familiar with using C, JAVA. Kotlin, Python and solid foundation about computer network, and have an internship experience in a start-up company(about block-chain) last year.
I used writed Android application, JAVA based network communication system, web page using tensorflow.js, and now I am working on a class project with restful api.
In addition to the above, I am always curious to take upon new challenges and creating new things.
I can easily work 30 hours a week.