Categories
Community

Why Python is the perfect choice for AI & ML project

With most companies using Artificial Intelligence and Machine Learning technology, it’s significant to use a programming language that reduces the code complexity and offers simple implementation. 

Though developers have ample opportunity to use different programming languages, Python gives them an edge over other available languages. Python offers a large number of libraries with simple and flexible tools, which makes the job easier. 

Plus, it is one of the leading solutions that can work for ML and AI. Python has gained an extensive advantage over different programming languages and is being used for different projects. You can hire Python developers to know more about compatibility. 

Let’s dive deep and look into what makes Python an ideal choice. 

1. Huge frameworks and libraries 

Building different ML and AI projects can be time-consuming. And at times, the coding process can be a complex one. However, many libraries are prewritten and compatible with Python, so developers prefer it over other languages. 

The libraries available in the stock make the process seamless for new developers. Developers can pick a library based on the need of the project. For instance, the Pybrain is used for machine learning, and Scipy is specifically used for advanced computing. 

Also, programmers can save a lot of time by using the approach, which is a unique library. 

2. Flexible platform 

Python is a highly flexible platform and is suitable for every purpose. The programming language offers the benefit of choosing between scripting and OOPS. Plus, you can consider recompiling the source code in project development. 

It’s easier to bring any changes, which saves time. Additionally, it allows the developers to choose from different programming styles, following which they can combine various styles to create better projects. 

The language is suitable for linking different data structures and offers perfect backend solutions for programmers. Moreover, it’s the most feasible choice for programmers who are often stuck between different algorithms – providing them with the power to check the code.

3. Its quite popular 

Python is quite popular among the developer community for creating projects. It’s one of the top programming languages, and most developers love to use it for simple stacks and tools. 

Moreover, it is one of the most commonly used languages for new developers. Developers can easily choose from the many Python packages available online. With a wide choice of packages, choosing the one for the project becomes simple. 

Leading companies have been using the language for years, so it’s the most preferred choice for the AI community. It is also the number one choice for developers who work on machine learning projects.

4. Platform-independent nature

Python has a platform-independent nature and that’s why most developers prefer the language. It makes the entire process of building solutions more seamless and simple. 

Developers can work on multiple platforms without errors. By tweaking the codes, they can make the applications ready to run or go live in no time. Additionally, they can run the apps on different OS. 

By choosing Python, developers can save a lot of time they otherwise waste on testing applications. The flexibility of coding is the main feature of Python. 

5. Better visualization options 

As discussed earlier, Python comes with a variety of libraries that are available online, and those libraries come with visualization features and tools. Moreover, when it comes to AI, the developers need to develop visuals for a project. 

They need to highlight the visuals for accuracy and attention. Plus, it plays a vital role in presenting the data. For instance, libraries like Matplotlib can be helpful for programmers and data scientists. 

It allows creating of different charts and histograms and – creating plots for data comprehension. The tools help in visualization and representation, which helps the developers to build better reports. 

6. Clear readability 

With Python, you will get the benefit of readability, which is an important aspect of technology. It is a simple language, easy to use, and beginners can change the code. 

Unlike other programming languages, Python is not complex. Besides, ease of use plays a vital part in exchanging ideas, algorithms, and tools. As a result, AI professionals can use the language to bring minor or big changes to the project at any given time. 

Apart from the readability, there are tools available to create an interactive design. The external tools can help in debugging and tab completion. It can also help in testing. Additionally, it also plays a part in facilitating the work schedule. 

7. Rapid development and community support 

Python offers the benefit of prototyping, and if the developers are familiar with stacks, it saves time. Also, the developers don’t have to waste time in the integration of AI. Most developers consider Python simple as far as readability and writing are concerned. You won’t need to learn the complicated codes. 

Python offers extensive community support – backed by experts and professionals in the field. Additionally, it provides the developers with all the essential resources they need to work on. 

New developers can work quickly and hassle-free. Besides, the experts are always preparing to rescue new developers if they are stuck with the project. In every phase of the development cycle, you can take the help of experts. 

Wrapping up,  

AI and ML technology is constantly evolving and bridging gaps between companies. Implementation and integration can help increase efficiency and productivity. 

Additionally, the use of Python for the two technologies is providing solutions to real-life problems. Plus, you can expect a customised user experience with Python. 

Categories
Tips

Why Finding Programming Jobs is Difficult

A few years ago, I started guest lecturing and volunteering at a few of the coding bootcamps here in Chicago. I had a very non-traditional job search process (more on that in a minute), so it was surprising to me that so many new grads had a tough time finding their first roles.

Since then, I’ve realized that job hunting isn’t just hard for new software developers. There are virtually endless threads on Reddit (1, 2, 3, 4) bemoaning the process and how arbitrarily good programmers are rejected without reason after putting dozens of hours into the process.

In short, it’s demoralizing, but I’ve been on both sides of the table.

In my 12+ years in tech, I’ve been a software developer, an engineering manager, a CTO, and a founder. I’ve been in the hiring seat and the job-seeker’s seat at various times, and like many of you, I think most companies’ hiring systems are deeply flawed.

That said, there are ways to navigate it or work around it entirely. As an applicant, understanding how the system works and playing to your strengths can help make it a lot easier on yourself. So, in this piece, I’ll break down the hiring process from an employer’s perspective. I’ll share some of the reasons this process is so annoying (on both sides) and offer my perspective on how both sides can navigate it.

Why Is Job-Hunting So Difficult for Software Engineers? 

There are a number of factors at play in making job-hunting as hard as it is. Here are just a few factors:

1. Oversupply of Junior-Level Developers

Finding your first role is particularly hard for entry-level programmers, since the vast majority of openings are for mid or senior-engineers with 5+ years of experience. But, employers are somewhat justified because junior developers can be a risky bet.

Hiring a new software developer can cost tens of thousands of dollars. Add to that onboarding and training costs — which are significant for someone who’s completely new to the field — and it’s easy to invest $30,000 or more before they’ve added a line of production code.

Now imagine you make a bad hire.

It takes 8.8 weeks to dismiss someone, does damage to the hiring manager’s reputation, hurts morale, and the company has to recruit for that position all over again. Bad hires mean a lot of money and time is wasted, and most employers are extremely risk-averse (read fearful).

As a result, companies tend to be biased toward experienced candidates who are familiar with the language and frameworks they use. They tend to want proven contributors who are used to working in a professional environment and know all the tools of the trade.

I’m not saying this is right, but this is the economic case that any junior applicant is fighting against.

2. Outdated Hiring Practices

A lot of the frustration also stems from the fact that many steps in the process are not relevant to the actual job. Instead of testing for skills and knowledge applicable to their day-to-day work, applicants are made to jump through arbitrary hoops that often leave non-traditional and diverse candidates struggling.

> “But honestly, as an ACTUAL senior software developer, why do I have to brush up on things that don’t come up in the day to day often?” – Anonymous

Applicant Tracking Systems

For starters, ATSs, which are meant to help facilitate the hiring process and save everyone time, can be a huge barrier. Job seekers have to upload their resume and then fill out the exact same information all over again in most ATSs.

What’s more, many recruiters use these systems blindly.

Most ATSs will parse an application for keywords to determine if a candidate is qualified. If somebody wrote into their application that they’ve used Scala before, but they didn’t explicitly write that they’ve used Java, the ATS might tell the recruiter that they don’t know Java. A real engineer would know that the are closely related enough to be interchangeable in many environments, but naive recruiters may not.

This leads candidates to use hacks like (Amit Juneja’s here) to manipulate ATSs to get more positive replies.

While employers might save time using these tools, they’re clearly missing good candidates who just don’t know (or care) enough to game the system correctly.

Whiteboarding Sessions

Termed “whiteboard algorithm hazing” by David Heinemeier Hansson, the creator of Ruby on Rails, whiteboarding is one of the most aggravating experiences for job seekers.

This interview style, which is widely used by tech companies like Google, Facebook, and Amazon, asks candidates to spontaneously regurgitate any one of hundreds of algorithms that were last useful maybe 50 years ago. They’re asked to write out these algorithms on a whiteboard with no access to an IDE or any reference material.

Spoiler alert: this is nothing like the work that real programmers do.

In the job, they’ll get to work on their own computer using reference materials and all sorts of assistive devices. I’d argue that it’s more important that developers know how to actually look things up quickly on Stack Overflow than repeat algorithms by memory, but that’s just me.

Hanssen says as much in his blog: “I’ve known fabulous programmers flame out in the quizzing cage and terrible ones excel. So unless you’re specifically hiring someone to design you the next sorting algorithm, making them do so on the white board is a poor gauge of future success.”

So why do companies default to this method of weeding out applicants?

Some of it is laziness. Many managers do whatever the policy dictates rather than improve the policy. For others, it’s likely a form of elitism or bias. Many companies want to limit their applicant pool to people with more traditional computer science backgrounds rather than those with self-taught or bootcamp experience.

In any case, whiteboarding has forced many applicants to spend months brushing up on arcane programs like maze solving algorithms or the longest possible Collatz sequence, hoping that they get tested on one of those during their interview.

It has also spawned an entire industry of Online Judges — platforms where applicants can solve problems and spend time on coding exercises. LeetCode, HackerRank, and CodeForces are some of the most popular ones out there. It’s a lot like SAT prep for a job, except that you have to go through it again every time you want to change your job.

3. Job-Skills Mismatches

Finally, I see many developers struggling in the job market because they don’t have the right skills. This problem affects new and experienced developers.

For example, if you’re a senior developer who’s built a career working in PHP, but all the best companies are looking for Python or Golang developers, you’re going to have a hard time getting offers.

This goes back to point 1, but companies don’t want to spend money and time cross-training new hires. It’s expensive and risky, so they favor candidates who already have the skills they think their job needs.

The problem is that for many developers with a full-time job, family, and other commitments, it’s very hard to spend time learning a new programming language on the side. Keeping up with all the new technologies in this industry is one of the most common challenges of working in this industry.

So How Do I Get Hired? 

While there are movements being made against some of these arbitrary recruitment practices, many big companies have stuck with them. So in the meantime, how do you get hired and not get discouraged throughout the job hunt?

Here are a few pointers from my experience as a job seeker as well as conversations with fellow engineering managers:

1. Network, Network, Network

If you want to avoid the black hole of online applications, you need to build a network and reach out to people. I spend between four to eight hours every week building and maintaining my network.

Networking got me my first job right out of college and every subsequent job I’ve had since then. 

I started attending conferences and meetups very early in my career. As I began making connections, people started inviting me to speak at meetups and bootcamps, even though I was relatively early in my career.

I even kept track of all the people I met and got in the habit of reaching out to reconnect with them periodically. These efforts helped me avoid much of the chaos of traditional recruitment throughout my career. 

In a recent podcast on this topic I recorded with Taylor Dorsett, Software Engineer at Home Chef, he recommended treating each meeting as a learning process, especially when you’re young. “Can I learn something from this interview? Even if I fail at the coding problem, can I connect with this individual and learn something? [Through this] I actually had really good conversations with people and interacted a lot more afterwards.”

This mirrors my own experience. Even if the people I met weren’t looking to hire at the time, I stayed in touch. When they were hiring, I was the first person they thought of.

Whether you’re an entry-level programmer trying to get a foot in the door or an experienced one trying to find the right role, networking will make it a lot easier on you.

2. Contribute to Open-Source Projects

Another way you can distinguish yourself as a candidate is to get involved in a larger, existing project. There are plenty of open-source projects you can contribute to, and you don’t have to make major updates to help. Even bug fixes and documentation updates are valuable contributions!

As an employer, this practice shows me that you can learn an existing codebase, interact with others remotely, and think critically enough to make updates. Greenfield projects are rare in the real world, so showing that you can play well with an existing codebase is a huge asset.

3. Practice Intentionally

If you want to get hired, you have two options:

One: you can limit your search to companies which don’t have annoyingly arbitrary interview practices. Four Square, for instance, has ditched whiteboard interviews in favor of assignments you can take home. Pivotal Labs offers an engaging paired-programming interview style. Networking can help you connect with managers at a number of these companies, but believe me, there are plenty of them out there.

Two: you can spend a couple of hours every week practicing coding interviews. Doing LeetCode exercises is a grind, but you will get better at them over time. Platforms like AlgoMonster and Educative can also help you learn in a more structured way by understanding the patterns rather than memorizing the answers.

You can also practice with mock interviews. I haven’t used it, but Interviewing.io is a well-respected resource where you can anonymously practice interviews with Facebook and Google engineers.

4. Share What You Know

Finally, if you’re looking to stand out from other candidates and have more opportunities come to you, educating others is a great option.

Writing tutorials, recording YouTube videos, or creating an online course is a great way to build your personal brand and prove that you’re worth hiring. I wrote regularly my whole career as an engineer, and many of the blog posts I wrote led to job offers, consulting work, or new connections. Honestly, it’s why I still write pieces like this one, and it led me to create my current company, Draft.dev.

Sharing your knowledge is a great way to help others while showcasing your skills and building an online presence.

Conclusion

The software development field is still growing exponentially and there’s a significant shortage of qualified talent in the space. 

While job hunting can be a huge pain, this is still a good field to be in. But if you’re picky, you may just have to fight a little longer to find that perfect role. Meeting new people and building a body of work you can showcase is a tried-and-tested hack to stand out as a candidate. 

If you found this article helpful or have thoughts of your own, I’d love to hear them. Leave a comment or find me on Twitter to continue the conversation.

Categories
Community

A Deep Dive into Studios Game Developers Work for

The nature of professional game developers’ work can vary depending on the type of studio they work for. In this chapter, we will explore the profile of developers working for different types of game studios, focussing on their experience, roles, and technology choices. 

For the first time in the latest edition of our Developer Nation survey, we asked professional game developers to describe the type of game studio they work for. The modern game development space has stratified itself into several different studio types, and within these studios, the types of tools and technologies used can vary significantly. Further to this, the profile of developers also shows differences between studio types.

We break down professional game developers as belonging to the following studio types:

  1. Game publishers, who outsource most of their development;
  2. Large-scale studios that develop and self-publish a collection of games;
  3. Third-party developers who work on various games from different publishers;
  4. Indie studios that publish and develop a small number of games

Here’s what we found

Game developers may be equally spread among different studio types, but we observe some important differences in their profiles. Developers with 3-5 years of experience are most commonly found in all types of studios except third-party developers; for this type of studio, their team is most likely to have 1-2 years of experience. Those with more than 11 years of experience in game development make up only a small portion of the general game developer population (11%) but have a much higher representation at indie studios (20%). 

The most experienced developers in the industry can choose where they work. They may be choosing to work for indie studios due to greater creative control over projects or a preference for working within small teams, now rarely found in AAA development. They may also make personal decisions to work for studio types that are less likely to be involved in ‘crunch’.

“Developers at Indie studios are twice as likely to be highly experienced – 16 or more years under their belts – than those working for other studio types”

Mid-career game developers–those with 6 to 15 years of experience–make up more than a third (37%) of the developer workforce in large-scale studios, compared to only a quarter (24%) among professional game developers in general. The scope and complexity of the properties that large-scale studios work on may drive demand for more experienced developers. Despite this, the most experienced developers still more frequently choose indie studios, indicating that the previously suggested factors may outweigh the offers large-scale studios can make to these developers.

Of the many roles game developers may hold, we consider game designers, artists, UI designers, programmers, and QA engineers as the ones that consumers would likely identify with game development and are often the ‘core’ roles for producing games. Differences in studios can be seen by the different percentages of developers identifying themselves with these roles. Those who self-identify as programmers account for 39% of those working for indie studios, which is significantly higher than the professional game developer average (24%). 

Similarly, the proportion of developers working for indie studios describing their roles as either game designer (46%), artist (27%), or UI designer (14%) is nearly double that of the population average, 23%, 15%, and 8%, respectively. The proportion of these roles between studios makes sense, considering the nature of development within these types of studios. Indie studios are typically smaller than other studios, with 66% of indie developers working for companies with up to 20 employees, compared to only 43% and 34% of developers working for game publishers and third-party studios, respectively. This can lead to more employees in a studio being directly involved in game design and development.

“Third-party studios have twice the proportion of developers in test roles compared to other game studios”

A counter-example can be seen with QA engineers, who are twice as prevalent in third-party studios (10%) compared to the population average (5%). Third-party studios having a larger proportion of QA engineers corresponds to their role in development cycles. These studios do a lot of development in-house, often work on larger projects, and can undertake contract work for larger studios, all of which require dedicated QA departments.

Further differences between game studios can be found in the choices of game engines. Unity and Unreal Engine are the most used game engines, with 33% and 15% of game developers using them as their primary engines, respectively. However, among developers who work for indie studios, these two game engines account for 48% and 20% of developers, compared to less than 28% and 12% for developers at other studios. Both engines are widely used and popular, with Unity being the most used engine for all studio types, but they have specific business and technical aspects that appeal to indie developers.

Why Developers use Unity

Due to its flexibility and ease of use, Unity was the common choice for indie developers when the scene emerged. This has led to a large online community and marketplace to support indie developers with tutorials, assets, and customised libraries. Unreal Engine is also popular amongst indie developers with it being considered one of the most powerful out-of-the-box engines and having a licensing structure that doesn’t require royalties to be paid until a game makes more than $1 million in revenue. The difference in popularity between the two game engines for indie developers likely lies in the availability of assets in the Unity store. Unity Asset Marketplace has over 77,000 assets and tools, compared to Unreal Marketplace’s 22,000, allowing small indie studios to offset development time with ready-made assets and tools.

“Unity and Unreal Engine are the most popular engines for game developers, with particularly high adoption by developers at indie studios”

Unity and Unreal have many tools and utilities but are not capable of performing every possible aspect of game design. In contrast, in-house or custom tools allow developers to focus on working with engines designed around the specific requirements of their games, as well as develop tools to optimise both development and performance. Amongst the large-scale and third-party studios, the second most popular engine choice is the use of either an in-house or proprietary engine–16% and 12%, respectively. These studios have the resources, time, and business motivation to focus on developing their engines. Use amongst large-scale developers is further incentivised by allowing assets and developers to move between projects more seamlessly, with a greater familiarity with the engine.

Engines Game Publishers prefer

Game publishers have a similar level of resources and time, but their in-house engines are often pivoted to commercial engines. Unreal Engine was developed by publisher EpicGames, Source from Valve, and RedEngine from CDProjektRed. Among game publishers, the engines initially developed by a publisher but are no longer in-house, make up another 15% of primary engine choices.

Less than 5% of developers working at indie studios use in-house engines; instead, Godot is the next most common engine choice. Godot is an open-source game engine that has built a strong community of developers around it. It has created supporters due to its dedicated 2D engine and its Python-like language GDScript which accommodates many Python users worldwide and is especially popular among student developers. The open-source nature of the engine also means indie developers do not have to worry about licensing or subscription changes, reducing financial demands and worries. 

Access research reports that highlight key current and emerging development trends, expertly narrated by our analysts, based on the data from our global surveys by joining the community. Click here to join

Categories
Community

Writing: Software Development’s Underrated Skill

In college, as I was finishing up my engineering degree, I roomed with a bunch of English majors. Every now and then, we’d get together with friends and have short-story writing competitions. Admittedly, not the coolest way to spend a Friday night, but it unlocked my love of writing.

Looking back on my career as a software engineer, manager, and CTO, that time I spent writing was actually one of the most impactful of my college career. Besides helping me as I started Draft.dev, writing contributed to my growth as a developer, leader, and professional.

In this article, I’m going to expand on why writing is such a complementary skill for a software developer and the many ways this skill can benefit your career. I’ll also share some pointers to help you get started as a technical writer and improve your skills.

You Write More Than You Think You Do

“Once somebody hits a minimum threshold of technical skill to hold a job in the industry, about 80% of their ability to succeed in software development is determined by their communication and people skills, not their technical abilities”Ben McCormick, Engineering Manager at Meta

Software development is typically associated with skills like coding, analytical thinking, math, and problem solving. However, equally important is effective communication.

Joel Spolsky, Co-founder of StackOverflow, concurs with this and even goes so far as to say that he wouldn’t hire a programmer unless they can write well:

“The difference between a tolerable programmer and a great programmer is not how many programming languages they know…It’s whether they can communicate their ideas…By writing clear comments and technical specs, they let other programmers understand their code, which means other programmers can use and work with their code instead of rewriting it. Absent this, their code is worthless.”

Spolsky makes a good point, because whether you realize it or not, you’re doing a lot of writing over the course of your day as an engineer. This includes, but isn’t limited to:

  • Commenting on code
  • Collaborating with colleagues and clients on Slack and email
  • Writing bug reports and code reviews
  • Posting and answering questions on community forums
  • Creating technical documentation

Jon Leydens puts it this way in an IEEE article:

“In their first few years on the job, engineers spend roughly 30% of their workday writing, while engineers in middle management write for 50% to 70% of their day; those in senior management reportedly spend over 70% and as much as 95% of their day writing.”

In fact, communication is the primary skill employers are looking for now that remote work is here to stay. By ignoring it, you’re limiting your utility at your current job as well as your future career prospects.

How Writing Can Level Up Your Career

Initially, I mostly wrote for fun and to see if I could get some passive income going on the side. None of my early attempts took off. But they did give me deep insight into the value of technical content as well as lots of practice in creating that kind of content

Come 2020, the pandemic struck and the company I was with at the time hit a rough patch. I was trying to figure out what I wanted to do next and I realized writing full-time was a real option. This led to the founding of Draft.dev.

Since then, it’s been a pleasure to see what a difference writing has made, not just for our clients, but also the engineers who write for us, both financially and professionally. Provided you stick with it, writing can help you level up your career too.

  1. Writing Establishes You As a Subject-matter Authority

One of the immutables of life as a developer is that we’re constantly learning. A recent StackOverflow survey found that nearly 75% of developers learn a new technology or framework every few months or once a year. 

Writing is a great way to reinforce your learnings and document your experiments with a new tool. It can help improve your critical thinking abilities and integrate prior knowledge with new concepts. 

What’s more, your observations can help other engineers learn as well. With remote work as prevalent as it is, junior developers don’t get as much face time with their managers and existing use cases and tutorials can help them get up to speed with their work.

Writing can also help you improve your ability to clarify complex topics to non-technical stakeholders and create better alignment between product and business teams. 

In fact, the more you write, the more you build and exert influence, directly accelerating your career trajectory.

  1. Writing Can Help You Find the Job You’ve Always Wanted

Job-hunting in software development can be an aggravating process, especially for newcomers. 

Writing can help you bypass the traditional recruitment system by putting yourself out there. A well-written tutorial is social proof of the fact that you understand a tool or framework well enough to implement it. After all, claiming you know React in your resume is one thing. Publishing a tutorial where you’ve integrated it with other libraries to build a working prototype is another altogether.

Recruiters or engineering managers who spot your work will be tempted to reach out to you directly instead of wading through a hundred other applications. I did the same thing when I was an engineering manager, and others I talked to have confirmed this.

“I once got a full-time offer to join a cloud computing startup as a copywriter on the strength of a few blog posts I’d written,” says Stephanie Morillo, a content strategist and technical program manager. “I was offered a role as a part-time technical writer for an open-source organization, and I even started doing freelance copywriting on the side for [software development] agencies”

Adam DuVander, Founder of EveryDeveloper, goes even further, “I owe my entire career to a couple of articles I wrote…A tutorial I wrote on Webmonkey led to my first developer job. They saw how I discussed the technology and knew before we even chatted that I could handle the work.”

  1. Writing Can Be a Lucrative Side Hustle

Engineering salaries can differ widely based on everything from the language and frameworks you specialize in to where you’re located.

According to StackOverflow’s 2021 Developer Survey, Clojure developers enjoy a median salary of $95,000, compared to PHP developers who make just $38,916.

The average salary for a full stack developer in the U.S. is $101,402 plus yearly cash bonuses of $5,500, whereas it’s around $58,000 for one in Germany and approximately $9,767 for one in India.

Writing can provide supplemental income and help you bridge this pay gap by utilizing existing skills and knowledge. Draft.dev, for instance, offers you a chance to do just that. So far, we’ve paid over $600,000 to writers in over 64 countries in the two years we’ve been operating.

  1. Writing Can Lead to Public Speaking and Book Authorship Opportunities

Around 2017, I was writing a lot about using PHP with Docker. While I wasn’t able to monetize the site directly, it did lead to a short, self-published book on the subject that was downloaded by over 1,000 developers. 

It also led to a host of conference speaking opportunities and consultancy offers. I wasn’t necessarily an expert on the subject, but I was one of very few people publishing any material on it and so my work stood out.

James Hickey, Principal Engineer at SAVVY, had a similar experience, “I have had many people reach out to me about doing contract work simply by reading my blog and had many offers to write books in the last couple of years.”

Morillo adds, “I wrote a few articles about tech culture in the mid-2010s and was able to secure conference speaking engagements from them.”

Authorship and speaking also tend to bring you more exposure, which leads to similar opportunities in the future, creating a flywheel for yourself.

Improving Your Skill As a Writer

“I have never considered myself expressive or eloquent, so I used to doubt that I would make a good technical writer…However, the truth is that writing, like every other skill, can be learned and developed through practice.”Linda Ikechukwu, Technical Writer and Developer Advocate at Smallstep

New writers frequently experience the resistance that accompanies all creative endeavors. The only way past this is to have a plan and keep at it. Here are a few tips I’ve found helpful over the years: 

  1. Start With Something Familiar

The first block new writers tend to face is what to write about. It’s easy to get caught up between something that’s easy to write and something that you believe is more interesting for readers. My advice? Go with the former.

Eze Sunday, Software Developer and Technical Writer, echoes this sentiment, “Start writing about the things you currently know and share them with the community. You’ll be surprised how many lives you’ll impact.”

Pick a problem you just solved or a tool you just tried out and write about it, even if it feels like something trivial. Just the act of putting some words to paper can tell you something about your writing style and the unique perspective you have to offer.

  1. Aim for Quality

Quality trumps quantity every time. It’s much better to write a few outstanding articles than to write a bunch of average ones.

Be selective about your topics and go deep when you find one you really like. Some of my most popular blog posts are the ones that delved deep into a subject, like this 4,500-word guide to API development.  

Alternatively, write more often, but keep it short and interesting. David Heinemeier Hansson, creator of Ruby on Rails, Founder of Basecamp, and a prolific writer over the years, used to employ this method a lot (and still does), almost as if he wants to cut short an article before it loses value for the reader. Doing this may also help you get more practice without feeling pressured to write huge articles.

  1. Write Regularly

On the flip side, don’t get so caught up with perfection that you neglect to publish regularly.

Frequent practice keeps your skills sharp and gives you a constant flow of feedback from your readers. Personally, I like to block four to eight hours of focussed writing time on my calendar each week. 

A few other writers I’ve spoken to like to use timeboxes throughout the day to churn out productive content. Choose whatever method works for you, but ensure you’ve set aside some time to write regularly.

  1. Keep Your Goals in Mind

Finally, keep moving towards something. Whether you’re looking to monetize a blog, capture a niche, or just record your own learnings, keep that plan in mind as you work on your articles.

And be honest with yourself. As DuVander points out, “Decide whether it’s a side thing or a main thing. You can make either work, but you’ll want to set your expectations appropriately…There are a lot of ways to use writing in an engineering career.”

Track progress towards your goal with readership metrics. You can do this by creating a newsletter that readers can sign up for, running analytics on your website, and paying attention to comments and feedback.

Conclusion

Many software developers ignore communication skills at their own detriment. I hope some of the data and experiences here offer proof of this, but if you’re afraid to start or don’t think you’re very good, don’t worry. As with anything else, the more you write the better you’ll get at it. 

If you’re a developer or an aspiring technical writer looking to start contributing professionally, consider writing for us at Draft.dev. We’re always looking for more writers and we’re open to people of all experience levels!

Finally, I’d love to hear some of your thoughts on writing as an engineer and what it takes to be a better writer. Leave a comment below or connect with me on Twitter.

Categories
Community

A Saga of Programming Languages: 2022 Update

The choice of programming language matters deeply to developers because they want to keep their skills up-to-date and marketable. Programming Languages are a beloved subject of debate and the kernels of some of the strongest developer communities. They matter to toolmakers too, because they want to make sure they provide the most useful SDKs.

It can be hard to assess how widely used a programming language is. The indices available from players like Tiobe, Redmonk, Stack Overflow’s yearly survey, or GitHub’s State of the Octoverse are great, but offer mostly relative comparisons between languages, providing no sense of the absolute size of each community. They may also be biased geographically or skewed towards certain fields of software development or open-source developers. 

The estimates we present here look at active software developers using each programming language; across the globe and all kinds of programmers. They are based on two pieces of data. First is our independent estimate of the global number of software developers, which we published for the first time in 2017. We estimate that, as of Q3 2022, there are 33.6 million active software developers worldwide. 

Second is our large-scale, low-bias surveys which reach tens of thousands of developers every six months. In these surveys, we have consistently asked developers about their use of programming languages across 13 areas of development, giving us rich and reliable information about who uses each language and in which context.

size of of programming language communities in Q3 2022

JavaScript continues to be the largest language community

JavaScript remains the most popular programming language for the 11th survey in a row, with over 19.5M developers worldwide using it. Notably, the JavaScript community has been growing in size consistently for the past several years. Between Q3 2020 and Q3 2022, Javascript experienced a 59% increase as 7.3M developers joined the community – one of the highest growths in absolute terms across programming languages. Not only do new developers see it as an attractive entry-level language, but existing ones are also adding it to their skillset. JavaScript’s popularity extends across all sectors, with at least a quarter of developers in every sector using it.

Developers joined the JavaScript community in the last two years

In 2020, Python overtook Java as the second most widely used language and now counts nearly 17M developers in its community. Python has continued to show strong growth, having added about 8M net new developers over the last two years. The rise of data science and machine learning (ML) is a clear factor in Python’s growing popularity. To put this into perspective, about 63% of ML developers and data scientists report using Python. In comparison, less than 15% use R, the other language often associated with data science.

Java is one of the most important general-purpose languages and the cornerstone of the Android app ecosystem. Although it has been around for over two decades, it continues to experience strong growth. In the last two years, Java has almost doubled the size of its community, from 8.3M to 16.5M. For perspective, the global developer population grew about half as fast over the same period. Within the last year alone, Java has added 6.3M developers, the largest absolute growth of any language community. Our data suggest that Java’s growth is supported not only by the usual suspects, i.e. backend and mobile development but also by its rising adoption in AR/VR projects, likely due to Android’s popularity as an AV/VR platform. 

The group of major, well-established programming languages is completed with C/C++ (12.3M), C# (10.6M), and PHP (8.9M). PHP has seen the slowest growth rate of all languages over the last year, growing just 22%, adding 1.6M net new developers. PHP is a common choice for cloud and web developers but has seen decreasing popularity, particularly amongst web developers where it has gone from the second most popular language in Q3 2021 behind JavaScript, to the fourth most popular in Q3 2022, with Python and Java becoming more popular choices.

C and C++ are core languages in embedded and IoT projects, for both on-device and application-level coding, but also in mobile and desktop development, which are sectors that attract 17.7M and 15.6M developers respectively. C#, on the other hand, has maintained its popularity among multiple different areas of software development, particularly among desktop and game developers. C/C++ added 4.3M net new developers in the last year and C# added 2.8M over the same period.

Rust and Kotlin continue their rise in popularity

We have previously identified Rust and Kotlin as two of the fastest-growing language communities and this continues to be the case. Rust has more than tripled in size in the past two years, from just 0.8M developers in Q3 2020 to 2.8M in Q3 2022. Rust has added 0.7M developers in the last six months alone and is close to overtaking Objective C to become the 11th largest language community. Rust has formed a strong community of developers who care about performance, memory safety, and security. As a result, it has seen increased adoption in IoT software projects, but also in desktop and game development, where Rust is desired for its ability to build fast and scalable projects.

Kotlin has also seen a large growth in the last two years, more than doubling in size from 2.3M in Q3 2020 to 6.1M in Q3 2022. As such, it went from the ninth to the seventh largest language community during this time, overtaking Swift and those using visual development tools. This growth can largely be attributed to Google’s decision in 2019 to make Kotlin its preferred language for Android development it is currently used by a fifth of mobile developers and is the second most popular language for mobile development. Despite Google’s preference for Kotlin, the inertia of Java means that, after three years, it is still the most popular language for mobile development.

Swift currently counts 4.2M developers and is the default language for development across all Apple platforms. This has led to a phase-out of Objective C (3M) from the Apple app ecosystem. However, Objective C has maintained its place among IoT developers and increasing adoption for on-device code, and AR/VR developers, leading to a similar increase in the number of Swift and Objective C developers in the last two years; 1.8M and 1.6M respectively.

The more niche languages – Go, Ruby, Dart, and Lua – are still much smaller, with less than 4M active developers each. Go and Ruby are important languages in backend development, but Go is the third fastest-growing language community and has added more than twice as many developers as Ruby in the last two years; 2.3M and 1.0M new developers, respectively. This is likely due to the fast development cycle it offers even though it is a compiled language.

Dart has seen steady growth in the last two years, predominantly due to the increasing adoption of the Flutter framework in mobile development, with 13% of mobile developers currently using Google’s language. Finally, Lua is among the fastest-growing language communities, mainly drawing in IoT, game, and AR/VR developers looking for a scripting alternative to low-level programming languages such as C and C++.

Categories
Tips

Are you an enterprise developer?

We often come across the term “Enterprise Developers” and even more often, we ask ourselves questions about their profile, from basic demographics to purchasing decisions. But who is an Enterprise Developer? According to SlashData, large enterprise developers as those who work for organisations with between 1,000 and 5,000 employees and very large enterprise developers as those who work for organisations with more than 5,000 employees. Non-enterprise developers are those that remain.

How many enterprise developers are out there?

In Q1 2021, SlashData estimated that there are 1.5M enterprise developers working in large organisations, and 2.0M working in very large enterprises. Between Q1 2020 and Q1 2021, there was a 21% year-on-year growth in the large enterprise population, while the very large enterprise population increased by 18%. This is impressive growth, considering that the non-enterprise population showed only 10% growth over the same period. However, for the large and very large enterprise population, the immediate picture is one of stability: in the last six months, it has remained practically unchanged. Considering that the biggest tech companies an important proportion of very large enterprises have benefited from the economic situation caused by the pandemic, it is somewhat of a surprise that the very large enterprise population hasn’t increased. Perhaps there is a backlog of hiring splurges that have yet to show up in the data or these companies are remaining cautious and waiting to see how the pandemic plays out before committing to hiring more employees.

Where in the world are they located?

If we break down the enterprise populations by region, we find that 22% of software developers in South Asia are very large enterprise developers. These enterprises are likely using their global connections to capitalise on price here: the median per-hour cost for Android development in India, a large hub for app development, is $30. In North America, the rate is five times as high. For example, SAP, the largest non-American software company by revenue, has based its largest R&D lab outside Germany, in India. In absolute terms, most developers working at very large enterprises are to be found in North America (27%) and Western Europe (26%). South Asia takes third place, with 17% of all very large enterprise developers working in this region. North America, Western Europe, and East Asia are the stage for large enterprises, with 28%, 24%, and 17% of the large enterprise population respectively.

Which sectors or industries are they working on?

Most developers are involved in web apps: more than 6 out of 10 developers are involved in the sector. However, developers are often involved in more than one sector. In fact, around three-quarters of developers are involved in more than two sectors, while around 15% engage in five or more sectors. Besides web apps, enterprise developers are dominated by their involvement in the backend sector: 56% of very large enterprise developers and 51% of large enterprise developers
work in this sector. This is compared to the 45% of non-enterprise developers who work in the backend sector. Enterprise businesses typically have more sophisticated needs that warrant engaging backend developers. With the myriad of resources at their disposal, enterprises are more easily able to develop large-scale, connected products with complicated backends, IoT devices, for example. Backend developers are required to achieve these goals.

The opposite trend is observed in mobile apps: 40% of non-enterprise
developers work in this field, while just under a third of enterprise developers do. The relatively short scope and scale of mobile app development make small business engagement in this sector achievable. For enterprise companies a mobile app, or a web app, is only one small part of a giant machine of software; but for smaller
organisations, the mobile or web app might be the entire product. Web apps, backend services, and desktop apps the top three sectors enterprise developers are involved should be explored in greater detail.

Attitudes and engagement

Open source has become a ubiquitous part of developer culture, embodying the widely venerated values of sharing code, knowledge, and best practices among peer developers. These days, many open source projects are vendor or corporate owned and maintained. Developer attitudes towards contributing to these open source projects differ, but across the non-enterprise/large enterprise/very large
enterprise divide these differences are subtle. Large enterprise developers are slightly more likely to contribute to corporate-owned, open source to improve their positions in the software food chain: 17% are motivated by their desire to get noticed by the company.
Meanwhile, very large enterprises are slightly more likely to
have developers buy into the company ethos: 20% of developers working at these organisations wish to contribute to something that has the company’s backing to succeed.

Non-enterprise developers tend to favour reasons relating to improving their skill set: 47% wish to learn to code better. Compare this to large enterprise developers, of whom 42% are motivated by learning to code better. Around one-fifth of all developers are united by the desire to build community support; while just under a third of all developers advocate for a more open software society, contributing to corporate-owned, open-source projects because it’s “something bigger than me”. However, moving from attitudes to economic engagement, the differences between large, very large, and non-enterprise developers tend to be more pronounced regarding practical engagement within an organisation.

“Those who control the money”

There are many tiers of enterprise developers: these range from those high up in a business hierarchy that makes or influences purchasing decisions, down to developers who are not involved at all in these selections. The breakdown of developers according to economic decision-making power within an organisation differs across the non-enterprise/large enterprise/very large enterprise divide.

Just over a quarter of large enterprise (27%) and non-enterprise developers (26%) are economic decision makers for their team or company, with the ability to make the final
selection decision for tools, approve expenses on tools and components, and/or approve the overall team budget for tools. Not all of these economic decision-makers can approve budgets or expenses, but whether they are decision-makers for their team or company, they are all empowered to make tool selection decisions.

Comparing these segments to very large enterprises, where only 18% of developers can make purchasing decisions, demonstrates that decision-making power tends to concentrate at the top of the hierarchy in larger organisations. In agreement with this analysis, 31% of developers who work at enterprises are separate from purchasing decisions. In comparison, this drops to 25% and 17% for large and non-enterprise developers, respectively.

So are you an Enterprise Developer?
Did you see yourself fitting in the data above? Then you probably are an Enterprise Developer. If you want to help the ecosystem grow, you can join our community of software creators by clicking this link.

Categories
Analysis

How Developers Generate Revenues

How businesses and developers as individuals make money from software projects is one of the most important decisions they have to make. Of all the business models and strategies available, companies and freelancers need to pick the ones that best match their market and goals. This post focuses on the popularity of revenue models among professional developers and the companies they work for.

Of all the revenue models we track in our surveys, contracted development / consulting is the most popular model. As of Q1 2022, 31% of professional developers are using this model, 7 percentage points more than the next closest revenue model – selling apps or software. Contracted development can span months or even years, allowing for developers and companies to properly plan out resources during the project. In addition, professional developers and their companies may find the clients they contract for require additional services, thus leading to additional revenue. Contracted development is tried-and-true as it’s been the most popular revenue model for the past five surveys.

Selling apps/software through an app store or their own portal is the second most popular revenue model, with almost a quarter (24%) of professional developers making money in this way. Furthermore, adoption of this model has been stable over two and a half years, despite “Epic” lawsuits against Apple and Google in 2021, which argued that these app stores had excessive fees and restrictive payment collection processes. App stores and portals are popular now, but other technologies, such as progressive web apps (PWAs), could start to impact the popularity of app stores. PWAs can work across multiple platforms, provide a native experience, and can help developers avoid high commission fees from app stores; all of which are big incentives to embrace the power of the web.

Do you wanna get more insights and contribute to our effort to shape the Developer Ecosystem?  Share your views on new technologies, tools or platforms for 2023, get a virtual goody bag and enter amazing prize draws! Start here

7% of professional developers are generating revenue from selling data

Interestingly, less than a tenth (7%) of professional developers are generating revenue by selling data. Data has often been referred to as the new gold and data breaches are heavily covered in news articles as well. If data is so valuable, why are so few professional developers using this model? Regulatory measures, such as the EU’s General Data Protection Regulation (GDPR), could be hampering developers’ ability to sell user data based on the “right to be informed” principle. The California Consumer Privacy Act (CCPA) also has multiple restrictions for selling user data including an earnings cap based on a company’s total revenue. These are just a couple of examples of why selling data is difficult, which impacts its popularity as a revenue model.

Next, we will look at how the industries that developers are active in influence their revenue models. Contracted development is the most popular revenue model across all sectors, further emphasising the effectiveness of this model.

Developers active in the software products and services, data analytics, and financial services verticals tend to have the same revenue strategies. Professional developers in all three of these sectors have the same top-three revenue model choices. In addition to contracted development, app stores and selling services/APIs are the more popular methods for generating revenue in these sectors.

In-app purchases break into the top three among developers in the entertainment and media sector. 28% of professional developers in this vertical are using this method, double the percentage of the general developer population. In-app purchases are strongly associated with the freemium strategy where users are able to use/download applications for free with some features restricted to micro-purchases. This strategy has become quite popular in game development for building a base of users and incrementally generating revenue, as long as the quality of production is high. 

Contracted development is the revenue model of choice across all industry verticals

For professional developers working for companies in the marketing and advertising sectors, the advertising revenue model rises to second place, but it’s unable to unseat contracted development as the most used model. Looking across industries, there’s an apparent lack of usage of advertising as a revenue model among most other developers. On average, advertising is ranked eighth among professional developers outside of the marketing and advertising industry, being used about three times less often. Again, privacy protection may be hindering developers’ ability to use this revenue model effectively.

Finally, we evaluate revenue model usage among developers in different-sized companies. Again, contracted development remains the most popular model across every size of company. This strategy is the status quo for developers, and, with such popularity, it’s presumed to be the expectation by customers seeking professional development.

Developers working for micro-businesses are the most likely to report that they generate revenue from contracted development, with over a third (36%) of developers who work in them using this model. Professional developers in micro- businesses are also using multiple revenue models slightly more often than other developers. This indicates that companies of this size are trying to maximise their earning potential while relying heavily on the industry standard of contracted development. That being said, contracts don’t sell themselves, and micro-businesses have only 2-20 employees, so developers in these companies will likely be a close part of sales conversations.

Usage of the advertising revenue model declines as companies grow in size

Developers at large enterprises have a slightly different profile, as they tend to use the contracted development model less often than developers in other company sizes. We also see less use of the multiple revenue model, indicating that companies of this size have a more focused strategy for generating revenue.

Categories
Community

Cheat Sheet – Developers, unite! Have your voice heard.

This is a cheat sheet focusing on the Developer Nation 23rd survey wave, giving you all the key details to make the most out of your experience:

What
11+ years of surveying developers.
The Developer Nation survey has been measuring the preferences, needs and wants of developers for more than 11 years. It’s a dynamic survey where each participating survey taker will have a unique path, based on their own background and experience. 

When
The Developer Nation Community will be launching its 23rd survey wave on June 2 in English. On June 9, the survey will be available in all other languages: Spanish, Portuguese, Chinese Traditional + Simplified, Korean, Russian and Japanese.

Who is it for
Developer Nation is borderless! Everyone’s welcome! 
The Developer Nation survey is global and open to all. In the previous edition, more than 20,000 developers and creators of all levels – from students to hobbyists and seasoned professionals – from 160+ countries, shared their views. 

We want to hear your opinion if you see yourself as a developer, software engineer or tech creator involved in Web, Mobile, Desktop, Cloud, DevOps, Industrial IoT & Consumer Electronics, AR/VR, Apps/extensions for 3rd party ecosystems, Games, Machine Learning & AI, and Data Science.

If you nodded at any of the above areas or descriptions, this survey is for you. Keep reading for the benefits of participating or start now.

Why participate
There are several benefits for those who take the survey. Some of these are:

Prizes
By participating, developers can win amazing prizes and unlock more as they proceed, including a complimentary virtual goody bag packed with free resources. 

Premium access to information
Understanding the trends can be paramount to developers’ next career move. We share the results, data and ecosystem insights with the participants and tech organisations who use the data to improve their developer offerings. 

Giving back and helping others
For each qualified survey response, we will donate USD $0.10 to a charity of your choice. Our goal is to reach USD $1,800+ in donations. Take the survey, pick a charity to support, and help us make a difference.

What’s different this time
Every wave is a new opportunity to give developers what they want. Here’s the latest benefits we introduce in this 23rd wave:

  • Weekly prize draws, including everyone who signs up to take the survey.
  • Special Prizes to be drawn for everyone taking the survey in the first 48 hours (2 winners: Nintendo Switch & iPhone 13).
  • A new way to reward participants: the more questions you answer the more chances you get to win. A participant’s name will be included multiple times in draws depending on the number of questions answered. 
  • Prizes include: Nintendo Switch, iPhone 13, Xiaomi RedMi 11, Samsung Galaxy S22, Amazon Echo Dot 4th Gen, Premium Subscriptions and Licences, Vouchers for online courses and tutorials, Gift cards and vouchers for Amazon, Spotify, Apple Store, Google Play, cash to fund your development projects or towards the gear you need up to $1,000 USD and many more prizes drawn every week.
  • Everyone who completes the survey will receive a virtual goody bag filled with free subscriptions, discounts and vouchers. 

You read this far, which should mean you’re interested. Why not start the survey and share your views on key topics only developers can understand? If you’re short of time, you can save your progress and continue later (you’ll need to sign up to save). 

Are you creating for AR/VR?
There is an additional, exclusive, survey dedicated to Augmented, Virtual and Mixed Reality creators, with the same benefits. AR/VR creators can share their reality views using this link.

Categories
Analysis Community

Spotlight on Developers in China & the Rest of East Asia

What are some of the key differences between developers in East Asia, including the Greater China region, and the rest of the world? In the 22nd edition of our Developer Nation Survey we collected insights from developers and software engineers in East Asia to try to answer this exact question. Here is what we found!

“A fifth of the global developer population is located in either the Greater China region or the rest of East Asia”

We split the Greater China area from the rest of East Asia to provide more regional granularity. In terms of relative size, we find that almost a fifth (18%) of the global developer population is located in either the Greater China region (9%) or the rest of East Asia (9%). Breaking down East Asia into countries, we see that more than half of the developers here are spread across two countries: Indonesia (32%) and Japan (21%). When comparing developers across regions, we can see that just over a third (34%) of developers in the Greater China region have six or more years of experience, which is notably less than developers globally (43%). Furthermore, the Greater China region has a much smaller concentration (4% vs 22% globally) of highly-experienced developers (16+ years). With generally lower levels of experience in the Greater China area, aspiring developers may find starting a career here less competitive than developers in regions with higher levels of experience.

“East Asian developers outside China have similar levels of experience to the rest of the global developer population”

Both groups have a little more than a third (34%) of their developers with 11+ years of software development experience. However, East Asia’s data are largely propped up by Japan. The developer community in Japan tends to be highly experienced, with almost six in ten developers (59%) having 16+ years of experience. No other country has a higher concentration of developers with this level of experience. 

Developers in the region are mostly either self-taught or have an undergraduate degree in computing

The journey to coding mastery lacks a clearly defined path. Developers typically state they’ve used more than two learning methods on average to learn how to code. In general, the self-taught method is the most popular among developers globally, with more than 60% using this method. However, our data shows that the proportion of self-taught developers fluctuates significantly across regions.

In the Greater China area, the most popular method for developers to learn how to code is via an undergraduate degree in computing, with 50% having used this method. This is significantly higher than developers in other regions (41% -42%). We generally see a higher concentration of professional developers in Greater China (83%) than we do in the rest of the world (70%). It could be that the job market in Greater China more often requires a degree in computing or engineering, which would also explain why self-teaching is used less often in this region.

Developers in the rest of East Asia, however, tend to follow the learning trends of developers in other regions. Here, we see the self-taught method is the most popular method (61%), followed by an undergraduate degree in software engineering (41%). Analysing the data at a country level, we see developers in Indonesia are more diverse learners. Developers in this country stated that they used three methods on average when learning to code. Indonesian developers are more likely to learn via self-teaching, online courses, and developer boot camps than any other developers in East Asia. This is quite different from their peers in Japan who are the least likely to use online courses and bootcamps to learn how to code. Instead, developers in Japan are most likely to use the self-taught (63%) and on-the-job training (45%) methods when learning to code.

“Less Stack Overflow, more Segmentfault.com and Teratail.com

Next, we explore how developers interact with the popular online community, Stack Overflow, to understand their engagement levels with programming support. Stack Overflow has become a standard support community for many developers, with more than eight in ten (85%) of the general developer population reporting they’ve used or visited this popular question and answer site.

Our focus on developers in East Asia and the Greater China area shows Stack Overflow’s popularity falls below the global average. Developers in these regions are around three times less likely to visit Stack Overflow than developers in other regions. Developers in the Greater China area are the least engaged, with only 19% having an account, and only 11% having earned at least one badge. Developers in this region have other home-grown Q&A site alternatives, such as segmentfault.com, which could be contributing to the lower adoption of Stack Overflow.
Developers in Japan are skewing the perception of this region. Developers in Japan have even less activity on Stack Overflow than developers in the Greater China area. Here, only a little more than a third (36%) stated they use Stack Overflow. Furthermore, only about 5% have an account. Like developers in the Greater China area, our data does show usage of Stack Overflow increases among Japanese developers who have gained experience in software development, indicating that less experienced developers are using other platforms for support. Like China, Japan has other home-grown options like teratail.com where developers can field programming support from their peers, which may be the place new Japanese programmers visit more often to get answers to their questions.

Categories
Community

Let the survey feedback begin

The Developer Economics Survey Q4 2019 has just closed and we couldn’t be more excited to see what our community has to tell us, not only through the survey but also through its valuable feedback comments.

Οur mission is to help the world understand developers and developers explore current trends in their industry. In order to get there, we run global surveys twice a year to explore trends across different areas of development, such as mobile, industrial IoT, ARVR, web and many more. We include hobbyists, professionals and students making sure our sample is as inclusive and diverse as possible wave on wave.

In total, we had 7,316 feedback comments from survey participants. Once more, our team took the time to read each and every comment! We have to admit, there are some pretty good ideas in there. We are currently assessing and evaluating the suggestions we received, hoping to include as many improvements as we can during our next survey wave.

Bottom line is we really appreciated every comment we received. The suggestions help us evolve, the positive comments really boost our mood, the negative ones make us work harder and the funny ones… let’s just say they are the highlights of our day.


Feedback from Developer Economics Q4 2019 Survey

Some were great suggestions:

  • Add keyboard controls to the survey to let me fill it out quicker.
  • As a follow up on my last survey suggestion, in which I suggested making your survey less visually bland by adding some backgrounds in place of stark white; I would like to add, making them seasonal background designs. Aesthetics is the key to development.
  • There used to be jokes in these, you should add them back. You also used to add a profile with a character in these, would love if that were back too.
  • Ask about ethics/privacy stuff, e.g. how are you feeling about the way the company you work for treats its user’s data.

Some were great to read:

  • I love you
  • Amazing experience! sharing it.
  • Great survey! Fun and educational
  • This was the most thorough survey I’ve ever completed. To the point and crisp questions. Wonderful job!!
  • I might sound blunt and rude but I had never heard of developer economics, previously. But I’m impressed by the smart selection of questions for this survey and the overall experience on your site has been awesome. Surely gonna remember developer economics
  • “console.log(“that was a great time.. I enjoyed answering.. Thank you!!”);”
  • The survey is one of the ways to reach millions of people and hear diversify opinions. Kudos to the organizers

And some just made us laugh:

  • Ale, you understand the ending of Evangelion? 
  • I’m sorry but I will not be able to pay 
  • as I said, fluffy support kittens. 
  • Delicious survey^^

During each survey wave, there are a few recurring comments we receive. The more prevailing have to do with the survey length – it’s long – and with our purpose. It’s not always easy to address each one separately, so we went ahead and created a blog post answering all these questions. We asked our Director of Research to create this with special care for our developer community. You can find it here.

Finally, now that the survey is closed, we’d like to thank everyone who took the time to complete the survey and share their comments with us. We promise to use all this insightful feedback to improve our future surveys.

Stay tuned for our upcoming State of the Developer’s Nation Report 18th edition which will be published by the end of this month. You will find it here as for our previous reports too.

Did you think of anything post-survey? Please do feel free to share with us.

 

P.S. For more developer news, tools, resources, events and fun, why not sign up to our newsletter.