If you like DNray Forum, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...

 

Perils of Self-Taught Programming

Started by DUPSSKYDYDIT, Dec 10, 2023, 03:58 AM

Previous topic - Next topic

DUPSSKYDYDITTopic starter

I have a friend, let's call him Sergey, who is not a professional programmer by any means. In fact, he is quite far from it. His primary occupation is teaching. Nevertheless, due to his interest in programming, Sergey decided to launch a startup on the Internet geared towards schoolchildren.

While teaching himself to program and creating various web applications, Sergey attempted to develop his own project. However, he frequently ended up abandoning his efforts when faced with challenges or disappointments, leaving the project unfinished. This pattern has persisted for a decade.

I remember learning about development cycles during my student years. It appears that these concepts are missing from my friend's knowledge base. Could this be the missing link? Or perhaps there are other areas of knowledge that have not been adequately addressed in his education? Could his profession as a teacher be a hindrance due to professional deformation?

I am eager to support my friend and myself in navigating our respective projects. It often happens that, while working on my own creations, I encounter similar obstacles - feeling stuck, losing sight of the bigger picture, or struggling to determine the next steps. Is it possible that Sergey shares the same struggle?

What is the most effective approach to developing personal projects, especially when working independently rather than within a team?
  •  


cholletibsl

It's clear that Sergey's passion for programming has driven him to venture into the startup world, but his lack of professional programming experience and the persistence of abandoning unfinished projects indicate a need for a new approach.

One effective approach to developing personal projects is to adopt an iterative and agile methodology. For Sergey, this means breaking down his project into small, manageable tasks and setting achievable goals. By following an iterative approach, he can build, test, and adapt his project incrementally, which will prevent him from feeling overwhelmed by the enormity of the task at hand.

Sergey may benefit from applying principles of pedagogy to his project development process. Just as he would scaffold learning for his students, he should consider scaffolding his project by building on small successes and gradually introducing more complex components.

It's also important for Sergey to build a support network and seek mentorship within the programming and startup communities. Connecting with experienced professionals can provide invaluable guidance, perspective, and encouragement. This will help him to overcome challenges and avoid feelings of isolation that often accompany independent project development.

As someone who frequently encounters similar obstacles in my own work, I can emphasize the importance of regularly stepping back to reassess the bigger picture. Sergey should periodically evaluate his progress, re-evaluate his project goals, and celebrate the milestones he achieves along the way. This will help him to maintain motivation and clarity.

Fostering a growth mindset is essential. Sergey should view setbacks as learning opportunities and use them to refine and improve his project. Embracing a continuous learning approach will empower him to persist through difficulties and contribute to the evolution of his startup.
Sergey can enhance his project development approach by embracing an iterative and agile methodology, leveraging principles of pedagogy, seeking mentorship and support, regularly reassessing his progress, and fostering a growth mindset. These strategies will not only help him to navigate challenges but also enable him to create sustainable progress and ultimately achieve success in his endeavors.
  •  

PretFeryNef

Before embarking on your own web project, it is essential to make a preliminary assessment of its potential revenue and consider the monetization strategy.

Many ventures fail to thrive due to lack of profitability, leading to disinterest from their creators.

Once the financial aspects are addressed, the next step involves designing the project and selecting the appropriate technology.

After deciding on the technologies, the next step is to create the API, which can be accomplished using swagger(OpenAPI), markdown in notepad, or any other preferred method.

Following the API design, the database structure is planned.

When the API and database designs are finalized, the actual development phase commences.
It's unwise to begin programming without a ready API or database project, as issues or omissions may arise during development that could have been addressed at the design stage.
  •  

fix.97

From what you've explained, I can identify two factors that hinder your friend's project completion:
1) He seems to take on all tasks by himself, even when lacking expertise. This approach is highly inefficient. For instance, if the project requires programming skills and he isn't a programmer, it's crucial to collaborate with a skilled programmer. This would prevent the project from stalling due to inadequate skills.
2) It seems that your friend has a research-oriented nature, enjoying initiating new projects and exploring new subjects. However, when the phase of "learning new things" transitions to the hard work stage, such individuals often lose interest and seek fresh inspiration. If my assumption is accurate, he should consider engaging in research-related endeavors or partnering with people who can execute his ideas (as mentioned in point 1).

"Development cycles" and similar methods may not be beneficial for him.

I can attest to the importance of collaboration with skilled professionals and maintaining focus during different stages of a project. It's essential to recognize one's strengths and weaknesses, allowing for effective delegation and sustainable progress.
  •  

wsnad7

Is Sergey really cut out for this startup life? It sounds like he's romanticizing coding without understanding the grind it entails. Many aspiring developers quit at the first sign of trouble because they lack the resilience needed in this field. If he can't push through the initial challenges, maybe he should rethink his ambitions.
The tech world isn't for everyone, and his repeated failures might suggest he's better off sticking to teaching rather than chasing a dream that keeps eluding him.
  •  


If you like DNray forum, you can support it by - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 and more...