Absolutely, getting things done productively in software development is crucial for a fulfilling and stress-free life as a software engineer! Being able to execute tasks effortlessly, without any toll on your mental state, is key. Working productively will eliminate the possibility of stressful situations most of the time, and if they do come, you'll be better equipped to handle them.
Understanding the context, let's get back to the main content.
- Iterative Development Methodology: Yeah, it may seem like a big complex term. Let's break it down. It simply means doing the simple small things. Obviously, they should be working. Just spend time on making an atomic function (let's say summing two numbers) which will be the building block of your overall goals/task/feature, etc.
Improve the quality of the code over time. Improve the quality of your code by continuous iteration of code refactoring.
Reusable Functions (Paradigm of Functional Programming): Now after creating an atomic function, we are heading into developing bigger blocks!
Complications of Overdesign: Never try to overdesign before doing anything! People fantasize about getting all the design and predicting all the cases in one hand (design the whole thing before developing one). It can never be perfect. Making a barebone design (working) solution and improving/modifying it through iterative development is the key.
DRY (Principle): Understanding the concepts and really applying them (through try and test) is crucial. What I mean by this is that developing the code really involves working in the present. You should be able to analyze the code continuously and observe the possibility of repetition. As soon as you see it, make it scalable (yeah, I mean the design/paradigm, like object-oriented, functional—whatever the case, depends on your choice). If nothing comes to mind, make a reusable function out of that.
Importance of Working Solution: Working code is ultimately praised. A simple, working code is always praised. :)
Top comments (0)