Search This Blog

Showing posts with label Career Guidance. Show all posts
Showing posts with label Career Guidance. Show all posts

Saturday, 25 May 2013

Android phenomenal success story : Android popular because its good not because its cheap

Android success is phenomenal and incredible. Its start a new debate on reason of being most used mobile operating system. First thing in our mind comes, except intense market competition, How android make its ground ! Android success does not come in day or not for few days. Its going to continue the market leader in coming decade

Flexibility and competitiveness 

Android is damn flexible due to its open source nature. Android run on a mobile of price $100 to $1000. Google giant allow manufacturer to customize it according to their requirement and target users. Many manufacturer taste a success with android. Either its world smartphone leader Samsung or developing nation India's Micro-max, Android help everyone. Android is competitive and adapt changes very fast. It launches lots version in less than a decade and continue to do so.

A huge application store Google Play

Android is much younger than iOS.  still it has big market compare to iPhone. Android users have better choice in application. Most importantly android market contains lots of free application compare to Apple market. It makes users to feel better as they had options. Its free application are not crap, its because it take minimum effort and money to make android application.

A large developer network

Android developer network is big because of Google good decision to choose Java as their development platform. Even-though Developer can make their application in native language like C,C++ using NDK in android. Java is consider to be a strong and popular language. It take minimum effort for Java developer to make android applications.

Myth 

I had read some post who are discussing that Android is popular because its cheap. But i strongly disagree with point. Its proven that people does not tend to cheap product until its not prove to be as good as others.
People will doubt Dominoes if they start selling their pizza for few cents.Today many android phone are best selling smartphone which are not cheap. Let Samsung S3 and S4 , they are come into category of cheap. Android is popular because its strong, User friendly and flexible


Saturday, 30 March 2013

how to develop android application for xxhdpi device Samsung S4, HTC one, Sony Xperia z etc

New giant innovation Samsung Galaxy S4,Sony Xperia Z and HTC one are coming in android history.  S4 new dimension has created excitement for android user. Lets see what S4  and these phone contains

Samsung S4   - 1080x1920 resolution with a high pixel density of 441ppi, Screen size of 4.99 inch
HTC one          - 1080x1920 resolution with a high pixel density of 478ppi, Screen little less than 4.99 inch
Sony Xperia Z - 1080x1920 resolution with a high pixel density of 441ppi, Screen size of 4.99 inch

Android user are happy because they will get phenomal quality of display. as well as developer are shocked as their application need to support one more device. Still we have following device type on the base of density

drawable-hdpi                               -  high density
drawable-ldpi                             -  low  density(almost remove from android)
drawable-mdpi                              -  Small Screen device with medium density
drawable-tvdpi                            
drawable-xhdpi                             -  Extra high density
drawable-xlarge-mdpi                   -  Large screen with medium density

So if our application support all these device, then we need to keep one image of every type in each folder for bettter look. But because of above phone we have to take extra care about new density drawable-xxhdpi

While increasing support for above drawable-xxhdpi phone (as they are about to come in market) then we have to follow these steps to ensure best application and keep these image in seperate folder inside res named drawable-xxhdpi

Step 1) Your designer should make image by keeping in mind that device resolution is 1080x1920



Step 2) How to test without real device. No body had these device as they are still to launch or if they launch too then it will take time to get this device for developer. So we have to add new device definition of 1080x1920 to create a new emulator. See the screen shot

Step 3) Now you can run your application on this emulator, above steps will make this device definition available in Graphical Layout. you can check the design


Challenge - Consider a case when you take picture from such a high definition device, and this same image are used one the other device ! How difficult will be to handle these images without exceeding your application heap size. for that we have to scale image. It will add overhead to developer.

Keep in mind everything and then develop your new application. You can not take a risk to avoid the support for these device.

Thursday, 14 March 2013

How to improve your concentration while developing software, mobile application?

Being software developer is a pain full situation when we want to focus but fail to focus. In most cases we misjudge our ability and caliber. We start criticize our self for what we should responsible. We forget that we are human being and we born to commit mistakes. We born to learn from our mistake. As a mobile application developer, i have gone through the same situation many times. Every time i try to avoid with some set of rules and principles that worked for me. So let share with each among us

Always leave on time
Generally people thinks that working for longer hours will increase your performance at works. But it never does as i feel. Developing a software is not physical work, so you can not work until your mind is not active. Sitting for more hours will drain your brain and stop thinking. It need quality time rather than being sitting for longer hours. So try to leave on time, yes indeed if you need any urgency and have to work for client late then sitting for more hours does not harm. But it should be a fashion. leaving on time will make you more focus because you have to complete task with in the time

Plan one thing at a time
A CPU can execute million of calculation with in milliseconds but nothing is creative. We have a human mind, we have some limitation and some exceptional abilities. Give half an hour in morning for planning. Allocate task to yourself, divide expected time and start working. Do not spend too much time on a particular thing and continue work till the day end. Now observe what you have completed. If you fail to do something than find the reason, but do not switch on panic button.

Take short break
Stand up from chair every two hours. Take some walk for 2 minute, drink water and again start working. It will relax your brain muscles and boost your concentration for coming two hours. Believe it increase my output 20 %. And most importantly it reduce bug from software i made. In break you can talk to your colleague, it will help you to maintain healthy relationship. But do not misuse break. I call this break, break for bugs

Next....

Sunday, 30 December 2012

End of year 2012 , A new beginning and challenge for mobile world

2012 ends on high note. So many ups and downs for market player in mobile industry. Some went down and some on rise in market. While iPhone seems loosing its plot in sales of smartphone but its remains highest benefit for developer. Android is growing at horse pace and steadily replacing iPhone monopoly in smartphone market. Lets discuss some key features in 2012 in terms of mobile market share, innovation and coming hopes

Android increasing its market share, iPhone still in competition

Android market size is increasing at horse pace. Not only its application are increasing even android phone are selling four times than iPhone. After four android device, one iPhone sells now. Two tiger remains in battles in form of android and iPhone. Blackberry goes on down. Now every one is waiting for Blackberry's new invention blackberry 10. They have launch beta version. Its make some chances for blackberry to come back in market. And windows phone experiment of Microsoft seems to be failed even though having best User interface

New invention and ambitious project

Android start in Tablet market and start capturing market. Amazon kindle fire, Micro-max, Samsung and many other starts making tablet on very low price. Apple start iPad mini. Rather being successful, iPad mini does not being so successful.
 iPad mini face huge competition from android low price tablet. Samsung ambitious project Samsung S3, Galaxy note was ruling the party in smart phone in 2012. Samsung Galaxy camera is a new innovation at ending of 2012 and smart watch also join the kitty

Development front expanded for developer

Cross platform development gave a new way to developer to bring their skills to next level. Using common tools for android, iOS, Blackberry makes user life easy. Its reduce the cost and effort. Using Phone Gap and other cross platform does not looks good compare to native application. But most application work well with them. Blackberry 10 support for android application gives a chance to increase our application exposure.


Saturday, 29 September 2012

Java Interview Questions

Java is my all time favorite programming language because of its strong networking support and other strong features. Facing interview in java is always a challenge because of it broad view of concept.  Some question are repeatedly ask in interview while you goes for java as experience person or as fresher. Some of question i have faced two or three times . I am listing them below so that you guys does not struggle to give answer to them.

Q1. What is the difference between String and String Builder/String Buffer?

Ans. String object is immutable , immutable means we can not change the values store inside a string object. Let a example
                                 String temp="Hello";
If you append anything to temp then it will create a new object if append a different string to temp.
                                temp="Hello"+ "Check";

Printing temp will show "Hello check" but internally we have created two object while append "Check" to temp. Same process goes when you use trim method of String. So to improve performance we recommend to use String Buffer/String Builder. Both are mutable and we can changes the value of them without generating a new object.

Now important point is that String Buffer is synchronized and String Builder is not. So if you are not using threading , use String Builder else String Buffer. String Builder was introduce in java 1.4 but String String Buffer was launched in Java 1.5 version

Q2. What is the difference between Design Pattern and Framework?

Ans. Design Pattern is the Pattern designed by Java to make Java Application. It describe how to divide our complete java application into three part i.e MVC


  • Model : This part will handle only Business logic (Communication with Data Base).
  • View : This part only have presentation logic.
  • Controller : This part of logic contain the overall control flow (What should application has to do when a request comes from a Client).
Framework is a small s/w which has been designed by using Design Pattern. And it contain Web Application deployment architecture 

i.e  Spring, EJB 

Q3. What is the difference between passivation and activation?

Ans. While we client is not using any data then its store on secondary storage, this is called passivation but when client send a request to use that piece of data then it loaded into main memory  and this refers as activation process.

Q4. Explain Difference HashTable and HashMap?

Ans. Here is some key difference between them ---
  •  Hashtable is synchronized, whereas HashMap is not. This makes HashMap better for non-threaded applications, as un synchronized Objects typically perform better than synchronized ones.
  • Hashtable does not allow null keys or values. HashMap allows one null key and any number of null values.
  • One of HashMap's subclasses is LinkedHashMap, so in the event that you'd want predictable iteration order (which is insertion order by default), you could easily swap out the HashMap for a LinkedHashMap. This wouldn't be as easy if you were using Hashtable.
Q5. Differnce between Vector and Array List?

Ans. Vector is synchronized whereas Array List is not synchronized . Using Vector inside threading application is recommended as it avoid insertion and deletion at once by throwing UnSupportedException

Q6. What is difference between Abstract class and Interface ?

Ans. Java does not support multiple inheritance so this restriction is some what avoided using interface . You can implement multiple interface in a single class but can not extends more than one class at time.
  • When you implement an interface to a class then its compulsory to override all method of interface (if class is abstract then its not necessary). But if you extends a abstract , there is no such necessity 
  • Abstract class implementation is fast
  • Interface provide only signature of method not code. but abstract class can have code for method
  • Interface'method is implicitly abstract

Thursday, 27 September 2012

Career as Mobile Application Developer

There was a time when smartphone was limited to business man, as technology advances mobile change the circumstance of all trends and become so popular in all age of people. We can not think to live without a mobile that does not have social networking, Email, Location base services or M-Commerce application like Paying bills etc.

Mobile take the games like Temple Run, Angry Bird on a new high notes and ensure the safety and growth of people related to mobile application development. 2012 is witnessing a new growth level in mobile development, new player had come into competition and a lot more to come


Market Status and Industry Status - Mobile application market is growing rapidly and gaining popularity as emerging job opportunities market. If we talk about just India then its third fastest growing market for android app. Let have look on India statistics As per Gartner report, India's active mobile connections will exceed 900 million by 2016, which translates to 72% penetration. According to Trai in January 2012 the number of active mobile connections in India has reached 659.99 million and the total mobile subscriber base stands at 903.72 million.


This is just about one country USA, China and every other country are growing at rapid pace in smart phone mobile user either iPhone or android or windows Phone or blackberry. If we think as developer, then these are the excellent opportunities

Growth Areas - This booming industry is struggling to get quality developers who have ideas and creativity. Go to any job site and you will observe the number of jobs that come under the M-VAS industry. Here the demand and supply ratio is inadequate and industry is looking for talented professionals. Planning a career in this industry will surely be a good move.
As it can be seen, there is more demand than supply because there aren't enough good mobile developers. As mobile phone companies look to attract users through applications, the demand for application developers is growing and will grow.

growth as individuals are also have great chance .Imagine how much you are going to earn if you make a game like angry bird on any platform either android or iPhone



Skill-sets required - It  slightly varied and depends for which platform you want to develop an application for android it need knowledge of java for iPhone you should be good enough in objective C. But overall we can say, one wants to become a mobile app developer, one would need to be proficient in a programming language such as C, C++, Objective C for writing applications on iOS (iPhone, iPad) or Java (Android, Blackberry OS)

For further assistance you can continue-sly visit this blog about mobile application development


Article You May Like           How to write an effective resume


Sunday, 10 June 2012

Challenges against an android application developer

Starting android development is easy thing. Normally developer are fully aware about java language. It makes easy to learn and develop android application. Because of its open source nature so many tutorial are available on internet. after so many thing android development is pain for developer in comparison  of iPhone development in some cases

1) Device resolution and densities : In android thousand of android device available with different kind of densities and resolution. 



ldpimdpihdpixhdpi
small2.3%2.4%
normal0.7%26.2%57.8%0.9%
large0.3%2%
xlarge7.4%









see this picture. A developer can imagine the pain to make one application that runs perfectly in all. That's impossible.But if you see iPhone, its has only two densities iPhone or iPod And iPad


2)Its hard to earn with android : on Google play, there are so many of crap application are present.In iPhone, quality of application are much more better than android. Because of manner of uploading in android, its easy to upload application. I have seen android hello world application on Google market. that make hard to get notice




Saturday, 21 April 2012

How to write a good resume

Resume is face of any employee.Generally while we are writing resume we commit a lot of mistake unknowingly so we left unnoticed . While we are first interacting with Employer then Resume will tell everything about you. So writing resume is key  to create a first impression on our Employer.I am going to explain about how much we have to focus on which segment..

1)Always prefer Descending order of your experience or education 

As while we went on to achieve in life then it became more focus and specific about our goal and our work.So always follow the descending order.It will directly show your latest work to Employer.This increase your chance of your getting noticed.


2) Be Specific about your current job requirement 

Its not good idea to generalize your work or using single format and data for every job.Each job need some specific requirement .So your focus and format should be current job . And do a little bit of change while sending resume to current job

Let a example if you worked on .Net for three year and one year on android.Now you are applying for an android developer job.So in this case your main focus should be on android(Achievement and work in android)
Android News and source code