Top developer trends of 2013, what to watch for in 2014
- select the contributor at the end of the page -
We're pretty good about keeping an eye on the shifting trends in technology, especially when it comes to the developer world. After all, we wouldn't be able to provide you with high-quality, relevant courses if we didn't. By taking the expertise of our staff and combining their input with data from our most popular courses, we were able to create this list of top developer technologies/methodologies for 2013, and trends you should be prepared for in 2014.
Top 5 developer technologies/methodologies of 2013
2) CSS3 and HTML5 – It may seem like cheating to combine CSS3 and HTML5 into one item, but these two tend to go hand-in-hand. Together, these continue to dominate with open source and enterprise tools and libraries designed to support things like mobile-first development and responsive design.
3) Agile & xDD (TDD, DDD, BDD) – A massive uptick in adoption of test-driven-development and various agile practices helped developers write code and deliver products to market much faster and with higher quality.
4) Open source tools – Open source project development increased across platform stacks. Even Microsoft's core ASP.NET platform is now essentially managed as an open source project.
5) Async/concurrent programming – This refers to the proliferation of new and revitalized languages, additions to exiting languages, and application development patterns and frameworks designed from the ground up with concurrent and asynchronous programming mind. Functional programming languages and language extensions play a minor role now, but that will change in the years to come.
Developer trends to watch in 2014
Big data – The proliferation of mobile and other connected everyday devices ("internet of things") is generating mountains of data. This data is so large and detailed that storing it is a complex task, and so is being able to do anything useful with it. Tools and technologies that can help companies deal with "big data" will play an increasingly important role. Watch out, the data storm is only going to get wilder.
Business intelligence – Related to "big data," business intelligence is being able to take raw data and turn it into useful information that can be used to influence strategic business decisions. It encompasses methodologies, technologies and products that allow a business to transform and distill raw data into something more meaningful and actionable. If we're collecting the data, we'll need to know how to interpret and apply the data.
Graph databases – The word "database" has traditionally referred to relationship databases that store information in tabular form, and to make data connections across tables, you use something like SQL. Graph databases are totally different. In a graph database, information is stored as nodes and edges (connections between nodes). Whereas a tabular database is really good at modeling information about things (such as customers, products, etc.), a graph database revolves around relationships between things. Social media sites like Facebook and LinkedIn, which model relationships between people, are a good example of where graph databases shine. While this is still a relatively new model, we're already starting to see some accessible technologies take off.
Functional languages – It used to be that a multiprocessor system was a specialized PC that would typically be used as a server to run things like SQL Server and web sites. But nowadays, most people have a multiprocessor in their pocket or purse in the form of a smartphone. Multiprocessor devices don't really shine unless the applications running on them are written to allow for parallel execution. But parallel programming with traditional procedural/object-oriented languages like C, C# and Java are very difficult to learn, write well, debug and maintain. Functional languages, on the other hand, specifically cater to parallel programming and can eliminate an entire class of problems a developer might accidentally run into using other languages. As a result, code can more easily be compiled to automatically leverage the multiprocessing capabilities of the underlying device. Functional languages stand a good chance of enabling application developers to achieve a huge boost in performance that had previously been difficult to achieve.
Full stack developers – Demand for full stack developers, those who have proficiency in everything from front-end apps and UX to back-end data and architecture, will be in-demand during the next year.
Embedded hardware programmers – In the last year, it has become as easy to write code on small, low-power microcontrollers as it was to write desktop apps on full computers 15 years ago. The Internet will soon extend out to all the different appliances we use every day, and we'll need programmers to develop for them.
Mobile – Mobile development will still be huge. Consumer and business purchasing of smartphones and tablets will continue to fuel the demand for native and web applications built for mobile devices. And don't forget to check out the top IT admin trends of 2013-2014.