Altabel Group's Blog

Posts Tagged ‘Amazon

What is the hottest trend in artificial intelligence right now? Machine Learning is the right answer! Thanks to technological advances and emerging frameworks, Machine Learning may soon hit the mainstream. Because of new computing technologies, Machine Learning today is not like Machine Learning of the past. While many Machine Learning algorithms have been around for a long time, the ability to automatically apply complex mathematical calculations to big data – over and over, faster and faster – is a recent development. Every single day it’s become clear that Machine Learning is already forcing massive changes in the way companies operate. Every Fortune 500 company is already running more efficiently — and making more money — because of Machine Learning. But how this “phenomenon” helps business bring money and attract new and new customers?

Problems that can be easily solved using ML

Every single business some time or other can face with definite problems. But there are some kinds of business problems Machine Learning can prevent if not handle at all:

Email spam filters
Some spam filtering can be done by rules (IE: by overtly blocking IP addresses known explicitly for spam), but much of the filtering is contextual based on the inbox content relevant for each specific user. Lots of email volume and lots of user’s marking “spam” (labeling the data) makes for a good supervised learning problem.

Speech recognition
There is no single combination of sounds to specifically signal human speech, and individual pronunciations differ widely – Machine Learning can identify patterns of speech and help to convert speech to text. Nuance Communications (maker of Dragon Dictation) is among the better known speech recognition companies today.

Face detection
It’s incredibly difficult to write a set of “rules” to allow machines to detect faces (consider all the different skin colors, angles of view, hair / facial hair, etc), but an algorithm can be trained to detect faces, like those used at Facebook. Many tools for facial detection and recognition are open source.

Credit card purchase fraud detection
Like email spam filters, only a small portion of fraud detection can be done using concrete rules. New fraud methods are constantly being used, and systems must adapt to detect these patterns in real time, coaxing out the common signals associated with fraud.

Product / music / movie recommendation
Each person’s preferences are different, and preferences change over time. Companies like Amazon, Netflix and Spotify use ratings and engagement from a huge volume of items (products, songs, etc) to predict what any given user might want to buy, watch, or listen to next.

Here is enumerated not all but just a few problems that can be solved. And with the course of time this list will only expand.

Industries that already use ML in action

Most industries working with large amounts of data have recognized the value of Machine Learning technology. The adoption of Machine Learning is likely to be diverse and across a range of industries, including retail, automotive, financial services, health care, and etc. By gleaning insights from this data – often in real time – organizations are able to work more efficiently or gain an advantage over competitors. In some cases, it will help transform the way companies interact with customers.

Retail industry
Machine Learning could completely reshape the retail customer experience. The improved ability to use facial recognition as a customer identification tool is being applied in new ways by companies such as Amazon at its Amazon Go stores or through its Alexa platform. Amazon Go removes the need for checkouts through the use of computer vision, sensor fusion, and deep or Machine Learning, and it’s expected that many shopping centers and retailers will start to explore similar options this year.

Financial services
Banks and other businesses in the financial industry use Machine Learning technology for two key purposes: to identify important insights in data, and prevent fraud. The insights can identify investment opportunities, or help investors know when to trade. Data mining can also identify clients with high-risk profiles, or use cyber surveillance to pinpoint warning signs of fraud.

Health care
Machine Learning is a fast-growing trend in the health care industry, thanks to the advent of wearable devices and sensors that can use data to assess a patient’s health in real time. The technology can also help medical experts analyze data to identify trends or red flags that may lead to improved diagnoses and treatment. Machine Learning can be used to understand risk factors for disease in large populations. For instance, Medecision company developed an algorithm that is able to identify eight variables to predict avoidable hospitalizations in diabetes patients.

Oil and gas
Finding new energy sources. Analyzing minerals in the ground. Predicting refinery sensor failure. Streamlining oil distribution to make it more efficient and cost-effective, and many others thing that you can do using ML. For example ExxonMobil, the largest publicly traded international oil and gas company, uses technology and innovation to help meet the world’s growing energy needs. Exxon Mobil’s Corporate Strategic Research (CSR) laboratory is a powerhouse in energy research focusing on fundamental science that can lead to technologies having a direct impact on solving our biggest energy challenges.

Government
Government agencies such as public safety and utilities have a particular need for Machine Learning since they have multiple sources of data that can be mined for insights. Analyzing sensor data, for example, identifies ways to increase efficiency and save money. Machine Learning can also help detect fraud and minimize identity theft. Chicago’s Department of Public Health is early adopter. It used to identify children with dangerous levels of lead in their bodies through blood tests and then cleanse their homes of lead paint. Now it tries to spot vulnerable youngsters before they are poisoned.

Marketing and sales
Websites recommending items you might like based on previous purchases are using Machine Learning to analyze your buying history – and promote other items you’d be interested in. This ability to capture data, analyze it and use it to personalize a shopping experience (or implement a marketing campaign) is the future of retail. PayPal, for example, is using Machine Learning to fight money laundering. The company has tools that compare millions of transactions and can precisely distinguish between legitimate and fraudulent transactions between buyers and sellers.

Transportation
Analyzing data to identify patterns and trends is key to the transportation industry, which relies on making routes more efficient and predicting potential problems to increase profitability. The data analysis and modeling aspects of Machine Learning are important tools to delivery companies, public transportation and other transportation organizations. In some cases, mathematical models are used to optimize shipping routes. By honing in on excessive driving routes, drivers can see a reduction of nearly one mile of driving every day. For a company like UPS, a reduction of one mile per day per driver would equal a savings of as much as $50 million a year in fuel.

Have you ever worked with ML? Was it useful for your business? Or maybe you are still thinking about whether it costs to implement Machine Learning in your business? Will it be relevant and defensibly? If you have an answer on at least one question – share with me your experience. We will be happy to discuss it in comments. But if you don’t have an answer, always remember – Big companies are investing in Machine Learning not because it’s a fad or because it makes them seem cutting edge. They invest because they’ve seen positive ROI. And that’s why innovation will continue.

 

Yuliya Poshva

Business Development Manager

E-mail: yuliya.poshva@altabel.com
Skype: juliaposhva
LI Profile: Yuliya Poshva

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

Artificial Intelligence, Machine Learning are new buzzwords that are actively discussed in the tech world. Do you remember how our future was described in the movies some time ago: Terminator, Skynet, AI rules the world? General AI machines have remained in the movies and science fiction novels however narrow AI technologies are gradually evolving from the science fiction era to the reality and are already around us. Google uses Machine Learning to filter out spam messages from Gmail. Facebook trained computers to identify specific human faces nearly as accurately as humans do. Deep Learning is used by Netflix and Amazon to decide what you want to watch or buy next.

AI, machine learning, and deep learning are not quite the same thing but these terms are often used haphazardly and interchangeably, and that sometimes leads to some confusion. So let`s see what is the difference between each type of technology.
 
Artificial Intelligence (AI)

Artificial intelligence, which has been around since the 1950s, has seen ebbs and flows in popularity over the last 60+ years. But today, with the recent explosion of big data, high-powered parallel processing, and advanced neural algorithms, we are seeing a renaissance in AI—and companies from Amazon to Facebook to Google are scrambling to take the lead.

AI is the broadest way to think about advanced, computer intelligence. It can refer to anything from a computer program playing a game of chess, to a voice-recognition system like Amazon’s Alexa interpreting and responding to speech. The technology can broadly be categorized into three groups: Narrow AI (that is focused on one narrow task), artificial general intelligence or AGI (a machine with the ability to apply intelligence to any problem, rather than just one specific problem), and superintelligent AI (when its equal to humans or even surpasses them).

Pardoe believes that “we’ve just entered the “Fourth Industrial Revolution”, and while the adoption of AI has just started, the next few years will transform many sectors.
 
Machine learning

Machine learning is one subfield of AI. Or let`s say it`s the field of AI which today is showing the most promise at providing tools that industry and society can use to drive change. The core principle here is that machines take data and “learn” for themselves. Unlike hand-coding a software program with specific instructions to complete a task, ML allows a system to learn to recognize patterns on its own and make predictions.
 

 
Here are some of the popular machine learning methods:

-supervised learning: the “trainer” will present the computer with certain rules that connect an input (an object’s feature, like “smooth,” for example) with an output (the object itself, like a marble), and the algorithm learns by comparing its actual output with correct outputs to find errors. Supervised learning is commonly used in applications where historical data predicts likely future events. For example, it can anticipate when credit card transactions are likely to be fraudulent or which insurance customer is likely to file a claim.

-unsupervised learning: the computer is given inputs and is left alone to discover patterns. The goal is to explore the data and find some structure within. Unsupervised learning works well on transactional data. For example, it can identify segments of customers with similar attributes who can then be treated similarly in marketing campaigns.

-reinforcement learning: the algorithm discovers through trial and error which actions yield the greatest rewards. This type of learning has three primary components: the agent (the learner or decision maker, for instance, the driverless car), the environment (everything the agent interacts with, for instance the road) and actions (what the agent can do).
 
Deep Learning

Deep learning is a brunch of Machine Learning, let`s see it as the cutting-edge of the cutting-edge. It uses some ML techniques to solve real-world problems by tapping into neural networks that simulate human decision-making.

Deep Learning involves feeding a computer system with a lot of data, which it can use to make decisions about other data. This data is fed through neural networks. These networks are logical constructions which ask a series of binary true/false questions, or extract a numerical value, of every bit of data which pass through them, and classify it according to the answers received.

Text-based searches, fraud detection, spam detection, handwriting recognition, image search, speech recognition, Street View detection, and translation are all tasks that can be performed through deep learning. Deep Learning is used by Google in its voice and image recognition algorithms, by Netflix and Amazon to decide what you want to watch or buy next, and by researchers at MIT to predict the future.

The machine revolution has certainly started and the AI revolution is sure to pave the way for some significant changes in our lives. Machines will gradually improve, slowly replacing jobs that require repetitious behavior. But what happens when one day the machines become smarter than us?

 

Anna Kozik

Business Development Manager

E-mail: Anna.Kozik@altabel.com
Skype: kozik_anna
LI Profile: Anna Kozik

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

Artificial intelligence gives us more and more opportunities every day. Chatbots and their developing for client-communication are the hottest topics today. Many experts say that chatbots are the future. Let’s get a short review.
 
Who are they?

Chatbots are essentially programs pretending to be people that you can interact with through text or even voice. They are closely connected with a wide messenger’s distribution and I believe everyone has been already acquainted with them. It’s obvious that chat- bots’ popularity is starting to take off.
 
How can they enhance e-commerce?

1. First of all chat bot doesn’t get tired, being late or absent – it assists your clients 24/7 365 days per year and get significant workload on its shoulders. That is why they seem to be the best answer for e-commerce business owners to manage thousands of one-to-one conversations with customers.

2. The second point is that chat bots can understand natural language and communicate with people in the same manner making conversations realistic and trustworthy. So chat bots give online shop owners an opportunity to provide pleasant shopping experience for customers.

3. Chatbots are proactive. They can understand what the particular customer wants not only through a simple conversation, but also through analysis and collecting of personal and profile page data ( smartphone data, cookies and so on). All this information might help to improve the marketing strategy and provide customers with the best user experience.

4. Additionally, chatbots simply save customers’ time. You don’t need to waste time for searching the appropriate item, click on mass of characteristics, study a market and etc. You can simply say : Hey, I want to buy an efficient computer for my child. Bot does it for you with a great pleasure and at a quick pace.

5. Finally, all this points give more advantages for businesses: services become much more better and faster, the conversion becomes higher, sales increase, operational costs and salary charges reduce.

 

 
Fresh examples of using

The most outstanding example is already occurring in China, where consumers are using WeChat to fulfill their daily living and commerce needs. Soon, this system will gain prominence in the United States.

Further more brands like Walmart and Hyatt are testing customer service and shopping within apps on the new Facebook Messenger for Business App. A free messaging app, called Kik, has a bot shop for companies such as Sephora, Vine, and H&M. So it can be said that the part of the technology is already there.

Amazon’s voice bot messaging has brought the idea of personal assistant to the next level. Customers can talk to the bot and ask it to order items through Amazon Prime, get a pizza, purchase flowers and call for an Uber. Voice commands are making shopping easier than ever, but there are still many issues to work out.

 

 
What’s Coming in the Future?

Voice-based AI and mobile chatbots are the dominant trend right now, but it’s not crazy to think that this could evolve into something more personal and user-based. E-commerce data is there to help you segment and automate email messaging to certain customers, so it’s not silly to assume that this data will eventually merge with bots.

Imagine a personalized bot that talks to you, and only you, when you shop on the Target website. They’d know the last items you bought, deliver the most relevant products and even stock your shopping cart with suggestions. The days of taking hours to shop online will soon knock the pad. In the near future, all the work will be done for you.

Are you ready for this?
 

Kate Kviatkovskaya

Kate Kviatkovskaya

Business Development Manager

E-mail: Kate.Kviatkovskaya@altabel.com
Skype: kate.kviatkovskaya
LI Profile: Kate Kviatkovskaya

 
altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

 

“Computer programming is an art, because it applies accumulated knowledge to the world, because it requires skill and ingenuity, and especially because it produces objects of beauty.”
Donald Knuth, 1974

 

It’s better to start your journey into the career of programming by answering the question “Do you really need programming?” This question does not apply to those, who majored in computer programming or was close to it. If at school you were good at math, if you like to spend a lot of time sitting in front of the computer, if you want to learn something new, then programming is for you. What is more, this area is now in demand and highly paid in the world, job vacancies for the post of programmers are always open. Isn’t it the best time to be a programmer? 🙂

Everyone knows that the future programmer should be able to think broadly and to present the project from different perspectives before its implementation and realization. Unfortunately, the machine does not understand a human language. Of course, I’m not talking about Siri and other voice recognition — I’m talking about the creation of new software. To create the calculator, the computer needs to be given the task in the same way as the foreman explains to workers how to lay bricks. That’s why you can’t do anything without understanding the programming languages. Well, first you need to decide what kind of programming languages we should start with.

And here everyone chooses a language which will be useful for him. It depends on the kind of products you are going to develop. Most of us studied Turbo Pascal at school, and it’s no news that this language is practically not used anymore. So, if you want to join the team of programmers in the nearest future, the choice of language should be made sensibly.

Among the most popular programming languages in 2016 are Java, followed by C languages, then Python, JavaScript, PHP, Ruby, etc. It should come as no surprise that the more popular language is, the more chances you have to find work in the future. So, you’d better start with Java or C#, as these are the best paid and relatively simple learning languages of writing code. If you can’t cope with them, then you should try to learn Python. This language suits for quick and effective programming.

But if you have no programming experience at all you can start with something more simple for understanding. Good examples can be the basics of HTML and CSS.

Why? These two languages are essential for creating static web pages. HTML (Hypertext Markup Language) structures all the text, links, and other content you see on a website. CSS is the language that makes a web page look the way it does—color, layout, and other visuals we call style. Well, if you are interested in making websites, you should definitely start with HTML and CSS.

Let’s move to JavaScript. It is the first full programming language for many people. Why? It is the next logical step after learning HTML and CSS. JavaScript provides the behavior portion of a website. For example, when you see that a form field indicates an error, that’s probably JavaScript at work.

JavaScript has become increasingly popular, and it now lives outside web browsers as well. Learning JavaScript will put you in a good place as it becomes a more general-purpose language.

Some people also suggest choosing Python as the first programming language because Python’s program code is readable, first of all. You don’t even need to be a programmer to understand what is happening in the program. Due to the simple syntax of Python you will need less time for writing programs than in Java, for example. A huge base of libraries will save you a lot of strength, nerves and time. Large technology companies are working with Python: Yandex, Google, Facebook and YouTube. It is used for web applications, game development, software for servers.

Java can also be a good choice for a beginner. This language is more popular than Python, but a bit more complicated. At the same time, the development tools are much better designed. Java is one of the most popular languages for the backend development of modern enterprise web applications. It is used in Amazon, eBay, LinkedIn and Yahoo! With Java and the frameworks based on it, developers can create scaling web apps for a wide range of users. Java is also the primary language used for developing Android applications for smart phones and tablets. Moreover, after Java you will be able to work with low level programming languages.

PHP is one more popular language. The PHP language, along with databases (e.g. MySQL) is an important tool for creating modern web applications. Most of the sites developed on PHP are focused on a large amount of data. It is also a fundamental technology of powerful content management systems like WordPress. There are no normal imports in PHP, there are many solutions to one and the same problem. And it makes training more complicated.

 

 
The languages C and C# are a bit complicated for a beginner. But if you develop software for embedded systems, work with system kernels or just want to squeeze out every last drop from all available resources, C is what you need.

Ruby has begun to gain popularity since 2003, when the framework Rails appeared. Used widely among web startups and big companies alike, Ruby and Rails jobs are pretty easy to come by. Ruby and Rails make it easy to transform an idea into a working application, and they have been used to bring us Twitter, GitHub, and Treehouse.

Choosing a programming language may still seem challenging. It shouldn’t. You can’t go wrong. As long as you choose a language that is regularly used in technology today, you’re winning. When you are starting out, the goal is to become solid in the basics, and the basics are pretty similar across almost all modern programming languages.

Part of learning to code is learning a language’s syntax (its grammatical or structural rules). A much bigger part of learning to code, the part that takes longer and gives you more headaches, is learning to solve problems like a programmer. You can learn the grammatical structure of the English language pretty quickly; however, you won’t truly understand the language until you put that grammatical structure to use in a conversation. The same is true in programming. You want to learn the core concepts in order to solve problems. Doing this in one language is similar to doing it in another. Because the core concepts are similar from language to language, I recommend sticking with whichever language you choose until your understanding of the core concepts is solid. If you have a clear idea of your reasons for learning to program, and know exactly what you want to accomplish with your new coding skills, then you’ll be able to make the right choice.

How did you guys get into programming? What are the best programming languages for first-time learners?

Please, share with us your experience and opinion here below 🙂

 

Kate Kviatkovskaya

Kate Kviatkovskaya

Business Development Manager

E-mail: Kate.Kviatkovskaya@altabel.com
Skype: kate.kviatkovskaya
LI Profile: Kate Kviatkovskaya

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

The IT sector is flourishing. If you’ve used a computer for at least a couple of times in the last few years, you’ve probably noticed this. I’ve noticed it myself even more after a business trip to Stockholm where I was lucky to attend some conferences and learnt more about Swedish IT industry tendencies. These tendencies reflect our life in general. Life changes rapidly with new technologies bursting into it. And when it comes to programming languages, we get a chance to see very different trendy styles. Programming languages which were popular some years ago are not useful today. And no one can exactly predict which programming language will be popular in future. That’s why a programmer who wants to stay in developer fields has to adopt the right programming language from time to time.

As the Swedish software maker Erik Starck pointed out, “programming is about managing complexities”. And it’s really so. An understanding of at least one programming language makes an impressive addition to any CV nowadays.

It is also very difficult to get the exact number of users for any programming language. Many of us use multiple programming languages. The more experience you have, the more programming languages you use. The more programs you write or work with, the chances of using more languages rise. The larger the company, the more languages you’re likely to use.

There are a number of ways to measure the popularity of a programming language, for example, based on the number of: 1) new applications written in the language; 2) existing applications written in the language; 3) developers that use the language primarily; 4) developers that use the language ever; 5) web searches; 6) available jobs that require skills in the language; 7) developers’ favorites, etc.

My survey attempts to rank which programming languages are most popular in Sweden, each using a different measure. So, they are the following:

1) Python

Python is an object-oriented programming language which allows developers to work quickly while integrating their systems more efficiently and effectively. Designed by Guido van Rossum in 1991, Python is one of the most easy to use programming languages.

Python is characterized by its use of indentation for readability, and its encouragement for elegant code by making developers do similar things in similar ways.

Top Employers: Amazon, Dell, Google, eBay, Instagram, Yahoo

2) Java

Java is a class-based, object-oriented programming language founded by Sun Microsystems in 1995. Java is one of the most in-demand programming languages today for many reasons. First of all, it is a well-organized language with a strong library of reusable software components. Secondly, programs written in Java can run on many different computer architectures and operating systems because of the use of the JVM (Java virtual machine).

Top Employers: Amazon, Deloitte, Sun, eBay, Symantec Corporation, Cisco Systems, Samsung

3) C++

C++ is a compiled, multi-paradigm language written as an update to C in 1979 by Bjarne Stroustrup.

Due to its high-level compatibility and object-orientation, C++ is used for developing a wide-range of applications and games which makes it a popular and sought after programming language by the employers.

Top Employers: Intel, the Math Works, Microsoft, Qualcomm, Amazon, Mozilla, Adobe, Volvo

4) Ruby

Ruby is an open source, dynamic programming language designed by Yukihiro Matsumoto in 1995 with a key focus on productivity and simplicity .It is one of the most object-oriented languages in the world.

Ruby is a mix of elegant syntax which is easy to read and write and hence it has attracted many organizations and developers.

Top Employers: Spokes, VMware, Accenture, Cap Gemini, Siemens, BBC, NASA

5) JavaScript

JavaScript is an object-oriented scripting language founded in 1995 by Netscape.

Being a client-side language, it runs in the web browser on the client-side with a simplified set of commands, easier code and no need for compilation.  JavaScript is simple to learn and it is used in millions of web pages to authenticate forms, detect browsers and improve design.

Top Employers: Microsoft, Sales Force, IBM, Yahoo, Dell

6) C#

C# is a compiled, object-oriented language developed by Microsoft.

It is highly used on Windows platform and labelled as the premium language for Microsoft .NET framework. C# is known for strong typing, procedural and functional programming discipline which is the reason it has acquired so much popularity.

Top Employers: Microsoft, HP, Digi-Key Corporation, Allscripts, Intel

Those are the top 6 programming languages which are in great demand among Swedish developers.

And one more thing: remember that opinions are like noses, everyone has one and they all smell 😉 If you disagree, please feel free to email me or write your own opinions in the comments.

 

Kate Kviatkovskaya

Kate Kviatkovskaya

Business Development Manager

E-mail: Kate.Kviatkovskaya@altabel.com
Skype: kate.kviatkovskaya
LI Profile: Kate Kviatkovskaya

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

When planning the application you have to choose the right programming language to make your application work appropriate. The choice depends on many factors you need to consider. Such as but not limited: you need to think over on what platform the application will run, how easily new features would be added to the existing platform, the code size, performance, support and community etc.

There are various web programming languages and selecting the right one makes a website function properly. In my article I would like to focus on three of them, so called three “P”: PHP, Perl and Python to answer which of these languages is the best one.

Let’s have a look at them and try to make a comparison analysis

PHP – is free of charge open source scripting language and widely used in web environment. The best advantage of PHP is that it is easy to learn and easy to use. It is flexible and used for developing from small websites to giant business and organizational websites. Most common are informative forums, chatting platforms, CRM solutions, e-commerce shopping carts, community websites, e-business, shopping carts.

In terms of efficiency it is executed by the server and server parses the code at its source, executes and send properly formatted html to the client computer. Therefore it increases the speed of PHP applications.
What concerns the advantage of running, PHP is multiplatform language and compatible with all operating systems and platforms.

Being open source language, a large group of PHP developers help in creating a support community, so it’s maintained and when bugs are found, it can be quickly fixed.
A lot of websites including such giants as Wikipedia, Yahoo!, Facebiook, Digg, WordPress and Youtube are written in PHP. The popularity of PHP is based on its simplicity and coding style that is quiet easy to understand.

Nevertheless, the simplicity in developing, precisely principle so called «structure is not important» in PHP has its reverse side, precisely it’s hard to maintain for large applications since it is not very modular.

Also it’s weak in terms of security since its open source, all people can see the source code, and if there are any bugs it could be used to explore the weakness. About 30% of all vulnerabilities listed on the National Vulnerability Database are linked to PHP. The last summary on vulnerabilities you may find following the link: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-0427

Perl –refer to all purpose languages. Perl was developed as a text editor for converting or processing large amounts of data for tasks such as creating reports. Nowadays it intended improvements and suited for web development, game programming, GUI development, popular among system administrators etc.
The Perl reusable code structure provides flexibility in apps development and at the same time creates the problem of code reading after. As there are so many ways to do, there are a lot more ways to mess up in what you’ve done. If the code was written without proper care, the reading could even take 6 months.

So from one hand Perl is a good language for small programs because of its messy syntax structure it’s hard to write and maintain large programs. On the other hand if you’re planning to develop big web application you need to consider good coordination between developers work on discussing the code stile, mentoring and managing work in the team.

In terms of portability Perl code doesn’t use system specific features, so can be run on any platform.
Among popular websites created on Perl could be named bbc.co.uk, Amazon.com, LiveJournal.

In respect of vulnerability Perl takes the second place – 9.4%. I assume that it’s not bad taking into consideration its complexity and its long history.

It has fallen out of popularity lately a bit because of the slow development of Perl 6. Most people still use Perl 5.

Python – is considered to be very elegant programming language. It’s general purpose, high level programming language. On the one hand Python’s syntax and semantics are minimal; on the other it has complex standard libraries.

Python supports multiple paradigms: object-oriented, imperative and functional programming styles and has features including fully dynamic type system and automatic memory management.

In comparison with Perl Python is easy to read language. And its key idea is vice versa “there should be one—and preferably only one—obvious way to do it”. It means that the code written by one developer could be easily developed and supported by the others. Besides to delimit blocks Python uses whitespace indentation, rather than curly braces (C, C++, ….) or keywords (Delphi).

Python is often used as a scripting language, but is also used in 3D animation (Maya, Softimage XSI, Blender) and image editors (GIMP, Inkscape, Scribus, Paint Shop Pro). It was also used for writing several video games.

Python is actively used by Google, Yahoo!, CERN and NASA. But it has problems with popularity, precisely with spreading. The reason is that it’s less simple than PHP. Working with Python you need to learn numerical libraries. So that’s why some people prefer choosing PHP instead of Python. But only the betrayed ones could explain why they choose Python, the answer is easy the development on Python is faster on 30% and his vulnerability consists only 0.67% against 36% of PHP.

Conclusion

PHP at first sight seems to be a leader in this so called comparison race. It’s simple, easy to learn and efficient for building small and middle size websites. Going further with analysis in terms of scalable large system it turns out that here Python will perform better than PHP. The reason is in readability that makes Python easier to maintain and extend. Besides, Python is object-oriented. PHP is not. Moreover, Google supports Python with its Google App Engine where web sites can be hosted on Google’s server for free. What concerns Perl, analysis showed that it’s simple programming language with cross platform running and open source modular architecture that provides to develop interesting things. If the task is to perform administration scripts Perl is much better to use here than PHP.

After the analysis it follows that the choice any of three P is a good choice. Also it means that for a certain purpose there is a right tool to choose. Besides the analysis showed that all three “P” have in common the following:

• are cross platform;
• have open source code;
• have well written documentation;
• have large user communities;
• extend libraries and big amount of code written;
• have high-level frameworks (PHP – Symfony, php.MVC; Python-Django, CherryPy, Pylons; Perl -Catalyst, CGI::Application, Gantry);

So I hope that summary based on technical analysis we made could help to make a right decision in future web projects you might have.

Thank you for your attention and if you have anything to add, please feel free to leave a comment.

 

Katerina Bulavskaya

Business Development Manager

 

altabel

Altabel Group

Professional Software Development

E-mail: contact@altabel.com
www.altabel.com

The Web as we know it have been born and matured on computers, but as it turns out now, computers no longer have dominance in it. According to a recent report by analyst Mary Meeker, mobile devices running iOS and Android now account for 45 percent of browsing, compared to just 35 percent for Windows machines. Moreover, Android and iOS have essentially achieved their share in just five years and their share is getting tremendously larger.

According to some forecasts their worldwide number of mobile devices users should overtake the worldwide number of PC users next year. If forecasts come true, this shift will not only continue, but accelerate. Based on data from Morgan Stanley, Meeker estimates roughly 2.9 billion people around the world will be using smartphones and tablets by 2015.

What does it mean now that more people are accessing the Web through tablets and smartphones rather than laptops and desktops? And is it really a big deal? Anyway, Internet is intended to be accessed from anywhere and thus from any device. Well, it is quite a change at least in terms most people consider the Web and how it gradually adapts to be used on mobile devices.

Apps-like sites
As mobile devices take over, the use of today’s desktop browsers like Internet Explorer, Chrome, Firefox, and Safari will decline. Mobile browsers are already very capable and will increasingly adopt HTML5 and leading-edge Web technologies. As mobile devices naturally have less screen area, the sites need to function more like mobile apps and less like collections of links. So the sites are likely to look like apps.

Apps may rule
Native apps for smartphones and tablets almost always surpass websites designed for mobile devices because they can tap into devices’ native capabilities for a more responsive and seamless experience. This is most likely to change in the nearest future – most experts agree HTML5 is eventually the way of the future. This is already the status quo in social gaming: for example Angry Birds and Words with Friends. Some services won’t be available at all to traditional PCs — they won’t be worth developers’ time.

Less information at once
Web sites and publishers will no longer be able to display everything new for users and hoping something will catch the user’s eye. Smaller screens and lower information density means sites will need to adjust to user preferences and profiles to customize the information they present. Increasingly, the Internet will become unusable unless sites believe they know who you are. Some services will handle these tasks themselves, but the most likely contenders for supplying digital identity credentials are Facebook, Google, Amazon, Apple, Twitter, and mobile carriers.

Sharing by default
In a mobile-focused Internet, anonymity becomes rare. Virtually every mobile device can be definitively associated with a single person (or small group of people). Defaults to share information and experiences with social circles and followers will be increasingly common, along with increasing reliance on disclosure of personal information (like location, status, and activities, and social connections) to drive key functionality. As the Internet re-orients around mobile, opting out of sharing will increasingly mean opting out of the Internet.

Emphasis on destination
Internet-based sites and services will increasingly function as a combination of content and functionality reluctant to link out to other sites or drive traffic (and potential advertising revenue) elsewhere. These have long been factors in many sites’ designs but mobile devices amplify these considerations by making traditional Web navigation awkward and difficult. Still URLs are not going to die – people will still send links to their friends and Web search will remain most users primary means of finding information online.

Going light weight
As people rely on mobile, cloud, and broadband services, the necessity to do things like commute, store large volumes of records or media, or patronize physical businesses will decline. Businesses won’t need to save years of invoices, statements, and paperwork in file boxes and storage facilities – cloud storage comes as their rescue. Banks will become purely virtual institutions consumers deal with online via their phones. Distance learning and collaborative tools will let students take their coursework with them anywhere — and eliminate the need to worry about reselling enormous textbooks.

Going mobile is an obvious trend today. Experts envisage that nearly every service, business, and person who wants to use the Internet will be thinking mobile first and PC second, if they think about PCs at all. Do you agree? And what other related changes can you imagine?

Many thanks for sharing your thoughts 🙂

Aliona Kavalevich

Aliona Kavalevich
Aliona.Kavalevich@altabel.com
Skype ID: aliona_kavalevich
Business Development Manager (LI page)
Altabel Group – Professional Software Development


%d bloggers like this: