Understanding context is essential in becoming an effective software engineer. It is not sufficient to possess deep technical skills. Understanding the context (business domain) you operate in provides the necessary background to build the right solution. It elevates the skill programmer to a value-added software engineer. It allows software engineers to ensure solution fit the situation, background, and purpose, thereby enhancing clarity and reducing the likelihood of misunderstandings. Misunderstanding will only lead to defects. By being mindful of the contexts, software engineer can navigate complex landscapes and build stronger, more meaningful solution. In the realm of building the right solution,…
Tag: <span>Development</span>
In my original Tetris code base, I started out with a simple RotationController class. As I recall, this was a trivial class with a single shape. However, as more shapes were added, it quickly became unwieldy. Looking back at this code, I want to cringe at my lack of discipline in following proper design principles. On the bright side, I have something to blog about. Chain of Responsibility The chain of responsibility design pattern is known as a behavioral pattern consisting of client objects and a series of handler objects. It provides more than one object the opportunity to handle a request by…
It didn’t take long for me to fall in love with Gradle. Once I was introduced to it, I never looked back. It was the same with Ant as I transitioned from Make. But, Gradle is different. I always felt building was necessary evil. It was often done way after first code was ever written. This isn’t true with Gradle. Before any code is written, I start every project by setting up my Gradle build. I actually look forward to adding more features to my build. How crazy is that?! WSDL to JavaRecently, I published one of my old SharePoint…
Chances are you have seen Fluent Interface in action. I’ve seen it without realizing what they were until I stumbled across Martin Fowler’s blog. The aim is simple – to provide for a more readable code. SharePoint APISeveral years ago, I wrote a SharePoint API in Java to interact with its List Soap Service. This soap service had a feature to query the target list using Collaborative Application Markup Language (CAML). Here’s an example of CAML query to filter the task list where the TaskName is “Foo Bar” and the Status is “In Progress”. As part of this SharePoint API,…
Ask me a month ago regarding my choice of scripting language, my answer would have been Perl or, if it’s a trivial use case, Bash. That’s no longer the case. Now, I am eager to flex my Groovy knowledge. Why Groovy? Consider the use case of executing a system command and redirecting the output to be processed by your program. With Perl, this is a trivial task: just use a backquote to perform your system command. Perl will assign the result of your standard out to the left-hand variable. In Groovy, it’s just as easy. Now, imagine having to perform…