How to Be a Highly Competitive Mobile Developer

Android

The demand for mobile software developers is red hot, and the demand for Android developers is even hotter.

Since Americans are consumed by their smartphones alone for about an hour per day (a figure that doesn’t even account for tablet/other electronic media usage), most companies need highly skilled mobile developers to adapt their website or service to mobile usage.

Generally, enterprises and startups alike are adapting their products or services to the two biggest names in mobile technology: iOS and Android.
Android is outpacing iOS in the job market by a landslide

While both iOS and Android skills are highly in-demand,

employers are hiring Android developers much faster and more often than any other professionals in mobile tech.

employers are hiring Android developers much faster and more often than any other professionals in mobile tech.

Is this because the Android platform is better? That’s debatable. One thing is for sure: Hundreds of Android-supported mobile devices have blown up in popularity, and Android currently dominates the global market share.

“The growth of the Android market has had a ripple effect on the job market,” says Matt Miller, CTO at CyberCoders, a subsidiary of On Assignment, Inc. “For mobile programmers who specialize and are familiar with the Android operating system, there is no better time to improve your Android skills and look for a job.”

CyberCoders’ team of data scientists analyzed more than 3,700 mobile development job placements over the last two years. Below is a summary of the findings.

Jobs posted for Android positions grew by 110% from 2012 to 2014, compared to 54% for iOS jobs.

Similarly, job applications received for Android positions grew by an astounding 165%, compared to, again, 54% for iOS jobs.

The time it takes to place Android developers beat iOS by 50%.

From these findings, it’s clear that sharpening your Android skills — including Android SDK, NDK, C and C++ — can open up great career opportunities. In addition to Android development, employers are also on the lookout for the following three essential skills.
1. Demonstrate your understanding of the ‘why’ behind the app

The best mobile apps “solve a business problem such as improved work flow,” says Alex Bratton, CEO and chief geek of Lextech, an app development firm, and author of Billion Dollar Apps: How to Find & Implement a Winning Mobile Strategy.

It’s crucial to show your boss how your work impacts the company’s bottom line. “Developers who understand the ‘why’ behind the app are the most successful because they can offer the end user or the C-suite a return-on-app investment,” says Bratton.
2. Be able to communicate to non-technical folks as well

Building a solid mobile experience requires collaborating with stakeholders that may not understand the technical aspects of your work.

“It’s important that mobile developers are able to step outside of their technical shells and express the limitations and possibilities provided by mobile technology in a way that non-technical people can understand,” says Brady Donnelly, cofounder of Hungry, a digital agency that develops mobile products for brands like Samsung and MakerBot.

It’s equally important for developers to be able to walk away from the computer and pinpoint what works and what doesn’t from a consumer’s perspective.

In fact, one of the biggest job interview mistakes Donnelly sees is candidates taking an insular approach to work. “It’s common in the industry to put a barrier between clients and developers, in many cases, so their day-to-day lives are spent largely in a bubble outside of face-to-face interactions,” he says.

Competitive mobile developers are ready to collaborate and work cohesively.
3. Always keep your skills and industry knowledge sharp

The most impressive developers are able to connect the dots and think about the bigger, industry-wide picture.

“What particularly intrigues me while interviewing is when the conversation extends beyond the components of specific tasks into interest in the industry as a whole,”

“What particularly intrigues me while interviewing is when the conversation extends beyond the components of specific tasks into interest in the industry as a whole,” says Donnelly.

Staying abreast of the latest mobile-technology languages is key. For instance, honing the fundamentals skills (Java or C++ for Android and Objective-C or Swift for iOS) is a given. Developers should also have experience working with APIs and SDKs made available by larger social media platforms (e.g. Facebook or Instagram). After all, social media is making a huge impact on the landscape of mobile applications, helping apps build audiences and boost demand.

“It’s important to know not just current technology but what is coming up,” says Samit Shah, cofounder of Persource, a mobile app development company. “If you can advise clients on future-proofing their projects or showing how they can grow over time, it’s a better sell than ‘I can build this to specification.'”

Courtesy – Mashable

HTML5 Input Types:email and month

//For email

<!DOCTYPE html>

<html>

<body>

<form action="demo_form.asp">

E-mail: <input type="email" name="email">

<input type="submit">

</form>

</body>

</html>

//For month

<!DOCTYPE html>

<html>

<body>

<form action="demo_form.asp">

Birthday (month and year): <input type="month" name="bdaymonth">

<input type="submit">

</form>

</body>

</html>

HTML5 Input Types:color and datetime

//For color

<!DOCTYPE html>

<html>

<body>

<form action="demo_form.asp">

Select your favorite color: <input type="color" name="favcolor"><br>

<input type="submit">

</form>

</body>

</html>

//For Datetime

<!DOCTYPE html>

<html>

<body>

<form action="demo_form.asp">

Birthday (date and time): <input type="datetime" name="bdaytime">

<input type="submit">

</form>

</body>

</html>

Handling keyboard input in cocos2d-html5

Using keyboard input in Cocos2d-html5 applications is very simple. All that needs to be done is enabling the keyboard input in the layer that should receive the input. This is done by calling the setKeyboardEnabled method inside the layer:

layerThatshouldReveiceTheKeyboardInput.setKeyboardEnabled(true);

Now the information of which key has been pressed or released can be retrieved using these functions: onKeyDown and onKeyUp. When you add these functions to your level object they will be called each time a key is pressed or released. Both these functions have a pressed key type as function parameter, so you can easily determine which key was pressed by the user.

Here is a sample class that receives keyboard input:

classes.layers.Level = cc.Layer.extend({

    ctor : function() {
        this._super();
        this.setKeyboardEnabled(true);
        this.keyboardArrows = {
            left : false,
            right : false,
            up : false,
            down : false
        }
    },

    onKeyDown : function(key) {
        switch (key) {
        case 37:
            this.keyboardArrows.left = true;
            break;
        case 38:
            this.keyboardArrows.up = true;
            break;
        case 39:
            this.keyboardArrows.right = true;
            break;
        case 40:
            this.keyboardArrows.down = true;
            break;
        }
    },

    onKeyUp : function(key) {
        switch (key) {
        case 37:
            this.keyboardArrows.left = false;
            break;
        case 38:
            this.keyboardArrows.up = false;
            break;
        case 39:
            this.keyboardArrows.right = false;
            break;
        case 40:
            this.keyboardArrows.down = false;
            break;
        }
    }
});

How to Optimize Images for Better Search Engine Rankings

Name Your Images Descriptively and in Plain English
Creating descriptive, keyword-rich file names is absolutely crucial for image optimization. Search engines not only crawl the text on your webpage, but they also search for keywords within your image file names

Let’s use this image as an example:

suzuki stringray 2013 red

You could use the generic name that your camera gave to the image such as DCMIMAGE10.jpg. However, it would be much better to name the file: 2013-Suzuki-Stingray-Red.jpg

Optimize Your Alt Tags Intelligently
The alt attribute also adds SEO value to your website. Adding appropriate alt tags to the images on your website can help your website achieve better rankings in the search engines by associating keywords with images.
<img src = “2013-Suzuki-Stingray-Red.jpg” alt = “2013 Suzuki Stingray red”>
Describe your images in plain English, just like you do for image file names. If you sell products that have model number or serial numbers, use them in your alt tag.

Reduce the File Sizes of Your Images
Consider this:
1. Most consumers wait about 3 seconds for a website to load on a desktop or laptop.
2….and about 5 seconds on their mobile device.
3. Amazon found that if their pages slow down by 1 second, they lose $1.6 billion a year.
4. Google uses page load time as a factor in their ranking algorithm.

So What Do You Do?
Decrease the size of the image files on your webpage and increase page load speed.
One way you can reduce image file size is by using the “Save for Web” command in Adobe Photoshop.

Know Which Image File Type to Use for the Right Situations
There are three common file types that are used to post images. These are JPEG, GIF, and PNG.
For most ecommerce situations – JPEGs will be your best bet. They provide the best quality and the smallest file size.
Never use GIFs for large product images. The file size will be very large and there is no good way to reduce it. Use GIFs for thumbnails and decorative images.
PNGs can be a good alternative to both JPEGs and GIFS. If you are only able to get product photos in PNG format, try using PNG-8 over PNG-24. PNGs excel at simple decorative images because of their extremely small file size.

Use Image Site Maps
If your site uses JavaScript galleries, image pop-ups or other “flashy” ways to improve the overall shopping experience – Google image site maps will help you get your images noticed by Google.
Web crawlers can’t crawl images that are not called out in the webpage source code. So in order to let them know about these images, you must list their location in an image site map.