Posts Tagged ‘mobile’
Introducing ASP.NET Core:
ASP.NET Core is a new open-source and cross-platform framework for building modern cloud based internet connected applications, such as web apps, IoT apps and mobile backends. ASP.NET Core apps can run on .NET Core or on the full .NET Framework. It was architected to provide an optimized development framework for apps that are deployed to the cloud or run on-premises. It consists of modular components with minimal overhead, so you retain flexibility while constructing your solutions. You can develop and run your ASP.NET Core apps cross-platform on Windows, Mac and Linux. ASP.NET Core is open source at GitHub.
The framework is a complete rewrite that unites the previously separate ASP.NET MVC and Web API into a single programming model.
Despite being a new framework, built on a new web stack, it does have a high degree of concept compatibility with ASP.NET MVC.
ASP.NET Platform exists for more than 15 years. In addition, at the time of System.Web creation it contained a large amount of code to support backward compatibility with classic ASP. During this time, the platform has accumulated a sufficient amount of code that is simply no longer needed and is deprecated. Microsoft faced a difficult choice: to abandon backward compatibility, or to announce a new platform. They chose the second option. At the same time, they would have to abandon the existing runtime. Microsoft has always been a company focused on creation and launch on Windows. ASP.NET was no exception. Now the situation has changed: Azure and Linux occupied an important place in the company’s strategy.
The ASP.NET Core is poised to replace ASP.NET in its current form. So should you switch to ASP.NET Core now?
ASP.NET Core is not just a new version. It is a completely new platform, the change of epochs. Switching to ASP.NET Core can bring many benefits: compact code, better performance and scalability. But what price will be paid in return, how much code will have to be rewritten?
.NET Core contains many components, which we are used to deal with. Forget System.Web, Web Forms, Transaction Scope, WPF, Win Forms. They no longer exist. For simple ASP.NET MVC-applications changes will be minor and the migration will be simple. For more complex applications, which use a great number of .NET Framework classes and ASP.NET pipeline situation is more complicated. Something may work and something may not. Some part of the code will have to be rewritten from scratch. Additional problems may be caused by WebApi, because ASP.NET MVC subsystems and WebAPI are now combined. Many libraries and nuget-packages are not ready yet. So, some applications simply will not have a chance to migrate until new versions of the libraries appear.
I think we are waiting for the situation similar to the transition from Web Forms to ASP.NET MVC. ASP.NET Framework will be supported for a long time. First, only a small amount of applications will be developed on ASP.NET Core. Their number will increase, but sooner or later everyone will want to move to ASP.NET Core. We still have many applications running on the Web Forms. However, no one comes to mind to develop a new application on the Web Forms now, everybody chooses MVC. Soon the same happens to ASP.NET Framework, and ASP.NET Core. ASP.NET Core offers more opportunities to meet modern design standards.
The following characteristics best define .NET Core:
- Flexible deployment: Can be included in your app or installed side-by-side user- or machine-wide.
- Cross-platform: Runs on Windows, macOS and Linux; can be ported to other OSes (Operating Systems). The supported OSes, CPUs and application scenarios will grow over time, provided by Microsoft, other companies, and individuals.Command-line tools: All product scenarios can be exercised at the command-line.
- Compatible: .NET Core is compatible with .NET Framework, Xamarin and Mono, via the .NET Standard Library.
- Open source: The .NET Core platform is open source, using MIT and Apache 2 licenses. Documentation is licensed under CC-BY. .NET Core is a .NET Foundation project.
- Supported by Microsoft: .NET Core is supported by Microsoft, per .NET Core Support.
- As for the “cons” one of the biggest issues are gaps in the documentation. Fortunately most of the things for creating and API are covered, but when you’re building an MVC app, you might have problems.
- Next problem – changes. Even if you find a solution to your problem, it could have been written for a previous version and might not work in the current one. Thanks to open source nature of it, there is also support available on github. But you get same problems there (apart from searching).
- Another thing is lack of support in the tooling. You can forget about NCrunch or R# Test Runner. Both companies say they will get to it when it gets more stable.
- ASP.NET Core is still too raw. Many basic things, such as the Data Access, is not designed for 100%. There is no guarantee that the code you are using now will work in the release version.
- It’s modular. You can add and remove features as you need them by managing NuGet packages.
- It’s also much easier and straightforward to set up.
- WebApi is now part of the MVC, so you can have class UserController, which will return a view, but also provide a JSON API.
- It’s cross-platform.
- It’s open-source.
ASP.NET Core is the work on the bugs of the classic ASP.NET MVC, the ability to start with a clean slate. In addition, Microsoft also aims to become as popular as Ruby and NodeJS among younger developers.
NodeJS and ASP.NET have always been rivals: both – a platform for backend. But in fact, between them, of course, there was no struggle. The new generation of developers, the so-called hipster developers, prefer Ruby and Node. The adult generation, people from the corporate environment, are on the side of .NET and Java. .NET Core is clearly trying to be more youthful, fashionable and popular. So, in future we can expect the .NET Core and NodeJS to be in opposition.
In its advertising campaign, Microsoft is betting on unusual positions for it: high performance, scalability, cross-platform. Do you think that ASP.NET “crawls” on the territory of NodeJS? Please feel free to share your thoughts with us.
Thank you in advance!
Business Development Manager
Professional Software Development
Can you spend a day without your smartphone? I can hardly imagine it.
Could we imagine about 10 years ago that we would use smartphones and tablets every day, everywhere for almost everything: playing games, ordering taxi, watching tv, ordering food, etc? Possibly, not.
The mobile application industry is growing increasingly fast. It`s almost beginning of 2016 and it`s time to speak about top mobile app development trends that will rock this year.
Cloud driven apps will be on top
Cloud is going to play a leading role for a number of mobile apps in 2016. The cloud gives the possibility to sync apps across multiple devices. As the number of people using multiple mobile devices ( smartphones, tablets, wearables) is on the rise, the cloud approach makes it easy for them to access any data from any channel. Also, thanks to the cloud, app developers can retain the small size of mobile apps.
Gartner.com predicts that by 2018 at least 30% of service-centric companies will move the majority of their ERP applications to the cloud.
Focus on Mobile apps security
We witnessed a great increase in information leaks and hacker attacks in 2015 that affected a lot of organizations from small companies to industry giants and government organizations. Reports just prove this fact, more than 75% of mobile applications would fail basic security tests in 2015.
This is horrible as many mobile applications store sensitive and personal information. Gartner predicts that by the end of 2016, more than 50% of global 1000 companies will have stored customer-sensitive data in the public cloud.
So security is a key principle mobile developers should focus on in 2016.
IOS has proved itself as the most secure platform. Android has always been claimed as a non-secure platform, however developers paid more attention to security issue in the latest Android versions.
Shift towards enterprise mobile applications
This trend of the year 2015 will continue to boost in 2016.
According to a survey conducted by Vision Mobile in the beginning of 2015 43% of developers working on enterprise apps were making more than $10,000 per month. In comparison, only 19% of the app developers focusing on consumer apps were making a similar income. The percentage of successful enterprise apps developers is double the percentage of consumer apps developers.
So it`s not a secret that mobile apps developers will focus more on enterprise applications development to generate more revenues
Internet of Things / IoT and wearables
We have seen a big increase in usage of wearable devices in 2015 and this trend will continue to boost in 2016 as well. Certainly, IoT is still in its infancy and it`s mostly consumer based at the moment, but it`ll be adopted for commercial as well as industrial use.
Wearable tech devices, such as Google Glass and iWatch, have already created a huge buzz in the market and are becoming more and more popular.
Analysts predict that IoT will be the next big technological breakthrough and more and more people will be connected to “Things” in the nearest future.
It means that mobile developers and entrepreneurs should be prepared for this trend and consider IoT and wearable technology while developing new applications.
Focus on swift programming
Swift, a relatively new programming language from Apple, has already gained quite a substantial popularity. Apple’s CEO, Tim Cook, claimed that this set of tools was downloaded more than 11 million times in the first month alone. Now, these numbers are bigger.
Swift is designed as both an application language and a systems language and gives the possibility to develop apps for iOS, OS X, watchOS, tvOS, and so on.
I`m sure we will hear more about Swift in 2016.
Vaster adoption of location based technology/ Beacon
Another great trend for mobile developers is beacon technology.
This technology has already revolutionized the shopping experience and is expected to be adopted by other domains other than retail for its location tracking benefits.
New cross platform tools
With the rise of wearable devices, smart TVs, mobile applications need to suit the requirement of multiple platforms and devices. Cross platform tools may be a good solution. Sencha, Titanium, Unity 3D, Cocos2D, PhoneGap, are already playing a big role in the mobile app development market. In 2016 we may see the emergence of new cross platform development tools.
So, this was a short list of mobile app development trends that will be on their rise in 2016. I`ll be happy to hear you opinion on the future of mobile industry. What trends would you like to add to our list?
Business Development Manager
Professional Software Development
Java brings a lot of popular and user-friendly frameworks, content management systems and servers that help to simplify the application development process, website management process and much more irrespective of the size and complexity of the project. When it comes to CMS, Java possesses a host of CMSs that have been highly recognized in the market, but one CMS that has gained great popularity and attention from the developers and companies across the world is Magnolia.
Magnolia is an open source content management system which delivers exceptional simplicity on an enterprise level, combining user-friendly usage with a standards-based and flexible Java architecture. Companies such as Airbus Group, Al Arabiya, Avis and Virgin America use it as the central hub for their web, mobile and IoT initiatives. Founded in 1997, Magnolia is a privately-held company headquartered in Basel, Switzerland. The company has offices around the globe, and customers in over 100 countries.
Making a good CMS to cater the needs of the clients is never an easy task, and the developers Magnolia knows this thing better. Hence, Magnolia brings some of the much needed features and functionalities for the enterprises.
• Magnolia comes with a smart cache, a built-in clustering capabiliy and distributed deployment architecture that easily decouples authoring from publishing and the possibility to develop load-balanced public servers to bring more throughput and availability.
• It also offer code highlighting for the designers & developers, easy integration of 3rd party frameworks, extendable workflow, J2EE compliance, RSS generation & aggregation and more for the customization.
• When it comes to designing, it brings standard-based templating in JSP and servlets, unlimited page and component design, Freemarker as a template engine, custom tag library to speed up templating and pluggable templating engine for the designers.
• It brings Open APIs, advanced caching strategies, unlimited scalability, clustering & load balancing, transactional activation and tons of other performance related features & functionalities for the enterprises.
• From the security point of view, Magnolia brings flexible user permissions using role-based user management and distributed architecture, which is a need of today’s enterprises.
• It also enables team work through concurrent editing, deletion, address book, workgroup collaboration and some other features.
Apart from all these, Magnolia also enables search engine optimization, content tagging, configurable workflow, content versioning, social media integration, multilingual support, multi-site management, mobile publishing and tons of other enterprise-scale functionalities.
However, like any other technology or platform, Magnolia also has some advantages and disadvantages. Let’s take a look at each of them:
• It’s an open source.
• User friendly, easy to use for Administrators/Content Editors/Authors
• Good set of standard components in the standard templating kit (STK)
• Very flexible, almost anything can be customized
• Vast set of open modules for many additional features
• Leverage from page-based site or navigation.
• It utilizes installer, but the WAR files can be used to redeploy it to some other place.
• Steep learning curve
• Inconsistent or lack of documentation
• Configuration via JCR-Tree can be error-prone and not very transparent
• Versions -4.5, 4.5+ and 5 all have shifts in paradigms
• Versioning and collaboration
All in all, Magnolia is a very promising CMS that integrates well into an enterprise java stack. It is predominantly suited for medium to large businesses where processes need deep integration and customizations. With regards to small businesses, Magnolia might be somewhat of an overkill.
How about you? Did you have a chance to work with Magnolia CMS? What is your attitude to it?
Please feel free to share with us your thoughts and experience here below.
Business Development Manager
Professional Software Development
iBeacon is the name used for Apple’s technology that provides location-based services and information to mobile applications on both Android and iOS devices using Bluetooth Low Energy.
The beacons themselves are small transmitters that can be placed in stores or specific points of interest, such as museums or airports. Apps installed on mobile devices “listen” for the signal and respond accordingly when the phone comes within range.
iBeacon changes shoppers into byers
First of all, iBeacon technology opens great possibilities to retailers. Some of American and European big retailers already take advantage of iBeacon: Walmart, Macy’s, Tesco, etc
Using iBeacon, customers can find and watch videos, receive coupons and other discounts in real time, depending on where they are in a store.
IBeacon also helps to collect analytical info about customers` experience. Businesses and retailers now have a direct way to find out what customers are doing, exactly where in the store they are doing it, what they are looking at, how long they are looking at it, and maybe what they decided to buy at the last second instead.
At last, iBeacon can bring popularity to contactless payment. iBeacons ability to track a specific phone, linked to an Apple ID and user account opens the door for an Apple-based payment system.
iBeacon is not only about retail. The iBeacon ecosystem has the potential to change other industries. Here are some examples.
Event Industry: conferences and concerts, museums and exhibitions.
Here are a few ways iBeacons could help to manage events and improve the attendee experience:
-Attendee check-in. Using the event’s app, attendees check themselves in and avoid line-ups.
-Navigation. iBeacons provide devices with extremely accurate location services. In large conference facilities, museums and exhibitions, iBeacons can be used to power hyper-accurate floor maps.
-Networking. Using iBeacons, attendees can network through an opt-in feature in the event’s app, allowing them to discover and message other attendees. With Linkedin integration, attendees can get a detailed look at who is around them and decide who they would like to connect with. iBeacons were successfully used at Cannes Lions festival for networking with attendees.
-Promotions and advertisements. Instead of distributing brochures or physical promotional materials, an exhibitor can send targeted promotions to attract attendees to their stand.
-Gamification. Integrating gamification into events will provide new ways to engage and stimulate attendees. For example, iBeacons could be used for social games to drive networking, venue tours tailored to indiviual interests, or scavenger hunts for exclusive information and prizes.
Home automation systems
As we get closer to the coming smart home revolution, it’s clear that smartphones and tablets are going to be the devices that we use to control our lamps, lights, thermostats, sprinklers, security systems and entertainment systems. Beacons will detect when you arrive home and as you pull into the driveway , the lights will come on. The door is unlocked for you as you approach itJ
Enabled with touch devices, waiters don’t have to rush to the kitchen in order to dispatch orders. In other cases, clients can make orders directly on tablets available at the table. With iBeacons, the app automatically knows which table the waiter is at. It can display the client name (with eventual dinning/preferences history) and automatically associate orders with tables without requiring waiters to manually select a table number.
The iBeacon platform offers a wide range of applications that can be applied on an educational context. From simple games that require students to move around, explore and find things to more scientifc or technical experiments in the classroom. Moreover teachers can track who from the students are present and send notifications to the parents whose children are away.
IBeacon is a new emerging technology that may change the world we live in. Things move quickly in any field in which a technology innovation has backing and breadth like this. This short list is only an introduction to the possibilities of iBeacon and where this technology can be applied.
And what do you think of iBeacon? Will it change our lives in the near future?
I`ll be happy to know your thoughts.
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 🙂
People are increasingly making use of their mobile terminals (tablet and smartphones) to connect to the internet and it is important to adapt websites to the new browsing habits. Each terminal has its own features and limitations (such as the screen size) which will determine how a website will be displayed. The Responsive Design is a compelling solution if you want to have your website smoothly displayed on multiple screen sizes.
Responsive web design (RWD), is an important evolution in an increasingly on-demand world. RWD is a design approach that lets you view content in a way that is optimized for the screen size that you are viewing it on. For example, if I access a RWD website on my laptop, I will see the content formatted in a way that is optimal for a larger screen. And if I access that same website on my smart phone, I will see the same content reformatted to fit that screen size. The important thing about this is that it is showing me the same content whether it is on a large screen or small screen, only the layout is different.
It wasn’t long ago that the prevailing practice, when considering how to make your website mobile friendly, was to create a separate website for mobile devices along with separate content. The content would be pulled from the existing site and edited down for brevity with some sections being omitted entirely. All of this was based on the assumption that visitors to the mobile site would only want certain kinds of information and not others. Specifically information that would be consumed while “on the go,” and therefore needed to be short, to the point, and informative. Anything less, wouldn’t make it into the mobile site. The implications are that some of the content on the non-mobile site may be potentially long, pointless, and ultimately not very valuable.
One interesting aspect of responsive website design is that it forces us to think about the value of content. If it’s going to be shared across all devices, then anything other than short, to the point, and informative, doesn’t make the cut. This is a great filter because it helps us focus on the purpose of the information.
Does this mean you should convert your website to a Responsive design? Let’s consider the Advantages of Responsive web design:
- The advantages of Responsive Design are numerous. This technique allows a website to automatically adapt itself to the different screen resolutions.
- Columns and images are automatically adjusted, resized and moved automatically according to the screen resolution. This technique allows optimum ergonomics in preserving the layout and the display of the information from the website.
- The Responsive Design is a strategic long-term solution and you don’t have to worry about redirecting users to another version of your website. Once deployed, there is very little maintenance to perform and the cost of development could be often lower than creating and maintaining a dedicated mobile site.
- Responsive Design also implies having a unique URL: perfect for promotional campaigns.
There are certainly some Disadvantages to Responsive web design so I thought I would list these along with pros for RWD:
- If there are many benefits, there are still some drawbacks to Responsive Design. These include a longer loading time. Most of the time, users (browsers) are obliged to download useless a HTML/CSS codes. Similarly, the images are often stretched and not simply resized causing a negative impact on the loading time.
- Responsive Design won’t allow you to easily adjust the titles, descriptions and other content on mobile phones. In addition, the development of Responsive Design websites takes more time.
- The Initial Cost. It is obviously takes longer to code and test a website that is to work on a wide variety of screen sizes and devices so the initial cost of having a website designed is usually could be higher than having a non responsive site designed.
The Responsive Design is definitely an effective solution to provide an optimal user experience. This is a major evolution of web design inviting designers to take a new challenge. Disadvantages and limitations of using this technique are easily overcome by putting more emphasis on the design and development stages of your website. But still I have added the advantages and disadvantages above so that people can make their own mind up about the responsive approach, whether you might be an individual looking for a new web site or a designer considering the expansion of your own design services, it is always nice to know the pros and cons of any concept.
What are your thoughts on Responsive web design?
There exist a lot of mobile app development frameworks. Cross-platform tools reduce barriers to entry and democratise app development, by allowing developers from any language (HTML, Java, C++), any background (hobbyist, pros, agencies, corporates) and any skill level (visual designer to hard-core developer) to build mobile apps. Just imagine that by using a cross-platform tool and covering just two platforms such as Android and iOS, you will cover 91% of the whole smartphone market. Sounds appealing:)
PhoneGap and Sencha are the most widespread: they are used by 32% and 30% of cross-platform developers, irrespective of their primary tools. I`m suggesting to have a closer look at PhoneGap which turns to be the most popular tool.
How it works
-The most obvious one is cross-platform capabilities. Currently PhoneGap supports the following platforms: iOS, Android, webOS, Windows Phone, BlackBerry, Symbian OS, Tizen.
-Adjustments can be performed via browser; remote adjustments can be performed on a mobile device via “weinre”.
A blot on the landscape:)
– Users feel uncomfortable when touching a button and it doesn`t work. This is one of the most widespread bugs in PhoneGap apps. This bug appears due to improperly created interface, and it raises the problem of touching. The fact is that we look at the touchscreen at an angle and the visual contact area between the finger and the screen differs from the real contact area. This can be corrected quite simply – proper layout of the app page. For example, the area of response can be made bigger than the button itself.
-Nevertheless this is a cross-platform tool, UI should be optimized for different platforms. But it’s much faster, than creating another native app from scratch;
As you can see, these drawbacks are not quite ‘drawbacks’ in their nature, but rather technical conditions of PhoneGap, which you should consider, like in a usual development process for any other platform.
Certainly, PhoneGap is not a “miracle cure” but can be a good way out if wisely used. And what are your thoughts on PhoneGap?