JetBrains team released new ReSharper 9 version [https://www.jetbrains.com/resharper] in December, 2014. It is a number one tool for any professional programmer in the .NET Development world. If you have not been using this amazing tool yet, you have a very straightforward way to boost your coding process. It can be improved in several times.
Visual Studio on steroids
Technically, ReSharper is a plugin for Visual Studio IDE. Generally, Visual Studio provides all needed tools and features out of the box. Everybody accepts that it is a professional IDE. Visual Studio supports full-stack software development process, has integration with databases, NuGet package manager, huge set of programming languages, compilers and platforms, both debugging and testing features, syntax highlighting and basic code navigation. Resharper is specific for .NET Development.
In 2014 was released first officially stable version 1.0 of the Meteor [http://www.meteor.com] most cool web application framework nowadays. Software developer have been using a lot of web application development frameworks and libraries in development and production for 10+ years. Why Meteor is so excited? It’s not one more platform in a row or new pure marketing buzzword. It’s rather a new approach to the construction of the project. This technology provides to Iflexion a new quality of Web Application Development process.
Recently, there was released version 4.6.3 of very popular game development platform Unity [http://unity3d.com]. As it is multiplatform engine, it supports all major mobile architectures. That makes Unity one of the best Mobile Solutions in game development area. Target application can be built for Android, iOS, Windows Phone, OS X, Linux and Microsoft Windows. Besides, it also supports such pure game platforms, like Xbox, Wii and PlayStation. Technically, any Unity application uses OpenGL and DirectX. Unity platform is widely used by all kinds of game development companies from huge monsters (EA, Blizzard) to tiny teams creating indie-games. Development version of Unity3D package is free, so, anyone can download and install it to start new game project. There is modern IDE with intuitive drag-and-drop interface that running both on Windows and OS X. It allows developer to concentrate on the aspects of the game instead of pure technically points of the project. You can debug the game right in the IDE. It doesn’t need any mobile device or emulator to create Mobile Solutions by Unity3D engine.
Mono development platform
Unity is based on Mono platform [http://www.mono-project.com]. It’s a bit modified version of .NET framework. The main feature of Mono is a multi-platform support, that beyonds regular .NET world of Windows architecture. Unity is one of the most actual application of Mono as a development platform mentioned as successful example in various articles.
10 years ago, Spring framework became a trend in Enterprise Java Development without huge and overweight classic JEE (it was called J2EE) technology based on EJB. We called Spring as JEE without EJB. Its amazing IoC container and DI schema have been doing our life much more easy. Configuration via annotations made the whole process even more fun, because it allows us to avoid describing all our beans and relations in XML. Nowadays, modern popular frameworks like Ruby on Rails or Django provides even more fast tools and development practices. On the other hand, Java Development world is bit more conservative. We had no easy and fast way to start new project. Instead, we had to spend some time to configure Spring environment. Spring Boot [http://projects.spring.io/spring-boot] is a solution for this problem, applicable in case of start up, agile approaches or even pet projects.
Configuration over dependencies
Rail uses its power command line tools to start new application, generate new element of the project and various other actions. But Spring Boot is not an automatic code generation tool. It is rather a plug for Java Development build system. It supports both Maven and Gradle. Main feature of of Spring Boot is
API turns a service into a platform
Nowadays, largest commercial services, such as Twitter, LinkedIn, Facebook, provides API for their models and services. They opened their platforms to be extended by huge community of software developers around the world. If one user of a service costs one unit, then single developer contributing into the architecture has value ten times more. This is true for full range of Application Development approaches from simple customization scripts to huge business based on complicated systems. API and its ability to extend and create attracts and even inspire the most creative specialists. This is a two-way street. On the one hand, developers and entrepreneurs have ability to grow up their own ideas into a successful business using existing cool service and its community of users, on the other hand, a service may acquire additional features without extra efforts. Users or hired API developers would design and implement specific features for their own needs. API looks like one more communication channel between customers, service and community as a whole. It is a way to show what they really need. API is a next-level step in the project evolution. It is a point where system may become a platform rather than just a service.
Apple’s look-and-feel style was dominating in mobile and even web design for a long time. Inspired by Steve Jobs the iOS UI/UX was treated as almost absolute standard. Even some of Android developers and designers were trying to copy iOS practices in their projects. Keep in mind, you should have very important reason to fight a framework. Recently, Google, as main supporter of Android platform, announced Material Design [http://www.google.com/design/spec/material-design/introduction.html] their point of view on both questions Usability and UI design. Besides, Material Design is not just pure theoretical specification. There is new Android 5.0 “Lollipop” version available. It’s based on Material Design. So, you are able to try it live, as well.
Flat, non flat and material
About 10 years ago the web design was pretty huge visually. It had a lot of almost realistic graphics with 3D effects, shadows, gradients, etc. Even small buttons and icons were 3D-like. Later, the web became more productive and useful. For now, it’s not just pure visual set of pages to represent some information. It’s rather applications with thick UI.
A new Android 5.0 version “Lollipop” [http://developer.android.com/about/versions/lollipop.html] was release in November 2014. Android powers your watch, your TV, and even your car. There is a lot cool features a new Android provides for developers. Let’s go through most amazing of them.
Android 5.0 introduces the Material Design [http://www.google.com/design/spec/material-design/introduction.html] concept as UI/UX standard in Android Development. You can add real-time shadows and 3D-like look-and-feel by new android:elevation property. It’s also possible to animate elevation changes by ViewPropertyAnimator.z() and ViewPropertyAnimator.translationZ() methods.
A huge amount of time enterprises and startups around the world have been using various NoSQL platforms for their Database Development needs. The open source NoSQL database MongoDB [http://www.mongodb.org] is going to major release version 3.0 in March. The latest release candidate is already available [http://www.mongodb.org/downloads]. The MongoDB team is trying to touch even higher level of new DBMS standard for any project in any industry, to be called “default database”.
Improvements and innovations
There have done a lot of work at line both the academical research and practical usage. First of all, sufficient improvements in the storage layer bring comprehensive boost performance and scalability. There is the WiredTiger storage engine.
There is no secret that PHP Development is not so cool technology, as it was 15 or even 10 years ago. On the one hand, Java and .NET dominate in enterprise area, and on the other hand there are many modern MVC frameworks (Ruby on Rails, Django/Python, node.js, etc.) are used widely by startups at line of simplicity and lightness. PHP had lack of their cool features as both the programming language and the web development platform. You even may think that PHP was stuck in 2000. Let’s look at Laravel [http://laravel.com] — modern MVC framework for rapid PHP Development.
Laravel is the best PHP MVC framework
Laravel is not the first MVC framework available for PHP Development (Zend, Yii, Symphony, etc.), but looks like it was created to be the best one.
The Number of web sites and services in our daily duties grows from year to year. Each service requires standard user authentication. Generally, Application Security started with login/password pair, for all of us. It’s not easy to remember even dozen strong passwords, particularly if some service is used once per month. Keep in mind, we have to use different passwords. Usage of the same password for many web sites is the most worst thing a user can do at line of Application Security.
OpenID vs. Login/password schema
Modern web sites nowadays uses third-party authentication based on OpenID technology