“Quality” in simple terms

One small thing that we miss sometimes is the need to keep in mind the end user of the software products we build or the existing products we service. Our client would not in all cases be the final user of the products – for example say our client is into building games in Facebook. He can play the games but the reason he is building this game is to sell it as a business, in that case the end user would be someone we do not know. If we keep this end user’s need in mind and build an application which will delight him once he uses it – we can pat our backs and feel good that we delivered a good “quality” product.
Author – Atma Prakash Ojha
Quality ” – What does this term mean ?

Most of the time we make “quality” synonymous with “CMM” or “ISO” or some other industry accepted certification. The point is these are certifications by independent bodies to let others know that we have certain level of expertise/standard but without these too we can be good. How many of us are certified in the current technologies that we work in ? Does that mean we are not good – NO.

I will not define quality here but rather through some examples try to explain what it is.

You and your friends are planning to go out for dinner to a good place and out of 4-5 options you short list you zero in on 1 option and go there – right ?

Lets analyze what all parameters you would have used to decide on any one particular restaurant.

1st food should be good.
Meaning – you want that the “Quality” of the food should be good. Here quality means two things – first the stuff used for preparing food are fresh and good – no stale or sub standard stuff is used . Second the taste of the food should be good.
If I draw a co-relation to what our situation is – first our client would expect that the technical competence we have is good – that our people are very good in the areas that they work in. Second is our people have enough aptitude to understand the business of the client,i.e his requirement , and code accordingly. Difference here is – some people might know a technology theoretically – every syntax and options available but cannot comprehend a real life business scenario and put it into coding.

2nd thing that you evaluate about the restaurants is the ambiance – it should be good to eat and enjoy.

Here quality means quality of the place. The seating arrangement, the waiters, the plates used for serving etc – everything which is not your primary need (food) but something which will make you feel good and nice.
In our case – This would mean having good communication skills, so that the client feels comfortable talking to us. Communication skill has two main areas – Verbal and Written.
Both of these should be good in us to be a true professional – someone with whom people would love to deal with.

With these 2 things you would have decided to go to a particular restaurant. Imagine there comes up another place in town which in addition to all these also does the following. It discusses with you about your mood and the reason for the outing and accordingly serves food or decorates the place. This would delight you to such an extent that you may always want to go to that place.

In our case – we can check with our client who our end customers would be and accordingly make the product suit their need. For example say our client is building a social networking site for senior citizens ( retired government officials, army personnel, etc ) . Then in such a website having bigger buttons will be good, or building an application in such a way that it is not too deep rather is more horizontal in terms of page spread, i.e to get to a page too many links are not followed – every parent page should have maximum 3 level below pages not more.
Imagine we actually giving such suggestions to our client and implementing it in the final product. Not only our client but our end user will also be impressed to a point where they might just want to work with us for ever.

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Five Minutes can make a huge difference

In our world today, we spend so much of our time working, that sometimes we forget some of the very important duties we have to perform. At the 11th hour, we seem to recollect the lines (What-if-I-had…, I-should-have, it-could-have-been, etc.) of a person who we generally call an idiot, an idiot who missed some of the most important things he could have done or enjoyed but couldn’t. I am going to let you understand this with a better concept. Yes, A short story..

The Story:

After a long hot afternoon, Raghavan decided to take his six year old daughter to the children’s park as the evening was getting cooler and pleasant. His daughter Sintu was over joyed with the decision. Raghavan felt happy for the first time in months. Ekamra Park, he thought, there she will be happier with so many other kids. They went to the park and Sintu ran unto the slide, arms stretching out in joy and her eyes cheerfully sparkling.  While Raghavan waited for his daughter a woman clad in saree came and sat near him.

“That’s my son over there,” she said, pointing to a little boy in a red sweater who was gliding down the slide.

“He’s a handsome boy” Raghavan said. “That’s my daughter in the white dress.”

Then, looking at his watch, he called to his daughter. “What do you say we go, Sintu?”

Sintu pleaded, “Just five more minutes, Dad. Please? Just five more minutes.”

He nodded and Sintu continued to slide to her heart’s content. Minutes passed and Raghavan stood and called again to his daughter. “Time to go now?”

Again Sintu pleaded, “Five more minutes, Dad. Just five more minutes.”

Raghavan smiled and said, “OK.” This went on for a couple more times.

“My Goodness, you certainly are a patient father,” the woman responded.

Patient? He wondered how patient he was a couple of months ago. It was so vivid in his mind that he could never forget it. Never, in this life.

Raghavan was a man with short hairs (he kept them short not to waste time in brushing them). He was well built in length but there was a weird growth in terms of his health. He was termed as a man with insatiable desires because he used to work on music so much that sometimes he forgot to take his two consecutive meals at a stretch. Not to mention, sometimes he wondered if he used the washroom in the past 8 hours. His wife, Suneema died of appendicitis 2 years ago.

Venkat, who was just a child of 8 last year was very lonely after his Mom’s death. Raghavan’s little income from his music classes got him nothing more than a third-hand-purchased bicycle. Suneema had gotten it after paying Rs.300 to the second-hand bicycle owner 3 years back. Raghavan was in the middle of a Raaga when Venkat came in, “Dad can we go to the Ekamra park today?” He very well knew that it was hopeless to ask his dad for such a favor. He also knew he would now get a blast from his dad, but he couldn’t hold his desire to play out anymore. After all, he was an 8 year old. Even a Scamp could have loved that childish innocence filled eyes. But Raghavan shouted at him until he almost broke his Harmonium in anger.

“If you want to go to the useless park to play, go by yourself. Take your cycle and get lost!” He shouted with his lungs almost coming out through his mouth.

That evening late at around 8pm when Venkat had still not returned he got panicked. He respectfully and neatly kept all his belongings, which consisted of a harmonium and a stack of papers filled with Raagas and other music notes. Then took out his Grandpa-aged scooter and went out. Venkat had met with an accident on his way to the park. A drunk truck driver had run him over on his little sweet head. His body had collapsed to the side of the road.

He had never spent even 5 minutes with his children, nor his wife. She had died of such a silly reason. Appendicitis! Now, he lost cute little Venkat. He thought, what if I had given him his share of joy, I should have paid more attention to Suneema. Oh my God! It could have been so nice and easy. It must have been a wonderful evening today.

Now, he looked at the woman sitting beside him on the park bench. He said nothing more than, “I can’t bear to lose more” with tears filling his eyes.

Learning from it

I could have written a better story. This was all I could. But this does the needful. It has helped me learn, that apart from the duty to work, we have duty towards friends and family. Without which, any sort of accomplishment would look hollow. Its true that we should work, but for whom? Thats the ultimate question one should ask to himself/herself.

If we cannot share the success, its measurable with our stupidity.

Best Regards,

Satya

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Peer pressure vs beer pressure

Much has been written about the effects of peer pressure – both beneficial and harmful. The nadir of peer pressure was of course depicted by Chatur (Silencer) in the movie “3 Idiots” – a case of constant comparison and competition. Unfortunately, not enough research has been conducted on beer pressure – the pressure felt subsequent to beer intake. This has caused a large leaking hole in our body of knowledge on these two types of pressure, leaving youth of the world clueless about which pressure to adopt.Let us compare these two so that we may choose between them as informed adults. I strongly feel beer pressure is the right pressure, and my fair and unbiased arguments will hopefully prove the same.The Big Fight

1. Peer pressure leads to fear, beer pressure leads to cheer
Constant comparison causes anxiety and fear of various kinds to build up inside individuals. This anxiety can affect the quality of life and work of even the most saintly person. On the other hand, beer pressure results in instant and all-forgiving, all-forgetting cheer that warms up the soul and fires up the mind.2. Peer pressure causes bottling up, beer pressure results from un-bottling
Those who choose peer pressure are always looking over their shoulder to look at who is drawing close, as if the race can have only one winner. Bottled emotions cause scarred lives and incomplete human beings. The very first act in beer pressure, on the other hand, is un-bottling, a magnificent celebration of the release of human potential.

3. Peer pressure causes loneliness, beer pressure causes belonging
When you choose peer pressure, you are alone – every friend is a peer is an enemy. When you undergo beer pressure, you know you have a purpose, a mission, and you belong to a worldwide movement called “No Bottle Left Unopened” – all in it together.

4. Peer pressure is a complex path, beer pressure is a simple path
Complex is the person who cannot get away from comparison. Peer pressure takes you down a complicated path built out of competition and deceit, slyness and jealousy, envy and hatred. Beer pressure generally creates for you a straight and simple path, generally to the nearest washroom.

5. Peer pressure makes you mad, beer pressure makes you glad
Peer pressure = can’t get badder
Beer pressure = gladder in the bladder
Mathematical justice for poetic art.

6. Peer pressure implies hierarchy, beer pressure means equality
Comparison inevitably assumes that there is an underlying hierarchy of superiority and inferiority, of humans stacked on an unequal ladder. Beer pressure assumes nothing and believes in fundamental equality of humankind. You build an equal world glass by glass.

7. Peer pressure is measured in numbers, beer pressure is measured in decibels
Peer pressure is based on comparison of numbers. Exam scores, weights lifted, goals scored. Numbers don’t have personality. Numbers are drab. Numbers are black and white. Decibels, on the other hand, are colorful. Beer pressure is measured in decibels. Decibels come in flamboyant red and flaming orange and fantastic indigo and fabulous turquoise and f… perhaps we should stop here.

8. Peer pressure kills, beer pressure fills
No explanation required.

9. Peer pressure is free, beer pressure costs money
True. But free things are not necessarily good things. And beer pressure does invariably cause free speech, so there.

10. Peer pressure is driven by expectation, beer pressure is driven by desire
You truly shine when the person inside you can come out and shine. Peer pressure hides your true self, since you act as peers cause you to act. Your life is driven by others, from outside. When you enjoy beer pressure, your life is driven by you, from inside. That is when you truly shine.

11. Peer pressure means a small view of life, beer pressure encompasses the universe
Restricting our world view to our immediate others – our peers – is such a limited view of this wonderful world we live in. Break those barriers. Adopt beer pressure and you will feel at one with the universe – vasudeva kutumbakkan – which may someday lead to world peace. It is our duty to try.

12. Peer pressure elevates performance, beer pressure elevates
There is an argument that peer pressure can also be healthy competition while beer pressure is unhealthy consumption. I agree that peer pressure can elevate performance under the right laboratory conditions. However, my learned friends forget that beer pressure elevates – period. Doesn’t matter what – performance, life, friends, family, memory, mood, work – beer pressure elevates all. Indeed, there are frequent instances of elevation leading further to levitation.

And the winner is…

Evaluating with a fair mind the dozen arguments presented above, it is crystal-clear that beer pressure wins over peer pressure. Peer pressure needs to be banned and banished, and a movement has to begin for beer pressure to be made mandatory.

Some readers will oppose this conclusion even after agreeing with above arguments – submitting unconsciously to the very peer pressure they need to oppose. However, please understand the simple significance of this matter. The future of world history depends on what we do today. Let us build a culture that wipes out peer pressure in favor of beer pressure.

Relevance to Software and IT Industry

Leaders and managers in software companies especially, have to build maturity and responsibility in their software engineering teams with young people who have just been liberated from years of peer pressure. This is a tremendous challenge not to be taken lightly even slightly. There is no better path to this goal than beer pressure. The way to build team spirit is to do it with spirit.

I hope all leaders recognize the dangers of peer pressure, and promise not to use peer pressure to create differences among people in pursuit of “better performance”. Instead, use beer pressure to bind people together. Performance is science, togetherness is magic.

 

Peer pressure is for losers. Peer pressure is un-cool. Cool is the person who is incomparable, for s/he is peerless. Be yourself.

Down with peer pressure. Hail beer pressure.
Cheers 😉

Author – Chinmoy Panda

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Software Testers: Who is your boss?

I was spending some time with a software test engineer (Software tester) recently and have a simple realization to share.

“How come this runs so slow?”
“Oh it runs just fine, just some problems only in IE browser”
“Why?”
“Probably IE’s Javascript doesn’t run so well”
“Yes but soooo slow?!?”
“Yes… but my Lead has seen it and knows about it”
“Which means it doesn’t matter?”
“Well not that… client has also agreed to Chrome-only support”
“The site will support only Chrome?”
“Yes, we described the problem and got client to agree to it”
“Do you have it in writing?”
“Yes”
“Very good. But why is this the case in first place?”
Developers told me the 3rd-party component doesn’t run on IE.” (look on face: how does it matter since client has agreed anyway)
“You mean a best-selling web UI component library doesn’t run well on IE???”
“Yes that’s what developers told me”

After some pushing and research, it finally turned out that developers had to use another method of data access and voila! – everything ran smooth on all browsers.

No doubt, the incident above and its subsequent resolution display several best practices. Get acceptance criteria in writing. Make sure client understands limitations. Don’t trust explanations! Be hard-nosed. Use common sense (how can a best-selling web UI library possibly not function well on IE!). Don’t let your personal love override the obvious (Chrome is great but that doesn’t mean you can force users to switch).

An aspect I would like to focus on is: to whom should the software tester be responsible? Project Manager? Team? CEO? Entity/person who is paying for work?

In the course of project teams and organization and “reporting structure” and salary and revenue and a zillion other things, we forget what is obvious. In reality, the Lead/Manager doesn’t matter. The developers do not matter. The CEO doesn’t matter. The client doesn’t matter! They are all illusion, maya.

The only person who matters, the only person who finally decides, is the user. A software tester is responsible towards only the system being tested, and users of that system.

In the short run, you can get away by keeping your Lead/Manager happy. You can get away by accepting superficial wave-of-hand explanations from web application developers. You can get away by getting clients to agree to something illogical. You can get away by using bureaucracy to cover your behind – “I have it in writing”.

You can get away because the short run is imperfect. The short run can hide. But the long run is all about the right thing. The good thing. The correct thing. Quality. Truth. Details. Finesse. Care. The long run exposes everything.

The right thing here is to find and fix the problem, or find a workaround if it cannot be fixed.

If you do not, all might be well at the surface. But when the user rejects it in the marketplace, everyone loses. And why? Because we ignored her when we should have paid attention. We got confused by irrelevant intermediaries (colleagues, lead, client, CEO) and forgot who the software is being built for.

In the example above, the user is taken for granted. The user is actually expected to tolerate slowness, or switch her browser if she wants to enjoy our system. The IE user votes No and many users are IE-only. Yikes, that pinched!

As a software QA tester (whether for a web site or web application or desktop system or mobile app or server software and so on), you are the user’s voice and warrior. Don’t accept reasons. Make your point. File issues where you see issues. Revolt till someone notices. Help in getting the right thing done. Ride alone if you have to, but ride the right path.

Honestly, you are not alone in getting deceived by quick things. It is the same thing in business. Business gets confused by targets and profits and “customer satisfaction metrics”, because those are the quick and measurable things, although they are not what business is about. Business is about doing the right thing for people, not only the legally right thing.

Software testing is about doing the right thing for users, not only the officially right thing.

Thanks!

Author – Chinmoy Panda

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Group Code Review

Group Code Review :

As part of CodeCAT (an area under the umbrella initiative we have at Mindfire called Catalyst – an initiative to improve competency of every person involved in software development) we have been doing code reviews regularly. After every review we post the findings in GPS (our company’s intranet) so that everyone else in the company can go through the review and get to learn from that.

In the beginning the enthusiasm was there but over time what we observed is that mostly people do not go through other’s code reviews. So the intent of spreading the knowledge of one code review (which is typically a one to one session) to many others was not being met. I started taking awareness sessions for all people in batches – things improved after that but not as much as we would have loved it to be. Something had to be done !!

Since we were clear on two basics things – one is the quality of code review being done was good and second was we were sure what we needed to improve,i.e spreading the knowledge of one review with others. This awareness of our strength and area of improvement helped us in coming up with an effective solution. We decided to start “Group Code Review” – call 5-10 developers to a room and have 1-2 code reviewers, pick 1-2 projects randomly and start doing a code review there itself. The intent was to spread knowledge and sensitize people not to repeat silly mistakes.

We anticipated that people might object to this way of review so what we did is we started collecting opinion/views from the codeCAT team members(of 25 persons). We had a lot of discussions on the pros and cons of having something like this – people might like it or might not.

After a lot of discussions we finally agreed that since our primary intent is to spread knowledge among more people and at the same time ensure that reviewees take up code review comments seriously and work on improving their code quality – what we decided to do is have the first round of group code reviews done team wise and by the team lead (the team lead had the flexibility to call other reviewers too). So instead of the earlier plan where we thought to call randomly 10 people working in one technology (but in different teams) and have 1-2 codeCATs assigned who in the meeting itself pick out few people for review, we called people working in 1 team for review. Since the concept was new to start with – we realized the earlier approach will not work because people might not feel comfortable. So we called 7-8 people working in 1 team to a room and got the code of 1-2 persons reviewed by the team lead (if he happens to be a CodeCAT – in the first phase we called teams whose team leads were CodeCATs). The review session was used as a forum to not only identify mistakes done by developers but also was used as an interactive discussion forum where people got a chance to ask questions and understand why something will not work and what changes need to be done to make it work.

So far the feedback from the team members, who participated in the reviews , has been positive and people seem to be liking it. Ofcourse the next round of reviews will be a little challenging when we pick groups of 8-9 people randomly and assign a reviewer who they have not worked with. I will keep you posted on what our findings are after we do that plus things that should be taken care of to make group review more successful.

Author – Atma Prakash Ojha

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Mindfire 2.0 – A Vision for 2011

Sometimes organizations take time – years – to reach a stage from where they leap. Mindfire Solutions is today at that stage.

As we move forward to our next year in operation, allow me to close my eyes and see where we are next year. In one year from today…

I see new faces. The 300 freshers we selected between Nov2010 and Mar2011 have joined us in Jul2011 and are getting on to projects after some intensive training. I also see the remaining 700 of us helping and guiding the new people to get on-board.

I see more and better facilities and infrastructure – our second Bhubaneswar center in operation since Feb2011, our new NCR (Delhi) center of 500 capacity just becoming operational, our Bangalore center with 150 capacity operational since Mar2011, and our search has begun for 150 capacity centers in Kolkata (or similar) – to suit the rapid growth we are facing. I also see construction of Mindfire Towers at Bhubaneswar with 1000 capacity going strong since Feb2011, on track for opening in Apr2012.

I see a new workplace environment. All our cubicles were broken down in Mar2011 and replaced with open-table Agile layouts, everyone works off laptops, there are bean bags and sofas scattered inside the office, Wii game consoles, napping pods and relax spaces, vibrant colors, LCD screens running mixes of interesting things ranging from the occasional matches to tech videos. Lot of people work from home either temporarily or permanently, and we have a virtual workforce distributed all over the country.

I see a new working style. Everyone works with cooperation and collaboration, helping each other improve. Competition is with self, not others – how do I improve myself every single day? Leads, senior colleagues, everyone in the team and outside is thinking of how to help everyone else. We understand that our value does not come from designation or position. Our value is due to the value we provide to others around us.

I see the most out-spoken atmosphere any company has ever seen. We discuss and disagree (and agree) openly and without fear. Sometimes our thoughts are appreciated by everyone else, at other times they are not – but we accept that as part of life and move on to our next thought. The more we express ourselves, the better we feel and the greater the progress of the organization. This has begun to happen now because we understand after some discussions during Dec2010 – that at Mindfire there is no senior, no junior, no management – we are all in this together.

I see fantastically improved quality of work. We are committed to the work we do – small or large project, small or large client, we do our best. And our best is much better than it is today. We take responsibility, we earn our respect from our colleagues by doing stuff and not by flashing our credentials, we take pride in our craftsmanship and results. The quality improvement and skill improvement focus, the learning and knowledge and better-talent initiatives we started in Dec2010 have succeeded.

I see more and better people eager to join us. From all over the country, freshers to experienced, different technologies, different skills, different roles – all kinds of people – we are flooded with people who want to join us. Growth and learning opportunities, salary, responsibilities, environment – people like what they get at Mindfire. Among other things, the new salary levels we announced in Dec2010 for campus hiring has helped us attract talented people.

I see more and better clients eager to work with us. New and old clients, clients who come to us on their own having heard of our good work from others and clients who we pursue to get their projects, tech-deep clients and big-business clients – all kinds of clients want to work with us. The new messaging we began in Dec2010 has resulted in a unique position in the minds of clients. The sales offices we established in 10 different regions in US/Europe, starting in Jan2011, have taken client touch to a whole new level and enabled new relationships of a different scale.

I see new areas of work. We launched our BI/DW practice in Feb2011, our ERP practice in Mar2011, and our RIM practice in Apr2011 and have already completed some projects in each. We launched our Technology-oriented SIGs in May2011 and our System-based focus areas in Jun2011.

I see a new set of leaders and new styles in old leaders. The new leaders we identified in Dec2010 and fast-tracked internally have delivered responsibilities they could not believe themselves to be capable of, the new leaders we hired in Jan-Feb2011 have carved a greater path for Mindfire, and current leaders are at a higher level of maturity and responsibility after seeing what Mindfire is truly capable of.

I see us blazing the trail in innovation. Mindfire Labs is fully in operation and has delivered 5 innovative products for a better world. Several of our online systems and communities have succeeded in their objectives. 100Drivers has generated employment for 1000 unemployed youth since taking off in May2011, A/B/C have caused action towards better safety, government and education, and X/Y/Z have collectively generated great traffic and revenues. Most of these ideas were brainstormed and finalized during Dec2010-Jan2011, and then developed using an open-source mechanism where all of us could contribute in creating systems for a better world.

I see us doing innovative good for society. We are taking care of the upbringing of 100 children as per the scheme announced in Dec2010, the shelter we had planned together is under construction to house 100 children since Apr2011 (to be ready by Mar2012), our education scholarship scheme launched in Mar2011 has touched 100 children already, and we have just completed our 25th medical camp having started in Jan2011.

I see a new level of trust among us. People understand what Unlimited Leave is and why we are unique in having it, what a zero-hierarchy organization is and why we have it, what a zero-rooms organization is and why we have it, and so on. Those who were not comfortable with such organizational ideas and believed in traditional industrial/factory models of work, those who want respect due to designation and not talent, those who do not match the fundamental principles of the new Mindfire, those who do not understand quality and do not worship work, those who cannot adapt to changes – they left us before Apr2011.

Ladies and gentlemen, welcome to the new Mindfire – Mindfire 2.0. This is it.

Author – Chinmoy Panda

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Why the name “Mindfire”?

I have often been asked why we are named “Mindfire” – what does it mean?

When I decided in 1999 to create an organization focused on software development, several candidate names cropped up. I was very clear that the name had to embody the factors and spirit of software development success, based on my observations of this industry that I was and am so passionate about.

Numerous names were tossed around. I felt “Mindfire” hit bullseye.

In any field of human endeavor – bull-fighting or buildings, singing or software – nothing succeeds unless you have a balance between “mind” and “fire” – between the smarts required to do something and the action orientation required to do anything. However the criticality of this balance is perhaps the most intense in the field of software.

In software organizations, I had observed two causes of failure. On one hand, you had young and intelligent people who had the raw “intelligence”, but didn’t have an adequate action orientation toward actually doing things, learning things, delivering things – that killer instinct would be missing. On the other hand, you also had a terribly large number of people who would run around being “visibly loud”, doing things and lot of things with a lot of “fire” – but who perhaps did not have sufficiently sharp minds required in software development.

Obviously, I wanted everyone who joined Mindfire to succeed greatly in their careers. For this, our organization had to constantly remind them about this balance between mind and fire that was key for them to succeed in their chosen career. And what better way than to name ourselves accordingly!

Hence, Mindfire.

PS: Having observed hundreds of software engineers in the last 11 years at Mindfire, I have come across a new rare species which makes me feel the name needs an addition. A couple engineers had both the mind and the fire in place, but thoughts and movement in the wrong direction! So today I would perhaps call ourselves “MindFireArrow”: to succeed in software development you need to have mind and fire in equal measure, and both pointed in the right direction.

Author – Chinmoy Panda

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Sidejacking: How to prevent Firesheep from hijacking your session

Sidejacking, a technique of hijacking web sessions of other users in the network, has suddenly gained much attention on the Internet, thanks to a new Firefox extension Firesheep.

In a sidejacking session, the attacker sniffs data packets of the transactions over the network and steals cookie which the attacker can then use to impersonate the victim on the site the user is currently logged in. Even if they have encrypted login pages, unsecured HTTP sites use cookies to identify you during the entire session and this is what the attacker exploits. An attacker with certain tools can steal the cookie during transaction and use it to make the server treat the hijacker as the legitimate user. This vulnerability has existed since a long time but exploiting it was never so easy nor was it as alarming. Continue reading Sidejacking: How to prevent Firesheep from hijacking your session

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Social Ego – How company branding fuels it.

Ever wondered why idol worship as a concept came into existence. If as our scriptures say that GOD is omnipresent then why was a place of worship created and why inside that a figurine of God put ?

I think it was done because to imagine God and pray in open space was not working out for people, they needed a face to imagine and a symbol or idol to look at and then attach the same reverence and awe that they had for the internal belief called God. In short we as human beings externalized our internal belief and source of inspiration so that we can easily connect with it on a frequent basis.

Point is why am I saying all this ?

I wanted to draw a correlation to another place (which is also called as a place of worship) and the need to externalize our social recognition so that we derive pride from it easily and regularly. All of us work at some place or the other and might be all or some of us would be proud to be working at that place. We are convinced that it is a good place to work and we feel proud to be there. Problem or insecurity creeps in when the name of the work place is not famous in the outside world. Whenever you move out of office and talk about your workplace and the work that you do and do not see the respect or pride in other persons eyes or behavior your social ego is badly hurt. Some of us who are more mature and who do not need someone else’s appreciation to move on in life and be happy, manage easily but for the rest of us self doubt and frustration creeps in. We tend to distrust the company/office and feel cheated or we might just decide to leave since it does not give us the recognition that we are craving for. Hurts all the more when your near and dear ones hesitate talking about your workplace because they do not feel proud saying it.

Here comes the need to externalize the brand and the values or things that you like about your office or workplace. As the brand building gathers momentum and becomes famous in itself you realize that it makes your life all the more easier. Now your social ego is massaged nicely – you just say the place you work and rest of the things are taken care of by the person you are talking to.

Even though technically it is still the same place and the same values and work standards that you are maintaining but suddenly you feel more worthy because others feel that way. Of course for the persons who were matured enough to feel good without the brand externalization hardly see the difference, they felt good earlier and would continue feeling that way.

The intent of my writing this article was to explain the concept of brand building keeping in mind the effect it has in boosting morale of people. Of course there are a host of other areas for which brand building is used for but I have tried to explain only one aspect of it.

Now the question I want to ask is – do we actually need to externalize our self respect so as to derive social recognition or just let the way things are and convince ourselves that it hardly matters what others think about us ? Please share your views.

Author – Atma Prakash Ojha

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Future of software development and software testing

The pace at which technology is advancing and tools are being built I think in future the role of software engineer will go through a major change. Smart tools will ensure that you need not know the syntax of a language or the inner workings of how it will interact with the database server etc etc. All you would need to be a good software programmer are tons of aptitude and a thorough understanding of the business for which the application is being built.

A typical developer would not necessarily be someone who has worked on a particular technology for 5-6 years rather it would be someone who has worked in a particular business domain for 4-5 years. Unlike at present where we need people to learn and keep themselves updated about the technology they work in, say someone who claims to be an expert in .Net should know what new features .Net framework 4.0 has , going forward a software developer would need to be updated on all the applications of every technology that are in the market and which one has what good feature – from usage in business point of view. He would not be required to learn the nitty-gritty of a technology rather he would be required to learn and be updated on the features that any technology has and should have the aptitude to use the one that suits the requirement best. Every company would have only a handful of network/IT support guys to take care of the system configuration needs.

In such a scenario the role of a typical tester (in terms of the work that she does at present) gets blurred somewhere. Since the developer’s scope of work would encroach upon the testers work she has to innovate to be of good use in the software development process. In fact the future would be more favorable for testers because of their expertise on application knowledge, of course only those who have build a thorough expertise on the domain they work in and have kept themselves updated on all the different technologies that are available in the market will excel. The fact is there would not be separate roles of developers and testers – we will have only system and application specialists. Anyone who is abreast of new technologies and has a strong knowledge on 1-2 business area will rule.

Keeping such a scenario in mind I think the current testers should start preparing themselves for the future by focusing on broad system knowledge rather than knowing the syntax of only one language. Someone at present who is into testing a banking application which is built in .Net might think she has to learn about banking domain as well as something about .Net to be an expert tester but that need will no more be there in future. She would need to know about banking domain and in addition should know what the system architecture demands and which technology in the market caters to it. Development of tools and addition of developer friendly features ensure that you need not be an expert syntactically to write your application using their language rather all you need is aptitude and awareness of the features of the technology itself – so learning about these things would help.

Author – Atma Prakash Ojha

Spread the love
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •