The art of problem solving

What is the essence of programming?

First of all we need to know, why we are programming. Programming is the art of problem solving. Coding is finding a problem that is particularly annoying, and fixing it using tools. Many of us hobbyist programmers find projects out of nothing, they solve no problem except your boredom at the moment. Another issue I found is a bit more philosophic, not accepting entropy. We all wanted to create a project that never ends, you probably wanted to create an app that you wanted to work on for as long as you could.

I am currently taking part in a contest based around project management, time management is one element of the project, that you cannot work without. Set deadlines for yourself, it will stop you from dwelling on a feature for way too long. Sometimes you can have enough time to finish the whole app, if you accept that branches of you app aren’t how you imagined them, leaving you with a clearer mind and more time to polish. If you are planning on building a bigger project, take time to create a design document, it will do half the work you will have to do later on. When developing the app I like to think of it like a inernational standard that you cannot change, your job is to implement everything from the document before the deadline.

The story of this blog

I made this blog because I wanted to share with the world what I’m working on, the problem was that I had no way to share my long term posts and I wanted to create a blog for a long time now. I sat down to my computer with one goal, finish the bare bones blog in a few hours. So I started looking for tools. When picking tools you should always remember that you can pick any tool for the job, even a knife can unscrew a screw. I always like to use tools that do the job quickly, in case of this blog it was jekyll and github pages. I could’ve created the site with other technologies I know like ReactJS, php or any other tool out there, but I decided to use the quickest tool known to me. Then you have to also remember that your project needs to end at one point, keep this in mind to not end up in developing a piece of software for years and eventually losing motivation.

Conclusion

I belive that to create a succesful project you need a couple of things:

Thanks for reading! -Michał