Web development is a broad term for the work involved in developing a web site for the Internet (World Wide Web) or an intranet (a private network). Web development can range from developing the simplest static single page of plain text to the most complex web-based internet applications, electronic businesses, and social network services. (Source: Wikipedia)
A lot happened in the web development world in 2016. There were new releases of popular programming languages, new versions of important frameworks, new tools including system design methodologies.
Here I am, to shed some light on the technologies that changed the world of development, especially web development.
So here are some serious Web development trends that the year 2016 saw:
3. At last “Flash” Died: Finally! YouTube switched to HTML5 this year, ditching their legacy Flash player. Firefox started blocking the Flash plugin by default. Even the powerful Adobe Flash creation suite was renamed to Adobe Animate and defaults to HTML5 exports. This leaves the doors wide open for the web platform to shine.
Language and Platform Trends for 2016
1. Python: Python is gaining an all-round of acceptance. Be it from “Application Development”, “Scientific & Numeric”, “Education”, “GUI Development” or “Web Development”. The release of Python 3.5 added features like Asyncio, which is like Event Loop in Node.js. Now that’s a major step taken by Python in current world’s web development. Apart from this, “Django”, “Pyramid”, “Flask” are some of the tools that give developers a lot of power and fun while developing Web Based Applications.
2. PHP 7: Don’t forget the age old “PHP” which once powered websites like “Facebook”, “Zynga”, “Accenture”, “Rackspace”, “Tesla”,” Nokia” and the list goes on. PHP 7 is a major new version that fixes a number of issues and brings new features and speed. PHP 7 is around twice as fast as PHP 5.6, which will have a big impact on large codebases and CMS systems like WordPress and Drupal. And if you need even more speed and don’t mind switching to an alternative runtime, check out HHVM, which is used and developed by Facebook to run their website.
5. Swift 2 was released earlier this year. This is Apple’s vision for a modern programming language that eases the development of apps on iOS and OS X. As of few weeks ago, Swift has been an open source and has already been ported on Linux. This means that it is now possible to build backend and server side software with it.
6. Go 1.5 was released a few months ago, and brought major architectural changes. In 2016, it has grown in popularity and has been adopted in leading startups and open source projects. The language itself is relatively simple, so learning it will be a weekend well spent.
Learning a couple of these is highly advised: Python 3, Go, PHP 7, ES2015, Node.js, Swift, TypeScript.
With the rewrite into Angular2, the team hopes to fix all the scaling issues with Angular 1 apps, and performance has been impressive so far. Moreover, other than being capable of sever-rendering, Angular 2 will support web components, which Google believes to be the future of web development. WHAT’S NEXT “Angular 4” or Just “Angular”. Let’s SEE in 2017.
Ember.js also saw a new release. Ember 2 brings modularity and removes deprecated features and optimizes the codebase. Ember follows semantic versioning and maintainers of the framework are careful to make updating as easy as possible. If you need a framework with stability and easy migration to new versions, you can give Ember a try.
Bootstrap has become even more popular in the last year and is turning into a web development standard. Version 4 will come out in the next few months, which brings flexbox support and integrates SASS. It promises a smooth transition from V3 (unlike what we saw with v2 to v3 a couple of years ago), so you can feel confident that what you learn about Bootstrap 3 will be applicable to version 4.
Foundation is another frontend framework that is an alternative to Bootstrap. Version 6 was released earlier this year, which focuses on modularity, so that, you can include only the pieces that you need for a faster load time.
CSS pre-processors continue improving. Less and SASS are the two most popular at the moment, with mostly comparable feature sets. However, the news that Bootstrap 4 is migrating over to SASS, gives it a slight edge over less as the preprocessor to learn in 2017. Also, there is the newer PostCSS tool that is gaining mindshare, but we recommend it only for developers who already have experience with preprocessors.
As the trend of shifting logic from backend to frontend has been prominent, and the backend is only treated as an API Provider, there is still room for classic HTML-generating web apps, which is why we think that learning a classic full stack framework is still important.
Depending on what language you choose, you have an array of “Frameworks” to ease your life.
a. PHP: Symfony, Zend, Laravel, CodeIgniter, Slim and a number of others.
b. Python: Django & Flask is what gets accepted majorly.
c. Ruby: You have Rails and Sinatra.
d. Java: Choose between “Play” and “Spark”.
e. Node.JS: Express, Happi, Sails.js were the once most whispered.
f. Go: Revel is coming up
Another trend is static site generators like Jekyll and Octopress. These tools take a number of source files like text and images, and create an entire website with pre-rendered HTML pages. Developers, who would normally set up a WordPress blog with a database and an admin area, now prefer to generate their HTML pages ahead of time and only upload a static version of their site. This has the benefits of increased security (no backend to hack and database to manage) and fantastic performance. Combined with CDNs like MaxCDN and CloudFlare clients can request a page of the website and receive it from a server nearby, greatly reducing latency.
We have included two major CMS (Content Management Systems) Wordpress, Drupal both developed in PHP and were major choices by developers when they had to choose one.
In recent years WordPress has become much more than a simple blogging platform. It is a fully fledged CMS/Framework with plugins that make it possible to run any kind of website. High quality WordPress themes are a big market, and lots of freelancers make their living by developing for WordPress. With projects like WP-API you can use WordPress as a REST API backend.
Drupal 8 was released this year. It is a full rewrite that focuses on modern development practices. It makes use of Symfony 2 components and Composer packages and the Twig templating engine. Millions of websites run Drupal, and it is a good choice for content heavy portals.
PostgreSQL is a popular relational database engine which sees a lot of development activity and is constantly improved with new features. It will bring better support for JSONB columns for holding schema-less data (replacing any need for a separate NoSQL database) and the long awaited upsert operation, which simplifies INSERT-or-UPDATE queries. You might want to look into it, once it is released in 2016.
MySQL is the most popular open source database system and is installed on most hosting providers out there. With version 5.7, MySQL also offers JSON columns for storing schema-less data. If you are just starting out with backend development, you will most likely be looking at connecting to a MySQL database that your hosting provider has set up for you. It is probably going to be an older version, so you might not be able to try out the JSON type. MySQL is included in popular packages like XAMPP and MAMP, so it is easy to get started with.
NOSQL Databases had a mixed response, but some notable once are: Mongo, Cassandra, ReThinkDB & Redis which gained community support.
With 2017 round the corner here are few tools, technologies, platforms that we suggest you should look into.
Languages: Python 3, Go, PHP 7, ES2015, Node.js, Swift
Frontend: Bootstrap, MDL, Foundation, SASS, LESS, PostCSS.
Backend: A full stack backend framework (May it be PHP, Python etc .. etc ..)
Database: Redis, RethinkDB, MySQL/MariaDB, PostgreSQL