Vanguard Coder

Simple Life of a Keen Developer

Moving Forward with C#

leave a comment

Reflecting back after using C# for 6 months, I remember “environment hell” I faced in Java with conflicting jar versions as well as going on a goose hunt for missing jar – when I found one, there was yet another one that was required but not packaged. I never faced such an issue in C#. Here is a Rails Envy video which accurately describes my feelings:
[youtube=http://www.youtube.com/watch?v=PQbuyKUaKFo]

Written by zkashan

November 29th, 2008 at 9:06 am

Posted in Comparative

Tagged with , , , ,

What is the difference between an MVC and MVP

leave a comment

M – Model, V – View, C – Controller, P – Presenter

Many if not most of the people do not know the difference between the MVC and the MVP pattern. Recently, when someone asked me to describe the MVC pattern, they said that it seems like I’m talking about MVP. Most of us thought that there indeed was no difference, but in fact there is – and its very small.

In MVC, the Controller and View can talk to each other, and both can send messages to the model. In MVP, all communication is directed via the Presenter, and the Ms and Vs do not communicate directly, but only the P can send data to the M, and the View and/or its Interface (decoupling!).

Written by zkashan

November 23rd, 2008 at 6:28 pm

Posted in Coding Practices,Comparative

Tagged with , ,

Java Vs C# Worlds

leave a comment


This is what I understand about the Java Vs C# conflict from the open source perspective:

We have come a long way since The Semicolon Wars

There is an everlasting debate about open source software has done considerable damage to the commercial aspect software community. Or perhaps this debate brought in competition and improving standard causing the damage argument to no longer hold as consumers get more for less (therefore reducing potential profits of companies like Microsoft).

But with open source and further advances in technologies, there is always a technological exchange taking place between commercial software enterprises and open source community (more like adopting each others ideas).

Borland’s C was once the dominant force in these barrens lands which very few people like Turing trekked beforehand. Eventually the monopoly was broken up by lack of market understanding and internal political issues in the company, and thus with time, Visual C and Java emerged.

As soon as it became apparent that nothing was free and something had to be done to provide free extensions to the language and the environment, thus Open Source Guerrilla’s gained force and members. It is interesting to note that Guerrilla’s did not just stay with their own party and focus on improvement of one subset of the whole developer land. Some rebels, encouraged by Microsoft, started open source community through the flexibility afforded by Microsoft and won some rebels back which helped start an Open Source movement of its own.

Now, there are many Java and .Net (probably those that migrated from C and C++) users. Microsoft tried to tug by building a failed language such as J# to entice users. It probably even paid people to write books and promote the language. But the propaganda machine in this war did not work. Java users would not have it no more. They were there to stay, not as refugees but a dominant source of power in their territory.

In the end, both Java and C# are facing each other eyeball to eyeball waiting for the other side to blink and lag behind after which the commercial force will wipe the enemy. For now, no treaty will be signed, but the temporary harmony will remain until the next version!

Written by zkashan

August 18th, 2008 at 2:27 pm

Posted in Comparative

Tagged with ,