Advertisment:

Monday, July 31, 2017

Cloud Computing - is it Rainy Today?..




The term basically refers to performing computing activities online instead of offline (using the computer's hardware).&nbsp; it means that individuals&nbsp; or organizations lease remote&nbsp; memory space and software , that are stored away from their physical location, and use them through the internet.&nbsp; <br />
<br />
The basic advantage of this model is that the customer doesn't have to purchase in advance software or memory space, but purchases them on demand only and for the extent he/she may need.&nbsp;&nbsp; This feature often saves a significant portion of the computing costs of an organization.<br />
<br />
<br />
The basic types of service available on Cloud Computing:<br />
<br />
<br />
First, Sotfware-as-Service (SAAS), which refers to the use of computer programs installed on the supplier's servers, and the user makes use of them through the internet.&nbsp; Prominent SAAS software examples: Gmail, online gaming.<br />
<br />
<br />
Second, Infrastructure-as-service (IAAS), which refers to use of memory space of the supplier by the user.&nbsp; Prominent examples: site hosting, backup storage.<br />
<br />
<br />
Third, Platform-as-Service (PAAS), which refers to the use of developing platforms by the user in the process&nbsp; of writing and testing software, such as: Linux emulators, online compilers.<br />
<br />
<br />
The financial cost reduction using Cloud Computing derives from several factors:<br />
<br />
<br />
First, no need of purchasing expensive hardware devices, such as: servers.<br />
<br />
<br />
Second, no need of purchasing in advance expensive software products, such as: operating systems, Integrated Development Environment (IDE).<br />
<br />
<br />
Third, no need of hiring local maintenance experts for the software and hardware.<br />
<br />
<br />
Fourth, no need to deal with disaster relief procedures, as the supplier deals with it.<br />
<br />
<br />
Fifth,&nbsp; no limit of resources availability.&nbsp; for example. if there's a shortage of memory space, there's a possibility of purchasing additional small size memory.<br />
<br />
<br />
Sixth, no dependency on a specific location where software products are installed.<br />
<br />
<br />
The shortcomings of Cloud Computing can be roughly divided into the following:<br />
<br />
<br />
First, dependency on the supplier.&nbsp; The latter may run bankrupt or have many operational failures. In such a case, the user can't do anything to prevent his own setback.<br />
<br />
<br />
Second, possible security holes regarding the employees of the supplier, who may cause damage to the user's data.<br />
<br />
<br />
Third, difficulty in communication between software products which are located on&nbsp; many different servers.&nbsp; For instance, SQL database that has to communicate with a web script held on another server.<br />
<br />
<br />
<br />
Fourth, difficulty in managing software platform without the ability to access the hardware (because it belongs to the supplier).&nbsp; For example, running a disk compression may be necessary for a software running but the user isn't permitted to do that.<br />
<br />
<br />
Prominent Cloud Computing suppliers include:<br />
<br />
<br />
1. Elastic Compute Cloud (EC2) of Amazon - The most well-known service, which allows memory space &amp; infrastructure software&nbsp; leasing.<br />
<br />
2. App Engine of Google, which allows development &amp; testing of Java/pythons application on remote servers.<br />
<br />
3. Azure of Microsoft - which allows mainly platforms for online development of software.<br />
<br />
<br />
Summary, Cloud Computing is here to stay, but due to its vulnerability concerning security, I believe that the move of organization to work with this model is going to take more than a few years.

Saturday, July 29, 2017

Free Alternatives to Microsoft Office





Ladies & gentlemen, my dear readers!

Today I'm going to talk a beat about the new born baby - Apple's iPad. Who really needs this toy and what can it really do?

1. Reading articles or books - iPad's screen is large and clear enough to let you read web articles, e-books or PDF/Word documents. You'll not have to ruin your eyes or suffer in any other way.

2. Games - There's a reasonably wide variety of games for iPad and it can be a substitute to game consoles (like Nintendo) for light-gamers. However, it's early to relate to iPad as a substitute to the desktop PC.

3. TV & movies - you can watch TV or videos in a reasonable quality. I wouldn't bet on it replacing your 50 inch plasma TV, but as a little TV it can do great.

4. Presenting presentations - if you need to present Powerpoint presentations outside your office or something similar, the iPad can replace a laptop and make it easier for you.

5. Basic web usage - it can replace a laptop in basic web functions, like: email, Facebook and more. It doesn't suffer from special communication troubles that may harass the web usage, and the screen is large enough not to cause you much misery.

6. Long usage without battery charging - iPad can reach 10 hours of active usage without charging, which is much longer than an average laptop.
The downsides of iPad must be taken into account:

1. iPad's screen isn't successfully suitable for usage outdoors, and you may suffer from using it at the beach or at a picnic.

2. iPad was created by nerds and it's itself a nerd: smart,skinny and fragile. Daily usage by young kids or messing otherwise with it should make its days shorter & shorter.

3. iPad isn't widely perceived as an attractive instrument, and its functionality is much better than its looks. So it might not be the ultimate purchase for making you cool.

4. iPad (as an Apple product) doesn't support Flash, which may be a nuisance for some users.

5. Above all - iPad isn't a PC: which means that you shouldn't expect it to be more than it's meant to be: a partial substitute to a laptop.

Thursday, December 1, 2016

Developing Countries Software Developers - on Their Way to Rule the World?



The pacific is small compared to the ocean of debate that has been held during the last decade concerning the possible evaporation of software development jobs out of western economies in favor of technologically developing economies (mainly India).

The main argument feeding that state of mind says that hiring developers in India (and other developing countries) in much less expensive than hiring personnel in developed economies. Let's have a look at the average annual hiring costs of software engineers in several countries:

Australia: $180,000

Canada: $155,000

Denmark: $146,000

United Kingdom: $145,000

United States: $130,000

Spain: $95,000

Poland: $50,000

India: $50,000

China: $36,000

Fine,now we all know that basically it's much more economical to close down your office in the the Silicon-Valley, Toronto, London (let alone Sydney) and move to the golden mines of Bangalore, Kiev or simply Beijing.

So why do you: Jeff, Philip. Francois, Jorgen and Kylie still employed? I guess that the decision-makers in high-tech firms also take into account the following arguments:

1. The hiring costs in developing countries rise constantly and quite sharply: about 10% annually. This means that by 2020 (if the trend continues), the hiring costs in India should be around $130,000. I assume that this trend deters mass transition of western firms to developing countries.

2. Mental gaps between continents may be excruciating: the mainstream cultures in the US, in W. Europe or in Australia are almost upside-down compared to those in most Asian nations, and those nearly reversed cultures should work together on a daily basis. Many decision-makers wouldn't take the risk.

3. Telecommuting is a fantastic idea, but most decision-makers just can't bear the possibility of not controlling face-to-face their employees, especially those involved in the core development of products. Let alone when the employees are located across the ocean.

4. Local patriotic concerns - many decision-makers can't come to terms with the idea of firing local employees in favor of foreigners, and do their utmost effort to avoid such steps. They know that they might meet the employee they fire at the local mall.

5. Disrespect for personnel in developing countries - Many decision-makers don't actually believe in the professional abilities of Programmers in developing countries, and tend to believe that the gap in the costs should materialize in gap of quality.

Conclusion - There are some decisive constraints on the move of software development to developing economies (primarily India). In my opinion, the large majority of software development is about to stay where it is today.

We should bear in mind that cultural changes (including organizational changes) take generally generations to take root. Think of how many services we can acquire on the web but still use the services of a professional: travel agents, matchmakers, newspapers, libraries and many more.