I realized that they same pattern in software development. In any computer system, there are 4 basic needs, which are the data need to be Create, Read, Update and Delete, or CRUD. I realized this when I used ajaxCRUD, a PHP class that make the user life easy by using ajax as the interface with PHP in the background for CRUD implementation. I used this for several projects since 6 years ago but later found out that the interface not able to handle the front end design.
So, there was one project that one of my team mates working on. How I told her was, we need this, this and this as what the clients want, but I never go to detail on what colour theme, how the interface will be and the fonts.
What she came out was with a very good interface design, good colour scheme and the most impress was how she did this in AJAX without me telling her to do this way in the first place. By using AJAX, the interface will be was much faster to transfer the data into the database, without make the screen flicker and the screen seems like seamless view. Only the area that need to be change is send to the server and not the whole page that will require more time as more load need to transfer from and to the server.
We had a meeting to discuss on how to make this new architecture for other incoming project. A day before that, we had a phone call as my idea came in while Im driving. The call was about 30 minutes as Im trying to explain to her how the new architecture will be. To my surprise, she did the system, based on exactly what I have been thinking! In the meeting room, I look at her codes, and I was impressed on how she able to do the architecture just like im planning it to be and I was so impressed!
The only enhancement that need to be done is that to make the architecture that she create to be more generic and reusable in CRUD system. Meaning that, the table name and data just need to be declare once and the architecture able to get the data from the designated table request from the front end, not from inside the codes. Hard to explain here, but Im excited for next week to discuss further about this with her so that the next system development, we will able to use this architecture.
Really, she improved much much better in system development since she join my team less than 2 years ago. She able to create the system with less supervision and able to deliver system on time. She did start this system development after 15 months join my team and she proved that she really really capable in doing system development. She really, really makes me proud of her.
~ adam ~