8 Ways to Hone Your Programming Skills and Become a Better Coder [Infographic]

8-ways-to-hone-your-programming-skills-open-graph

As the world becomes more connected and technology continues to evolve, your success as a programmer depends on your ability to learn and adapt. Any seasoned developer knows you should always be looking for ways to improve your programming skills. On that note, whether you’re new to the industry, or a vet, we have you covered with timeless techniques for continuous improvement.

1. Know your learning style

We all learn differently. Some learn best by reading a book. Some prefer hands-on experience, or need the structure provided by a formal course. Fortunately, there are plenty of free or low-cost learning resources only a quick search away so you don’t have to waste your time on methods that don’t suit you. Whether you. Here are a few great sites to get you started.

2. Learn from others

One of the fastest ways to improve your skillset is to leverage the knowledge and experience of people who entered the field before you. While a formal mentor is a great asset, it’s not required. Seek out expert help from sources like your team lead, members of your local user group, or Stack Overflow. Show your code and ask for feedback. And don’t let fear of criticism or feeling like you’re bothering people prevent you from tapping into one of the most powerful resources available for leveling up your skillset. You’ll be surprised at how eager to help many people are to help. It’s flattering to be asked to share expertise.

3. Use the 15-minute rule

If you’ve been stuck on a problem for more than 15 minutes, ask for help! Turn around and ask a coworker how they would solve the problem, or describe your issue in detail on Stack Overflow. Regardless of whom you ask, the very act of describing your problem in detail puts you on the path toward the solution. Most problems are not unprecedented, and someone will be glad to share their experience or to team up on the issue.

4. Work on real projects

The surefire way to improve? Practice and challenging yourself. This means you should always be working on a coding project. Even if you have a full-time programming job, the work may not be challenging enough to build your skills—so find something that will. Some of the best developers always have a side project to work on. Not having an idea is not an excuse. Find an open source project to contribute to regularly, build web apps for charity, or tackle that silly app idea your buddy keeps pitching to you.

5. Look under the hood

Most programmers rely heavily on frameworks such as Spring, Rails, or Angular to get the job done. While these frameworks promote productivity, they are also a treasure trove of examples and inspiration you can apply to your own solutions. Check out their source code and study it. At first you may feel lost, but over time you will learn to navigate large codebases, identify design patterns, and quickly understand code.

6. Share what you learn

As the old saying goes, the best way to learn is by teaching. When you learn something new, don’t keep it to yourself. Share your new skill or finding in a blog post, record a screencast of yourself building a new feature, package your code into a library and put it on GitHub, or present new discoveries at a local meetup. Not only does sharing reinforce what you learn, but it demonstrates your skills to future employers and clients. It makes you feel good, too!

7. Make small, daily improvements

No one masters programming overnight. It takes consistent, deliberate practice. Take a few minutes to slow down, and make one small improvement every day. It could be learning a new language feature, reading a page out of the manual, or changing your editor configuration to add a shortcut for a common task. When compounded over time, these small, daily improvements add up to major breakthroughs.

8. Explore

Take a timeout every week to explore new languages, technologies, and outside forces that shape our world. Knowledge and skills don’t exist in a vacuum. Find two to three sources of new information to regularly tap into for inspiration. Follow coders you admire on Twitter. Browse Hacker News daily or weekly. Subscribe to newsletters like the Changelog Weekly.

Summary

There are no secrets to becoming a better programmer. It takes patience, practice, and perseverance. Stay curious, make it fun, and never be too proud to ask for help. The reward is in the journey and enjoying each stop along the way. Happy coding!

Share “8 Ways to Hone Your Programming Skills and Become a Better Coder” On Your Site

The State of DevOps at the Start of 2017 [Infographic]

The word—or rather, the contraction—is simple: DevOps. But DevOps, which refers to the increased communication and collaboration between development and IT operations, is an ever-changing, sometimes complicated term. While “dev” and “ops” used to be siloed into separate philosophies, practices, tools, and work flows, they’re merging into one. The result? A more efficient, reliable process and product.

Though the basics aren’t exactly new, the DevOps world is still trying to figure out how it will evolve and integrate into already established infrastructures. Whether you head a company that relies heavily on DevOps or you’re just now dipping your toes into the DevOps pond, there’s plenty to learn—because this movement and culture are anything but set in stone. To get a better feel for what’s in store for DevOps in 2017, we reached out to the pros. Read on for challenges and changes you may encounter in the coming year.

The Experts:

Justin Vaughan-Brown: Director of Product Marketing at AppDynamics

Kevin Gillis: Software Product Management Leader (former DevOps leader at SmartBear)

Grant Smith: DevOps consultant at Just Eat and author of The Next Gen DevOps Transformation Framework

Stephen Thair: Co-Founder and CTO of DevOpsGuys

How has DevOps changed the IT landscape in the last few years?

There are increasing signs of improved collaboration between Dev and Ops teams to work on a shared goal, which is the continuous delivery of high-quality applications to customers, employees, and partners. The days of Dev throwing code over the wall to Ops and each of them blaming each other for either bad code or a poor infrastructure are hopefully over. There is a sense of responsibility amongst Dev teams that they cannot work in isolation and need to partner with Ops to not only troubleshoot any issues, but also ensure that these do not occur again. —Justin Vaughan-Brown

DevOps has completely changed how the technology industry tackles engineering problems. DevOps turned the conversation away from a narrow focus on software and SDLCs to services and engineering. 2009 was a landmark year; more than a decade after we began running online services we finally started considering how we build, launch, manage, and support online services as a whole rather than just how we build the software. —Grant Smith

Dramatically. Departments, budgets, roles responsibilities, and above all—expectations. Annual product releases gave way to quarterly, then monthly, weekly, daily, and now several times a day. Now there are micro code check-ins, micro builds, micro testing, micro releases, and micro updates. Customers, the market, and executive management want everything now.

The lines have been completely blurred and that creates uncertainty and confusion as responsibilities go from Ops to Developers. To enable this shift in responsibilities and dramatic speed to release, it means automation of all stages in the development, testing, and production process, and that dev teams lead the charge and decision-making on tools and technology. My front row seat in particular showed how QA departments are driving toward more and more automation—some 100 percent—which means no manual/UX testing. This creates new risks around quality and user experience and has led to some serious philosophical debates in the industry. —Kevin Gillis

I think DevOps has fundamentally changed the IT landscape, and that change was long overdue. When you look at the stats on project delivery, you can see that most large enterprise IT departments are struggling to deliver. At best, 25 percent of the IT spend is wasted on failed projects and rework (some estimates have that as high as 50 percent or more). When you add the huge changes required across the organization to deal with digital disruption and digital transformation, it’s obvious something has to change. We need a new operating model for IT, and that new model is DevOps. Organizations are seeking to restructure their IT delivery models away from the short-term, cost-focused, project-based models to full lifecycle, innovation-focused, product-centric models based around cross-functional DevOps-enabled teams, using the newest cloud-hosted automated tools and technologies. This change isn’t easy. It is a cultural shift from command and control management to true leadership, surrendering centralized control to autonomous teams, as well as learning a raft of new technical skills in order to stay relevant in this new world. —Stephen Thair

What are some challenges you think the DevOps world will face in 2017?

I have been a DevOps evangelist for some time now but I had a sobering experience recently. I attended a Gartner Data Centre Summit in London at the end of November, and during the DevOps and I & O breakout, analyst Ian Head suggested that around 87 percent of those surveyed at each Gartner conference said they were not getting what they hoped for from DevOps. DevOps is just past Gartner’s peak of inflated expectations and I believe it now has to push past the hype and deliver.

This past year was dominated by data breaches, hacking stories, and a general sense of disquiet at how vulnerable our personal information is to a multitude of threats. Going into 2017, security needs to be an in-built consideration in any new product release, not an afterthought. There is huge partnership potential between DevOps and Security, which is largely unrealized. —Justin Vaughan-Brown

Availability of good engineers is the single biggest challenge facing the technology industry today—and it shows no sign of improving. Many businesses are investing in bootstrapping graduates where five years ago they would have demanded three or five years experience. Some universities have started offering DevOps courses or modules, but many computer science graduates still leave university having never configured the environments that run their code. —Grant Smith

There’s a notion, particularly with the ease of updating SaaS and Mobile-first applications, that speed wins—but at what expense? Quality, customer experience, brand erosion? Companies are struggling with this. At one conference, I heard Uber’s Denali Lumma talk about having thousands of code repos and getting build cycles in an intense CI/CD environment means everyone—even developers—are on call. Defects in production may go straight to the developer at 3AM! Still, fox-in-the-hen-house debates persist about developers picking up more and more of the testing. Companies like Facebook and Expedia are moving away from formal QA and more toward testing by developers and tools like Jenkins. I suspect that outside of really talented engineers, commercial-grade testing is beyond most developers. Automated testing is good regardless of dev methodology, but with DevOps, it’s a requirement and not an elective. —Kevin Gillis

I think it’s inevitable that in 2017 we’ll start to see a DevOps backlash. As we move through the hype cycle from the peak of inflated expectations into the trough of disillusionment—as happens with any new technology or methodology—there will be articles saying “DevOps is Dead,” and that’s fine. What doesn’t change is that the old, siloed, hierarchical models are still broken. We need new ways to deliver IT products and services, particularly as cloud SaaS and PaaS services evolve, which in turn means software architecture evolves (e.g. the current hype over server-less computing). The other biggest challenge the DevOps world will face is a massive skills shortage. Currently there is somewhat of a zero-sum game going on with experienced DevOps people in high demand, which means people jump from company to company. This isn’t sustainable in the long run, which is why we (DevOpsGuys) are investing heavily in 2017 to expand our education arm and set up our own DevOps Academy to train people in the theory and cultural aspects of DevOps as well as practical hands-on tools and technology. —Stephen Thair

How will DevOps advance in 2017?

Organizations are increasingly data centric in nearly all respects: from where to invest to win new customers to smart Algorithmic IT Operations (AIOps) and data-driven development. DevOps will be no different. As industries continue to adopt DevOps, KPIs will be shared and enable benchmarking with peers. Insights from the application performance perspective will remain critical in understanding the customer experience and the exact nature of each business transaction.

There are also a ton of events for DevOps practitioners to gather and share: MeetUps, summits, conferences, virtual shows, and more. Learning from people who have initiated change and had a measurable impact reassures people at the start of the DevOps journey.

And finally, DevOps is having a direct impact on businesses in terms of customer satisfaction, retention, and acquisition. This gives Development and Operations heads the mandate to engage business colleagues and understand where they can focus efforts next, and be truly aligned. AppSphere saw the launch of Business iQ, which shows the correlation between the customer online experience and the bottom line. This is just one example of how IT teams can share actionable insights with business unit colleagues and foster deeper collaboration. —Justin Vaughan-Brown

Server-less is going to be part of every progressive organization operating model. The benefits are too huge to ignore given how easy it is to implement. —Grant Smith

The entire Software Development Lifecycle (SDLC) is shrinking. And this requires more controls to measure and track effectiveness and productivity. I love the idea of Facebook using a scoring system where developers lose points for bad releases/defects that make it to production. Test automation and test parallelization will receive more attention. Until code automation/AI is more prevalent, the bottleneck is testing and deployment—and that can be addressed with automation (e.g. testing, code check-ins, builds, integration), APIs, and deployment. —Kevin Gillis

DevOps will advance as we expand the practitioner knowledgebase. As more and more organizations adopt DevOps, we’ll see more case studies and real-world examples of how to effectively manage the DevOps transition—especially for large enterprise organizations. There is a difference between organic and transformational DevOps, and the challenges a globally-distributed enterprise with thousands of staff faces are completely different than those faced by a small start-up implementing DevOps as they grow. That said, the goal is to get all organizations to communicate more effectively, better manage their products, and cope with the rates of change we’ll see over the next five years. And for good or bad, we will also see more DevOps certification and standardization efforts in 2017. We’ve already seen at least three organizations claim they’re producing a “Certified DevOps” curriculum. Even Axelos, the commercial owners of the ITIL standard, are getting in on the act. —Stephen Thair

What are some DevOps practices you think will become mainstream in 2017?

I hope to see some form of reorganization and restructuring that breaks down traditional developmental divides. As organizations evolve to become more agile, expect traditional org structures to be challenged, revised, and even abandoned entirely.

“Shadow IT” and “citizen developers” are just two terms being shared to describe the growing impact the business will have on tech spend decisions, and IT teams need to have a plan for this. Equally, each employee’s field of vision is becoming extended, as their touch points with the wider organization increase. We will see a parallel loss of direct control and increase in influence further afield as the extended IT ecosystem grows. The days of empire building are fast receding.

And expect to see a new role emerge in the coming years called the Site Reliability Engineer (SRE). A term initially created by Benjamin Treynor Sloss, who leads global ops, networking, and engineering within the Google team, the SRE is sometimes a developer who now sit in an Ops role and is focused on availability, stability, latency, and performance. —Justin Vaughan-Brown

Anomaly detection. Innovations in logging and monitoring capabilities have now got us to the point where we can apply machine learning algorithms to metrics directly. You still have to identify your primary constraint metrics, but once that’s done you can have the computers stare at the graphs for you. —Grant Smith

Many larger, more mature companies are still transforming their product delivery teams to Agile and Scrum, and DevOps is still just a glimmer. For those currently running DevOps, expect CI/CD and daily micro releases to become more and more mainstream. Waterfall was measured in quarters, agile in weeks. But DevOps is now measured in days—even hours. —Kevin Gillis

The low hanging fruit of DevOps automation practices (continuous integration, test automation, automated provisioning, configuration management, application release automation, etc.) will be increasingly adopted. They can buy you some time and breathing space and help you pay back enough technical debt so you can focus on the wider digital and DevOps transformation agenda. Measurement-driven approaches to DevOps will be huge in 2017. We are already seeing organizations collecting and analyzing huge amounts of data about their customers, applications, and infrastructure. We’re also seeing more organizations use this information to guide decision making and product strategies, and where they invest their time and effort. Both open source and vendor solutions, such as AppDynamics, will play a role here. —Stephen Thair

Do you think DevOps will become more standardized?

DevOps has different implications for each organization, in how it is adopted, evangelized, measured, and grown. There are some common metrics such as release velocity, Mean Time to Recovery, Mean Time to Resolution, and so forth, but the overarching vision will be determined by the organization’s industry, culture, business goals, and market positioning rather than a pre-defined program. That said, the build, test, and deployment approaches should be standardized within each organization. The DevOps Institute offers a training and certification process (which has its supporters and detractors). Naturally, any accreditation needs to be backed by real-world experience for a candidate to be considered seriously. —Justin Vaughan-Brown

DevOps is actually highly standardized. By my reckoning, DevOps is in its third generation now. For those early adopters, standardization is based around their own internal code bases. Facebook, Netflix, Google, and Etsy have rich, publicly available code repositories, which show how they’ve developed. The second generation of DevOps organizations all standardized around AWS and CI tools like Jenkins and Teamcity, and have invested heavily in ELK and visualization tools. The third generation of DevOps organizations have standardized around containers, microservices, and server-less functions. And they’ve fully embraced SAAS offerings for non-strategic requirements like log and metric analysis. —Grant Smith

Yes, but it will take one or two key, industry-wide initiatives to drive this. For instance, Sonatype helps companies with the quality, security, and speed of their software supply chains, and SmartBear’s SwaggerHub helps standardize the building, documentation, and deploying of APIs. —Kevin Gillis

The IEEE are already working on a DevOps Standard 2675 to “… specify practices for groups including development, operations, and other key stakeholders to collaborate and communicate effectively to build, package, and deploy software and systems in a secure and reliable way.” Note that the cultural aspects of DevOps, which are harder to measure and define, are out of scope for 2675. ISO are also working closely with IEEE on the DevOps standard.  —Stephen Thair

Why should organizations who haven’t yet adopted DevOps do so in 2017?

Quite simply, they risk of falling behind the competition and becoming dinosaurs. The application experience is a huge determinant of the brand (even more so if you are an online only business), and if the competition delivers better quality and richer customer experience than you, your customer base is at huge risk. The good news: DevOps is being adopted as an approach in all sectors, and success stories are out there. If you know little about DevOps, a good starting point would be to watch some of the excellent videos on YouTube from luminaries such as Jez Humble, Gene Kim, Dave Farley, and Dan North, and read key books such as The Phoenix Project and the more recently released DevOps Handbook. —Justin Vaughan-Brown

The reason for adopting DevOps working practices are the same now as they were when the term was first coined. It leads to better solutions that offer customers better products and delivers innovation faster than the alternative. If your organization doesn’t need to improve how it delivers online services, then you can continue as you have been. —Grant Smith

Because probably most of their competitors have! More seriously, I see this shift being very similar to what I saw with Agile/Scrum. About 10 years ago, my entire product management and R&D team was trained on Scrum by Mountain Goat Software. It was a company-wide initiative and there was great resistance from the one high-performing team that was shipping on time with the right quality and scope.

I asked Ken Schwaber (Co-Founder of Scrum) to speak to my team and he told me “don’t switch to Scrum, because what you have is working!” It’s very similar for DevOps—if your customers, competitors, and the market are not demanding it, don’t switch. But if you need a more responsive methodology and quicker time to market, your organization should start with small, focused, and non-critical projects in 2017 before making company-wide institutional changes. —Kevin Gillis

If you don’t significantly improve your ability to deliver digital products in the next two to three years, your organization will go out of business. The IDC predicts that by 2018, 66 percent of global 2000 enterprises will have digital transformation at the center of their corporate strategy. Doing things the old way just isn’t good enough anymore. —Stephen Thair

Do you have any additional thoughts on the state of DevOps in the coming year?

It’s going to be one of hard work, but hopefully real progress. After all the excitement and noise DevOps has created, it’s time to roll up your sleeves and tackle the hard stuff, if you haven’t already done so. This means expanding initial wins to other teams (geographically and business units), promoting the tangible benefits, and being brave enough to challenge established thinking. It takes real belief to do something different and challenge the status quo, but if there was a time to do so, it is now. —Justin Vaughan-Brown

We in DevOps need to get better at delivering the basics quickly. The exciting and challenging problems aren’t building infrastructure, deploying containers, or exposing metrics and logs through query engines. Data is the next great frontier. We can manage software with software, infrastructure with software, and networks with software—and yet when it comes to managing data we’re still scrambling around for flint to make fire. We either need to find very sophisticated solutions to version, deploy, roll back, and delete records in large data structures, or we need to get much smarter about how we store and manipulate customer data. (My bet is figure out the latter before we get the former.) —Grant Smith

Watch for the “Ops” movement to become contagion: DevOpos, DevSecOps, BizOps, and for you beer lovers, even HopOps! As with the shift from waterfall to modified waterfall to various flavors of Agile, expect to see many DevOps variants. As your company assesses, don’t be too prescriptive or pedantic, but instead match up with what you need to accomplish your company’s business goals and then figure out where DevOps fits in your organization. —Kevin Gillis

Tech Companies already lead the Fortune 500 by market capitalization, and the speed at which unicorns like Uber, AirBnB, WhatsApp, Nest, and Beats reached multi-billion dollar valuations is phenomenal. A new entrant can disrupt established companies just as quickly, so you need strong digital capabilities to be able to react to changes in your market. DevOps is the new operating model for IT that sits at the heart of your digital capabilities. —Stephen Thair

More About Our Experts

Justin Vaughan-Brown
Justin Vaughan-Brown is Director of Product Marketing at AppDynamics, with a specific focus on DevOps. He has previously held DevOps evangelist and digital transformation global lead roles, and was CMO of DevOps consultancy Contino. He has 20 years of technology marketing experience with Software AG, CA Technologies, Microsoft, BusinessObjects, and SAS, amongst others. He has also held senior European marketing roles with data integration, document security, and high-performance database vendors. He is the author of “The Digital Transformation Journey: Key Technology Considerations” paper, hosted the quarterly DevOps Influencer Dinners, and is responsible for the DevOps Simulation Experience, an interactive online workshop that explains core DevOps principles.

Kevin Gillis
Kevin has more than 20 years of executive product management experience and is credited with more than 100 product releases, ranging from 1.0 products and services to sourcing. He successfully integrated 10 mergers and acquisitions, together generating more than $600 million in sales. More recently, he served DevOps leader SmartBear Software and Network Management leader Ipswitch, where he held product management leadership positions and helped drive rapid growth. He was Director of Product Management at Trellix/Interland and Into Networks and Product Manager at Lotus/IBM. Kevin graduated with honors from the H. Milton Stewart School of Industrial & Systems Engineering (ISyE) at the Georgia Institute of Technology.

Grant Smith
Grant has created and led high-performance operations teams in some of the largest and fastest growing companies in the U.K. over the last 15 years, and has been at the forefront of the DevOps movement for the last four years. Grant has driven real collaboration between Operations and Development teams at AOL, Electronic Arts, and British Gas by implementing Infrastructure as Code and driving application integration from continuous build systems. Grant has delivered game platforms running in the cloud, enjoyed by millions of players per day, and websites serving one billion page views per month. Most recently he delivered a high-performance, scalable, Internet-of-Things platform for British Gas.

Stephen Thair
Stephen has 25 years of IT experience working for top government and corporate organizations in Australia and the U.K., including BNP Paribas, Vodafone, and Credit Suisse. Prior to co-founding DevOpsGuys, Stephen was the Web Operations Manager for Totaljobs and was responsible for running their online job board platform. Stephen’s passion is creating operationally excellent platforms for web applications that are secure, scalable, and manageable. He is an expert across a wide range of technologies, with Microsoft web server infrastructure being a specialty. In recognition of this expertise, Stephen has been made a Regional Director by Microsoft. Stephen blogs extensively and presents regularly at numerous meetups, webinars, and conferences around the world to evangelize the benefits of DevOps. In 2014 he co-founded the WinOps Conference and Meet-Ups, which are dedicated to promoting DevOps in Windows environments.

Share “The State of DevOps at the Start of 2017” On Your Site

The Most Popular Programming Languages for 2017 [Infographic]

It’s hard to believe that it’s already 2017. But with the new year comes new challenges, new opportunities—and, of course—new software projects. One of the most important questions beginner, intermediate, and advanced coders all have to answer before they begin their next project is which programming language to use. Instead of reaching for an old favorite, pause for a moment to consider the options.

There are no perfect languages, so it’s important to take the time to understand the tradeoffs. When you decide on a language, you also determine what libraries and tools youwhich-programming-language-will-reign-in-2017-header have at your disposal, the pool of candidates you can hire, the availability of documentation, and much more. In this article, we examine the top programming languages from leading industry sources to help you make an informed decision that best suits your needs.

Familiar faces

There are languages, like Java and the C-family (C, C++, and C#), that have dominated the programming language charts for years, and won’t be obsolete anytime soon. (Check out Github’s 2016 programming language rankings chart to see where the top 21 languages fell last year.) They may not be trendy, but they are battle tested, well understood, have active communities, and continue to evolve in response to new contenders, with features such as lambda expressions for Java 8 and coroutines for C++17.

JavaScript

If you are a developer in 2017, JavaScript is a fact of life. It ships with every major browser, powers server-side applications via Node.js, and even drives the development of desktop and mobile applications (with the help of frameworks like Electron and React Native). What started out as a simple scripting language to add dynamic elements to websites now powers full-blown applications in nearly every domain.

But it’s difficult to find anyone still using plain JavaScript. The language, which is officially standardized as ECMAScript, has evolved so rapidly that developers often use tools like Babel to transform modern JavaScript into cross-browser JavaScript. Languages that compile to JavaScript will also continue to gain traction in the coming year. For example, TypeScript adds classes and interfaces to plain JavaScript, and Elm brings the functional paradigm to the JavaScript ecosystem. While you may find it impossible to avoid JavaScript, you must exercise discipline when selecting your JavaScript toolset for projects with multi-year lifespans.

Dynamic languages still going strong

Python, PHP, and Ruby continue to rank among the most popular programming languages due to their newcomer user friendliness , suitability for rapid prototyping, availability of libraries to solve almost any problem, and vibrant developer communities. While less performant than their compiled and statically typed predecessors, dynamic languages remain the perfect choice for business applications where time to market is critical.

The rapid rise of Go

Open sourced in 2009, Go (or golang) quickly became one of the most popular programming languages. Designed by Google engineers as a practical replacement for large-scale systems development (where traditional languages including Java or C++ still reign supreme), Go has found a strong, emerging following among all kinds of developers.

Most notable for its simple syntax, built-in concurrency support, and feature-rich standard library (which includes a production-ready HTTP server), Go stirred up controversy over its deliberate omission of features, especially inheritance and generics. Despite its relative simplicity, people already use Go to ship popular, cutting-edge technologies such as Docker and Kubernetes.

Developing for mobile

Apple introduced Swift in 2014, and the language is already climbing the popularity charts. Objective-C still ranks higher, but Swift is rapidly replacing it as the preferred language for both beginners and pros to build iOS apps. The streamlined syntax, gentle learning curve, and powerful abstractions all contribute to Swift’s popularity. While Swift is open source and theoretically could be ported to other platforms, developers still need to rewrite mobile applications in Java or C# in order to run on Android or Windows phones.

Functional programming languages entering the mainstream

Functional programming languages such as Scala, Clojure, and Haskell are quietly growing in popularity. These languages offer expressive and concise syntax, exceptional compile-time error checking (meaning fewer bugs in production), and strong support for parallel operations. These benefits come at the cost of a comparatively steep learning curve and small hiring pool. However, as more developers explore functional programming in response to the unique demands of modern computing, functional languages will become more common for real-world projects.

The Most Popular Programming Languages for 2017

The Most Popular Programming Languages for 2017

Learn more

With so many great programming languages at your disposal, it can be difficult to decide on one. Fortunately, you do not have to decide on your own. Talk to your developers—they have well-informed opinions about the best language for your next project. Go to local tech meetups to discover what other companies choose and for what types of projects. Hit online job boards to see which languages and skills are in high demand. Ultimately, it’s up to you to choose which language features take top priority for each project you work on.

Share “The Most Popular Programming Languages for 2017” On Your Site

 

Too many tools, not enough big picture: A case of Franken-monitoring

In recent interview, an IT operations director told us, “We frankly have too many tools, and many of them weren’t performing to our expectations.”

If you are an enterprise ops leader managing complex applications, chance are pretty high that you can relate to that statement.

At AppDynamics, we call this “Franken-monitoring,” a situation characterized by many, usually too many, siloed tools — for application, server, database, end-user client, etc. — that provide varying levels of disparate visibility into IT applications. The challenges with this approach are several-fold:

  • Tools have minimal integration or common context, which makes it near impossible to manage the application or its business transactions.
  • Tools are designed for subject-matter experts, so it’s hard to provide value to the ops team as a whole.
  • Tools have high total cost of ownership, since every tool has to be independently procured, installed and managed, and staff have to be trained in their use.

How rampant is this problem? To get some real data, we recently worked with a well-respected analyst firm, Enterprise Management Associates, to get to the bottom of this.

For this study, EMA analysts surveyed IT professionals from companies of all sizes across both North America and Europe. Potential respondents were filtered to include only those actively involved in enterprise application development/management/delivery at the executive, middle manager, or “hands on” line staff levels.

The respondent mix was approximately:

  • 1/3 Europe and 2/3 North America
  • 0% small, 55% mid-sized, and 25% large companies
  • 45% executives (director or above), 25% middle managers, 30% line staff

The results were nothing short of astounding!

untitled-graphic (15)

  • Over 65% of enterprises have more than 10 monitoring tools
  • 43% have over 25 monitoring tools.

Read the full report here.

Just about every user of monitoring tools complains about the challenges of having too many tools without any situational awareness. Current approaches to integrate these tools with solutions like MoM (manager of managers) or CMDB (configuration management database) have for the most part failed, because it is hard to stitch together these disparate solutions from different vendors.

Gartner recently did a survey that pointed exactly to this challenge. As shown in the chart below, the key reasons (besides price) for poor APM adoption were, indeed, the complexity of the tools and poor integration between tools.

Reasons Why APM Tools Are Not More Widely Used

Screen Shot 2015-07-14 at 9.23.14 AM

Source: Gartner Survey Analysis: End-User Experience Monitoring Is the Critical Dimension for Enterprise APM Consumers (June 2015)

These challenges are effectively addressed by our recently released Unified Monitoring solution — it solves the problems of siloed monitoring and glue-ware integration. AppDynamics Unified Monitoring is the industry-first, application-centric solution that traces and monitors transactions from the end user through the entire application and infrastructure environment, to help quickly and proactively solve performance issues and ensure excellent user experience.

Leading enterprises such as Paychex have adopted AppDynamics Unified Monitoring and eliminated siloed solutions. As Jason Briggs, monitoring engineering manager at Paychex, puts it, “AppDynamics replaced five tools we once used to try to troubleshoot application problems. Today, everyone goes to AppDynamics to quickly determine the root cause of the issue.”

Read the full EMA report on monitoring tools.

Innovation Catalyst: A changing mandate for the CIO [Infographic]

“CIOs should build a platform for innovation to unlock its potential.”

Technology-driven innovation is everywhere. It’s in our electronic devices and in almost every product or service we use as customers in some shape or form. From enterprise social media to algothythmic decision-making apps right through to big data and analytics, it’s pervading the corporate world too. The rate and scale of tech innovation is greater than it’s ever been. And it’s only set to continue and speed up as more and more firms tackle the digital agenda.

Brand power and operational excellence are no longer enough to sustain competitive advantage. More than 50% of companies have disappeared from the Fortune 500 over the last 15 years and (depending on which source you look at) the average life of a Fortune 500 company is approximately 30 years. Today’s business leaders must innovate and embrace new technologies, and fast. They must drive disruptions of their own just to survive, let alone stay ahead.

As the traditional go-to person for all things IT-related, the CIO has a clear opportunity to be the catalyst and biggest champion of technology-driven innovation. We believe that to successfully fulfill this mandate, the CIO should focus on providing the ‘platform’ for technology innovation, allowing the business to take the lead in delivering digital initiatives. In other words, to fundamentally enable versus ‘drive’ or ‘own’ the exploitation of new technologies.

Here’s why.

The role of the CIO is being stretched to include innovation, integration, digitisation and customer experience. Most CIOs are unable to meet those expectations with the teams, partnership models and ways of working they have today.

In addition, the wider business is becoming more tech-savvy and more informed on how technology is driving business change. We can see this illustrated by the way that IT budgets are being allocated and where technical skills now sit, especially on systems of engagement.

Where the CIO had 80%+ of the overall IT budget in 2011, Gartner predicts that this will be less than 10% by the end of the decade. New senior business roles such as Chief Digital Officer (CDO) and Chief Innovation Officer are taking up the remit for the business enabling, more strategic technology investments. Gartner predict more than 25% of large firms will have a CDO in place by the end of this year with more than 500 already counted in 2014.  With relatively chunky budgets and more flexibility to stretch traditional organisational boundaries, they are given the responsibility to bring in new technologies and create digital business models and platforms.

Skills are following suit. For example, more than 50% of Marketing hires in 2013 had technical backgrounds and IDC predicts that 90% of new hires in 2015 will require ICT (Information Communication and Technology) skillsets. The days of “business defines the requirement and IT provides the solution” are no more. IT is now being done progressively more ‘in and by’ the business.

The trend here is that the CIO spends more time looking after IT Operations; the custodian of legacy ‘back-end’ systems and ensuring a secure, reliable infrastructure. How then does the CIO take a prominent innovation role for the business? Looking at the business-as-usual role of the CIO and taking a leaf from the book of how tech and startup firms effectively run IT as a business, the space for the CIO as innovation catalyst becomes quite clear.

The typical CIO wears a number of hats but for most, it’s the one of looking after IT operations and infrastructure that consumes most energy and resource. App rationalization, data center consolidation/outsourcing, shifting more to SaaS or cloud to reduce TCO all the while maintaining secure and reliable systems require significant effort. Any mindshare and resource left is spent on feeding the ever-hungry machine of system and data integration, harmonization projects and incremental change releases.

Many CIOs would love to spend more time on scanning the horizon for new technology and bringing tech-led innovation to the table. The hard truth is that most don’t have the time and level of business intimacy required to do this with the level of impact required.

Rather than looking to find and bring in new technologies, the CIO can play from a position of strength on the innovation charge. Most CIOs will have some form of IT or architecture roadmap. By redefining these and establishing new IT operating models, the CIO can provide a digital ready innovation platform for the business to leverage more readily.

For example, providing an incubation environment and brokering the set-up of the right internal and external experts and technical resource for the business to plug into is a compelling draw-card. With these types of business-enabling frameworks and a network of trusted partners in place, the business gets freedom and flexibility in a way that does not compromise the integrity and security of systems overall.

Tech-savvy business natives with deeper understanding of innovation opportunity in their business area can still explore and exploit new technologies. But with the right platform in place, they won’t have the incentive to skirt around the edges of IT or keep initiatives under the radar.

 

Actively supporting and enabling the business to explore and exploit new technologies and bringing more activity off the edges into the CIO purview has a cumulative benefit. By trying to control less, CIOs will gain more – more transparency into what is happening, better time to value for IT investments, improved business engagement and enablement. With some of the tools that exist today, CIOs can gain real insight into how technology is being used and how effective the digital-ready platform is in enabling the business.

Making it easier for the business to leverage new technologies to drive innovation should be the single objective of today’s CIO. The improved visibility this would facilitate gives the CIO the opportunity to constantly evolve and improve the platform and provide more value-add frameworks for the business to use. For example:

  • ‘Toolkits’ and vendor access frameworks for the business to scout, assess, experiment with and pilot new technologies
  • Internal, white-label app stores
  • Improved internal and external knowledge share and collaboration networks and tools
  • Frameworks and hosted environments established for co-creation
  • Enhanced integration protocols
  • Improved data models and more flexible APIs

 

These then become just a few of the new tangible and practical products and services that play directly into the CIO’s ‘deliver’ sweet-spot and at the same time putting them in a unique position to fundamentally empower innovation.

Playing a very active role in leading innovation is vital for the CIO to remain business-relevant in today’s fast moving, software-enabled business world. The CIO cannot however be the single protagonist for tech-driven innovation or driving forward the digital agenda. Innovation happens more easily and effectively in the right pockets of the organisation where there is more direct business drive and where the benefits can be achieved and seen more rapidly. The innovation mandate of the CIO is to set out and manage the platform and conditions to introduce, orchestrate and absorb those innovations at scale.

We realise that this point of view does not cover the full extent of the big questions and challenges that the CIO faces on technology innovation and digital transformation and reflects a scenario that will be true for some and not for others. For example:

  • How do you get the business P&L owners to really engage and pick up more ownership where you (or someone else) have already been given the digital and innovation agenda to drive?
  • It sounds ok in theory, but where does the money and resource come from to do any of this while still needing to deliver on business-as-usual expectations on an already stretched budget?
  • What happens to the demand-side of IT and what’s the point of changing my operating model if there’s no real prospect of the business changing theirs?
  • It can’t be a ‘one-size’ answer. How do we ring-fence where innovation is happening and protect and still deliver to cover the current baseline business that’s still bringing in the money?
  • My organisation tends to work in silos – how can I create a single platform to foster innovation and collaboration in an environment where people don’t work together?
  • How can I create a platform for innovation that addresses the complex data and back-end integration requirements but also allows people to plug in and move quickly?

A Changing Mandate for the CIO from AppDynamics

The Real Cost of Downtime, The Real Potential of DevOps

Hang around any IT department (or the AppDynamics offices) and you likely won’t finish a cup of coffee before somebody brings up the cost of downtime or the ascent of DevOps. And that’s a good thing, because these are two topics that are central to the value that IT brings to enterprises today and how that value will increase in the future.

IDC recently published research on these two topics in its report, “DevOps and the Cost of Downtime: Fortune 1000 Best Practice Metrics Quantified,” by IDC Vice President Stephen Elliot. (See the full report.) AppDynamics was happy to cooperate with the study, along with a select group of other enterprise software companies. The survey was conducted among a cross-section of IT personnel in Fortune 1000 companies.

The high cost of downtime

The research puts some dollar figures on what application downtime costs enterprises, and those numbers are eye-opening. An infrastructure failure costs $100,000 per hour, according to the survey respondents. A critical application failure costs a staggering $500,000 to $1 million per hour. A little more than a third of those outages last from one to 12 hours; 17 percent of infrastructure failures and 13 percent of application failures last more than a full day. All told, when you do the math, downtime costs the Fortune 1000 between $1.25 billion and $2.5 billion every year.

DevOps gaining momentum

According to the survey, more than 40 percent of the Fortune 1000 has a DevOps practice, and another 40 percent are actively investigating DevOps. Soon, the majority of Fortune 1000 companies will be employing DevOps practices. They’re expecting it to do great things for customer experience, productivity, costs and profitability, and speed of application delivery. They’ll deliver those benefits through increased capabilities in automation, continuous delivery, continuous integration, automated testing, and application monitoring.

Getting to DevOps isn’t an easy slam-dunk, though. Cultural inhibitors, process issues, and the need for executive support are just a few of the hurdles to putting together a DevOps practice identified in the research. And the same old tools aren’t likely to work in the faster-paced collaborative DevOps environment; those who try to fit old tools to DevOps have a failure rate of 80 percent.

A platform for the times

Looking at this survey data, it’s easy to see how the AppDynamics Application Intelligence Platform aligns tightly with the needs of the software-driven enterprise, from minimizing downtime to supporting the new processes and dynamics of a DevOps culture. The platform brings a comprehensive, modern toolkit including new-generation APM, real-user monitoring on desktop and mobile, collaborative tools like our Virtual War Room, and Application Analytics, a powerful new solution for harvesting real-time data from applications.

Importantly, the Application Intelligence Platform adds an entire new dimension to DevOps. It focuses on the business transaction as the essential unit of measurement, and recognizes business stakeholders as essential members of the team. “BizDevOps” brings everyone with an interest onto the same page, looking at the way users interact with the applications and complete or don’t complete business transactions as defined by the team, seeing the impact of new releases, understanding fully what happens during an outage, and quickly seeing how to fix it. The business transaction is the common language for all the stakeholders, and ultimately the measure of both user satisfaction and business success.

So what are the key takeaways from this research? Do whatever it takes to maximize application and infrastructure uptime. And cultivate a culture and toolkit that supports the successful implementation of BizDevOps and all the benefits it brings for application and business performance.

The author of the report, IDC Vice President Stephen Elliot, will also be joining us on an upcoming webinar. Register now!

Also, be sure to download a complimentary copy of the entire report here.

Priorities for Application Operations Teams in 2015 [INFOGRAPHIC]

As we start 2015, IT and Application Operations teams prioritize their goals to improve the overall efficiency, migrate to the cloud, place importance on big data, among other department goals.

In case you’ve been living under a rock, and haven’t heard about the monumental success of AppDynamics AppSphere™ 2014, well now you have some required reading. As part of the event, we surveyed all those present on their IT priorities and and the results were quite surprising.

Here are a few noteworthy stats:

  • Docker and other containers are growing. 25% said they plan to use a container solution in the next year.
  • Nearly half of respondents (46%) listed “Improving Operational Efficiency” as their number one priority.
  • Enterprises still prefer private cloud to public.

Check out the full infographic below…

 

Interested in attended the next AppDynamics AppSphere? You can pre register now and save your seat!

Want to see how AppDynamics can help your IT and Application Operations teams? Download a FREE trial now!

 

Cracking the Code: A Holistic Look at the Developer Industry [INFOGRAPHIC]

Are software developer jobs on the rise? Which cities are the most popular for tech workers? Are Computer Science degrees spiking with the tech boom? Which coding language earns developers the highest salary?

These are a few of the questions we set out to answer and showcase with our Cracking the Code infographic.

Some of the answers were expected, like San Francisco and San Jose topping the tech cities list. However, some answers surprised us, especially to see Ruby and C developers earning more annually than a Java or .NET developer.

Check out the full infographic below:

Are you a developer looking for a new challenging role? Check out Careers page!

Speed Kills: Every (milli)second counts [INFOGRAPHIC]

Application performance tends to be one of those things everyone knows is important, but it’s hard to put a specific number to just how important.

Earlier this year, Gartner published their findings (subscription required) from Google, Amazon, Yahoo, Microsoft, and many others that showed as performance, most notably speed, slows down, their revenue is negatively affected as well. Though not inherently surprising, what is surprising is by how much. These companies would lose millions of dollars in revenue for every fraction of a second their application slowed down. Running at anything but optimal speed was taking a chunk out of their bottom line.

We took some of these stats and created an infographic to paint the visual about how important every millisecond is in regards to your application performance, and bottom line.

Speed-Kills-8

Don’t lose millions off your bottom line, try AppDynamics for FREE today!

How Advanced Operations Analytics (AOA) are Transforming the IT World [INFOGRAPHIC]

We recently partnered with Enterprise Management Associates (EMA) to research how Advanced Operations Analytics (AOA) are impacting IT professionals. EMA’s report, The Many Faces of Advanced Operations Analytics, surveyed IT professionals about their experience with AOA, adoption levels, and use cases.

We found some interesting nuggets as a part of the research:

  • “Advanced Operations Analytics” is indeed transforming the world of IT; extremely successful AOA respondents are reporting up to 20x improvement in hybrid cloud adoption
  • Overarching capabilities of data assimilation and analysis boost efficiency of IT in a wide variety of use cases that include significant business impact

Big data clearly plays a vital role in IT decision-making, however, the report highlighted important use cases including optimizing service performance, minimizing security issues, managing change, optimizing capacity across the extended enterprise, and ultimately governing IT more effectively as a business in support of the business it serves.

However, the report revealed that the most effective AOA investments are blending these formerly separate areas. On average, respondents reported five use cases for each AOA deployment, with some reporting 10 or more. Advanced Operations Analytics solutions were supporting roles across both IT and the business, including roles related to business planning and online operations. There was particularly strong interest in AOA for DevOps and cloud, with two-thirds of respondents planning to support DevOps with AOA. In fact, those who were ‘extremely successful’ in AOA were 20 times more likely to be ‘very successful’ in their hybrid cloud adoptions than those who were only ‘moderately successful’ or less in AOA.

Check out other important findings from the report in the infographic below:

Check out the full report for free which dives deeper into use cases and adoption levels here.