Posts Tagged ‘Google’
There is no doubt that mobile industry is one of the most intensely growing nowadays. Any product that earlier used to be desktop or web is moving towards going mobile. Everyone is taking designing experiences for smaller screens seriously. As for the web, we’re seeing swarms of recently updated sites that are employing responsive design or more mobile-friendly layouts. This is quite critical, especially when you consider that accessing the web from mobile devices is on track to surpass desktop usage in a just a year or two.
With so many mobile apps/sites out there you have to do all it takes to deliver a good mobile product that will be competitive on the market. The key input for success here often is conditioned by the convenience of mobile services. You have to start predicting what the customer wants to see when they try a mobile application or website. The use of mobile context in delivering mobile experience is just one of the big challenges that application developers face. Here’s a number of the most important challenges we see.
1. Mobile Context
There has always been emphasis on context – the idea of being sensitive to where users might be and what they might be doing at the same time that they’re using your app/site. Is a user in line at the grocery store or on the living-room couch? Is a user connected to the Internet via Wi-Fi access, with fast page loads, or an infuriatingly weak Internet connection? Are both of the user’s hands holding the device in landscape orientation, or is the user using only the right thumb to navigate the interface in portrait mode? We have to think about all of this. Basically the customer’s mobile context consists of:
Preferences: the history and personal decisions the customer has shared with you or with social networks.
Situation: the current location, of course, but other relevant factors could include the altitude, environmental conditions and even speed the customer is experiencing.
Attitude: the feelings or emotions implied by the customer’s actions and logistics.
Getting a good contextual awareness will require collecting information from many sources. For instance it could be mobile device itself, the local context of devices and sensors around them an extended network of things they care about and the historical context of their preferences. Gathering this data is a major challenge because it will be stored on multiple systems of record to which your app will need to connect.
2. Device Proliferation
Another challenge facing mobile developers is device proliferation. It looked like mobile app development process was pretty well defined: build your app, make sure it looks pretty on a 4-inch smartphone and a 10-inch tablet, then submit it to an app store. Most app developers prioritized a few popular devices, such as the iPhone, the Samsung Galaxy S III and the iPad.
It’s not quite that easy now, and it’ll be much tougher in the near future. Picking the most popular devices will become more of a challenge as device types and platforms proliferate. Google and Apple already support tablets of different sizes and, with Windows 8 now shipping, developers can expect to find a whole range of larger touch-sensitive devices, such as Hewlett-Packard’s Envy series.
3. Voice rather than Touch
There are a lot of situations where you would want to build voice input into your app today. For a running or fitness app, a phone is likely to be strapped to a person’s sweaty arm. The same is true while driving. Modern applications are to let people use their devices while keeping their eyes and hands off it.
4. Hybrid Applications
With each release, popular mobile operating systems get better at supporting HTML5 and its attendant APIs. That capability will let companies reuse more code across multiple devices, which will be important in keeping app development costs down taking into account the proliferation of connected devices and form factors.
5. Cloud Powered Mobile Applications
With the power of the cloud, the mobile application market is about to change radically. Several industry analysts predict that mobile applications will gradually move to the cloud and move away from being installed and run directly from the handsets themselves. Instead, cloud powered mobile applications are accessed and executed directly from the cloud through a mobile web browser interface and several technologies facilitating this change are already available. HTML5, for example, is necessary for enabling caching on the handset, so that users will experience uninterrupted service levels despite fluctuations in network service delivery.
Cloud powered mobile applications are not limiting their choice to one platform. Application developers also have real advantages from mobile cloud computing. The largest benefit is that it allows them to have access to a larger market. This means developers will have a much wider market which means they can bypass the restrictions created by mobile operating systems. But with greater developers’ power comes greater responsibility for security and performance. Expect more developers to be on call for application support in the new model, using triage to handle defects and investigate degradation to production services. Those tasks have traditional been the domain of systems administrators. Expect IT operations personnel to become integrated into development teams and to start their work at the inception of an idea.
I think the challenges mentioned are some of the most important ones. What are the challenges you have already faced in the mobile development? Even more interesting to hear about the challenges you are envisaging for the near future! As usual many thanks for sharing your thoughts!
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 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.
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.
- jQuery has vibrant and helpful community and it is easy to learn. jQuery has very good documentation, in addition there is a great number of tutorials on the web demonstrating jQuery usage. If you encounter a problem, you can ask a question on any web development forum and there will be a large development community waiting to help you :). Lots of people not only use it but also write tutorials, share their code, make plugins. Also jQuery has a very low learning curve.
- Widespread adoption. Countless big players on the Web are using jQuery: IBM, Netflix, Google (which both uses and hosts the jQuery library), and Microsoft, which now includes jQuery with its MVC framework and works with the open-source jQuery project to contribute new features to the jQuery library. Also there are thousands of big sites that use jQuery: among them are WordPress.com, Pinterest, Reddit, MSN.com, Amazon, Yandex, Microsoft.com, Instagram, Slideshare, the list can go further and further
- JQuery is simple. jQuery objects are chainable. JQuery objects return other jQuery objects and it is possible to perform additional operations in a chain. There is no need to iterate every object one by one.
- Small and clever core library. The jQuery core library is only about 24KB in size (Minified and Gzipped) so it can be easily included into your application and it`s very fast as well. That is due to the fact that a lot of fairly common functionality has been omitted from the jQuery core library, and relegated to the realm of the plugin. Also developers have even a smaller alternative: Sizzle. Sizzle library is 4 KB and it’s simplified just to be used for css selection.
- Great number of plug-ins. The reason of why there are so much jQuery plugins is that jQuery is designed to be pluggable. By including only a core set of features while providing a framework for extending the library, jQuery team made it easy to create plugins that can be reused in all jQuery projects as well as can be shared with other developers.
- CSS3 Selectors Compliant: jQuery fully supports the CSS3 selector specification.
- jQuery UI. jQuery User Interface separates out higher-level constructs and is packaged into a neat library that sits on top of jQuery. UI capabilities might not be stronger than some other libraries such as ExtJs but it’s getting better.
Hope these facts will be of use to you. Of course, the things I listed here might not include all the good points about jQuery and you may add your own points to the list
Thanks in advance!
The Android ecosystem has become a dominant force in 2012. Here’s how I see it growing in the coming year.
Brace yourselves: 2013 is upon us, and that means a whole new generation of Android devices, rumors, and expectations.
Android will have a strong showing at CES (Consumer Electronics Show), and the next few months will be littered with new smartphones and tablets. Let’s take a look at some of the trends we can expect in the Android space over the coming year.
This article will touch on many trends in the Android ecosystem, including hardware advancements, vendor decisions, and key events of the year. Given the sheer number of players in the space, there will be much to look forward to in the ever-evolving Android landscape. Indeed, much could be said about any one of these aspects of Android, but we will address them here in broader terms.
Screen size will sharpen and grow
Not long ago, most smartphone screens didn’t exceed 4 inches. Up until the HTC Evo 4G, most Android phones were had 3.2-inch and 3.5-inch displays. Now, thanks to popular handsets such as the Galaxy S3 (4.8 inches) and Galaxy Note 2 (5.5 inches), consumers are becoming used to much larger screens. We’ll continue to see all sorts of screen sizes in 2013, but the standard high-end experience will fall in the vicinity of 4.5 inches. Those of us who are moving into our second and third Android device will expect something at least as big as our current model.
Beyond size, resolution will sharpen. HTC had a leg up with the Droid DNA with a 1080p (versus 720p) resolution, but now nearly every handset maker you can think of is reportedly working on their own 5-inch 1080p HD display for their premium products. Whether you place a lot of importance on pixel density or not, expect screen resolution to be a big buzzword in 2013.
Quad-core will multiply
If you listen to companies such as Qualcomm and Nvidia, then you’re well aware of the fact that quad-core is the new spec hotness, and Android is the vanguard of competition among handset makers all vying for your little green Android dollars.
Gone are the days of big dual-core announcements. If you don’t come to the table with at least four cores of mobile prowess, then you’re not really expecting to compete on the high-end. We should anticipate that the big devices of the coming year will have quad-core 1.5GHz processors or higher, with some even hitting 2.0GHz by the year’s end. Of course, the fight for faster processors might only be relevant on paper; real world practicality is a different animal. It’s one thing to tout the impressive clock speeds or point to a benchmark, but showing the benefits to end users is the most important win.
Play a lot of 3D games? You definitely care about who makes your phone’s CPU. Just want to see what this whole Android thing is all about? Jump in wherever you want, you’ll be just fine.
One area where we may see more improvements is in the phone’s memory and storage. If the previous year saw 2GB RAM emerge for the top-of-the-line memory experience, next year may see us inching toward 3GB RAM. Storage capacities for Android phones (and all phones) will creep up in 2013 as well, yielding 32GB as the standard for mid-range and 64GB becoming common among high-end devices. This will be especially true for those manufacturers opting for internal batteries and removal of external storage, and I expect to see the first handset with 128GB internal storage appear before 2013 is out.
Entry-level phones will benefit
You have to appreciate the trickle-down effect of technology as today’s top devices quickly become tomorrow’s mid-range experience. With that in mind, the $50-$100 Android smartphone of 2013 will be quite an impressive piece of hardware.
Dual-core processors should become the norm for your “basic” Android phone as single-core stuff gets pushed aside. The same may be said of the no-contract handsets, as we’ll continually get more for our money.
As every carrier scrambles to build out its next-gen data network, 4G LTE will be commonplace in Android smartphones. Sure, we’ll get the occasional 3G product every once in a while, but that will diminish with time. This is not to say that 2013 will be the end of 3G Android, but the days of touting 4G LTE as a special feature will pass.
There is always a chance that we’ll see a 3D experience in an Android phone or two, but I have the feeling this is one technology that won’t take off. I’ve yet to run into someone who wants or needs 3D graphics in their mobile device. Sure, it’s a cool feature to show off once in a while, but we’re just not ready to adopt this baby. I get the feeling that we’ll see a new surge in NFC-enabled accessories and technologies in the coming wave of tech conferences. The idea of tap-to-play speakers or media players doesn’t seem like much of a stretch for this year’s biggest mobile conferences, CES in January and Mobile World Congress in late February.
Perhaps the biggest issue facing smartphones with large displays and super-fast processors is battery life. Nobody wants to put their phone away to preserve juice; we bought that big screen for a reason.
Looking ahead to the New Year, we expect to see more handsets come with internal and/or higher capacity batteries. The Droid Razr Maxx HD is still the benchmark for long-lasting batteries, but we should see the gap narrow. To that end, we may see less emphasis on “world’s thinnest” or “lightest” claims.
One device around the world
I cannot tell you how pleased I was when I learned that Samsung was going to adopt one singular form factor for the Galaxy S3 and Galaxy Note 2 across countries and carriers. I’m sure that a number of accessory makers were quite happy with the decision as well. Samsung will employ the same strategy for the Galaxy S4 and will likely have records sales again in the New Year.
As far as other companies going this route, HTC today seems to be the closest. I wouldn’t be surprised if its next flagship model were to hit multiple carriers with a single design. As nice as it was to have fewer models to choose from in the One series, it was still confusing to keep up with the various suffixes — One X, One X+, Evo 4G LTE. “Does my carrier offer that one? What’s the difference between this and that?” Along those lines, LG also seems to be slowly headed in this direction with the Optimus line.
Android comes to new territories
The Samsung Galaxy Camera wasn’t the first digital camera to utilize Android, but the first to tie into carriers.
Nikon, Polaroid, and other camera-makers will dabble a bit with Android backbones and we’ll see smarter shooters in 2013. Pricing will need to come down for mass adoption; however, we will see carriers selling connected cameras in retail stores and online.
We will also see more kid-centric tablets and devices with Android under the hood in the next year. We might as well get used to the fact that Toys R Us and Walmart are going to offer $99 Android tablets.
Once the price point of a generic, knock-off tablet, the $100-$200 price range now offers a decent experience for most. Come this time next year, it will not be strange to see a house with even more Android tablets for a range of age groups.
Shortly after Android became a recognized term in the mobile space; we saw the platform arriving in various electronic devices including microwaves and washing machines.
I don’t think we’ll find too much of that in 2013, but it would not surprise me to see a refrigerator or appliance with a custom touch interface that runs Android. Not a full-blown experience, mind you, but something that gives hardware-makers more flexibility.
There is a chance that we’ll see more Android in the automobile in 2013, but it’ll have competition from RIM’s QNX OS. This won’t be a replicated tablet-like experience with full-on Google Play support but something a little smarter than what we have today. It is easy to picture a 7-inch display that lets users hop from stereo to diagnostics to Google Maps.
Another area that would work well is embedding a tablet in the back of the driver and passenger seat. With more cars offering Wi-Fi connectivity over time, a connected device just makes sense. Don’t be surprised if someone introduces a backseat experience that includes access to social networks as well as casual games such as checkers for road trips. For added fun, pair your Bluetooth game controller and dive into a 3D shooter.
Google I/O and major releases
If the last few years are any indicator, there will be at least five key moments for Android in 2013, starting with trade shows: CES in early January, the international Mobile World Congress in late February, and CTIA in late May. Samsung is also expected to launch its Galaxy S4 flagship phone at a standalone press event, if we follow 2012′s model.
Android’s background OS will continue to gain speed, and the company will introduce new features that again pull away from iOS to set the industry pace. We don’t know much about Android 5.0 quite yet, but we’ll assuredly discover bits and pieces of upcoming features in the months just before Google I/O — especially if Google releases a new Nexus device or two to go along with the latest software build.
2013 will certainly be an exciting year for Android, with the mobile OS surely maintaining its mobile lead.