请简述一下对于一个拥有新手级别的开发初学者，应该从哪些方面提高自己的编程能力？请以三个关键点来回答，并将每个关键点精简为一个句子，以json格式输出。
user
{
  "key_point_1": "不断实践编程，多写代码，从简单的项目开始逐步挑战复杂任务。",
  "key_point_2": "学习和理解数据结构与算法，这是编程的基础，有助于解决更复杂的问题。",
  "key_point_3": "积极参与社区交流，如GitHub、Stack Overflow，可以获得反馈，学习他人经验。"
}
assistant