Posts Tagged ‘HTML5’
Since the “flash crisis” (starting from the summer of 2013) a lot of game developers have collided with an issue of being crammed with outdated flash games with copyrights sold to various sponsors and game portals.
For the majority of the developers porting their old games to the new platforms could be an ideal option.
That is why I decided to write an article on how they could re-monetize old games with no great effort.
I suggest using HTML5 as this particular game platform allows making the porting without huge investments.
The article reveals the following questions:
- What games are suitable for the porting to the HTML5?
- How to make the porting qualitatively?
- How to sell the renewed game wisely?
Briefly about HTML5:
Firstly a few words, why I suggest using HTML5 for porting flash games: HTML5 is a widely known technology that has such syntactic features as , and elements, as well as the integration of scalable vector graphics (SVG) content (replacing generic tags), and MathML for mathematical formulas. These features allow to make it easy to include and handle multimedia and graphical content on the web without having to resort to proprietary plugins and APIs.
I guess it does not require a lot introduction, still for more information feel free to visit: http://en.wikipedia.org/wiki/HTML5
Below I would like to point out the main benefits and some shortcomings of using HTML5 for porting a flash game.
- Cross-platform (the ability to launch a game on any platform);
- The development of HTML5 apps takes relatively little time;
- Saves resources (writing of the universal code for all platforms is less costly in comparison with developing native apps for each platform);
- Easy bug-fixing.
- Possible productions issues;
- Some limitations of the mobile devices;
- Lack of the common standard for the browsers and devices (bug-fix could be quite time-consuming).
So, if you are concerned in porting you game to the web we could proceed to the first question:
What games are suitable for being ported to HTML5?
Not any game is suitable for being ported to HTML5. There are a few limitations that should be taken into account, for instance:
- While porting your game under mobile HTML5 the attention should be paid to the control. If the control is managed through the keyboard it means that apparently you will have to port the control as well in order to gain the desired game experience. It is possible to develop tab sensor, still it is not often useful because the player’s fingers hedge the majority of the display what leads to the gameplay/ levels reconstruction or even to rejecting the idea of porting the game.
- 3D games are not suitable for porting under the mobile web (WebGL technology is not supported by the majority of the mobile browsers).
The porting process is greatly depends on the HTML5 app building approach.
How to make the porting qualitatively?
While speaking about the games with Canvas rendering there would be a three- step approach:
- Porting the graphics
Art is almost the only thing that we would take from the old game, as the code will be written from a scratch. Porting of the graphics is a complex procedure. Its complexity depends on the initial game format. In the end we should get the raster version of every element of the game starting from the background up to effect animation.
This is the most significant and time-consuming process. It could take from 2 weeks to а couple of months depending on the particular game. Normally a game is developed with using a framework. The choice of the frame is not a simple question and deserves a separate article.
- Testing and bug-fixing
Worth mentioning that to make the testing of the mobile- web app as effective as possible you should use a number of mobile devices, at least the most popular. Otherwise it is possible to refer to the company that provides QA and testing services.
When the testing is finished the question regarding the distribution arises as well as regarding licensing and it’s specific.
Despite the fact that lately the positive tendency of the HTML5 games is observed, for many developers the monetizing issue is on the agenda. Still in case of applying the wise business model your HTML5 game could become quite beneficial.
How to monetize your game?
- Selling of the exclusive license
Basically the portal SpilGames bought the exclusive licenses and was a price leader for the developers. Still, recently a number of changes have been noticed in the company and it is quite unclear yet whether they will continue purchasing the content. In other cases, in order to sale an exclusive license you will have to make a good scouting.
- Selling the site-locks
It is one of the most prevalent ways to monetize the game. In average you could get the profit of about 200-600 USD per game. Just find active customers. Actually there are plenty of portals. First of all this is in interest to the flash games portals owners to keep the constant user base. Generally the users get their mobile devices and returning to the favorite flash game portals and are not able to launch any flash game. The owner of the portal whether loses this user or suggests the alternative- a game that could be launched on the mobile device browser. Another variant is to sell the unexclusive license through auction-portals like FGL.
- Revenue share scheme
In this case you give your game to be placed in a portal or a portal network and get a part of the revenue form the commercials that were shown in the game. The revenue is mostly depends on the customer, still do not expect huge profit. When it is about a good traffic and the customer is convinced in the profitability of the game, he usually will buy the site-locks.
- Self-promotion and commercials revenue
The developer integrates the commercials right in the game and gives it free on the partner-site. The revenue is counted on the basis of the commercials shown directly in the game. Thought in comparison with the flash market prime-time, nowadays there are no automated channels of distribution in HTM5 game dev. So it is manual work so far.
It is also worth mentioning that the Google AdWords (the most effective advertisement) will not suit for distribution of such game as Google requires direct linking to the domains where the game will be shown.
Some useful advice:
- Obfuscate you HTML 5 games in order to secure them from piracy. Sure, it won’t provide a perfect security, still will become an obstacle to steal the game and will filter out a number of pirates.
- Sell the game for a particular platform/ market. Reserve the title rights. HTM5 is a universal technology so you are able to convert your game to any platform market (HTML5, web, iOS, Android- these are three different licenses.)
- While selling the site-locks assure that the name of the portal as well as its mirrors are stated in the contract.
- Using the revenue share scheme request the access to the statistics.
Hope this tips would be useful. Also if you have any suggestions and better solutions, feel free to share in the comments!
The mobile world is continuing its rapid growth while we are becoming more and more reliant on our mobile devices in everyday life.
By 2016, it’s expected that there will be more than 10 billion mobile Internet devices in use, so the mobile application industry will grow tremendously to match the demand and keep up with ever evolving technologies.
Let’s have a look at obvious technologies trends continuing to influence the mobile world nowadays.
Three main platforms and architectures
In a short period of time a majority of big companies will need a special set of development tools to support three key platforms – iOS, Android, Windows and three application architectures – native, hybrid and mobile Web. Tool selection won’t be that easy, rising up technical issues and nontechnical ones such as productivity versus vendor stability. Undoubtedly most big organizations will need several tools to deliver to the architectures and platforms they require.
Being fragmented, immature and thus possessing many implementation and security risks, HTML5 won’t be a simple solution for mobile application portability. However as it matures, the mobile Web and hybrid applications will become more and more popular. So despite many challenges HTML5 faces, we could expect that it will be rather essential for organizations delivering applications across multiple platforms.
Advanced mobile user experience design
A vast majority of new techniques and methodologies such as motivational design, “quiet” design and “playful” interfaces contribute to exceptional user experiences most leading mobile apps have. Designers are also creating apps that can accommodate mobile challenges, such as partial user attention and interruption, or that can exploit technologies with novel features or “wow” factors, such as augmented reality. Leading consumer apps are setting high standards for user interface design, and all organizations must master new skills and work with new partners to meet growing user expectations.
High-precision location sensing
Knowing the location of a person to within a few meters is a key factor in the delivery of highly relevant contextual information and services. Applications that use the precise indoor location currently exploit such technologies Wi-Fi, imaging, ultrasonic beacons and geomagnetics. Such technologies as smart lighting will also become important. Precise indoor location sensing in combination with mobile applications will create a new generation of highly personalized services and information.
Mobile phone as a universal remote
Some time ago we had to stay in front of TV in order to turn channels. Later remote controls were sold with every TV and stereo on the market. Nowadays, our homes have become smarter and many people manage their homes with the help of a smart phone. In 2015, mobile applications are expected to move to the next level, becoming a universal remote control for your life. Air conditioner controls and alarm systems are heading the list with cars and door locks to go behind soon. With all the different data including financial, electronic, home and automotive deeply embedded in your phone, the general remote seems to be a usual extension.
Apps will start thinking for you
Artificial intelligence is going to influence mobile applications in 2015, initially with smarter apps that think for you. The ability of apps to forecast behavior and lessen manual work is amazing. In the year 2015, apps will begin to foresee where you are going, what thoughts you are having and the types of information you might require. Imagine future applications less of a tool and more of an associate.
The smartphone will become the center of personal-computer network consisting of wearable devices such as on-body healthcare sensors, smart jewelry, smart watches, display devices such as Google Glass and different sensors embedded in clothing and shoes. These gadgets will communicate with mobile applications to deliver information in new ways and include a wide range of products and services in such areas as sports, fitness, fashion, hobbies and health.
What are your predictions on mobile technologies trends for the upcoming time? Eager to hear your thoughts 🙂
There is no doubt that mobile industry is one of the most intensely growing nowadays. Any product that earlier used to be desktop or web is moving towards going mobile. Everyone is taking designing experiences for smaller screens seriously. As for the web, we’re seeing swarms of recently updated sites that are employing responsive design or more mobile-friendly layouts. This is quite critical, especially when you consider that accessing the web from mobile devices is on track to surpass desktop usage in a just a year or two.
With so many mobile apps/sites out there you have to do all it takes to deliver a good mobile product that will be competitive on the market. The key input for success here often is conditioned by the convenience of mobile services. You have to start predicting what the customer wants to see when they try a mobile application or website. The use of mobile context in delivering mobile experience is just one of the big challenges that application developers face. Here’s a number of the most important challenges we see.
1. Mobile Context
There has always been emphasis on context – the idea of being sensitive to where users might be and what they might be doing at the same time that they’re using your app/site. Is a user in line at the grocery store or on the living-room couch? Is a user connected to the Internet via Wi-Fi access, with fast page loads, or an infuriatingly weak Internet connection? Are both of the user’s hands holding the device in landscape orientation, or is the user using only the right thumb to navigate the interface in portrait mode? We have to think about all of this. Basically the customer’s mobile context consists of:
Preferences: the history and personal decisions the customer has shared with you or with social networks.
Situation: the current location, of course, but other relevant factors could include the altitude, environmental conditions and even speed the customer is experiencing.
Attitude: the feelings or emotions implied by the customer’s actions and logistics.
Getting a good contextual awareness will require collecting information from many sources. For instance it could be mobile device itself, the local context of devices and sensors around them an extended network of things they care about and the historical context of their preferences. Gathering this data is a major challenge because it will be stored on multiple systems of record to which your app will need to connect.
2. Device Proliferation
Another challenge facing mobile developers is device proliferation. It looked like mobile app development process was pretty well defined: build your app, make sure it looks pretty on a 4-inch smartphone and a 10-inch tablet, then submit it to an app store. Most app developers prioritized a few popular devices, such as the iPhone, the Samsung Galaxy S III and the iPad.
It’s not quite that easy now, and it’ll be much tougher in the near future. Picking the most popular devices will become more of a challenge as device types and platforms proliferate. Google and Apple already support tablets of different sizes and, with Windows 8 now shipping, developers can expect to find a whole range of larger touch-sensitive devices, such as Hewlett-Packard’s Envy series.
3. Voice rather than Touch
There are a lot of situations where you would want to build voice input into your app today. For a running or fitness app, a phone is likely to be strapped to a person’s sweaty arm. The same is true while driving. Modern applications are to let people use their devices while keeping their eyes and hands off it.
4. Hybrid Applications
With each release, popular mobile operating systems get better at supporting HTML5 and its attendant APIs. That capability will let companies reuse more code across multiple devices, which will be important in keeping app development costs down taking into account the proliferation of connected devices and form factors.
5. Cloud Powered Mobile Applications
With the power of the cloud, the mobile application market is about to change radically. Several industry analysts predict that mobile applications will gradually move to the cloud and move away from being installed and run directly from the handsets themselves. Instead, cloud powered mobile applications are accessed and executed directly from the cloud through a mobile web browser interface and several technologies facilitating this change are already available. HTML5, for example, is necessary for enabling caching on the handset, so that users will experience uninterrupted service levels despite fluctuations in network service delivery.
Cloud powered mobile applications are not limiting their choice to one platform. Application developers also have real advantages from mobile cloud computing. The largest benefit is that it allows them to have access to a larger market. This means developers will have a much wider market which means they can bypass the restrictions created by mobile operating systems. But with greater developers’ power comes greater responsibility for security and performance. Expect more developers to be on call for application support in the new model, using triage to handle defects and investigate degradation to production services. Those tasks have traditional been the domain of systems administrators. Expect IT operations personnel to become integrated into development teams and to start their work at the inception of an idea.
I think the challenges mentioned are some of the most important ones. What are the challenges you have already faced in the mobile development? Even more interesting to hear about the challenges you are envisaging for the near future! As usual many thanks for sharing your thoughts!
The Web as we know it have been born and matured on computers, but as it turns out now, computers no longer have dominance in it. According to a recent report by analyst Mary Meeker, mobile devices running iOS and Android now account for 45 percent of browsing, compared to just 35 percent for Windows machines. Moreover, Android and iOS have essentially achieved their share in just five years and their share is getting tremendously larger.
According to some forecasts their worldwide number of mobile devices users should overtake the worldwide number of PC users next year. If forecasts come true, this shift will not only continue, but accelerate. Based on data from Morgan Stanley, Meeker estimates roughly 2.9 billion people around the world will be using smartphones and tablets by 2015.
What does it mean now that more people are accessing the Web through tablets and smartphones rather than laptops and desktops? And is it really a big deal? Anyway, Internet is intended to be accessed from anywhere and thus from any device. Well, it is quite a change at least in terms most people consider the Web and how it gradually adapts to be used on mobile devices.
As mobile devices take over, the use of today’s desktop browsers like Internet Explorer, Chrome, Firefox, and Safari will decline. Mobile browsers are already very capable and will increasingly adopt HTML5 and leading-edge Web technologies. As mobile devices naturally have less screen area, the sites need to function more like mobile apps and less like collections of links. So the sites are likely to look like apps.
Apps may rule
Native apps for smartphones and tablets almost always surpass websites designed for mobile devices because they can tap into devices’ native capabilities for a more responsive and seamless experience. This is most likely to change in the nearest future – most experts agree HTML5 is eventually the way of the future. This is already the status quo in social gaming: for example Angry Birds and Words with Friends. Some services won’t be available at all to traditional PCs — they won’t be worth developers’ time.
Less information at once
Web sites and publishers will no longer be able to display everything new for users and hoping something will catch the user’s eye. Smaller screens and lower information density means sites will need to adjust to user preferences and profiles to customize the information they present. Increasingly, the Internet will become unusable unless sites believe they know who you are. Some services will handle these tasks themselves, but the most likely contenders for supplying digital identity credentials are Facebook, Google, Amazon, Apple, Twitter, and mobile carriers.
Sharing by default
In a mobile-focused Internet, anonymity becomes rare. Virtually every mobile device can be definitively associated with a single person (or small group of people). Defaults to share information and experiences with social circles and followers will be increasingly common, along with increasing reliance on disclosure of personal information (like location, status, and activities, and social connections) to drive key functionality. As the Internet re-orients around mobile, opting out of sharing will increasingly mean opting out of the Internet.
Emphasis on destination
Internet-based sites and services will increasingly function as a combination of content and functionality reluctant to link out to other sites or drive traffic (and potential advertising revenue) elsewhere. These have long been factors in many sites’ designs but mobile devices amplify these considerations by making traditional Web navigation awkward and difficult. Still URLs are not going to die – people will still send links to their friends and Web search will remain most users primary means of finding information online.
Going light weight
As people rely on mobile, cloud, and broadband services, the necessity to do things like commute, store large volumes of records or media, or patronize physical businesses will decline. Businesses won’t need to save years of invoices, statements, and paperwork in file boxes and storage facilities – cloud storage comes as their rescue. Banks will become purely virtual institutions consumers deal with online via their phones. Distance learning and collaborative tools will let students take their coursework with them anywhere — and eliminate the need to worry about reselling enormous textbooks.
Going mobile is an obvious trend today. Experts envisage that nearly every service, business, and person who wants to use the Internet will be thinking mobile first and PC second, if they think about PCs at all. Do you agree? And what other related changes can you imagine?
Many thanks for sharing your thoughts 🙂
Go-To Prescriptive Guidance for .NET Developers Building on Windows 8, Windows Phone 8 and HTML5
Telerik, a market-leading provider of end-to-end solutions for application development, automated testing, agile project management, reporting, and content management across all major Microsoft development platforms, has recently released “Platform Guidance for Microsoft.NET”. And , you know, it worth reading. It has been shared hundreds of times socially and is at the top of the list for Google searches. This document is easy to read and it highlights best practices and tips for .NET developers looking to leverage the latest Microsoft technologies. The advice is spot-on, and although somewhat basic, still worth your time.
I`d like to present a short overview of it. The goal of the document is to provide clear, direct guidance when picking a .NET platform. Platforms are suggested based on their ability to provide the most benefit for specific application scenarios relative to other .NET options. Platforms discussed within the guidance document include:
· Desktop Applications -WPF
WPF is still the choice for rich, beefy, custom Windows apps. However noticeable fact is that it wasn’t recommended for any of the other five scenarios. It’s comforting to hear that Silverlight is still a recommended technology however with some caution: Silverlight is also a good candidate for building desktop apps, sharing many of the same characteristics of WPF. While it seems clear that Microsoft will not release a major version beyond the recently released Silverlight 5.
· Dashboard/Reporting Applications – ASP.NET MVC with HTML5
Combination of ASP.NET MVC and HTML5 may be an ideal variant to maximize reach: ASP.NET MVC with HTML5 can give developers the power to build applications that are usable on any PC or mobile device. As we see HTML5 has surrounded us: assimilate or die J
WinForms can be a viable alternative for applications that do not need the power and richness of HTML5 or XAML
· Data-Driven Websites – ASP.NET MVC and Web API
ASP.NET MVC provides developers with maximum control over website rendering and helps to maximize performance.
· Interactive Web Applications (Forms over Data) – ASP.NET WebForms
In this case Telerik suggests using ASP.NET WebForms. It`s the most mature ASP.NET variant and it`s the fastest way to build “desktop-like” rich application with web technologies.
· Mobile Website – ASP.NET MVC HTML5
ASP.NET MVC with HTML5 is considered to be an ideal choice for mobile websites: HTML5 helps mobile websites deliver more functionality in a single view and ASP.NET MVC, with its highly configurable views, provides the simplest path for delivering HTML5 to devices.
· Tablet Applications – XAML and .NET
When this document was published Windows 8 was still in pre-beta and it didn’t get any recommendations; Telerik said it will update the document in time to reflect that. Also they promised to dwell on mobile development later.
Those were the recommendations from Telerik. And what are you personal recommendation regarding the choice of correct .NET technologies for a project?
Look forward to you comments.
Java has been around for a while. Soon after its initial inception, Sun started to push the platform towards the web. Now many years later, there are dozens of web frameworks and every now and then the same question pops up: which Java web framework is best.
No framework is perfect, they all have their merits and they all have their breaking points. There is not a single web framework out there that will work for all requirements out there, still there could be found arguments why one framework is better than others and for what types of applications. So let’s have a look at most viable Java web frameworks:
Servlets and JSPs
Some developers say that JSP technology is seriously outdated, while others see it from a little other point of view. The fact of the matter is that Servlets and JSPs do nothing for you – you do everything including mapping request parameters to objects and validating them.
Even with a big variety of frameworks out there, there is still a place for Servlets & JSPs. Smaller web applications are still quickly and cleanly built using them and you don’t need any external dependencies either. The only side note is that you do it properly, which means using Servlets to invoke business logic, using JSPs to generate the view and having JSPs contain no Java code, only JSTL tags and if you want custom tags.
Pros: good for a few pages/functions to implement
Some hate it, some love it. The main reason most people hate it is its steep learning curve and the fact that people use it for all the wrong purposes. Speaking of the right purpose, JSF is primarily aimed at being used to build web components for enterprise applications. It is excellent for creating complex user interfaces as the framework takes care of wiring UI components to backend classes with automated validation and transformations going on. Due to its stateful nature you even have an object representation of the web UI available to you server side.
JSF itself is only the base actually. It is designed to be extended, and many third parties do just that. On top of JSF you also have JBoss, Richfaces, Icefaces, Primefaces, Oracle ADF, Apache Tomahawk, JBoss Seam, Omnifaces, etc. They all share the fact that they extend core JSF with more functionality, which usually comes in the form of Ajax controlled “rich internet components”. Jboss Seam is unique in that list as it does not actually aim to extend, but “seamlessly wire together” many frameworks and technologies to the enterprise platform.
Pros: Good for medium to complex enteprise webapps where full control over the front end is not a requirement. If the application is built and designed around a solid backend, JSF 2.1 is your friend.
Cons: Not an easy material. JSF is hard, and there isn’t rich online documentation. If your application aims around a rich and dynamic web 2.0 front end, JSF is not your friend.
Spring framework is not quite a ‘web framework’, but it is unique. IT shares JBoss Seam’s aim in wiring together many different technologies, both frontend and backend. You can use it as an alternative to Java Enterprise Edition technology, but you are just as free to wire Spring and JEE technologies into the same application.
So what does Spring offer itself? A bunch! It has a bean autowiring system to replace (or extend) the dependency injection model as it exists in the JEE specification. It also has an incredibly strong security model. Additionally instead of manually constructing objects, you “inject” them from a Spring managed context. Next Spring has a strong emphasis on the Model View Controller pattern. Spring provides default controller types for example, but you can also implement your own. As for the model layer the framework can setup JDBC, Hibernate, JPA, etc. for you and it can even manage the sessions and transactions. And finally it offers a built in web front end framework with easy to use annotations. I guess there is much more to add to this.
Pros: Excellent for building and maintaining large enterprise applications that also target other legacy systems and technologies. Spring is so flexible you’ll have the least trouble adapting it to whatever you already have floating around. Also there is a huge community around Spring.
Cons: Clunky due to its hugeness. There is also a big amount of legacy that the framework has to drag around.
Struts 2 is actually quite a clean and neat framework. If all you want to do is create simple web applications, “web 2.0” or otherwise, then it isn’t a bad idea at all to consider Struts 2. But it has limitations. The security model is weak. In this world of web heightened security demands, the framework does nothing to assist you or to help you prevent doing it wrong.
Pros: Good for web applications that do not have high security demands but will be a mix of complex forms and dynamic frontend pages. Low learning curve.
Cons: Weak security
Wicket is also friendly to the developer. It integrates nicely into IDEs and even has built in support for hot-deployment making it far easier to change and debug your applications. Also boring and cumbersome features like making your application multilingual is made incredibly easy.
Pros: Wicket can handle most webapp needs including those that are oriented on the back-end and those that are oriented on the front-end.
Cons: Weak documentation (including the books); the alternative API design.
GWT offers incredibly powerful browser user interface capabilities; using it you can create the coolest web front ends with relatively little work. Google creates most of its own online web services using GWT.
On top of GWT itself Google also provides you a wide range of tools, for example a rich set of plugins for Eclipse. This makes it a complete package that is completely carried by Google itself. This keeps it all tightly integrated and documented, which is a big plus for a web framework.
Pros: Good to create highly complex and feature rich web user interfaces
Cons: The framework is different from any other framework out there. When you want to use it you start from scratch, so it may make it hard to adopt it for a new project.
This framework is relatively young. It lays down the rules, brings the conventions and provides you the foundation to allow you to quickly and painlessly develop web applications, without boilerplate, dependency conflicts or layer upon layer of configuration.
This framework can utilize the benefits of the Scala language (but it is also built for the Java language). The same is true for Play 2.0 which is out right now, and more so. This is mostly because the framework is modeled almost entirely after Ruby on Rails 3 including the available tooling.
Pros: stripping away the boring part of Java web development; being completely stateless and Rest-enabled; providing perfect hot-deployment without need for JRebel or JPA entities; integrates with many popular and important web technologies; manages dependencies for you without needing to learn the complexities of Maven; consolidates web dev into a neat package; incredibly easy ORM model based on Hibernate and JPA 2.0, with an additional layer that takes away the cumbersomeness.
Cons: The programming model is quite counter-intuitive; navigation is based on throwing exceptions. deploying is a bit of a mess using Play as you don’t deploy classes, you deploy the source files. The (alternative) way you manage a Play project makes it difficult to integrate it in for example a JEE application in a way that is easy to maintain.
For sure there are many, many more frameworks to be discussed, but most of them serve the same purpose. Could you pass out your personal recommendation what frameworks is better to use and for what types of application?
Thanks a lot in advance for sharing your advice!