Wednesday, October 31, 2012

CHOOSING THE BEST PROGRAMMING LANGUAGE






Sometimes, there are arguments about
which programming language is best, based on lines of code (LoC) needed to
write specific example programs, the speed of compiling those programs, how
fast they run, and how small their memory footprints are. These are mostly
useless comparisons because the programs are typically too small to be
meaningfully useful, and they don't account for ease of use or programmer
friendliness.



For example, something might require only one LoC to accomplish what would
require 10 LoC in another language. But which one runs faster? Does everyone
know that one line to write? How complex are those 10 lines, do they make
sense? These kinds of questions make deciding the "best" programming
language next to impossible because the question is too vague.





To be more precise I’m going to take
a look at it here based on an individual’s perspective.



1.         WHAT'S THE BEST PROGRAMMING
LANGUAGE FOR A


BEGINNER?




It depends somewhat, on what the beginner is trying to
accomplish. Java is among the most popular languages overall, and one of the
most popular languages for beginners to learn. However, Python is generally
highly regarded, but not terribly popular.



Both are good choices. Java is great because it's so popular. If you really
know your stuff, there's plenty of work as a Java developer. If I were starting
over again from scratch, I'd want to learn Python first. Python is one of the
most elegantly designed languages. It's easy to learn, fast to program in
(generally), and is object-oriented (so is Java).



2.         WHAT'S THE BEST LANGUAGE FOR
WEB DEVELOPMENT?




This is like asking what the best religion is! Everyone has
their favorites, and they're all good choices with their own strengths and
weaknesses. If your target is web programming, here are some of the most
popular choices.



PHP - Not necessarily a language,
PHP is a parser that outputs an HTML page in a dynamic way. It's extremely
popular; Wikipedia, Facebook, Digg, Wordpress, and millions of other sites are
built on it. It's used on the server side of things, so it's not really
designed to be interactive.



Javascript - If you're going to do
web programming, this is probably the best language to learn. It is used for
client-side interactions, Ajax, and plug-in development. All the most popular
browsers have support for it, and if you intend to write plug-ins or
extensions, this is the language you'll need.



Ruby (on Rails) - If you want to
start programming for the Web quickly and easily, Ruby on Rails is probably the
best programming language to learn. It makes a lot of things simple and easy to
implement. But once you need more functionality or flexibility, once things get
complicated, it can become difficult to use. It's still very popular, and
there's no shortage of work for good Ruby programmers.



PERL - PERL is the duct tape that
holds the Internet together. It's the Swiss Army chainsaw of programming
languages. These are common things said about PERL. It's best to learn for more
advanced web programming, but not when starting out because it's awesome for
very specific things, but not for everything.









3.         WHAT'S
THE BEST LANGUAGE FOR GAME DEVELOPMENT?


This is an impossible question to ask because most platforms
have specific language requirement! The best language for game development is
simply whatever works best on the target platform.



If you're want to develop iPhone, iPod, iPad games? You're going to want to use
Objective-C. That's the language Steve Jobs brought with him from NextStep when
he came back to Apple. It's the language for development on all things Apple,
so if you want to write Apple apps, you're going to want to learn Objective-C.



For anything Microsoft, your best bet is going to be C#; the language Microsoft
invented that's based on the best of the Java and C programming languages. It's
what's used for Xbox, Windows Phone 7, and of course, Windows. Although you can
work with other languages on all of these platforms, Microsoft has really gone out
of their way to make things easier on you if you use the tools they provide.



Android devices are easiest to program with Java, as that's the underlying
technology. If you're going to do Android game programming, you're going to
need to learn Java. Which is fine, since it's a very popular language and
considered one of the better languages to learn when starting out.



For Windows PC games, C or C++ are undoubtedly the most popular choices. Other
languages are possible, but nowhere near as popular.



For 3D, you're going to need to learn a graphics programming language like
Direct3D (for Microsoft platforms) or OpenGL (for all other platforms).



Game programming is extremely complex, and you're not likely to start
completely from scratch. There are so many different tools for every platform,
that it'd be a monster task to write about them all. You're going to need level
design, graphic design, sound, etc... There's a lot more to game programming
than simply choosing a language to learn!





3.                 
WHAT'S THE
BEST PROGRAMMING LANGUAGE FOR MAKING MONEY?


This is a very popular question.
Some languages are a bit crowded because they're so popular. Java, for
instance. Yes, you can get a job, and yes, you can make a great living with
Java, but you'll have to compete against a lot of other developers.



Right now, there is a huge demand for Objective C. What's that? It's the
language iPhone and iPad apps are written in! And also Mac apps, but they
aren't as popular. It doesn't look like the iPhone is getting any less popular,
and there are always new apps being developed. There aren't nearly enough
programmers who know Objective C, so you can easily make a very good living
with it.



Other languages that are great to learn to make money are Javascript and C#.
Javascript is the language that runs the web. If you want to be a web
developer, it's the best language to learn. C# is a language developed by
Microsoft for use on Windows and Windows Phones. If you want to develop on
Windows or Windows Phone 7, you're going to need to learn C#. There's simply
too much demand for it to ignore.

Friday, October 26, 2012

UNDERSTANDING NEAR FIELD COMMUNICATION IN SMARTPHONES




Near Field Communication (NFC) technology is promising
because it presents the next evolution of convenient payment with an added
layer of security. Some credit cards have NFC chips embedded in them and can be
tapped against NFC payment terminals instead of swiped, which eliminates the
possibility that someone could skim your data via the magnetic strip. This same
system works with cellular phones, too: read up on
how cellular electronic payments work to dig into the technology.


 



Google
is one company pushing NFC payments with
Google
Wallet
. The application stores credit card information under
multiple layers of security and allows for quick tap payments at NFC terminals.
That means the technology's usefulness is limited by the number of NFC payment
terminals available in retail locations and the number of phones that support
the technology -- at launch, meanwhile Google Wallet only works with the Android Nexus S
smart phone.





WHAT EXACTLY IS NFC


NFC is a set of standards for smartphones and similar
devices to establish radio communication with each other by touching them
together or bringing them into close proximity, usually no more than a few centimetres.
Present and anticipated applications include contactless transactions, data
exchange, and simplified setup of more complex communications such as Wi-Fi.
Communication is also possible between an NFC device and an unpowered NFC chip,
called a "tag".







How NFC Works



Bluetooth and Wi-Fi seem similar to near field
communication on the surface. All three allow wireless communication and data
exchange between digital devices like smartphones. Yet near field communication
utilizes electromagnetic radio fields while technologies such as Bluetooth and
Wi-Fi focus on radio transmissions instead.





Devices using NFC
may be active or passive. A passive device, such as an NFC tag, contains
information that other devices can read but does not read any information
itself. Think of a passive device as a sign on a wall. Others can read the
information, but the sign itself does nothing except transmit the info to
authorized devices.





Active devices can
read information and send it. An active NFC device, like a smartphone, would
not only be able to collect information from NFC tags, but it would also be
able to exchange information with other compatible phones or devices and could
even alter the information on the NFC tag if authorized to make such changes.





USEFULNESS
OF NFC




A lot of the press you see about NFC tags will be
about mobile payments. It's the same technology but whereas we are talking here
about using NFC to transfer a web address or simple data, NFC payments are a
lot more complicated and involve a
Google
Wallet
on your phone and all sorts of other things. While the
momentum behind NFC is likely to be driven by mobile payments, the technology
is capable of much more.





NFC devices can be
used in
contactless
payment
systems, similar to those
currently used in credit cards and
electronic ticket smartcards, and allow mobile payment to replace or supplement these systems. For example,
Google Wallet allows consumers to store credit card and store loyalty card
information in a virtual wallet and then use an NFC-enabled device at terminals
that also accept MasterCard PayPass transactions. Germany, Austria, Finland, New Zealand, and Italy have trialed NFC ticketing systems
for public transport, while China has brought it
into service on buses across the country. India is
implementing NFC based transactions in box offices for ticketing purposes. At
present, the possibility of the technology being implemented in Nigeria cannot
be ascertain due to the fact that the number of people carrying NFC enabled
device are quite few.





Follow this link to see
a list of
NFC phones that you can buy today.

Wednesday, October 24, 2012

WHAT REALLY IS RETINA DISPLAY IN iPHONE 5?





Late Steve Jobs mentioned an all-new "Retina
Display" for the iPhone 4. But what exactly is a "Retina
Display?" Apart from a marketing buzzword, it's essentially a high-end
screen with four times as many pixels in the same screen real estate.


 




This
is what Apple say in one of it advertorials about the Retina Display capability
in the newly released iphone 5: “
This isn’t just a larger display. It’s a
larger Retina display. At 326 pixels per inch, it has a pixel density so high
your eye can’t distinguish individual pixels. And as stunning as the Retina
display is on the iPhone 4S, this one gives you 18 percent more pixels for an
impressive 1136-by-640 resolution. Colors get a boost, too, with color
saturation that’s 44 percent greater than before. So with iPhone 5, the
games you play, the words you read, the images you see, and the apps you love
look and feel incredibly vivid and lifelike. For big-time entertainment,
iPhone 5 lets you watch widescreen HD video in all its glory —
without letterboxing.”





...It's a screen...


A
fancy screen, with a 326dpi resolution. Jobs said "there's a magic number
around 300dpi, if you hold something about 10-12 inches away from your eye,
it's the limit of the human retina to distinguish pixels".







All
the breakthrough technology in iPhone 4 was situated between two glossy panels
of alumino-silicate glass - the same type of glass used in the windshields of
helicopters and high-speed trains. Chemically strengthened to be 20 times
stiffer and 30 times harder than plastic, the glass is ultra durable and more
scratch resistant than ever.





.. DPI, Retina and Resolution..


Digital
content creators are abuzz about “high DPI” and “Retina” displays in terms of
how they are changing the nature of the web and complicating the design
process. Before telling you how to develop images for these new devices, it
makes sense to understand the basics of the technology: what is high DPI, and
why is it significant?





Very
simply, “high DPI” (dots per inch) and “Retina” mean the same thing, that is: a
device with a high pixel density. “Pixel density” is the number of pixels a
display can fit into a fixed distance. This is different from “resolution”,
which is a simple count of the number of pixels across the entire width and
height of a device.





For
example, the resolution of an iPhone 4 is 640 x 960 pixels. All of these pixels
– a pixel being the smallest dot of color that is possible to show on a screen
– are crammed into a display that is two inches across. 





If
we compare that to an old VGA desktop monitor, the monitor will have a similar resolution,
but a much larger physical size, and thus a significantly lower pixel
density





If
we divide the physical width of the display by the number of pixels displayed
horizontally, the result is the number of pixels per inch (ppi, also
commonly referred to as dpi). 





Most
current desktop monitors display around 96 to 110 DPI, with laptops coming in
slightly higher. “High DPI” is generally acknowledged to be any device with a
display density of 200 pixels per inch or greater. 





...and it's close to the iPad's display quality...


The
iphone 5 got 78 per cent of the pixels of the iPad with about
326 pixels per inch, but in a far smaller screen-size. That should mean colors
will pop, and video, browsing, app-playing—whatever else you do with your
iPhone—will be clearer than ever. This will be especially beneficial with
fonts, whether they be in emails or when reading in the browser.





...but it's better than your iPhone 3GS' screen...


An
800:1 contrast ratio doesn't say much—you know how misleading contrast ratios
can be—but it sounds fantastic for a phone. It boils down to just how they
measure it, but we do know that it's 4x better than the 3GS' contrast ratio.





In
reality,
“Retina”
displays are not as far as the technology can be taken
: to
paraphrase physicist Richard Feynman, there’s still room at the top for further
improvement, although it is likely that subsequent advances will be more
incremental in nature. It should also be noted that there is a similarly
revolutionary leap in color range that is waiting in the wings. 




Once
you understand pixel density, the issue is how to optimize your images for the
new displays. For bitmap images, the most important point in this new web
development process is one that I’ve continually emphasized here – always
retain the very highest resolution version of your images
.

How to configure a custom URL to access Azure WebApp

By default, all users access Azure web applications via their HTML5 compactible browser using Microsoft URL which is the same for all custom...