Monday, 14 December 2015

Hitch your IT career to a rising star with DevOps certification

Hitch your IT career to a rising star with DevOps certification

Savvy IT industry watchers have probably been noticing something called “DevOps” come gliding into view for a while now, striking regular pings on the scope of anyone scanning for either hot trends or spiking salaries. Even proponents of DevOps, however, sometimes struggle to define it in layman’s terms, a challenge that anyone who has ever tried to explain development methods like Agile or Scrum to someone outside of IT will understand. Beneath the jargon, however, there’s an important development model that is quickly gaining in popularity. If you’re involved in IT, then this is something that’s probably worth taking the time to understand.

What is DevOps?

DevOps is a compound of “development” and “operations.” It’s a software development method that stresses communication, collaboration, integration, automation, and measurement of cooperation between software developers and other information technology professionals. DevOps is often shown graphically as three overlapping circles consisting of Development, Quality Assurance, and Information Technology Operations, with DevOps being the area of overlap that ties all three circles together.

DevOps is so much more, however, than the intersection of three circles. It’s often the intersection of five or ten circles — it just depends on the company that the DevOps is supporting. DevOps spans the entire delivery pipeline. This includes improved deployment frequency, which can lead to faster time to market, lower failure rate of new releases, shortened lead time between fixes, and faster mean time to recovery in the event of a new release crashing or otherwise disabling the current system. Simple processes become increasingly programmable and dynamic when using a DevOps approach, which aims to maximize the predictability, efficiency, security, and maintainability of operational processes. Automation often supports this objective.

DevOps integration targets product delivery, quality testing, feature development, and maintenance releases in order to improve reliability and security and provide faster development and deployment cycles. Many of the ideas (and people) involved in DevOps come from the enterprise systems management and agile software development movements.

DevOps aids in software application release management for an organization by standardizing development environments. Events can be more easily tracked as well as resolving documented process control and granular reporting issues. Companies with release/deployment automation problems usually have existing automation but want to more flexibly manage and drive this automation without needing to enter everything manually at the command-line.

Ideally, this automation can be invoked by non-operations employees in specific non-production environments. The DevOps approach grants developers more control of the environment, giving infrastructure more application-centric understanding.

The adoption of DevOps is being driven by factors such as:

● Use of agile and other development processes and methodologies
● Demand for an increased rate of production releases from application and business unit stakeholders
● Wide availability of virtualized and cloud infrastructure from internal and external providers
● Increased usage of data center automation and configuration management tools
● Increased focus on test automation and continuous integration methods

According to David Geer, 42 percent of IT pros surveyed had adopted or planned to adopt DevOps development approaches (Information Week, 2014 DevOps Survey). That number ballooned to 66 percent of U.S. companies using DevOps approaches by the time of a Rackspace survey only 10 months later. With DevOps clearly taking over the coder’s realm, most programmers will eventually have to yield to and master this mindset.

What does DevOps mean for a programmer’s profession?
There's a lot of interest in DevOps in the IT world right now.DevOps introduces developers to operational requirements and the tools and methods necessary to ensure that the code they create is immediately functional, of high quality, and fit for the production environment. With solid training in these tools and methods, developers should find their talents highly sellable in a career world that is increasingly favorable to DevOps practitioners.

Adam Gordon, CTO of New Horizon Computer Learning Centers of south Florida, sats that important developer skills for DevOps environments include automating configuration management (infrastructure lifecycle management) using vendor-neutral tools such as Puppet, Chef, Ansible, SaltStack, and Docker. These tools integrate with a host of popular platforms and software including Amazon EC2, Amazon Web Services, CFEngine, Cisco, Eucalyptus, Google Cloud Platform, IBM Bluemix, Jelastic, Jenkins, Linux (various distributions), Microsoft Azure, OpenStack, OpenSVC, Rackspace, Rightscale, Salt, SoftLayer, Vagrant, VMware, and a rapidly expanding number of examples.

Some of the most popular vendor-specific DevOps platforms include those from Microsoft and VMware, says Gordon. Microsoft’s DevOps-related products include System Center with its System Center Configuration Manager (SCCM) and System Center Operations Manager (SCOM). These Microsoft developer tools enable functions such as automated configuration management, monitoring, and custom management pack development. VMware tools such as vCloud Air (vCloud Hybrid Service) bridge the VMware development platform to tools such as Puppet and Chef, according to Gordon, while the vRealize cloud management platform automates infrastructure and application delivery, monitoring, analytics, and management.

Finally, Red Hat Linux developers will find that learning to deploy this distribution can be useful for work in Red Hat-related DevOps environments.

Does everyone love DevOps?
No, not everyone. Take Jeff Knupp, for instance. In an April 2014 blog, Knupp claims that DevOps is “killing the developer.” Allow me to quote directly from Mr. Knupp’s post:

“There are two recent trends I really hate: DevOps and the notion of the ‘full-stack’ developer. The DevOps movement is so popular that I may as well say I hate the x86 architecture or monolithic kernels. But it’s true: I can’t stand it. The underlying cause of my pain? This fact: not every company is a start-up, though it appears that every company must act as though they were.

“DevOps is meant to denote a close collaboration and cross-pollination between what were previously purely development roles, purely operations roles, and purely QA roles. Because software needs to be released at an ever-increasing rate, the old ‘waterfall’ develop-test-release cycle is seen as broken. Developers must also take responsibility for the quality of the testing and release environments.

“The increasing scope of responsibility of the ‘developer’ (whether or not that term is even appropriate anymore is debatable) has given rise to a chimera-like job candidate: the ‘full-stack’ developer. Such a developer is capable of doing the job of developer, QA team member, operations analyst, sysadmin, and DBA. Before you accuse me of hyperbole, go back and read that list again. Is there any role in the list whose duties you wouldn’t expect a ‘full-stack’ developer to be well versed in?

“Where did these concepts come from? Start-ups, of course (and the Agile methodology). Start-ups are a peculiar beast and need to function in a very lean way to survive their first few years. I don’t deny this. Unfortunately, we’ve taken the multiple technical roles that engineers at start-ups were forced to play due to lack of resources into a set of minimum qualifications for the role of ‘developer.’ ”

“Imagine you’re at a start-up with a development team of seven. You’re one year into development of a web application that Xs all the Ys, and things are going well, though it’s always a frantic scramble to keep everything going. If there’s a particularly nasty issue that seems to require deep database knowledge, you don’t have the liberty of saying, ‘That’s not my specialty,’ and handing it off to a DBA team to investigate. Due to constrained resources, you’re forced to take on the role of DBA and fix the issue yourself.

“Now expand that scenario across all the roles listed earlier. At any one time, a developer at a start-up may be acting as a developer, QA tester, deployment/operations analyst, sysadmin, or DBA. That’s just the nature of the business, and some people thrive in that type of environment. Somewhere along the way, however, we tricked ourselves into thinking that because, at any one time, a start-up developer had to take on different roles, he or she should actually be all those things at once.

“If such people even exist, ‘full-stack’ developers still wouldn’t be used as they should. Rather than temporarily taking on a single role for a short period of time, then transitioning into the next role, they are meant to be performing all the roles, all the time. Most good developers can almost pull this off.”

Certifications in DevOps
The DevOps certification realm is taking root quickly. One organization that is out in front of the pack, however, is Amazon Web Services. If you want to make a strong move into DevOps, then consider any of the following credentials.

AWS Certified DevOps Engineer – Professional

Description
The AWS Certified DevOps Engineer – Professional exam validates technical expertise in provisioning, operating, and managing distributed application systems on the AWS platform. Exam concepts you should understand for this exam include the ability to:

● Implement and manage continuous delivery systems and methodologies on AWS
● Understand, implement, and automate security controls, governance processes, and compliance validation
● Define and deploy monitoring, metrics, and logging systems on AWS
● Implement systems that are highly available, scalable, and self-healing on the AWS platform
● Design, manage, and maintain tools to automate operational processes

Prerequisites
Required Prerequisite: status as AWS Certified Developer – Associate or AWS Certified SysOps Administrator – Associate

Eligibility
● Two or more years’ experience in provisioning, operating, and managing AWS environments
● Experience in developing code in at least one high-level programming language
● Experience in automation and testing via scripting/programming
● Understanding of agile and other development processes and methodologies

Exam
Multiple choice and multiple answer questions
170 minutes to complete the exam
Exam available in English
Exam registration fee is $300

DevOps is a hot trend in software development right now.AWS Certified SysOps Administrator – Associate
Description


The AWS Certified SysOps Administrator – Associate exam validates technical expertise in deployment, management, and operations on the AWS platform. Exam concepts you should understand for this exam include:

● Deploying, managing, and operating scalable, highly available, and fault tolerant systems on AWS
● Migrating an existing on-premises application to AWS
● Implementing and controlling the flow of data to and from AWS
● Selecting the appropriate AWS service based on compute, data, or security requirements
● Identifying appropriate use of AWS operational best practices
● Estimating AWS usage costs and identifying operational cost control mechanisms

Prerequisites

No prerequisites; recommend taking System Operations on AWS
Eligibility


● One or more years of hands-on experience in operating AWS-based applications
● Experience in provisioning, operating, and maintaining systems running on AWS
● Ability to identify and gather requirements to define a solution to be built and operated on AWS
● Capabilities to provide AWS operations and deployment guidance and best practices throughout the lifecycle of a project

Exam
Multiple choice and multiple answer questions
80 minutes to complete the exam
Available in English, Japanese, Simplified Chinese, and Brazilian Portuguese
Practice Exam Registration fee is $20
Exam Registration fee is $150

AWS Certified Developer – Associate
Description

The AWS Certified Developer – Associate exam validates technical expertise in developing and maintaining applications on the AWS platform. Exam concepts you should understand for this exam include:

● Picking the right AWS services for the application
● Leveraging AWS SDKs to interact with AWS services from your application
● Writing code that optimizes performance of AWS services used by your application
● Code-level application security (IAM roles, credentials, encryption, etc.)

Prerequisites
No prerequisites; recommend taking Developing on AWS
Eligibility

● One or more years of hands-on experience in designing and maintaining an AWS-based application
● In-depth knowledge of at least one high-level programming language
● Understanding of core AWS services, uses, and basic architecture best practices
● Proficiency in designing, developing, and deploying cloud-based solutions using AWS
● Experience with developing and maintaining applications written for Amazon Simple Storage Service, Amazon DynamoDB, Amazon Simple Queue Service, Amazon Simple Notification Service, Amazon Simple Workflow Service, AWS Elastic Beanstalk, and AWS Cloud Formation.

Exam
Multiple choice and multiple answer questions
80 minutes to complete the exam
Available in English, Simplified Chinese, and Japanese
Practice Exam Registration fee is $20
Exam Registration fee is $150

AWS Certified Solutions Architect – Professional
Description

The AWS Certified Solutions Architect – Professional exam validates advanced technical skills and experience in designing distributed applications and systems on the AWS platform. Example concepts you should understand for this exam include:

● Designing and deploying dynamically scalable, highly available, fault tolerant, and reliable applications on AWS
● Selecting appropriate AWS services to design and deploy an application based on given requirements
● Migrating complex, multi-tier applications on AWS
● Designing and deploying enterprise-wide scalable operations on AWS
● Implementing cost control strategies

Prerequisites
Status as AWS Certified Solutions Architect – Associate
Eligibility
● Achieved AWS Certified Solutions Architect – Associate
● Two or more years’ hands-on experience in designing and deploying cloud architecture on AWS
● Abilities to evaluate cloud application requirements and make architectural recommendations for implementation, deployment, and provisioning applications on AWS
● Capabilities to provide best practices guidance on the architectural design across multiple applications, projects, or the enterprise

Exam
Multiple choice and multiple answer questions
170 minutes to complete the exam
Exam available in English and Japanese
Practice Exam Registration fee is $40
Exam Registration fee is $300

AWS Certified Solutions Architect – Associate
Description

Intended for individuals with experience in designing distributed applications and systems on the AWS platform. Exam concepts you should understand for this exam include:
● Designing and deploying scalable, highly available, and fault tolerant systems on AWS
● Lift and shift of an existing on-premises application to AWS
● Ingress and egress of data to and from AWS
● Selecting the appropriate AWS service based on data, compute, database, or security requirements
● Identifying appropriate use of AWS architectural best practices
● Estimating AWS costs and identifying cost control mechanisms

Prerequisites
None, but it is recommended that candidates take the Architecting on AWS and AWS Certification Exam Readiness Workshop
Eligibility

● One or more years of hands-on experience in designing available, cost efficient, fault tolerant, and scalable distributed systems on AWS
● In-depth knowledge of at least one high-level programming language
● Ability to identify and define requirements for an AWS-based application
● Experience with deploying hybrid systems with on-premises and AWS components
● Capability to provide best practices for building secure and reliable applications on the AWS platform

Exam
Multiple choice and multiple answer questions
80 minutes to complete the exam
Available in English, Japanese, Simplified Chinese, Korean, French, German, Spanish, and Brazilian Portuguese
Practice Exam Registration fee is $20
Exam Registration fee is $150

There's a lot of interest in DevOps in the IT world right now.AWS Certified DevOps Engineer – Professional
Description


The AWS Certified DevOps Engineer – Professional exam validates technical expertise in provisioning, operating, and managing distributed application systems on the AWS platform. Exam concepts you should understand for this exam include the ability to:
● Implement and manage continuous delivery systems and methodologies on AWS
● Understand, implement, and automate security controls, governance processes, and compliance validation
● Define and deploy monitoring, metrics, and logging systems on AWS
● Implement systems that are highly available, scalable, and self-healing on the AWS platform
● Design, manage, and maintain tools to automate operational processes

Prerequisites
AWS Certified Developer – Associate
AWS Certified SysOps Administrator – Associate
Eligibility

● Two or more years’ experience in provisioning, operating, and managing AWS environments
● Experience in developing code in at least one high-level programming language
● Experience in automation and testing via scripting/programming
● Understanding of agile and other development processes and methodologies

Exam
Multiple choice and multiple answer questions
170 minutes to complete the exam
Exam available in English
Exam registration fee is $300

Wednesday, 2 December 2015

The hidden pitfalls of going freelance in IT

Independence has its upsides and downsides. IT pros lend firsthand advice on the challenges of going solo

The life of an independent IT contractor sounds attractive enough: the freedom to choose clients, the freedom to set your schedule, and the freedom to set your pay rate while banging out code on the beach.

But all of this freedom comes at a cost. Sure, heady times for some skill sets may make IT freelancing a seller’s market, but striking out on your own comes with hurdles. The more you’re aware of the challenges and what you need to do to address them, the better your chance of success as an IT freelancer.

We talked with a number of current and former IT freelancers to get their take on the hidden troubles of going solo. Here’s what they said and how to make the best of the downsides of freedom.

Selling yourself from afar

You can’t get a gig without the client signing off, and often getting key stakeholders to accept you as a valued partner can be challenging -- especially when the work is remote.

“In order for a project to be successful, the client has to buy into you and the vision for the project,” says Nick Brattoli, founder and lead consultant at Byrdttoli Enterprise Consulting.

“This is exacerbated in the IT world, because more often than not, you are going to be working remotely,” says Brattoli, who’s been freelancing on and off for his entire IT career. “Technology is wonderful in that it makes it possible for us to work from anywhere with an Internet connection. But there is still value in being able to meet face-to-face, and many companies are hesitant to trust someone they haven’t met.”

In addition, at many companies the tech-savvy people running a project will know what needs to be done to meet the desired outcomes. “But once that’s all figured out, it is very hard to convince the people above them to go through with it,” Brattoli says. “Where technology is concerned, people who are less tech-savvy are going to be wary of any new changes to infrastructure.”

To get around these challenges, Brattoli recommends onsite travel to help generate buy-in; proposing various solutions of varying costs for a project; and constant communications after getting initial buy-in to manage expectations as much as possible.
Navigating non-negotiable agreements

Most companies have standard agreements in place to protect confidentiality and restrict competition. Such forms are usually non-negotiable, even for full-time employees, says Stanley Jaskiewicz, a business attorney at Spector Gadon & Rosen, who represents IT employers and freelancers.

For freelancers, these agreements can prove to be tricky business -- especially as they begin to add up.

“A freelancer will usually have no leverage to negotiate the restrictive covenants, or the scope of confidentiality,” Jaskiewicz says. This creates several risks, he says. For one, a signed form might prevent a freelancer from being able to make good on future job opportunities or require the freelancer to give ownership of a work product to the employer, without commensurate compensation for what the freelancer gives up.

Furthermore, such restrictions can accumulate rapidly over a career, making it hard to keep track of what you can or can’t do when presented with future job opportunities.

“The freelancer must keep careful records -- and constantly update one’s own knowledge -- of the restrictions to which he or she is subject,” Jaskiewicz says.

The alternative is to pay a lawyer to check each new job against all prior agreements, which is an economically unrealistic proposition for most freelancers.

“One freelancer I know has an exhaustive knowledge and well-indexed records of what he has signed, but he is the exception,” Jaskiewicz says.

A practical alternative (on the confidentiality side, at least) is to request the “standard” exceptions to confidentiality, Jaskiewicz says. These include prior knowledge, public knowledge, independent development without use of confidential information, receipt of information from a third party not bound by confidentiality with the disclosing party, and compelled disclosure (that is, in response to a subpoena or deposition).

HP exits low-cost tablet market in product shakeup

Even within IT departments there can be issues with your presence as a freelancer.

“When a consultant is placed in a team of permanent employees, there is sometimes some resentment toward the consultant, as they are usually earning more,” Weaver says. This can result in a lack of information sharing or the highly skilled IT work being allocated to full-time employees, with the menial work going to the more expensive and experienced consultant, he says.

This mistrust is even more pronounced when you want to change the way things are done -- even if it’s part of your contract.

“People immediately start panicking,” Weaver says. “They would rather have the painfully slow manual process that needs intervention on a daily basis than one that runs automatically and rarely breaks.”

Weaver’s business specializes in moving databases and applications into the cloud, and there is often resistance.

“Getting people to understand that [concept] is really, really hard work,” he says. “There isn't sufficient IT knowledge, and tech companies don't help, as new products aren't explained in a simple way that most people will understand.”

Educating people about IT and simplifying the details so that everyone can understand is key, Weaver says.
Riding out harsh realities and drumming up new business

Providing IT expertise, as with other types of freelancing, can be feast or famine. “At the first scent of an economic downturn, projects get canceled or postponed and IT consultants are either let go or not hired,” Weaver says.

“Many companies still have the old-fashioned view that IT is a cost center rather than a profit center, and as such IT departments are always one of the first places people look when they want to ‘trim the fat,’" Weaver adds.

While keeping a steady stream of work going can be a problem in general with freelancing, some say it’s an even bigger problem for IT freelancers.

“Most engineers and IT folks don’t consider sales and marketing to be their strongest skill, and for them to go out looking for new projects, discussing project road maps, and negotiating on the payments terms is not a fun experience,” says Abbas Akhtar, who freelanced as a software engineer for three years before launching a Web development company called
Solutions Park.

“Engineers generally would love it if they got a set of requirements, delivered the project, and got a check in the mail,” Akhtar says. “Freelancing means they have to do a lot more than just coding.”
Keeping up with technology changes

As anyone in IT knows, technology and how it’s used are constantly shifting. Freelancers especially are challenged when it comes to staying current with the ever-changing technology landscape.

“The resources available to a freelancer may not be sufficient to get trained on new technology, nor put that training into practice in a business environment to engrain the skills,” says Scott Smith, who has worked as an independent IT developer and database consultant and is currently a senior database administrator in the uTest software testing community.

To keep from falling behind, Smith participates in online webinars and forums within and outside the uTest community.

Sometimes change can put assignments in jeopardy. While working as a freelancer, Smith has participated in assignments where he was brought in to perform a specific task, then the scope of work changed to such an extent that it became impossible to complete the assignment.

“In these situations, you have to do your best to continue to provide value to the companies to make sure your brand is still seen in a positive light, despite not delivering on the initial projects,” Smith says.
Reconciling agile development with fixed-bid contracts

Many companies have adopted agile development methodologies to iterate their projects faster in hopes of gaining a competitive edge.

“This has been a boon for software developers -- both for full-time and freelancers,” says Damien Filiatrault, CEO and founder of Scalable Path, a network of more than 1,000 freelance developers. “Demand is high, supply is tight, and projects are numerous.”

But for freelancers, there remains a major disconnect between traditional fixed-bid contracting and agile software development projects, Filiatrault says. “Lots of time needs to be spent up front specifying functionality and scope before work even begins on a fixed-bid project,” he says.

Indeed, traditional fixed-bid contracts immediately put the client at odds with the contractor as soon as the contract is signed, because the client wants to jam as much functionality as it can into the project for the fixed price. “On the other hand, the contractor wants to spend as little time as he can on the job for the fixed price,” Filiatrault says.

Working in agile, where the client’s objectives evolve over time, is hamstrung by the fixed-bid contract. “The contractor wants to keep scope locked down as opposed to working in tandem with the client to evolve [the software] in a more collaborative way,” Filiatrault says. “Constant change orders to a fixed bid are tedious. In modern software development, it’s best for the software contractor to work on an hourly basis rather than on fixed contract price.”
Coping with communications gaps

Even within the same company, IT and non-IT people often don’t communicate well with each other. This can be an issue for freelancers as they try to stay in sync with clients.

“It is very true that engineers and non-engineers speak pretty much different languages,” Akhtar says. “The way an engineer looks at a problem and how a nontechnical person may look at a problem is very different.”

What might seemingly be a small issue for clients could actually require a decent amount of technical work to fix, and communicating this to nontechnical people can be tough.

For example, a client of Akhtar’s thought that having the ability to sell 10 items on its website instead of 20 should reduce the cost of the project by half.

“From an engineer’s perspective, once the core e-commerce experience has been built, the incremental effort to modify the number of items you can sell from one to anything is almost zero,” he says. “Freelancers find it a big pain trying to communicate ideas such as these to the client.”

While time management is a challenge that applies to almost any profession, IT freelancers are in a unique position because they might be called in to address issues when they least expect it -- throwing schedules into turmoil.

“Once you start to grow your business, time management becomes pivotal,” Brattoli says. “In order to grow, you need to manage your full-time job, your current freelancing projects, growing your business, training, and your personal life.”

This can become quite difficult in IT because many projects are not 9 to 5. “You may spend a day browsing the Internet, and you may work 24-plus hours straight because something blew up,” Brattoli says. “This flexible schedule can both make things difficult and allow you to succeed, depending on how you do it.”

Those working solo especially need to use their time wisely.

“A lot of tasks in the IT world involve doing a couple things, waiting a while, then doing some more things,” Brattoli says. “Rather than browsing the Internet without purpose every time you get these blocks of time, do some studying, read some blogs. Train yourself. On those days where you have nothing to do, bid on some jobs online, expand your LinkedIn network, plan out your dinner. Using your time wisely can alleviate a lot of stress.”

Tuesday, 1 December 2015

10 Microsoft Office 2016 features you’ll love

Office 2016 offers many enhancements that integrate more tightly with SharePoint and OneDrive. It can be confusing to keep track of all the features, so we pick 10 you are sure to love.

Collaboration is the key to Microsoft’s still-ubiquitous productivity suite.

To the casual user, the applications that make upOffice 2016 – Word, Excel, PowerPoint and Outlook are the anchor tenants, of course, rounded out by OneNote, Access and Publisher – will be indistinguishable from their predecessors. But make no mistake about it; Microsoft’s reboot of its flagship software suite is a major update, offering a wealth of collaboration capabilities that integrate more tightly with SharePoint and OneDrive than before. The many tweaks and enhancements across the board can be confusing though, and we peek under the hood to highlight the features that matter most.

1. Real-time co-authoring
The capability to work on the same document simultaneously with your colleagues comes to the desktop version of the productivity suite in Office 2016. Colleagues can work on the same Word documents and PowerPoint presentations that are saved on SharePoint or OneDrive without overwriting each other’s changes. Note that the “real-time typing” feature in which you can see your colleagues working on the same document is only available in Word for now. PowerPoint supports co-authoring, but without real-time typing.

2. Simplified document sharing
You can now easily share your documents in Office 2016, courtesy of a prominent “Share” button in the Ribbon. Available across Word, Excel and PowerPoint, the Share button lets you share access to a document to your team members, and serves as a one-stop location to review access permissions or see who is currently working on the document. As with co-authoring, the files must be saved in either SharePoint or OneDrive in order to be shared.

3. Capability to send large files using OneDrive
While the ability to share large files by sending a private URL link to friends and colleagues is hardly a novel feature, the fact that it is now integrated into Office 365 should be of interest from a productivity point of view. File attachments added to an email message in Outlook are automatically converted into a link that recipients can click on to download, assuming they are already synced to an OneDrive account or SharePoint folder. You can also specify whether they can be edited, or opt to attach the file as a local file copy instead, too.

4. Improved versioning
Made a mistake while editing a document, or accidentally deleted a chunk of content some time back and only just realized it? For files saved on SharePoint and OneDrive for Business (This doesn’t work for OneDrive at the moment), Office 2016 allows you to view historical versions of Office files directly from within Word, Excel and PowerPoint. Simply go to File > Historyto see a list of all prior versions in the History pane, click on the desired version, and load it in a separate window. The feature is also useful for reviewing earlier drafts of documents when editing a file or collaborating with others.

5. Smart Lookup
Smart Lookup is a new feature that allows you to highlighting a word and selecting “Smart Lookup” from the context menu (right-click on the mouse) to quickly pull up some related information without having to leave your Office app. Use it to look up the definition of a new word, or to gain some context with an unfamiliar term. Results are Bing-powered and will load into an “Insights” pane within your current authoring environment.

6. Support for Office Groups 365 in Outlook
A new feature called Groups in Outlook 2016 was quietly added with the launch of Office 2016. While relatively little mention was made of it, the new tool essentially offers a superior way to eliminate traditional distribution lists or messy email chains for collaboration within teams and project groups – both at work or at home. Essentially, you can create a group for new colleagues or friends to join, with each group having its own shared inbox, calendar, file repository and even integrated OneNote notes.

7. New chart types
For those who felt that the selection of charts in Office is getting a tad boring, Microsoft added a bunch of new charts to Excel that should help users to do a better job when it comes to visualizing financial or hierarchical data. Use the following new charts on Word, Excel and PowerPoint: Treemap, Waterfall, Pareto, Histogram, Box and Whisker, and Sunburst. Click on the links to see how they look like, and how to use them.

8. One-click Forecasting
Excel ninjas will appreciate the ability to create a forecast from available data. This new capability is embedded within Excel’s charts feature, making it easy to derive quick and dirty projections with the click of a mouse. Microsoft says that the feature uses the industry standard Exponential Smoothing (ETS) algorithm to give reliable forecasting data. For employers, insisting that staffers use this feature could help cut down on shenanigans in which forecasts gets too “creative.”

9. Skype integration
One of the tighter integration that Office 2016 offers is how the various desktop apps now let users jump into a Skype call from within Word of Excel. Tap into the various capabilities in Skype such as Instant Messaging (IM), voice or video calls, as well as screen sharing without having to break out of your current workflow or to launch the Skype client.

10. Stronger cross-device support
Finally, there is no question that Office 2016 represents a key step forward a new world of cross-platform support with tighter integration across both platforms and apps than before. Importantly, there is no feeling that any of these Office apps are abandoned or even “left behind” in terms of the development curve.

Of course, many of the capabilities highlighted here do require a subscription to Office 365 to either use, or to derive the maximum benefit from. There is no question that the new productivity and collaboration enhancements are real though, which is as good an argument as any to consider Office 365.