“Ethical gaming: Can video games be a force for good?”

Blog4

THE ISSUE

Gaming industry has grown in harmony with computing. Faster and more powerful computers and advanced game programming technologies have contributed to set the computer gaming industry as a strong component of the entertainment world. There is a concern with what game themes have become. Today, games are more and more abstract, violent and sometimes with some immoral values attached to them.

I find interesting to analyze what can be done to,let’s say it, make games more ethical. I came across this article which quite sets the problem for debate. I can relate this issue to Principle 1.05 of the Software Engineering code of ethics. The principle is as follows: “Cooperate in efforts to address matters of grave public concern caused by software, its installation, maintenance, support or documentation.”

Blog4_1

ANALYSIS
The main concerns about video games are their addictive nature, their themes (whether they are suitable for a young audience or not) and the fact that they draw they game junkie slowly away from reality. There was a time when video games were free and with the only purpose to be entertaining. Now it is a multi billion dollars business. The software development community can surely do something about the bad influence of video games (they are the one developing them). Supporting that idea, Mark Zukerberg creator of Facebook, after purchasing the major virtual reality goggles maker Oculus, suggested a future direction for video gaming by making virtual reality for empathic and closer to reality

When technology starts to digress from its original purpose, it is the responsability of the professionals of the fields to do something about it and try to fix it as stated in the Principle 1.05 of the software engineering code of ethics.


CAN SOMETHING REALLY BE DONE ABOUT IT?

Video games can’t be banned. Their themes and content can’t really be controlled either. The truth is they are out there and every individual has the freedom to decide to be caught in the loop or not. We need also to look at the artistic part of the problem. Is there a code for defining the content of a game? What is it to be too virtual? By how much? Even if a major player comes and capture the whole gaming industry, he is still going to need to diversify. Besides, game developers do not forcedly write the storyline or draw the pictures that animate games. They just write code. They are not fully responsible if games are addictive or are drawing people out of reality. Fixing that issue cannot come entirely from software development community.

Blog4_2

MY OPINION
I think developers can’t control what’s going on in the gaming industry. There are bigger stakeholders that have more decision powers. Developers are employees pursuing a career. Game developing companies might have a higher impact. Are they ready to lose billions of dollars over ethical concerns? Unless turning gaming into something that can generate at least the same amount of money, it’s not going to happen.

Advances in computing and in software development technologies benefit many business areas. Video games are one of them. Now the issues brought along by the negative effects of video games are out of the hands of the software development community…for now. This can change, if a major player starts to set a trend that can sell. That is another story.

And you, do you think the software engineering community MUST try and fix all the negative impacts of “too much” computing?

“Microsoft acquires GreenButton to deliver Big Compute”

Blog3_2

MICROSOFT JUST BOUGHT ITSELF A NEW WEAPON

It looks like Microsoft is thriving to fill the gap with google (in search engine and cloud-based services) and Apple Inc. (in mobile device technologies). Some artifacts are the deployment of Bing with its satellites (Maps, News, etc.) a lot like Google, and the partenership with Nokia in the smartphone business.

Microsoft just acquired GreenButton in order to be equipped for the cloud’s battles that are going on and the ones that are looming. GreenButton is a high computing infrastructure that was initially developped to support movies like the Lord of the Rings in New Zealand. Parallelly Microsoft has its signature Cloud platform named Azure. Microsoft acquired GreenButton to make Azure faster.
Blog3
WHAT’S THE LIKELY IMPACT OF SUCH MOVE?

We can look back and consider two major moves of Microsoft in the last 3 years. The first one is the partenership with Nokia to establish Windows Phone as a major OS for mobile devices, and the second one is the acquisition of Skype to replace Windows Live Messenger. How would you rate these two moves? Successful? Promising? Failures?
Microsoft has the power to step into a market already occupied by other giants and wait for success to come. They can afford it.
With the acquisition of GreenButton they seem to be preparing for the coming growth of the cloud-based services. What we can expect is more fluidity (and volume) in the delivery capabilities of development platforms that Azure already has in place. Maybe who knows Microsoft may provide more tools that might need faster a infrastructure. Let’s wait and see.

HOW DOES THIS CHANGE OUR LIVES?
Not much right now. Our lives are influenced by technology. Apple set the smartphone trend, we all (almost all) followed. Facebook empowered the Social Networking trend, peole got addicted to it. The difference here might be the areas where super computing are needed. This involves software professionals. Unless Microsoft finds a “flashy” way to use its “weapon” like in entertainement or sport, the general public might not see the impact of it at first sight.

On your side, do you see any impact of having an even faster cloud on the way we do business, entertainment or maybe education?
Blog3_1

Software as a Service, the Cloud at your service

SaaS-SSO

AN INTRO

The Software as a Service (SaaS) technology is not a new idea per se. The concept appeared in the 60’s but truly reached its full potential thanks to the internet and the advances in networking capabilities. Providing a SaaS is delivering software to customers over the network (mainly the internet) compared to the “traditional” way of having software run on the user’s terminal (desktop, laptop, mobile device). In the early 2000’s Salesforce, a major cloud computing company, launched its Customer Relationship Management product and that became a turning point in the cloud computing industry. As an example “by the end of 2008 , Amazon was already the most popular general-purpose cloud platform, with over 400,000 developers registered to use its Web services.”[1]

Let’s review SaaS technology by presenting what makes of it an appealing business opportunity, analysing its suitability for businessess and a quick wrap up of its advantages and disadvantages.

A BUSINESS OPPORTUNITY

Networking has reached amazing capabilities and speed. Not fully taking advantage of it would be a waste. On the other hand software protability has always been an issue, one of the reasons being the diversity of operating systems we have. Another aspect is the mobility factor; we can’t move with our software without the hardware that support it. Software projects have always carried the burden of maintenance agreements, warranty and everything that links the provider to the customer contractually. When the product is acquired and installed in-house updates and upgrades come sometimes with hardware cost or at least logistic cost. SaaS solve the aforementioned issues:portability, mobility and infrastructure costs.

SaaS

SUITABILITY FOR BUSINESSES

SaaS is a saver for Small and medium businesses (SMB). SMB’s sometimes can’t afford investing in infrastructure. Salesforce.com says it well in their motto for small businesses:”No installs. No hardware. No headaches…Everything in one place, anytime, anywhere.” Large businesses might have more freedom for developing in-house solutions, depending on the criticality of the systems, the confidentiality of data and the lifespan of the software. Divisions within a large organization can turn to SaaS if a strategic decision is taken to lessen the cost of maintaining a product that is not enterprise wide.

ADVANTAGES AND DISADVANTAGES
SaaS offers or improves portability and mobility, reduces maintenance effort (not cost forcedly), cuts down
infrastructure cost. On the other hand confidentiality, originality, flexibility are not guaranteed. Moreover network is not flawless. Saas has a 100% dependability on the quality of your network.
Another analysis that I find interesting is the comparison of SaaS to in-house software. The comparison table in this article summarizes it well.

[1] M, Cusumano. Technology Strategy and Management Cloud Computing and SaaS as New Computing Platforms To become. Communications of the ACM, April 20120

Software engineering: The journey has just begun

imagesG4Q2L4TZ “Software engineering is an engineering discipline that is concerned with all aspects of software production from the early stages of system specification to maintaining the system after it has gone into use.”[1] Software engineering is relatively new compared to other engineering disciplines like civil, eletctrical or mechanical engineering. Software engineering is currently playing catch up on its counterparts. New standards are being defined while existing ones are being reviewed. The International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC) is currently working on defining standards for all the phases of the development lifecycle (requirements, architecture, detailed design, implementation, testing and maintenance).

220px-SDLC_-_Software_Development_Life_Cycle

The purpose of software engineering is to design disciplined approaches to design, develop and maintain software. About three decades ago, software development reached an era where the growth of computing generated the need of better software. Software began to make its way as the most efficient way (if not the only way) to implement complex logics.Unfortunately software development activities were mere coding and only relied on the skills and heroic efforts of the developer. Quality was poor and the field was going through a real crisis . Projects were not delivered on time and were often out of budget. There was the need to tackle such problems and find solutions to be ready for the exponential growth in the computing field that was looming. Software engineering was the solution. It still is today and will be in the future as new technologies are emerging.

Software engineers cover all the development lifecycle. There are requirements engineers, architects, designers, developers, testers and software quality analysts. This list is not exclusive. A lot of variants are out there.

Software is everywhere. Software Engineers are needed in 3 key areas: software development, software acquisition and software servicing. Any company involves in any of these areas might need a software engineer. A good example is Citi Group which has grown from being a major financial institution to become as well a leading software services provider.

So, how versatile do you think software engineers already are or need to be?

software-engineer-ranked-best-job-for-2011-11010502

[1] I. Sommerville. Software Engineering (8th ed.). Harlow, England: Pearson Education (2007)