Tuesday, April 2, 2013

What is Model View Controller?



 MVC is a software architecture. It’s a design pattern used to achieve customizability in our application. This design pattern separates an application into three main components: the model, the view, and the controller

View  
Is used to,
  • draw the model
  •  update the model’s display
  • determine which objects are selected.
Ex:- Html , Scripts

Controller
The controller contains the control-flow logic. It interacts with the Model and Views to control the flow of information and execution of the application

Model
The model contains the core information for an application. This includes the data and validation rules as well as data access and aggregation logic. Frequently, a model maps to a database table with the entries in




 Problem Statement

Ø  Employee master screen, which takes Name and Age as inputs and save the same in our database.


The right way to solve this problem is by having a good design pattern in place and make sure that the entire team clearly understands the design and implements the same in their code. We can solve this by doing a layered approach using MVC and Visual Inheritance.


1.       View Layer

Our View /UI layer should only have UI related validations in it. We should not have any Business Logic in to it. This gives us the flexibility to change the UI at any time and we can also have different UI for different customers.

2.       Controller /Director

Controller is the layer, which responds to the events in the UI. For example Save button click on my employee master screen. This layer should act as an intermediate between our View and Model.

3.       Model

This layer has all our business logic. This is the most important layer. This layer will have our core functionality.

4.       Database Operations

All the database operations should be done in the Model base class.

Conclusion
Rather than quarrying in a single code base we separate it to 3 parts. Layering Approach helps us a lot and we need to enhance it to get full customizability.




 More details

Features of MVC

          Separation of application tasks
          An extensible and pluggable framework
                               Good Layering Approach

Benefits of MVC

                              Flexibility -  Easier to create multiple views of same model
          It makes it easier to manage complexity by dividing an application into the model, the view, and the controller.
          It does not use view state or server-based forms. This makes the MVC framework ideal for developers who want full control over the behavior of an application.
          Easy Communication through layers
          It provides better support for test-driven development (TDD).
          It works well for Web applications that are supported by large teams of developers and for Web designers who need a high degree of control over the application behavior 

Monday, March 11, 2013

Watchout when writing technical articles!

Writing involves different styles and we all should be aware of it. Today I am focusing on Technical writing. What are these? need some examples? Press releases, newsletters, datasheets, whitepapers, case studies, articles for business magazines etc.

Before writing or planning, these are the four main things you need to focus.

Purpose - Why are you writing the article? What is the objective of the article.

Audience - to what extent they understand technical jargon, why are they reading this, the importance of the article to them.

Key info/ Level of details - What are the main points and how much to be explained. 

Organize - There should be a flow, and readers should not be trying hard to connect the points. We should connect for them.



In addition,

Don't use "he/she". Use plural form..

Eg:- It enables the user to transfer funds. He / She also can transfer via mobile phone. 
This sounds weird. Try this.
It enables the users to transfer funds. They also can transfer via mobile phone.



Do not give too much detail, give links to long stories/videos. (*Depends on the type of article)



Spell out Abbreviation when using for the first time.



Maintain a parallel structure.  This means, if you are using sentences keep on using sentences(with fullstops.) If you are using phrases, keep doing the same. Don't mix. Eg:-


  • Innovative
  • Easily implemented
  • It gives faster access.
  • Customers can save time.

The last two are sentences. The points don't have consistency. It's a must to do lot of research and read as much as possible to improve writing skills.


Quote for the Day - "Do What You Do Do Well!"








Thursday, March 7, 2013

You think you know marketing?

What we know as marketing is having a marketing plan before launching a product, arranging marketing campaigns, looking for ways to reach customers. But, that is now old school. Do you know 60% of our customers' decisions are not influenced by us directly? For example, if you are going to buy a camera, would you go to the shop and decide or have you already decided what exactly to buy? Customer's decisions are influenced mostly by information presented on media, internet and recommendations.


Relationship marketing, where person A tells Person B, since we know each other for a long time, we can trust each other so you should get involved with my business.... this concept hardly works now. What works now is, Person A telling Person B "I know your industry, these are the good points and these are the weak points. You can add value by merging with my business since I know what to do to improve. " What matters now is what is on the table. Relationship marketing is still important when maintaining relationships.


What businesses should do is, make information available where customers or potential customers can reach when they are searching for the product or the company. Search Engine Optimization, social media, webinars, datasheets, blogs are some major ways on how to make yourself presented.   

Wednesday, March 6, 2013

Last moment


Hi everyone, yesterday, I listened to a presentation which made all of us emotional. I was blinking so hard to fight back the tears. She is a senior at our office, and yesterday she proved that she is also a loving friend, daughter and a mother. (I'm guessing a good wife too ;) ) Anyway, she related two stories about her last moments with her friend and her father. She sacrificed her time and work and went to see them, it happened to be the last moment she spent with them. This made us realize how our choices can have a significant impact on our life. If she hadn't gone for the last meal that she had with her dad, she will be regretting still. She didn't know it was the last dinner that she was ever gona have with her dad. This made me think when was the last meal I had with my dad? I can't remember. I regret to this date..., I could have spent more time with thaththi. Still I see him in my dreams, talking, sitting on the back seat of his motor bike, making fun of my mom, playing with our dog.. All these are memories and I wish I had more..




So we should all start to give time to our family and people who matter to us. She (The  senior business solutions engineer) also told how she spent time with her daughter playing scrabble and some games while having so much of work. She sacrificed and she gave priority to her daughter. That night the 5 year old daughter told, "Ammi I had a great time, Thank You"! These words must have meant sooo much to her because her voice started to crack and that made our eyes welled with tears. We work to make us and our family happy, but the time we share with them matters more. We should not make choices which will make us regret later.


Quote for the Day -  “It may be unfair, but what happens in a few days, sometimes even a single day, can change the course of a whole lifetime...”  ― Khaled Hosseini, The Kite Runner

 

Monday, March 4, 2013

Use social media effectively


For every action there is an equal and opposite reaction , plus a social media overreaction!" :D
(- funny quotations)

The stats says that 69% of adults use social media. This is a vast subject. Today I would like to share what I've learnt about social media, and how to use it effectively.

Classify Social Media?
Well, there is no specific classification. But, in general we can classify into collaborative projects, blogs, content communities, social networking sites, business networking sites, virtual game worlds, and virtual social worlds.

Does it generate profit?
The truth is, sometimes not really. It will have an impact indirectly provided you maintain your presence. Social Media is a long term strategy, where you can build relationships. In order to generate profit there should be a strategy to be followed and chose the best social media sites for you.

Is it free?
No. It can be argued that it is very time consuming and multitasking can lead to poor quality of work. Human resource should be invested. So it is not free. Some companies pay an annual contract or spends on advertising.

How to use it effectively?
These are some points I've picked up.

1. Focus more on quality not quantity.

2. Listen - Observe and respond to other sites.

3. Chose carefully. Know your audience. - Don't try to dominate in every social media site. We should know the difference between fb, linkedin, twitter - the major giants.

4. Be genuine, because other participants will find out and the audience is smart!

5. E-mails are not dead. The next step after having your social presence is e-mail. So we still have to manage e-mails.

6. Access for all. Employees should be a part. They help to get the word around fast.

7. Be interesting. Avoid technical jargons and professional writing unless the article needs to.

8. We do not control social media. This is a major point because, we should understand, just having a good PR will not influence social media. So we should accept the risk.

9. Search engine optimization should be still focused. SEO and social media are two marketing strategies, SEO leads to social media.

10. Be active. It should be on-going to build and maintain relationships.


Its all about social media now, knowingly or unknowingly it has become a part of our lives. Its all about how we use it to add value to the company and individually. The "reputation" is now being controlled by social media.

Quote for the Day :-  "What happens in Vegas stays in Vegas. What happens in fb, twitter... stays forever"




 

Wednesday, February 27, 2013

New version of "Product"

We have learnt that a product can be defined as a good or a service, tangible or intangible. But I think "product" has been evolved. You might all know "Angry Birds" Duh!... What is it?? It was a service initially but now there are t-shirts, toys ...... which are goods.. I define this as a "CULTURE". In order to have a sustainable growth in the market, a smart entrepreneur should implement this "culture". In other words, a life style which people embrace. So how can one develop this culture??? Simple, you should let your imagination run wild...Its all about new ideas which can capture people's heart not just the brain! It can be targeted to a particular audience or just everyone. If you actually sit and think for about an hour, you can definitely come up with a new concept. Let me tell you some examples that "I" think which have created some awesome cultures.

Harry Potter/ Twilight/ Transformers
Hello Kitty/ Micky Mouse
Harley-Davidson
Barbie

Therefore, if we are smart we should focus on creating a culture which will generate continuous cash inflow. hSenid Mobile has introduced a SMS application that can be created by anyone! No programming needed. Do you know Gossip Girl? you can actually do that in a matter of few minutes. The SMS application can be managed via the operator's site. If you are the captain of your school's Cricket team, you can create an application to your team. But you might wonder well, I can just forward the message to a list created through my phone.. Well, it will cost you! This is different. Your team members should subscribe, hence, it will actually generate an income to you! Its a win-win, It can be for all the people who are interested in cricket at school level. For example , Roy-Tho. Can create an application to all the fans who support.. lets say Royal..name "GoRoyal". This is just an example. You can create apps which targets audience, for PPA, friends, high school or just anyone. Do you know a university student in Sri Lanka, has earned Rs 200 000 per month by developing an application by etisalat's appzone? It is stated in UN Conference on Trade and development 2012, 1st time where Sri Lanka is been mentioned!! 


With this SMS application, you don't have to be a programmer, Its just a matter of clicking and filling the blanks to describe your application. It is the next level of SMS!!!! You can link the application with a website, fb page, have YouTube videos.. The uniqueness is "YOU" can do it. You can come up with different ideas and share with people, AND earn! You can either be an individual or a company targeting your customers or suppliers. This is the evolution of SMS. Its like anyone can upload a video on YouTube, Likewise anyone can create their own SMS application. How to do this... well, try to find out!! ;)  Should get back to work, which I ADORE. Well, its true, you should chose what you LIKE to do, then "work" doesn't sound so bad.


Quote for the Day:- "Innovation is immortal"

Thursday, February 21, 2013

How to do a mind blowing presentation.

Regardless of what kind of job you are engaged in, doing a good, memorable presentation is very important. Today I am going to share some tips and new ways on how to do a "mind blowing" presentation. Sadly, I can't be proud of this, since it wasn't I who invented these tips. Thanks to Steve Jobs, some books and my supervisor. However, I mapped these information from different sources to give you a good and a short article to make your presentation unforgettable.


#1       A -------------------B
           There should be a point A, which is the starting point and point B. This is the end message you want your audience to remember. So IT IS IMPORTANT TO KNOW WHAT THIS POINT B IS. That is your GOAL.


#2      Be a Story Teller
14773b2971c73b-43.-Pinocchio
          If you have watched Steve Jobs' presentations, you will understand this tip. Let me explain... What was the last lecture you attended?? hmmmmmmmmmmm ... thinking.. thinking... aaaaah.. remember? If so, what was it about? Can you explain it to someone? hmmmmmmm... it is hard right?? But, what was the last movie you watched? AAAH..   Clicked?? See, it is not our fault, Its just how our brains function. We remember a good story specially with pictures or videos. So make your presentation a story! Have a FLOW.

#3     Connection
         If your doing slides, connect it, there should be a good sensible flow. One thing should lead to another. This is one way how you can build a good story.

#4    Plan
        I know most of the time plans don't work, but planning helps you to get prepared!! Use this mind map.



 i) You should define your point B, the ultimate result, what you need them to understand, what they should believe, (about the company maybe) and how you want them to act after listening to your presentation..

ii) You should know your audience. People are selfish. They are listening to you, not because they care about you, but because they want to know "what is in for them"? Even if you are doing a presentation on some boring topic at school or uni, make sure you give some valuable information to your audience. something useful. Make them fascinated!

Also, do a small research and know their knowledge.. Whether they are into marketing, finance or whatever. This will make you know how you should approach them.

iii) Always make sure the setting is ready before you present. The screen, sounds, clean white board, markers, how you are facing the audience, lighting, air condition or fans etc.etc.

iv) Note what are the positive and negative factors that the audience might know about you or the company or the product, whatever your topic is. Then make sure you highlight or bring out the posives by eliminating the negatives.

v) Then brainstorm. Write whatever comes to your mind, Don't think. Do it for maybe 20 minutes. You will realize the good and the BEST points you should focus. Then eliminate the not so good points, focus on the strong ones.



#5. Done with the plan!. Now think of a way to build excitement. Make the audience interested till the last point or slide. Then BOOM. Voilà, give your  conclusion which highlights the point B

#6. SLIDES!!!!  Don't clutter, use pictures, words or facts instead of sentences, be careful with the colour, use bullet points, have some hilarious pictures.

#7. After 10 minutes, the human brain stops gathering information. So, use a video, a story, have a discussion or something after every 10 minutes to distract and still make them stay with YOU!

#8. Use Prezis to make your presentation slides . Power point might be boring. Visit http://prezi.com/  




This is not really a short article, is it? Well, I hope these information will be useful for your next presentation. Oh,,, and limit the times you go ... "ummmmmmmm..." during the presentation  I still do that though. I am also a beginner, not an expert.

Watch this for inspiration. First Ever iPod Introduction by Steve Jobs.
 http://www.youtube.com/watch?v=kN0SVBCJqLs


Quote for the Day :- "First make yourself interested" (in anything you do.. )