Ads 468x60px

freak2code is the blog about latest geek news,software reviews ,trends in technology and more informative stuff......

Wednesday, 12 September 2012

Heteroglot: #15 in COBOL


Heteroglot: #15 in COBOL

Introduction

Many moons ago, I started a ridiculous quest to solve every Project Euler problem, in order, with a different programming language. I called it “heteroglot”.
Partway through that, I gave myself the additional unwritten rule that the next language would be selected by polling the nearest group of nerds. This has resulted in math problems solved in such wildly inappropriate languages as vimscriptMUMPSLOLcode, and XSLT.
It’s been a while since I did one of these, but I still remember that the next language I’m stuck using is COBOL. I don’t know who suggested it, but I hope he chokes on a rake. ♥
I figure if this is interesting to me, it might be interesting to someone else. So let’s learn some math and/or COBOL.

The math

Illustration of the six paths from the top-left to bottom-right of a 2×2 grid, following the grid lines.
Problem 15:
Starting in the top left corner of a 2×2 grid, there are 6 routes (without backtracking) to the bottom right corner.
How many routes are there through a 20×20 grid?
There are two approaches to solving this: actually count every path, or invent a formula. I’d like to spend as little time with COBOL as possible today, so let’s try the latter approach.
So, find a pattern.
  • In the trivial case (0×0), there’s only 1 path.
  • For 1×1, there are 2 paths: effectively clockwise and counter-clockwise.
  • The problem already states that 2×2 has 6 paths.
Now, wait. Before considering 3×3, bear in mind: nothing about this problem requires that the grid be square. Think of some other small sizes:
  • 0×1 and 0×2 also have only one path. Naturally, any grid with either dimension of 0 will have only one possible path, because it’s a straight line.
  • 1×2 has 3 paths: clockwise, counter-clockwise, and through the middle in an S shape.
      @@@@    @--+    @--+
      ¦  @    @  ¦    @  ¦
      +--@    @--+    @@@@
      ¦  @    @  ¦    ¦  @
      +--@    @@@@    +--@
    
  • Consider 1×3. It has four horizontal grid lines, making for 4 possible paths: one for each horizontal line.
      @@@@    @--+    @--+    @--+
      ¦  @    @  ¦    @  ¦    @  ¦
      +--@    @@@@    @--+    @--+
      ¦  @    ¦  @    @  ¦    @  ¦
      +--@    +--@    @@@@    @--+
      ¦  @    ¦  @    ¦  @    @  ¦
      +--@    +--@    +--@    @@@@
    
Has a pattern emerged?
· | 0   1   2   3
--+--------------
0 | 1   1   1   1
1 | 1   2   3   4
2 | 1   3   6
3 | 1   4
Oh ho ho. Yes, yes it has. Tilt that table diagonally.
        1
      1   1
    1   2   1
  1   3   3   1
1   4   6   4   1
This is Pascal’s Triangle.
In retrospect, this makes perfect sense. Consider the 3×3 grid. Starting from the top left, there are only two possible directions to go: right, or down. If you go right, you can only follow the possible paths for a 2×3 grid. If you go down, you can only follow the possible paths for a 3×2 grid. And none of them can overlap, because you started differently.
+--+--+--+      @@@@--+--+    @
¦  ¦  ¦  ¦         ¦  ¦  ¦    @
+--+--+--+         +--+--+    @--+--+--+
¦  ¦  ¦  ¦  =>     ¦  ¦  ¦    ¦  ¦  ¦  ¦
+--+--+--+         +--+--+    +--+--+--+
¦  ¦  ¦  ¦         ¦  ¦  ¦    ¦  ¦  ¦  ¦
+--+--+--+         +--+--+    +--+--+--+
So in the table, any given number is the sum of the number immediately to its left and immediately above it: the two solutions for the same-size grid with one fewer row or one fewer column. That’s exactly how Pascal’s Triangle is created.
In the nth row of the triangle, the number at offset r (both counting from zero) is given by nCr(n, r). All I need now is to convert a grid size a×b to a row in the triangle. Each triangle row is a diagonal of the original table, so you get the row number from a + b, and the offset is either a or b. The answer is then nCr(a + b, a).
Check against what I know: 1×1 is nCr(2, 1) = 2, 2×2 is nCr(4, 2) = 6. 0-by-anything is 1. Lookin good.
From here I could just figure it out with a calculator, but that’s cheating. Time to find a COBOL compiler.

The code

I’m on Arch, and the first thing I found was OpenCOBOLon the AUR, so I’m installing this bad boy. Your results may vary, if for some reason you’re following along.
eevee@perushian ~ ⚘ sudo packer -S open-cobol
Now I need to learn some COBOL. OpenCOBOL’s site helpfully links this OpenCOBOL Programmer’s Guide. Let’s see what I have here.
1.3.1. “I Heard COBOL is a Dead Language!” Phoenician is a dead language. Mayan is a dead language. Latin is a dead language. What makes these languages dead is the fact that no one speaks them anymore. COBOL is NOT a dead language, and despite pontifications that come down to us from the ivory towers of academia, it isn’t even on life support.
As more and more people became at least informed about programming if not downright skilled, the syntax of COBOL became one of the reasons the ivory-tower types wanted to see it eradicated.
My archaeological adventure is off to a fantastic start.
Right, well, step two: what the hell does a program look like? I am dimly away that COBOL has a lot of wordy setup and DIVISIONs of code or data or something. Section 2 starts to explain this setup. The only required part of a COBOL program appears to be PROGRAM-ID. {program-name}, but that won’t actually do anything. So I think I’ll actually need something more like this:
IDENTIFICATION DIVISION.
PROGRAM-ID. project-euler-15

DATA DIVISION.
// something to specify 20 by 20

PROCEDURE DIVISION.
// make it go

END PROGRAM project-euler-15.
That last part isn’t actually necessary if I’m only building one file, but I like the feeling of talking to a computer with no prepositions or particles. Reminds me a little of Robotic.
At this point I like to stick my no-op program in a file and compile it, just to make sure I have something valid (and also to figure out how to compile). Here I discover several things.
  • COBOL source is .cob. Or .cbl, but that’s not as funny.
  • vim has built-in COBOL syntax highlighting.
  • Because “indented block” is nonsense in COBOL, the shift operators (< and >) do nothing. (The above block was indented, because my blog is all Markdown, and I had to outdent it manually.)
  • Everything about the code above is wrong. Everything. Every single character is syntax colored as an error.
I’m having flashbacks to MUMPS already.
Let’s continue reading. In §1.5, “Source Program Format”, it is revealed that the compiler can run in two modes: fixed (the default) and free. Fixed mode uses “traditional” 80-column formatting. This rings some faint bells: COBOL is all about the columns. What column does code need to start in? Fuck if I know. I can’t find anywhere in the documentation for this compiler that actually explains how fixed mode works.
Back to the website, and I find that the online User Manual is not very thorough but does contain an examplehello world program, which explicitly states that program lines must start in column 8.
And, indeed, indenting everything by 7 spaces makes vim happy. Now I have:
1
2
3
4
5
6
7
8
9
10
   IDENTIFICATION DIVISION.
   PROGRAM-ID. project-euler-15

   DATA DIVISION.
  * something to specify 20 by 20

   PROCEDURE DIVISION.
  * make it go

   END PROGRAM project-euler-15.
Haha, and people complain that Python has significant whitespace. You assholes. Guess what I’m linking you next time I hear that.
At last, time to try running this thing. The hello world program comes with super simple instructions for that, too.
⚘ cobc -x 015.cob
⚘ ./015
Success! Nothing happened.

Do a thing

First is the seed data, which here is just the size of the grid: 20×20. I’m gonna go out on a limb here and guess that data goes in the DATA DIVISION. This handy programmer guide has a page-sized diagram of the syntax for defining data and many more pages of the clusterfuck that is record syntax, but luckily there’s a much simpler way to define constants:
1
78 foo VALUE IS bar.
The 78 is a “level”, an ancient incantation used to specify just how deep in the hierarchy a datum is. In this case78 happens to be a special level used only for constants.
Before trying to run this again, it’d be helpful to print out the constants and make sure I’ve actually defined them correctly. This is done with DISPLAY. (The same statement, inexplicably, also inspects command-like arguments and gets/sets environment variables. What.)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
   IDENTIFICATION DIVISION.
   PROGRAM-ID. project-euler-15


   DATA DIVISION.
   WORKING-STORAGE SECTION.

  * grid size: 20 x 20
   78 width VALUE IS 20.
   78 height VALUE IS 20.


   PROCEDURE DIVISION.

   DISPLAY width
       UPON CONSOLE
   DISPLAY height
       UPON CONSOLE


   END PROGRAM project-euler-15.
The UPON CONSOLE is entirely optional but it looks like I’m hacking a mainframe so I’m including it anyway.
And, whoops, this totally doesn’t work. Unsurprisingly, the PROCEDURE DIVISION needs code to be in… procedures. I had to give up and just look at the same programs here, but the short version is, do this:
1
2
3
4
5
6
7
   PROCEDURE DIVISION.
   do-the-needful.
       DISPLAY width
           UPON CONSOLE
       DISPLAY height
           UPON CONSOLE
       .
Compile, run, and get 20 twice. Off to a fabulous start.
Just need the math.
A flip through the list of statements finds me PERFORM, which both calls procedures and acts like a loop. I might as well make this a real program, so let’s do both and write a real function. Sorry, procedure.
I want to implement nCr(). I need a numerator and denominator accumulator, a loop of r times, and some multiplication. Seems easy enough.
The first stumbling block is, er, creating variables. There’s nothing to do that. They all go in the DATA DIVISION.All of them. In this case I want a LOCAL-STORAGE section, which is re-initialized for every procedure—that means it should act like a local.
I want a loop variable, a numerator, a denominator, and two arguments.
Arguments.
Hmmmm.
It is at this point that I begin to realize that COBOL procedures do not take arguments or have return values. Everything appears to be done with globals.
There’s a CALL statement, but it calls subprograms—that is, a whole other IDENTIFICATION DIVISION and everything. And even that uses globals. Also it thinks BY VALUE for passing means to pass a pointer address, and passing literals BY REFERENCE allows the callee to mutate that literal anywhere else it appears in the program, and various other bizarre semantics.
Let’s, um, just go with the globals. Some fumbling produces:
1
2
3
4
5
6
7
8
9
   n-choose-r.
       MOVE 1 TO numerator
       MOVE 1 TO denominator
       PERFORM VARYING i FROM 1 BY 1 UNTIL i > r
           MULTIPLY i BY denominator
           COMPUTE numerator = numerator * (n - i + 1)
       END-PERFORM
       COMPUTE n-choose-r-result = numerator / denominator
       .
A note on assignment in COBOL: there isn’t any. Instead, there are several different statements for different kinds of assigning. ADDSUBTRACTMULTIPLY, and DIVIDE all divide a variable or a literal (but not an expression!) into a variable and store the result into that variable. MOVE stores a variable or a literal (but, again, not an expression) into a variable. COMPUTE stores an arbitrary expression into a variable. I assume COMPUTE, um, came later.
Anyway, the idea here would be that you store the arguments into the n and r globals, PERFORM this procedure or paragraph or whatever, then get your result out of the n-choose-r-result global. The globals are in the DATA DIVISION like this:
1
2
3
4
5
6
7
8
9
   LOCAL-STORAGE SECTION.

  * used by n-choose-r
   01 i                            USAGE IS UNSIGNED-LONG.
   01 n                            USAGE IS UNSIGNED-LONG.
   01 r                            USAGE IS UNSIGNED-LONG.
   01 numerator                    USAGE IS UNSIGNED-LONG.
   01 denominator                  USAGE IS UNSIGNED-LONG.
   01 n-choose-r-result            USAGE IS UNSIGNED-LONG.
(UNSIGNED-LONG is a 64-bit unsigned machine integer, the biggest machine number COBOL appears to have.)
Compile it, run it, and the answer is… 6.
Hmmm.
A little DISPLAYing reveals that the numerator and denominator print as 688017186506670080 and 432902008176640000, respectively. It looks like 64 bits is not enough, and I’m overflowing. Oops.
Well. I could set out to see if COBOL does bignums or if the whole PIC thing supports arbitrary precision, but I’m scared to think what I might find. Instead, let’s do some more math.
Consider that nCr(n, r) for any nonnegative integers n and r is always, itself, an integer. (This isn’t too hard to prove informally, but just accepting it is enough.) So I know:
nCr(n, 1) = n / 1
nCr(n, 2) = n * (n - 1) / (2 * 1)
          = n / 1 * (n - 1) / 2
nCr(n, 3) = n * (n - 1) * (n - 2) / (3 * 2 * 1)
          = n / 1 * (n - 1) / 2 * (n - 2) / 3
I can take advantage of this to minimize the intermediate results without ever worrying about floating-point. (Does COBOL support floating-point? Christ, I don’t want to know.)
1
2
3
4
5
6
7
   n-choose-r.
       MOVE 1 TO n-choose-r-result
       PERFORM VARYING i FROM 1 BY 1 UNTIL i > r
           COMPUTE n-choose-r-result =
               n-choose-r-result * (n - i + 1) / i
       END-PERFORM
       .
This produces the answer: 000000137846528820.
Er… eh, close enough. And the internets suggest it may not really be possible to avoid the leading zeroes.
Throw it at Euler and, indeed, this is correct. Phew. Done! The final program is 015.cob.

Impression

COBOL is even more of a lumbering beast than I’d imagined; everything is global, “procedures” are barely a level above goto, and the bare metal shows through in crazy places like the possibility of changing the value of a literal (what).
On the other hand, I can see how the design maps pretty naturally to bare metal, and the alternatives at the time were Fortran and ALGOL. Ada didn’t exist. C didn’t exist. Hell, B didn’t exist. The original Lisp paper had only just been published! In that light, COBOL is a reasonably impressive piece of work, which I will never use again if I can possibly avoid it.
One thing that slightly bewilders me is how COBOL came to both have so many ways to do the same thing, yetalso so heavily reuse some keywords. DISPLAY both prints stuff out and messes with environment variables.PERFORM both calls a procedure and performs a loop. Or calls a procedure in a loop. And it has some pretty complex syntax for determining when the loop ends and how many times it runs and whether there’s an incrementor. It even has syntax explicitly designed for doing nested loops without actually having to nest loops. What?
As a closing note, consider: just like MUMPS, second-hand experience tells me that there are still big high-level government/financial COBOL applications probably handling your money. Sleep well.

More choice quotes about COBOL

I can’t resist. This programmer’s guide is amazing. I know COBOL is ass-old, but this guide was published in 2009!
On endianness.
All CPUs are capable of “understanding” big-endian format, which makes it the “most-compatible” form of binary storage across computer systems.
Some CPUs – such as the Intel/AMD i386/x64 architecture processors such as those used in most Windows PCs – prefer to process binary data stored in a little-endian format. Since that format is more efficient on those systems, it is referred to as the “native” binary format.
On working with libraries.
Today’s current programming languages have a statement (usually, this statement is named “include” or “#include”) that performs this same function. What makes the COBOL copybook feature different than the “include” facility in current languages, however, is the fact that the COBOL COPY statement can edit the imported source code as it is being copied. This capability enables copybook libraries extremely valuable to making code reusable.
On whitespace.
A comma character (“,”) or a semicolon (“;”) may be inserted into an OpenCOBOL program to improve readability at any spot where white space would be legal (except, of course, within alphanumeric literals). These characters are always optional. COBOL standards require that commas be followed by at least one space, when they’re used. Many modern COBOL compilers (OpenCOBOL included) relax this rule, allowing the space to be omitted in most instances. This can cause “confusion” to the compiler if the DECIMAL POINT IS COMMA clause is used (see section 4.1.4).
On the DISPLAY statement.
The specified mnemonic-name must be CONSOLE, CRT, PRINTER or any user-defined mnemonic name associated with one of these devices within the SPECIAL-NAMES paragraph (see section 4.1.4). All such mnemonics specify the same destination – the shell (UNIX) or console (Windows) window from which the program was run.

Build Trails for Customers that Don't Dead End


Build Trails for Customers that Don't Dead End


You see it all the time: web marketing that fails to satisfy customer wants and needs in the buying process from first exposure to conversion.  The problem is that it's so easy to simply leave a buying trail that you're on with the web.  All it takes is a click.  This puts buyers in total control and makes them uber-sensitive to what they engage with online.  The challenge for us as site owners and marketers is to build trails from exposure to conversion that customers won't want to leave.

People are hunting online for what you've got


So, when it comes to providing the "scent" that an online customer can pick up on, what does it mean to build a "trail"?  Well, studies have shown that when people search for a solution to their need/want/problem online, they behave very similarly to animals on the scent trail of their food.  They pick up a scent and then follow it until the scent is broken (they've reached the end of the trail).  They then either end up with their food, or they experience the frustration of following a trail only to reach a dead end.  If they reach a dead end, they then go back to the hub and start over until they're satisfied.
We've all experienced this when using a search engine.  You click a result and it's not quite what you're looking for, so you go back to click on another result and begin a new trail.  Or maybe you click on a result and sense that you may find what you're looking for, but then the trail ends after 4 or 5 pages.  So, you go back or refine your search or give up.
All too often, the web experience gives users dead ends.  The good news is that since this is the case, you've got a great opportunity.  If you can get really good at knowing what your customers are "sniffing" for, you can test and optimize your "trails" to provide a better experience and more satisfied customers for yourself and less for your competition.
So, what makes for a broken trail?  It's simple really, but not so easy to fix.  A broken trail is when a website fails, at some point along the way, to help a customer reach his or her goal, whatever it may be.  As soon as customers sense that where they are will not help them accomplish their goal, they are out.  Since people are always just one click from goodbye, this happens more often than not on the web.

Build scent trails customers would create


What can you do to make sure you are providing the trails people need to reach their goals?  The first thing you must understand is that different people are at different stages of the buying process when they come to your site, so it should be prepared to deal with all the possibilities.  Second, you must take into account that you can't sell to every individual that comes to your site differently.  But, you can narrow it down to four dominant temperaments and how each of them approaches a buying decision.  If you can address the needs of each temperament, you'll provide more trails for your customers to go down, decreasing the breaks in their Internet hunting adventure.
What You Want Trail Sign.png

Here they are and how they approach the buying process...
  • Competitive - They are goal-oriented and look to complete tasks.  They are quick to reach decisions and want to know what the product or service will do for them to solve their problem.
  • Spontaneous - They want simplicity, movement, and stimulation.  They like things that are non-threatening and friendly.  They hate dealing with impersonal details and cold, hard facts.  They are usually quick to reach a decision.  They want to know why your product or service is best to solve their problem.
  • Humanistic - people-centered and empathetic.  They enjoy helping others and are particularly fond of socializing.  They are usually slow to reach a decision.  They want to know who has used your product or service to solve problems and, more importantly, who will be affected by their decision.
  • Methodical - These individuals appreciate facts and information presented in a logical manner as documentation of truth.  They enjoy organization and completion of detailed tasks.  They do not appreciate disorganization.  They want know exactly how your product or service can solve the problem.
To best reach every customer that enters your site, it's best to think about them in this way.  As you get familiar with your customer temperaments, you'll be able to develop more specific buyer personas that will give you a framework for how your customers prefer to be engaged in their online experience.  Once you do this, you can then develop testing scenarios based upon what you predict buyers want and need to improve your scent trails.  You won't have to test random ideas you come up with out of thin air, but ideas born from customer intelligence that will help your business grow.

Samsung Galaxy S III hits 20 million units sold

Samsung Galaxy S III hits 20 million units sold

by vinay gautam

We all knew that the Samsung Galaxy S III is an incredibly popular handset, but today the company gave us an idea of just how popular it is. The Galaxy S III has hit the 20 million sales milestone, which is pretty impressive. Even more impressive is the fact that the smartphone surpassed the 20 million mark only 100 days after launch.

To put that in perspective, the Galaxy S III’s predecessor, the S II, had only managed 5 million sales after 85 days on the market, and it took 5 months before sales climbed to 10 million. 10 million sales in 5 months isn’t anything to stick your nose up at either, which makes the Galaxy S III’s astronomical success even more noteworthy. That 20 million figure is, obviously, enough to make the Galaxy S III the most successful smartphone in Samsung‘s history, and the company told CNET that its success has been “record-setting.”
Samsung recently announced the Galaxy Note II at IFA 2012, the follow up to the original Galaxy Note, which was something of a surprise success for Samsung. Anticipation is high for the Galaxy Note II – so high, in fact, that the new phablet might be able to achieve similar success. It probably won’t reach the same sales numbers as the Galaxy S III, but it wouldn’t surprise us one bit to see Galaxy Note II sales soar above those of the original device.
Samsung is continuing to ride the Galaxy S III train as well, recently revealing four brand new color variants for the handset. All of this, and we’re only 100 days out from release. One thing is for sure: we can expect that number to rise quite a bit in the coming weeks and months, so don’t think this will be the last you’ll hear of the Galaxy S III’s success. Are you one of the 20 million people who has purchased a Galaxy S III since it released back in May?

Amazon Kindle Fire HD 7 and 8.9-inch announced


Amazon Kindle Fire HD 7 and 8.9-inch announced

by  vinay gautam

Today at Amazon‘s Kindle Fire event they had plenty of interesting things for everyone to see. All starting with a brand new 8.9-inch 1920 x 1200 full HD Kindle Fire for just $299. From here on out there will be 3 Kindle Fire versions available so lets take a look at all the details below.


For starters the original Kindle Fire 7-inch model will still be available, only this time around it has been improved a little bit with twice as much RAM, a faster processor (although they didn’t get specific) and we can expect 40% better performance across the board. It will now run users just $159 starting September 14th.
More importantly is the brand new Amazon Kindle Fire HD. Today they announced not one, but two brand new HD Kindle Fire tablets. First off I want to mention the awesome new 8.9-inch Kindle Fire HD. This tablet comes with a beautiful and crisp 8.9-inch 1920 x 1200 full HD IPS display, an OMAP 4470 dual-core processor, twice as much RAM as the original, and a 2 megapixel front facing camera.

Amazon wasn’t too specific when it came to battery life, size, or any other specs (like what version of Android they’re running) but so far this thing looks absolutely stunning. The UI is quite nice although certainly nothing like the Android we know and love. There’s tons of new features like X-Ray movies with instant IMDB searching when you pause a show for all the details you’d like and more. They’ve added all sorts of small changes to the UI we’ll get into in a bit. Then both new HD tablets come with Dolby Digital Plus and offers some pretty impressive sound output.

Lastly we have the regular Kindle Fire HD — which will stay at the 7-inch screen size and offers a similar IPS display only 1280 x 800 in resolution, but it still looks great. Both the 7-inch and new 8.9-inch models offer two antenna’s for superior WiFi performance and are the first tablets to support the MIMO WiFi standard.
The all new Amazon Kindle Fire HD 7-inch will come with 16GB of storage (beating out the Nexus 7) and will cost just $199. Amazon took a few shots at Google without really saying it, and we have to admit that is a great price. Then you’ll also have the option of the larger and impressive 8.9-inch Fire with 32GB of storage for only $299. That isn’t all either. The 8.9-inch model also comes with an optional AT&T 4G LTE flavor — the first 4G Fire — and will only run users $499.
The Kindle Fire 7-inch HD is on sale and up for pre-order right now from Amazon and ships September 14th while the 8.9-inch slate will start shipping on November 20th. Sadly there was no mention of a smartphone. Stay tuned for hands-on pictures.
P1100223-M P1100220-M P1100218-M P1100216-M P1100211-M P1100213-M P1100194-M P1100186-M P1100179-M P1100175-M P1100177-M P1100176-M P1100174-M P1100184-M P1100169-M

Amazon smartphone reportedly confirmed for debut tomorrow


Amazon smartphone reportedly confirmed for debut tomorrow

by vinay gautam

Amazon is getting ready to unleash a few new Android devices soon and will be unveiling them tomorrow in their press event. We’ve already seen countless reports of two Kindle Fire tablets but now the rumors are stirring up yet again regarding an Amazon Kindle Fire powered Android smartphone. Lets take a peek at the rumors below.


The folks from The Verge have been all over Kindle Fire leaks as of late, and apparently have someone close to the source feeding them some reliable information. We received our first look at the upcoming Kindle Fire 2 from these sources early last week. Now these same tipsters have apparently “confirmed” an Amazon Kindle Phone is currently in the works and will get announced tomorrow.
We are hearing this will run the Amazon Kindle Fire UI version of Android 4.0 Ice Cream Sandwich, and be split off from any real Google ties aside from running a heavily skinned version of Android. With Motorola announcing three new smartphones today, Nokia doing the same with the Lumia Windows Phone 8 series, and HTC having an announcement later this month it all makes sense for Amazon to reveal some details — even if the phone isn’t complete.
That’s right. Sources have confirmed the Kindle Phone is indeed real and currently under construction and not in the final stages. We’re hearing multiple reports that Amazon will be showing off this new device to the press tomorrow along with at least two new Kindle Fire Tablets and a few Kindle E-readers. Sources from The Verge reported that the phone is unfinished and will only get a very brief unveil to peak our interest.
With Nokia Maps replacing Google Maps, Amazon App Store replacing the Play Store and Amazon Cloud Player replacing Google Music can this compete in this tight market? We’d love to hear your thoughts. We’ll be live from the Amazon event to get all the details so stick around folks!

Eric Schmidt outs 1.3 Million Android activations daily, 500 million devices worldwide

Eric Schmidt outs 1.3 Million Android activations daily, 500 million devices worldwide

by vinay gautam

Today during Motorola‘s announcement of a few new DROID RAZR HD smartphones for Verizon Wireless we received a few heartfelt words from Google’s own Eric Schmidt. Since Google’s now the proud owner ofMotorola Mobility he took the stage to talk about the future, then talked Android numbers.


The staggering and simply amazing numbers you see above is what the number one mobile OS in the world if capable of. Put Android out for the masses and this is what you get it return. 1.3 million Android devices being activated each and every single day. That’s seriously quite impressive.
We’ve slowly seen this number climb from 500,000 to 800k and then a few months back it had passed the 1 million a day mark. Now just a few short months after Google IO and the activations daily are approaching 1.5 million a day. Schmidt then went on to blow our minds even more by stating that there is currently almost 500 million Android smartphones, tablets, and devices worldwide to this day. If that isn’t a serious rate of adoption I don’t know what is.

Eric Schmidt quickly took the time to talk Motorola, numbers, the future, and then finished by saying do the math! With Dennis Woodside here to take Motorola to the next step, and Google to continue to push the cutting edge with Android things should be exciting. The added bonus of Google and Motorola being one should only help these numbers continue to climb.

Motorola DROID RAZR M Hands-on


Motorola DROID RAZR M Hands-on

by vinay gautam

The newly announced Motorola DROID RAZR M might not be their new flagship smartphone, but we could certainly see it steal some of the sales. The RAZR M is an impressive budget smartphone from the folks at Motorola and Verizon — only it isn’t a budget device. It offers near top of the line specs for a great price. Lets take a look.


Announced earlier today alongside the new RAZR HD the RAZR M is a unique smartphone. It isn’t quite as nice as the new devices while slightly outpacing the older original RAZR in most categories. The specs were all leaked weeks ago and confirmed today but one more time before our quick video here’s the rundown, plus what makes the M special.
The RAZR M you’ll get the same 4.3-inch AMOLED qHD (960 x 540) resolution display as the original RAZR only in a smaller package. Motorola managed to make this nearly an edge-to-edge display device as we speculated on earlier this week. Running with Android 4.0 Ice Cream Sandwich (Jelly Bean coming soon) you have the popular Qualcomm 1.5 GHz dual-core Snapdragon S4 processor, 1GB of RAM, and 8GB of internal storage. The screen and built-in storage are its only downfalls though.

Other specs include a 2,000 mAh battery which is quite impressive for such a small device, and will offer awesome battery life better than the leading budget phones available. We also have an 8 megapixel camera and VGA front for video chat. All this is quite nice considering the RAZR M will only be $99 dollars. As far as hands-on and our first impressions — this device is rather nice. The design is a bit industrial with marks on the sides, but the display is awesome. Sadly it’s only qHD but having nearly no bezel around the device really makes it stand out during usage.
The device is one of the first to come with Google Chrome browser pre-installed out of the box and offers an exceptional browsing experience with the speed of Chrome and Verizon 4G LTE. The hardware has always been great from Motorola and this was no exception. The DROID RAZR M feels durable, well built, but has a slight industrial look to it. It should make tons of people proud especially for only $99 and a new 2-year contract. It’s available for pre-order starting today and will hit Verizon stores early next week. Who’s excited?


Popout


IMG6777-L IMG6775-L IMG6776-L IMG6774-L IMG6773-L IMG6771-L IMG6764-L

Motorola announces DROID RAZR HD, RAZR MAXX HD, and RAZR M


Motorola announces DROID RAZR HD, RAZR MAXX HD, and RAZR M 

by vinay gautam

Today Motorola announced three new Android 4.0 Ice Cream Sandwich powered smartphones for Verizon Wireless at their press event in NYC this afternoon. Two were expected and one was somewhat a surprise. That being the RAZR MAXX HD. The DROID RAZR HD and RAZR M have leaked multiple time the last month, but rumors of a MAXX version were squashed long ago. Head down below for full details.


The Motorola DROID RAZR HD and DROID RAZR MAXX HD are a subtle yet much improved smartphone over their older counterparts. The original RAZR had a wide 4.3-inch screen of low resolution, and an aging processor powering Android. Today they’ve matched the top-tier crowd once again by announcing the all new RAZR HD complete with a 4.7-inch Super AMOLED HD display (1280 x 720p) and Android 4.0 Ice Cream Sandwich.
Just like previous models they are super RAZR-like thin, wrapped in Kevlar coating for superior protection while remaining lightweight, and are powered by Verizon 4G LTE. The regular RAZR HD comes in at just 8.3mm thin while the bigger brother in the MAXX is a respectable 9.4mm instead for the added battery under the hood. Full specs you ask? These devices are powered by the popular 1.5 GHz dual-core Qualcomm Snapdraon S4 processor, 1GB of RAM, 32GB of internal storage (with micro-SD support) 8 megapixel rear camera with LED flash, 1.3 VGA front for video chat, and run on Android 4.0 ICS. Motorola showed them off running Jelly Bean here today — so we can expect that update to arrive very soon. The devices however will launch with Ice Cream Sandwich. The RAZR HD gets a large happy-medium 2,530 mAh battery while again the RAZR MAXX is 3,300 mAh promising 21 hours of talk time, 13 hours of video playback or eight hours of continuous web browsing.

Then Motorola also announced the DROID RAZR M which has been receiving tons of play in the news as of late. This edge-to-edge display packing smartphone is smaller than the original RAZR while having the same size 4.3-inch qHD (960 x 540) AMOLED display. It is also powered by Android 4.0 Ice Cream Sandwich and the 1.5 GHz dual-core S4 processor as the others. We still have 1GB of RAM and an 8 megapixel camera but instead comes with 8GB of internal storage. This is Motorola’s new budget smartphone. It is available for pre-order starting today for only $99 with a new 2-year contract, and will hit the streets starting next week.
We have hands-on pictures and videos coming up in a matter of minutes thanks to our sister site SlashGear, so stay tuned for a quick peek at the all new DROID RAZR line for Verizon Wireless.
IMG6764-L IMG6759-L IMG6755-L IMG6745-L IMG6700-L IMG6743-XL

Pantech Flex on AT&T announced for new smartphone buyers


Pantech Flex on AT&T announced for new smartphone buyers

by vinay gautam

This morning the folks from Pantech and AT&T announced a brand new smartphone that is not only targeted for first time smartphone buyers, but it will also appeal to the budget crowd as well as those seeking some solid performance. This device might only cost $50 but it packs plenty of goods like 4G LTE and Android 4.0 Ice Cream Sandwich so lets take a look.


They announced the new Pantech Flex as a budget friendly entry-level device but the specs are far from it. Previously leaked as the Pantech Magnus today’s announcement confirmed the details. Those include a 4.3-inch qHD 960 x 540 resolution display which is the lowest feature it has. Then you’ll get Android 4.0 Ice Cream Sandwich, 4G LTE, and Qualcomm’s 1.5 GHz dual-core Qualcomm Snapdraon S4 processor.
Pretty great for only costing users $50 right? Other specs include an 8 megapixel rear 1080p video capable camera, 2 megapixel front for video chatting, and a spacious and decently sized 1,830 mAh battery that should last plenty long.
Pantech has detailed an “Ease Experience Mode” that will streamline the user interface into a simple solution for newcomers to the smartphone market. This can easily be toggled off to enjoy Android 4.0 ICS too for those that aren’t complete newbies. The video provided by AT&T below will give you a better idea of what to expect from this decent little phone. The Pantech Flex will be available September 16th for only $50 after a new 2-year contract — which makes this phone a pretty good deal.


P

Verizon launches the Samsung Galaxy Stellar budget smartphone for free


Verizon launches the Samsung Galaxy Stellar budget smartphone for free

by vinay gautam

When we last heard about the Samsung Galaxy Stellar we knew it would be a low priced budget friendly smartphone for Verizon, but today they’ve taken the wraps off of the new mid-range smartphone and it’s looking quite good. The Galaxy Stellar will net you Ice Cream Sandwich and 4G LTE all for free with a new contract so check it out.


Yup, you read that right. This might not be the most powerful device from Samsung or Verizon but it offers Android 4.0 Ice Cream Sandwich in a decent package and 4G LTE speeds and won’t cost you a penny. The full specs include a low res 4.0-inch WVGA 480 x 800 display, 1.2 GHz dual-core processor, 1GB of RAM and a few cameras.
It isn’t all free though. The device will run you a new 2-year contract and a $50 mail in rebate so you will be spending a few dollars out of the gate. You’ll also get a 3.2 megapixel rear camera and VGA 1.3 front for video chatting and those lovely self portraits.
The Galaxy Stellar is aimed and new smartphone buyers with a “starter mode” to make usage and navigation easier for newcomers to the smartphone world (because it’s 2012) and they’ve even bundled some of Amazon’s most popular apps with the device. Just like the LG Intuition announced earlier this morning the Samsung Galaxy Stellar will hit Verizon September 6th and will only run you a $50 bill.
253566 253565 253564 253563 253562 253561

Recent Posts