Google Fiber – Internet and TV at blinding speeds

Google Fiber is a new internet service by Google that provides 1000 Mbs per second ( download and upload ) . That is 100 faster than most internet speeds in the United States. As name suggests, the high internet speeds is achieved by using fiber optic cables with a box receiver in each consumer household. The box receiver is also a Wi-Fi transmitter.

Google Fiber was first launched in Kansas City, Kansas, USA. Then other two cities followed, namely, Provo, Utah and Austin, Texas. Another six US cities are on upcoming construction and three more cities are considered as potentials. See the list here: https://fiber.google.com/newcities/

According to the Google Fiber Team, the service is not yet available outside the United States since they are still focusing in the current Fiber cities ( Kansas, Provo, Austin ) , but they will soon reach out to further areas.

Here’s the official blog for the latest news

http://googlefiberblog.blogspot.com/

The official Google Fiber webpage:

https://fiber.google.com

Wikipedia:

https://en.wikipedia.org/wiki/Google_Fiber

Facebook:

https://www.facebook.com/GoogleFiber

Advertisements

Top Server-Side languages for Websites

The basics of software are machine instructions that are sent to the computer processor so that the computer can perform computations, store data, and display media and information.

On this post, Server-side website software languages are discussed. Therefore, software for embedded software ( in machines and robotics ) is not included in the category. Client-side and front end scripts used for screen display such as CSS, HTML and Javascript is excluded. Software for mobile hardware such as Android and iOS are also excluded. Only the languages that control server-side logic is on the list. This is different in my previous post on Best Programming languages to learn, which covers all programming languages in general.

Another note is that some websites use more than one server-side language, maybe for transition ( such as Ameba.jp , a Japanese blog site ), or which uses only one ( Facebook which uses only PHP, or LinkedIn, which only uses Java )

Below is the basic list on where this area is under in the Website architecture.

[O] Front-end code -> CSS, HTML, JS

[/] Back-end code -> PHP, Java, C#, Ruby

[O] Database -> Oracle, MySQL, MongoDB

[O] OS -> Linux, Solaris, Windows

A very important thing to consider on the selection of a Server-Side language is Performance, Quick setup and development, Maintenance, and the most important factor is the Availability and talent pool of developers.

 

Top Server-Side languages for Websites

1.) PHP

PHP is on the top of the list. according to w3techs.com, PHP powers 81% of all internet websites ( as of July 2015 ). All other languages do not come close. According to this report, PHP is used by most medium traffic sites, where these sites composes 80% of the internet. PHP is highly used in Social Media sites ( ex. Facebook and etc. ) Blogs ( ex. WordPress ) and Wiki sites. Theses sites are the internet platform used by most people.

PHP is described to be “the quickest web development language to learn and setup” and is preferred by most freelance and start-up developers. It is open source, with crude and simple scripting.

Here’s the official PHP page: https://secure.php.net/

2.) Java

Java programming language is popular among e-commerce and corporate websites, although it only comes to third with only 3% of all internet traffic ( ASP.net takes second place ). but according to this report, Java is in a steady rise, while PHP is on a steady decline. Although both languages have the same capabilities, Java may win on the performance since its compiled code, unlike PHP or Ruby.

Java is also open source and is integrated with J2EE technology and other 3rd party software such as Hibernate and Spring to become a full-tier webserver.

Recently, J2EE has become too large and complicated, with much maitenance overhead. Even the Struts framework has become outdated. There’s a new Play framework ( derived from Scala ) which eliminates all the complications of the J2EE architecture, but this is yet a rising technology and still on its semi-experimental stage.

On personal opinion, I am closely following Play framework, and just recently, Java creator James Gosling is already a consultant for Typesafe Inc. , the creator of Scala and Play framework ( according to Wikipedia.com ).

3.) C# and .NET

This comes as the second most-popular server-side programming language at 16.7% ( As of July 2015 ). C# and ASP.net are created and maintained from single vendor which is Microsoft Inc. The ASP.net comes as one package for Website development. C# is still in demand with several websites that are tied-up with this technology. A single vendor has an advantage over integration and a single contact point, but it offers less flexibility and vendor lock dependency, which most software firms avoid.

On the bright side, C# basic code has a very similar syntax to Java, so the switch has a lesser learning curve.

some links on C# and ASP.net tutorials

http://asp.net-tutorials.com/

http://asp.net-tutorials.com/basics/code-behind/

4.) Ruby on Rails / Node.js / Perl and other languages

RoR / Ruby on Rails rails was popular since it was designed to create a website as quickly as possible. That’s good for developers, and startups, but it’s bad news for a business or an enterprise using it as a long term and high traffic site, since performance was an issue. Node.js has risen in popularity, since knowledge of JavaScript is all that is required to code ( where JavaScript is the most widely used client-side scripting ), No need to code on Java and JavaScript or PHP and JavaScript on single Web project. But there are also credits to Ruby, where other frameworks ( even Play framework ) is getting its influence. Other languages such as Perl, Scala and Phyton combined takes only 1% of the total usage and popularity.

Websites and links that show why Ruby is abandoned.

http://stackoverflow.com/questions/3794270/is-ruby-on-rails-or-at-least-the-community-dying

http://ilikekillnerds.com/2015/02/is-ruby-on-rails-dying/

 

Outsourcing Countries – India , Vietnam and the Philippines

First published on Apr 5, 2015. Updated July 27, 2015

Cebu, Philippines – Outsourcing: It has become the economic driving force of several countries since the invention of the Internet. Worldwide communication has become very easy, with the means of email, chat, phone or video. Several countries and nationalities can collaborate on a project via the Internet infrastructure. Information and Source Codes can also be shipped by this means. But Who are the key players behind the outsourcing revolution? I give my statements to 3 Asian countries that participates in the Outsourcing economy. As I know, These countries can take on Any Worldwide client, May it be North America, Europe, Oceania/Australia or Asia. Other countries are considered “Nearsource” since they are favored by the clients by its close geographical location ( ex: Costa Rica, Poland ). So here goes…

800px-Flag_of_India.svg

1.) INDIA – The Pioneer of the Outsourcing Industry. No other country can compete with sheer volume of its English speaking workforce. IT talent is also very abundant, with almost no shortage of skills in every IT position ( Developer, System Administration, Middle and Top Management, and other positions ). But recently India has increasing wages, due to competition of companies and talents. But still, only a selected portion of it is, as I know India is still on the competitive salary range, compared to other countries ( ex. Singapore )

India Update: India still holds the largest talent pool of English speaking outsourced IT personnel. Yet there are a lot of brilliant engineers from India, the skill quality of some engineers are questionable, when hiring on this huge talent pool.

Flag_of_Vietnam.svg

2.) VIETNAM – A new but very competitive player in the IT outsourcing. Vietnam’s secrets as an outsource destination is now being uncovered. Most companies go to India or the Philippines since these countries are know for its English speaking workforce. But Vietnam is catching up, and its IT professionals can speak good and comprehensible English. Infrastructure is improving and cost is a bargain. Talent pool may be a bit short, but it’s enough since there are already several Huge IT outsourcing companies in Vietnam. They focus more on software development, unlike India and the Philippines, which can handle all types of outsourcing jobs ( such Software Development, Accounting, Sales, Call Centers, Medical Transcription and etc … ) .

Vietnam Update : According to latest news and surveys, Vietnam is now considered the top IT outsourcing destination. A combination of skilled workforce, government support and wage factors takes Vietnam as a leading contender. Software Startups are booming in Vietnam.

About Vietnam start-ups:

http://www.cnet.com/pictures/vietnams-fledgling-startup-scene-pictures/

http://www.virgin.com/entrepreneur/the-worlds-best-start-up-hubs-ho-chi-minh-city-vietnam

Flag_of_the_Philippines.svg

3.) PHILIPPINES – It does not have the volume workforce compared to India, and just higher than Vietnam, but the Philippines is considered a major outsource destination by giving the best value for cost and expertise. Infrastructure is already good, and improving. Wages are on the rise in Metro Manila, with some even comparable to Singapore. But the alternative is to get talent in other cities, where wages are still lower. Cebu City remains to be the best option because of the abundance of workforce ( People coming in from the Visayas and Mindanao ) with an Infrastructure and City comparable to Metro Manila, with the bonus of lesser traffic and lesser population. The Philippines’ major clients are the United States ( Due to English and very similar culture as a former U.S. Colony ) and Japan ( As its “Nearsource” partner, next to China that is… ). Europe, Australia, and Canada are also in as other clients. Best part of Outsourcing in the Philippines? The land is considered a “Tropical Paradise”.

Philippines Update: The Philippines still holds the top spot as the No. 1 Call Center outsourcing provider. Software and other Information Technology services are also making an impact. Multinational companies such as Accenture, IBM and HP already have major offices in the Philippines.

Comparison to other South East Asian Countries:

Other South East Asian countries have a different economy, Thus Outsourcing may not be its main source of income. Malaysia has a bit higher wage compared to the Philippines, Although they have IT experts, but they need foreign talent to reinforce it. Thailand has a vibrant economy on tourism and manufacturing, but not so much on Information Technology. Indonesia is more on Agriculture. China is major player also, It can rival India but IT talent may be expensive. Singapore is expensive but you get excellent talent from several nationalities ( Singapore , Philippines, India, Malaysia, Vietnam and etc.. ) not suitable for volume work but great for Research Development and Start-up.

Comparisons and reports of outsourcing

http://www.theregister.co.uk/2015/04/22/good_news_your_jobs_not_going_to_the_philippines/

Other Sources

http://techcrunch.com/2015/04/03/the-promise-of-outsourcing-to-vietnam/
http://www.bloomberg.com/ss/09/01/0114_top_outsourcers

Countries to watch out!

1.) Kenya – English speaking country in Africa. It’s Capital City of Nairobi is a booming urban jungle.

2.) Poland – Considered the best outsourcing partner for Europe and the United States.

note: flag images are of public use taken from wikipedia.

 

Play framework – The next web server phenomenon

As I have learned, there are more advancements in Web technologies which makes software development much easier, less complicated, and its end product to be highly efficient, stable, robust, fast, reliable and yet takes complex requirements. And top of it all, it should never take the user experience for granted, and keep in mind the developer experience as well.

Play framework is an emerging technology. It is a web server that can be created in Java or Scala. ( Scala is not as popular as Java, but it was created to address Java shortcomings ) It is foreseen to replace the J2EE web server technologies. It is comparable to MongoDB ( or any NoSQL ) , which has very high potential of replacing the SQL.

To code using Play framework, the concept is in MVC but without servlets or any web server, since Play is already the web server. Other MVC frameworks will not be used also ( ex. Spring ). Front end code is still needed such as Javascript ( or CoffeScript, JQuery, AngularJS ) and CSS. Server side logic can be coded using Java or Scala.

Comparison with J2EE: J2EE web technologies have been the standard and reliable web server on most enterprise applications, with Java as the top programming language of choice. J2EE technology is built on top or constructed with other modules to make it functional. A full stack J2EE web application should have a J2EE container / web server, the J2EE application package itself, which is integrated with a MVC framework such as Spring and a Database access component such as Hibernate. Currenty J2EE application have become bloated with layers of modules and log files have too much hierarchy. It is because J2EE has become an increasing version of add-ons and enhancements.

Play framework eliminates all of those J2EE modules. It is not a Servlet technology. Play framework is a Non-Blocking I/O. Non-Blocking I/O means that HTTP request and processing in CPU side of the server is asynchronous, Yet Servlet 3.1 already supports Non-Blocking I/O, Play framework has Websocket support, which is not in Servlet 3.1. And best part of Play framework is the simplicity of the debug logs and application modules, where J2EE has its drawbacks.

I’m really impressed with this new Web Server advancements in Play framework. It is really comparable to the shift from SQL to NoSQL. SQL and NoSQL databases have the same purpose, a Database, yet its design and architecture is completely different. For simplicity, yet have served its function as a Database, NoSQL ( ex. MongoDB ) does it. It is much easier to setup ( ex. in Java, we just need the libraries and codes for transaction ), compared to SQL ( ex. Hiberante ) , which needs code, models, configuration files, and even integration with Spring to make its code less. So in this case, Play framework is like the NoSQL solution to an already legacy code such as J2EE.

Some Cons: Yes Play is better, but it is still new. So there may be some uncertainties hiding in the code. Another drawback of Play is the Scala and its build code ( called SBT , which is similar to Ant / Maven ). Play is built in combination with Java and Scala, So for non-Scala developers, it’s a steep learning curve.

Production components: For production and deployment, Play is integrated with Netty ( HTTP server ) and Akka ( Background Process ). No need of Webservers ( Tomcat, JBoss, IBM Websphere and etc.. ) . Other sub components are Templates, SBT and Websockets ( Websockets and be used as an option only ). Just include front end JS and CSS to be added in Play. Other third party libraries in Java ( if using Play as Java based, not Scala based ) can be added.

Bonus Factors: This technology is really new, with only a few enterprise websites using it, and as of this writing, they only have 5 on their list. See the list here in their home page. LinkedIn is one popular site using Play, so there is no question of its performance. I also checked zaptravel.com , and it loads pretty fast too. Compared to MongoDB which already has numerous users, across all industries, so similarly, in a matter of years, Play framework will get more attention.

Highlights:

– Lightweight
– Has authentication and security
– Can easily be switched from development mode to production mode via a single configuration.
– Has support for Design Patterns ( ex. Singleton and etc .. )
– Not a Servlet
– Not tied up to SQL . Can handle other Database types also
– No need of Web Server ( Or a servlet container ). The Play framework is the server itself.
– Can be scaled for production
– pretty darn straight forward, not so layered.
– Supports Unit test
– Better error detection / Direct to the point compile errors, does not display a full stack trace
– built as non blocking I/O. Adapts to multi core CPU.
– Much better compared to node.js and ruby on rails. Which I still have to find out the reason…

Here’s the explanation why Play framework is really fast.
https://playingscala.wordpress.com/2015/05/01/why-play-framework-is-fast/

Some important links:

1.) routing of http requests:

http://stackoverflow.com/questions/15907996/how-to-get-query-string-parameters-in-java-play-framework?rq=1

2.) basics

https://www.playframework.com/documentation/1.2.x/faq

3. ) philosophy

https://www.playframework.com/documentation/2.3.x/Philosophy

4.) One user even got embarrassed.. or how it is unbelievalbe good.

https://dzone.com/articles/play-framework-now-officially

About the Japanese working culture

As part of the “Nearsource” countries I have discussed on a previous post, We now take on Japan, Its working culture and its IT relations with the Philippines.

History and Name
Japan is an East Asian country located just north of the Philippines and east of its larger neighbor, China. Known as the “Land of the Rising Sun”, it has its naming origin as the farthest land where the sun rises, in the east, when looking at the perspective from China. During the ancient times, China has made huge impact culturally on its neighboring countries, since it was a powerful empire during the past. Hence, the name Japanese name of Japan is “Nihon” meaning “Sun’s origin”.

Geography
Japan is an island nation, but it consists of 1 main island where all major cities are located ( Tokyo, Osaka, Kyoto, Yokohama ) and several other islands. Japan is comparable to England and New Zealand in terms of its size. Philippines also has a similar land area with Japan, although the Philippines does not have a main island, but consists with several small islands, with Luzon and Mindanao as the larger ones.

Culture
In today’s Japan, the country is described as “Ancient meets Modern”. Age old traditions are seen merging with new age youth culture. Known for its high technology, Japan is very famous for its “Shinkansen” or also known as Bullet Train. The county is also notorious for its complex railway system, which rivals other progressive countries such as France and Germany. Tokyo, Japan is considered as a World Mega City, where its infrastructure and cultural influence is considered at the highest level worldwide.

Japan generates its economy from its world famous products. Cars, Computers, Gadgets, and Animation are its top exports. The economy is driven by consumer spending ( like shopping, food, clothing, and entertainment ), exports and tourism ( Aside from a modern architecture and city life, Japan has some excellent nature parks and world heritage sites ). Everything in Japan is made to be convenient and automated, from transport, to food and other necessities. Japan is not famous for an abundance land, natural resource, or wartime machinery ( They gave up all military capacity after World War 2, but retained and army for medical and humanitarian efforts )

Given these economic factors, Japan’s economy is highly dependent on the skilled workers of the land. Japan is considered as a mono-race country, where almost 90% of the population are Japanese. This may be an effect of the past where Japan has closed its shipping ports to foreign trade, a long time ago during the era when the Samurai warriors ruled Japan. The country also was not colonized by foreign invaders. There were stories in ancient Japan that foreign ships could not invade its land, as they were protected by a Typhoon.

One important Japanese culture you should know is the Japanese Language. The term is “Nihongo”. “Nihon” means Japan and “Go” language. The Japanese Language is used all over Japan, and English is … well not used. Although they understand English, but the comprehension level is sometimes low, and depends on each person. The younger generation seem to fare better compared to the old ones. So in Japan, It is very important to learn their Language. People that are Japanese looking with good “Nihongo” skills can adapt very well, but if you are very foreign looking, you need a lot of convincing to do.

Work Culture
After the World War 2, Japan was heavily damaged. It was after this time that the Japanese people worked very hard to rebuild its country. Known as the Japanese post-war economic miracle in the 1980’s , Japan has created a lot of export products such as Cars, Machinery, Television, Watches and other range of Electronic Products. “Made in Japan” products are known worldwide to have high quality. The Japanese way of manufacturing involves a rigid process and keen attention to details. A lot of global companies have adopted the Japanese manufacturing processes, such as “5S”, “Kanban” and “Suiheitenkai”.


Working in the Japanese IT

Until this time, Most Japanese multinational companies use “time-tested” technologies and processes. Although some modern start-ups adapt to experimental technologies, Japanese multinationals and its clients want a “safe, stable and catch-all” solution. They prefer to cater to all types of systems ( old and new ), rather than upgrading only to the latest versions, than can only be used on a few upgraded systems. There is a fear of back job in case the new and upgraded systems or process has failed.

To adapt to the Japanese way of working, here are the most important factors to adhere.

1.) Learn the Japanese Language – The Japanese Language is known to be one of the hardest to learn, so better study and prepare early to have an advantage. Yet, Japanese can easily be learned by actual use and constant exposure.

2.) Process oriented and Attention to detail – Persist and work hard is the motto of the Japanese worker. As they say in Japan “Ganbare” which literally translates to “Persist”, although the context of “Good Luck” has a more positive translation.

Overall and its relation to the Philippines
Japan is considered as one of the best “Nearsouce” partner for the Philippines. It is known that Japan has a better infrastructure and a more advanced economy compared to the Philippines. Culturally, Japan and the Philippines is also different. The Philippines is an English speaking country, and with a culture almost similar to the United States or Europe. With economic collaboration and the advantage of geographical location, both countries can benefit from each other.

Below are some interesting articles about Japan and its working culture.

http://www.tofugu.com/2014/03/04/why-japanese-education-succeeds-amae-stress-and-perseverance/
http://www.tofugu.com/2014/11/17/japanese-must-wear-black-suit-job-hunting/
http://www.tofugu.com/2015/03/06/japanese-countryside-emptying/
http://www.tofugu.com/2015/03/25/japan-really-hardworking/

http://www.theguardian.com/money/2007/jan/13/careers.work

Cebu – The Next IT and BPO destination. Focusing on its nearsource partners

Cebu City, Philippines – Cebu is being considered as the Next IT outsourcing destination. Cebu should be considered as an alternative to Metro Manila since this area has become saturated. And from my own personal experience, Cebu City is much more livable compared to Metro Manila, and even people from Manila agree themselves.

kmcmaggroup.com ( Philippine Real Estate Company ) has these articles to back it up. Please see some of its pages below about Cebu.

– Why Cebu is the New BPO Frontier
http://kmcmaggroup.com/blog/2015/1/23/why-cebu-is-the-new-bpo-frontier/

– Investment Destinations, Cebu City
http://kmcmaggroup.com/blog/2014/2/10/investment-destinations-series-cebu-part-1-of-3/

– TOP 3 Office space options ( and there’s even more under construction )
http://kmcmaggroup.com/blog/2014/2/14/top-3-office-space-options-to-consider-in-cebu/

To summarize, here is why Cebu is considered.
1.) Abundance of local talent from universities
2.) Excellent English skills
3.) Cheaper labor costs
4.) Cheaper office rentals
5.) Cheaper and better place to live
6.) IT industry here is expanding
7.) Multinational Companies IT companies are already considering Cebu

As for salary comparisons, I made some research and gathered the average salary per month in Peso. I only selected from countries that have relevant impact in IT and the Philippines. ( take note it is on the average, so usually the range may sometimes be lower, and some higher ). But still a lot of factors are to be considered, such as costs of living and talent pool.

*( All rates are in PHP and Per Month, so we can easily compare to Philippine Salaries. Rates are applicable for Software Engineers. Data is gathered from payscale.com and personal knowledge)

OUTSOURCE COUNTRIES

Philippines – 28,928.83 – engineer / 46,453.16 – sr. engineer
India – 38,825.41 – sr. engineer
Malaysia – 48,027.91
Vietnam – 55,760
Poland – 67,934.25
China – 74,774.91

————————————

TOP TIER COUNTRIES

Singapore – 120,715
Japan – 130,787.75
England – 164,372.5
New Zealand – 179,023.66
Germany – 178,692.0833
Finland – 189,045.5
Ireland – 220,294.666
Australia – 242,0509
USA – 282,796.0833

———————————–

It is quite clear that the Philippines still maintains the cost advantage. The next target would be the “Nearsource” Advantage. USA may be an exception since it maintains a strong cultural and government affiliation. Therefore, USA is already counted as one, even if it is geographically not considered as “Nearsource”. Then which countries are the potentials? These would be Japan, Australia, New Zealand, Taiwan and Singapore. Europe is also considered, but competition is tough as we have India and other European nations.

We will then analyze the IT economy of Japan, Australia, and New Zealand on the next posts.

Philippine Startups and high value outsourcing

I reblogged this post from The Cebu Strides. The article is about Cebu Outsourcing but there is topics here that relate to Software and IT Start-ups.

THE CEBU STRIDES

Here’s some news and links on the Cebu Outsource Industry. As the summary of the news, more companies are doing high value IT services, such as
Business process outsourcing, Software development, Medical Process and other high value services, aside from the voice process outsourcing, which Cebu and
the Philippines is know for.

New players in the Cebu IT industry are as mentioned: United Health Group, ExlService, Cognizant, QBE Insurance, and Manulife and Daimler Group.
Also mentioned also is the 2014 Cebu ICT-BPM Conference where speakers and experts from the Philippines, Singapore and Malaysia are gathered.

See the full report here:

http://www.sunstar.com.ph/cebu/business/2014/05/22/cebu-s-ict-bpm-industry-new-wave-outsourcing-344189

There are also organizations that enhance and promote IT start-ups. One is the hack2hatch which offers start-up contests that give out seeding money to the winning teams.

See their website, some news and their Facebook page below:

http://www.techinasia.com/8-startups-at-hack2hatch-in-philippines-to-receive-php100000-each-in-seed-money/

hack2hatch.com

https://www.facebook.com/Hack2HATCH

In my own opinion, I think we should more…

View original post 50 more words