Windows Store c developer’s perspective

Windows Store for Windows 8 is still quite young. Some developers have had time to try out the others have not yet decided. Today I want to talk a lit...


Windows Store for Windows 8 is still quite young. Some developers have had time to try out the others have not yet decided. Today I want to talk a little bit about how this application store looks like from the inside, from the point of view of the developer.

Part Of The Solution

As one of the young stores for apps i.e. Windows Store, in theory, would have to absorb the best of Google Play as well as the App Store. But in practice it turned out that such thing did not happen.

Let’s start with registration procedure. During registration, you must specify the basic information about yourself, indicate your country and pay a small fee. Be careful! The country indicated is not changeable  later on.

Tax Profile

In order to start selling paid applications it is not required to fill in a tax return. The form can be filled in online: send by regular mail or by fax will not need it. The whole point is not that. After filling the form, you will be able to see the next thing on the screen:


Try to guess what’s that mean: “Your tax return is completed correctly. Please correct the error. ”

After the third unsuccessful attempt to complete the forms I had to ask Google what’s wrong. The forum found in search results showed me the a clue. The inscription “Your tax return is completed correctly. Please correct the errors “actually means that” means that we have received your form and check it in the near future “(Well, how one can guess that at the first attempt?). And indeed the next day it had demonstrated a sign “Valid” near by.

Let’s add the application

By clicking on the button “Add Application» (Submit an app) appears very nice screen, which is where the all the steps that need to be done.


Step One: the application name

As for me it is done a bit without logic. The application name must be specified when building an application in Visual Studio. But, if you have the name localized into different languages the ​​translation must be specified at the time of assembly. Then all the names that you specified during assembling stage, you must manually reserve the tab name of the application. If you forget to reserve one of the titles the application packages you will not be approved because of the fact that the name is not registered.

Step2: Information for sale

Probably the only thing that I liked in Windows Store is an opportunity of Trial mode for paid applications. You specify the period and Trial, after which the user will be prompted to purchase the full version. The most remarkable that for this you will not have to make any changes to the application itself. Windows Store takes care of everything!


Step 3: In-App purchase

We are now in the year 2013 but Windows Store is not able to proceed Consumable purchases (purchases that one can make unlimited number of times like game currency, tips, etc.). But it knows how to shop with a shelf life period for any product. For me their purpose is not entirely clear what they are really offering. But it is thanks to them that the developers were able to use a “crutch” for the sale of “coins”. Instead of goods 100_coins, hammered goods 100_coins.1, 100_coins.2, … for one day. These products are sold in a circle.


Step four: Game Certificates

That’s a different story. Although applies only to games, but I should pay attention to. There are countries for distribution, in which you must provide a certificate confirming the minimum age of the player. Here the worst solution was chosen. If you forget to download the certificate, such as Brazil, but accidentally pointed it in the list of countries for distribution, then the error you learn only five days after the test application. Why this is the worst decision?


Four steps to get a position in Google without higher education



How to obtain an IT engineering position at Google having no higher education? Well, let me tell you a story…

Like us I used to go to the university. I chose the University of California in LA (Los Angeles). Unfortunately, at school I had a small grade point average (2.45 on a four point scale) so I could not enter the UNI that time. Instead of that I went to the computer science courses at a local university.

Step number 1: cheat as long as you are able to do that

While studying on courses, I worked in parallel in a small company in Griffith, Indiana creating websites for local small businesses being paid 12 USD / hour. The job, of course, was not exactly the one I had dreamed for myself in the future but things could be worse.
I tried to keep a low profile as well as the promises given to the stock so that I could handle things on time with a little earlier effort. He worked in various projects. The company has earned good on me. In the meantime, I tried to create a game during spare time which was a little.
Well, somehow someday I went to management team and asked for the chance within 3 months to finish the game at their own expense and start selling it online. Thus, I made tables and colorful graphics being as shareware-model demonstrating how much you can get. I had a vague idea of all of it but by some miracle they trusted in me. Maybe, because of the colorful graphs so after two months of development I managed to launch the demo version online.

At some stage we got a message from a young startup in California under the support CodeFire saying they are doing the same game! That was a Space-shooter with a view from the top like SubSpace made in 3D. In the notification they demanded to stop my game due to some royalties reasons. For that I coluld only respond positive if you hire me in revert. And they answered a job offer! That’s why went to them. The Company has retained the rights to the original game. I alerted the previous employer that I am leaving within three weeks and we parted on good terms.


Step number two: Make friends with the professionals

This is probably one of the most important things you are to do. Try to find someone who is a professional in the current business and make him your mentor. And never stop learning. While working in the Double Helix I had a mentor Nathan Hunt whom perceived as one of the most intelligent and the most humble guys I’ve ever met. He used to be a very patient despite my silly questions. I must have a thousand times went to his office for the answer to another stupid question. Years later, he would join Google in a month after me. Every one of my mentors has changed something in me and in my vision of the world. And this is only a small part of what they gave me.
Step number 3: Fill in the gaps in your knowledge background.

Once I did not have higher education I was not aware about many fundamental things. For example, I implemented a php engine but never faced dynamic programming  which is a way to solve complex problems by breaking them down into simpler sub-tasks. Thus, to overcome these shortcomings and lack of knowledge I have implemented almost all of the most common algorithms and data structures that I have heard or read. The required information can be found in abundance, but there is a huge gap between the observation of how things work and understanding of the nature of the work.

Over time you are to do the following:

  •   Become a professional in at least one of these languages: C, C + +, Objective-C, Java, PHP, Python, orRuby. Fluent in at least one other language and get acquainted with languages such as Scala, Haskell or Lisp.
  • Study the structure of the data. Make the implementation of most of them. You also need to understand the time complexity of algorithms (O – notation evaluation of algorithms).
  •   Solve puzzles on the programming. Read them and try to solve the problem right here.
  • Build up your portfolio. (E.g. written by you frameworks various applications, small game and so on)


Step number 4: Be sure you have self confidence

Six years later, after moving from Indiana I completed the development of six games based on different platforms. After some time I got bored and needed something new. So I sent a resume to Google, and thought that if they took me I would have become an engineer as “consider myself inferior” due to the lack of desired paper. But I never got an answer, which actually was not surprised.

A year later I again sent them my resume. But this time I removed “Education” section completely. Ironically, the recruiter called me to arrange a preliminary interview on Skype. I asked to reschedule the interview for two weeks later, and he agreed. I needed this time. I used these two weeks to cram into your head as much as possible of algorithms and data structures. I programmed the 12-14 hours a day and decided to hundreds of tasks during this time. I was obsessed and did not stop until my fear of the interview in Google has not turned into certainty. I remember each of my interview at Google. It was a stunning fashion. Since the interviewers were quite interesting to say. They saw my excitement and were friendly to me.

Some of the tasks that were given to me:

– Given a set of two-dimensional points, you need to calculate the horizon. That was easy. I took advantage of a data structure known as a binary heap. That’s one of the solutions to this problem
Configure Microsoft Paint.  It was the most fun task. I started by making a diagram of interfaces and classes. I mentioned the tool “fill” and the interviewer asked me to realize it. Fortunately, I knew how to do it with your eyes closed.
– Describe your view of the good tone in programming. It was an open discussion. I talked about what test methods available and when they should be used (for example: Unit testing, Integration Testing, Acceptance Testing). I talked about a similar style of code. And so on. This can be found in books Code Complete and Effective Java

I truly enjoyed every round of interviews. If I was not prepared, I’m sure it would have been very different. After the interview, I had a very good feeling, I was pleased. But, I heard that even if the recruiters made good, Larry himself must approve the candidate. I was afraid that as soon as he sees my lack of education, then the story was over.
But that did not happen, and one day when I was eating sushi at a dinner in Santa Clare, they called me and I enthusiastically accepted the job offer. On that day, I knew that I would never return to school.

AN/FSQ-7 is the most frequently shown computer in movies in Hollywood history


Computers as tools to handle military purposes

Even during the Second World War the U.S. Navy made an offer to Massachusetts Uni (MIT) on the possibility of a flight simulator to train bomber crews. After the success of the ENIAC program in 1945 they decided to use for such purpose the computer and leave unsuccessful attempts to create an analog calculator.
The project is significantly delayed and was fully completed after the end of World War II. So it was not clear enough what to do with Whirlwind computer generated since military guys lost the interest towards it. However, the machine itself was of historical importance since both Whirlwind and unrealized Whirlwind II became the basis of Jay Forrester’s proposals for creation of defense system.
The project development was speed up by the fact USSR obtained nuclear weapons and “strained” relations amongst the two superpowers. Already in December 1949, the Committee for air defense led by Mr.Dzheordzhem Valley recommended computerized calculations for radar stations. Forrester and Valley used to be pioneers in foundation for future system SAGE the development of which was worth about $ 10 billion in 1954 and included the creation of 24 command centers equipped including computer AN/FSQ-7, record the amount of which has never been broken .

In fact, the computers were key component of the system. One can easily see hundreds of Q7 panels with their switches, buttons and flashing lights which looks like a paradise visuals for movies. That’s why Q7 is the removable computer in the history of mankind so far. Different parts of it even nowadays appear in the picture despite the fact that it was created at the dawn of the computer age and was not used anymore since 1983.

In September 1953 the contract for supplement of two prototypes on the basis of unrealized plans Whirlwind II with IBM was signed. And on October 28 of the same year, the Air Force Board recommended to accumulate funds from the budget in 1955 to finance the automated system “Linkoln” (in 1954 renamed SAGE). In 1955, the pilot was completed subsector SAGE in Lexington, and by October the building a prototype AN/FSQ-7 called XD-1, initially working without a display.
Air Force staff started training in Kingston (New York) in 1955 and by the year 1959 it was already held 2000 simulated interceptions and the first real one started in August 1958. Conducted extensive tests of the mathematical model of the algorithm ATABE (Automatic Target and Battery Evaluation) using real military radar readings that pinpoint training violations defense sector (in particular, military exercises Skyshield).

Some words about characterisics

Each of the 24 “monster s” had a inside 49 thousand vacuum tubes with external systems each item contains about 60 thousand light bulbs and weighed around 250 tons occupying 2 thousand square meters i.e. three floors of fortified buildings SAGE being located at various points in the United States and Canada. The overall performance was high for the day comprising 75 million operations per second which enabled the personnel to track up to 300 aerial targets. To the computer could connect 100 console operators, including a monitor with a light gun for the purposes of allocation, lighter and ashtray.
To ensure reliable operation of the system RAM Q7 had overlapped elements so that to ensure the perfect processing and control for arithmetic units as well as input-output monitoring and software elements. Thus, each of the Q7 represented the union of two independent computers called in Latin letters A and B. They did not function at the same time but when the A performed the B was in stand by mode and might be served before they switch roles. On average, each of the computers consumed one megawatt of electricity.
Each computer was equipped with a card punch IBM 723 and IBM card reader 713 with an auxiliary storage device based on a magnetic drum (50 “lots” of 2048 computer words each) and magnetic drums IBM 728 i.e. the devices enabling the exchange of information with other systems of SAGE.

Mr. Mike Leven, who served in the U.S. Air Forces in 1982-86 and who used one of the last running AN/FSQ-7 has at first noticed the familiar panel on TV era in mid-60th. After watching “The Time Tunnel” he became interested in what other movies showed this tube monster. Thus, in the “Wormhole» Q7 performs the role of a secret government project time machine, built by the Arizona desert.
The emergence of computer AN/FSQ-7 would most logically in the movie “Dr. Strangelove or: How I Learned to Stop Worrying and Love the Bomb” since there the computer system demonstrated it’s direct function of air defense but the comedy of Stanley Kubrick uses the old IBM 7090/94.
Amongst some of the most popular films in where there was Q7 we see ” The Independence Day» shot in 1996. Although the last series of the computer were released about 13 years before that the system is presented in the film like a modern one.

BlackBerry 10 sounds like Android is better than Android


What are the applications in BlackBerry App World 10?

Sometime ago BlackBerry being known as former Research in Motion has announced that the store BlackBerry App World 10 for 100 thousand applications.

Although I can only applaud such an impressive number of applications the developers managed to ship to the store for such a short period of time before the U.S. release of Z10 but BlackBerry was slow to discuss what kind of applications they are.

And only on Tuesday they confirmed a figure of approximately 20% of all applications stored in BlackBerry App World 10 are essentially remade Android applications.

If you go back in the nearest past i.e. in the first quarter of 2011 RIM finally confirmed that the rumors about what went more than a month and a tablet PlayBook, running on the same fundamental OS QNX as the BlackBerry 10 will support Android-applications as well as Adobe Air or HTML5 and native applications for QNX C / C + +. In fact, sounds like «one Android is better than Android» if I may say so. But the more I think about it – the more I get a feeling of of deja vu.


How the story was going on

In fact, this happened 20 years ago when the vendor who  tried to do such thing was IBM with it’s operating system called OS / 2 2.0.

Well, in 1992 IBM and its OS / 2 has successfully managed to create a «DOS better than DOS, and Windows better than Windows».

It was a full 32-bit operating system which could work with large amounts of memory whereas DOS and Windows 3.0 could not. There was a preventive multitasking while in DOS and Windows 3.0 was not there. OS / 2 was able to protect the native applications in separate memory areas, and DOS and Windows 3.0 – could not know how. It could also play DOS and Windows 3.0 in its own separate protected areas of memory that DOS and Windows, too, could not.  Also, it was the first operating system for PCs that shipped with virtualization Windows. It is incredibly ahead of its time.

On OS / 2 worked so well DOS and Windows 3.0 that it used to be very difficult for IBM to convince third-party developers to write native applications for the interface OS / 2 Presentation Manager. However, the OS / 2 itself had a smooth compatibility with Windows. There were problems with the application to Enhanced Mode with some specific types of drivers called VxD.

Eventually, the new versions of IBM OS / 2 has decided most of the issues of compatibility. But it was very difficult to keep up with the changes that are made to Microsoft. In 1993, when Microsoft released Windows NT 3.1, most of the benefits of OS / 2 is no longer perceived as the computer industry exclusive.


Today, Windows NT can be recognized in Windows 8 or Windows 7 and even Windows XP. BlackBerry in its new mobile operating system is in a very similar position since, the implementation of QNX on BlackBerry hardware is extremely impressive, it is flexible and advanced. And this is to be expected from such a mature integrated real-time system which is the QNX. This is in sharp contrast to iOS, Android, and even Windows 8 and Windows Phone 8, which are not real-time systems.

Moreover, I believe that a number of architectural aspects as QNX operating system stands higher than both iOS and Android. I tested a few weeks Z10 from AT & T and found it amusing device, with interesting features that distinguish it from the two mentioned platforms, as well as Windows Phone 8, which I also tested it and found it very interesting.

At first I was hoping to be compatible with Android BlackBerry go the way of virtualization instead of native emulation layer with porting native Dalvik VM, as it eventually did.

What’s BlackBerry 10 is facing today?

Personally I expect the solution for BlackBerry 10 being full stack in Android 4.x mobile hypervisor such as for OKL4 or VLX from Red Bend.

In this case, RIM does not have to be anything “port.” Inside QNX could be run full copy of Android along with a complete Linux as a “guest” of the system. But this has not happened. I do not want to say that such an approach would be completely free of risk. The hypervisor should be very optimized for performance and BlackBerry users would expect a 10 Android-work applications, which would approaching native. In the opposite sense, the compatibility mode is not particularly useful.

To the running application of Android NDK, a hypervisor-based virtualization should be the only way to achieve true binary compatibility. But as in the BlackBerry 10 is used just part of the Dalvik Android, it can not play the application NDK. These applications need to port with the native SDK QNX for C / C + +.

I have to also mention that there are a number of other software limitations in addition to the NDK disturbing the implementation of Android 2.3.3 API in the BlackBerry.

Regardless of how the implementation of Android in the new mobile OS BlackBerry, is another question: will it work with Android a “chilling effect” on native development in C + + and Adobe Air, which was in the OS / 2 as a result of compatibility with Windows 3.0?

There is another potential problem which loks quite serious.

There is always the possibility that in the future Google will implement in it’s Dalvik VM great architectural and code changes within the framework of Android Open Source Project which somewhatl destroy the Dalvik implementation to BlackBerry and cause serious problems of compatibility with applications written for future versions of the Android API.

In this case, BlackBerry will need to constantly re-ported Google’s Dalvik to QNX, to keep up with all the changes. Such approach may require substantial resources likewise IBM had to constantly monitor the compatibility of OS / 2 to Windows but that’s worth doing.

New FCC chair closely guards his strategy to restructure net neutrality


New FCC chair closely guards his strategy to restructure net neutrality

Tesla may launch in India this summer: Musk


Tesla may launch in India this summer: Musk

At Snap, cost of hosting sets high bar for revenue growth


At Snap, cost of hosting sets high bar for revenue growth

As nuclear loss grows, Toshiba needs chip investors, soon


As nuclear loss grows, Toshiba needs chip investors, soon

DirecTV Now: A trial is free, but it’s a hard sell for some


FILE – In this Monday, May 19, 2014, file photo, traders gather at the post that handles AT&T on the floor of the New York stock Exchange. AT&T, says that the market vir’n new internet service cable, [ Now, it can be as large as 20 million homes. (AP Photo/Richard Came, File)

NEW YORK (AP) – AT&T, says that the market vir’n new internet service cable , [ Now, it can be as large as 20 million homes. To put it to the test, I’m farming out part of this review ofâ number of friends and family. It is the TV, it’s fun, there’s a free trial without any problems. Why wouldn’t people jump at the opportunity to try something new?