Skip to main content

Posts

Showing posts from April, 2013

Ready to leave everyday

Software developers should design the structure like you are going to leave today. It doesn't mean to write document all the day.  For management purpose, elaborative work note helps clear responsibility and progress. User manual or technical documentation is better left aside before the development gets stable.  Make sure your design could be altered by merely change some settings, and then the user or next developer could continue their work on same environment or migrated site. Take computer games as example. The project manager or another developer could change score calculation by altering numbers. Or they can change the entire visual style and drawing by change folder name. Take website as example, by changing settings, the user could change database, change relative paths over entire site, change the levels of access privilege, change the loader for different types of resources, etc.  Loyal to your profession.Design the structure to be a combination of tools that al

Credit

This is usually difficult topic in modern management. But, why a low-profile software developer sometimes needs his/her own credit over something? Isn't everything comes from teamwork? Sometimes there would be new/extended ideas that overlaps existing projects. Independent team players means no supervise applied/required. Software developers usually don't care much about other's work. Design is a kind of art and nothing are always good or extremely bad. But when one senior designer worked with another and not really trust this person's character, (no, not professional competence,) the senior developer will very worry about the possibility that the new design will eventually downgrade or finally destroy the original design. The final product may look much better than the original one without knowing any critical issues resolved before, and adopting the new design widely shifts the resolvable problems to other teams. (Bugs often come with massive usage, but small group

Growth

Software developers might be a group see death more often than others. If we switch from cars to flying-bikes, there will be dead body of cars. If a software is rebuild, it just is gone with the wind. Developers are as invisible as their work. Workflow belongs to enterprise, and the user interface belongs to project manager. Usually, developers don’t care staying low-key. Sometimes, when the extension requests increase and are out of the original developer’s control, it might be a little sad seeing it leaving and being changed to something we don’t know. Stay on the bright side. Children will grow with their own missions, and we can start over a new adventure. (After years if you still stay on software development, what keeps attracting you is not how good you are on this course, but how fun it is.)

Extension

When time goes by, existing software might be not supportive enough to current need. This doesn't mean the original design is poor. It means this project is practical and need evolve. Starting-up a brand new project is kind of waste in cumulated brain power and robust test. Extensions and add-on’s may contain old and unnecessary functionalities, but it make the projects growth with enterprise with stability. When developers take over an old project, it seems cool to throw it out. But while doing so, your company lose existing and stable support, and you lose a chance to learn from other's wisdoms. There are only two conditions that a developer throws away old code rather than improvement: it was developed by a new learner, or it is too sophisticated so that the developer couldn't understand.

Start

For some reasons, I think I’d like to leave some words about software engineer here. On an expressive world, developers might be a type of more quiet participants. I like to analyze IT systems, and also human thoughts and societies, without judgement. People are born to be free, not be judged.  I write stories for readers from my original nation. It’s no harm for me to write concepts for my friends here. It may continue for few days. Software doesn't live on its own. It lives for users. It evolves according to its foundation and with its users. If it is treated as dispensable, any new software would be immature and inconvenient to its users.