Categories
Community Tips

Infographic: Who is behind open-source software?

In our 18th survey wave, we’ve asked developers whether they contribute to open-source software, and if so, why? In this post, we’ll explore who the contributors to open-source software are, their reasons for contributing, and finally what open-source support they expect from companies.

Open-source contributors tend to be younger than non-contributors.

More than a third (33%) of developers who contribute to open-source software are less than 24 years old as compared to 26% of non-contributors. This is not to say that they are inexperienced programmers; 41% of open-source contributors have 1 to 5 years of experience, 4 percentage points higher than non-contributors.

Contrary to what one might think, open-source contributors are not necessarily professionals. In fact, they are equally likely to be amateurs than non-contributors. You don’t have to be working professionally in the software industry to be involved and contribute to open-source software development.

Open-source contributors are more likely to be involved in multiple development areas than non-contributors. However, open-source contributors are significantly more likely to be involved in emerging sectors such as machine learning/AI and AR/VR, where innovations are mostly driven by open-source tools.

Finally, as you’d expect, developers’ likelihood of contributing to open-source software is also reflected in their activity on the most popular open-source hosting site, Github. The correlation is clear. Two-thirds of developers who don’t contribute (67%) have no personal public repositories on Github, whereas close to half of the contributors (48%) have two or more public repositories. We observe a somewhat similar relationship with Stack Overflow. Non-contributors are significantly more likely to not use the Q&A site at all or visit the site but not have an account. On the other hand, open-source contributors are twice as likely as developers who don’t contribute to have earned at least one badge (30% vs 15%). Working on open-source projects encourages developers to actively engage with their peers on Q&A sites. We’ve seen which developers contribute to open-source software projects. Let’s now dive into the reasons for contributing.

Why contribute to open-source software

Developers are most motivated to contribute to open-source projects to improve coding skills (29%) and a belief in the benefits of open-source (26%). What’s more, 22% of developers contribute to open-source software because it’s fun or to solve an issue with an existing open-source software project such as fixing a bug or creating a new feature.

By contrast, financial compensation is the least important motivation. Only 3% of developers are getting paid for their work on open-source projects. As it turns out, developers are more likely to get involved in open-source projects to build their reputation (14%) or to network (11%) rather than for direct financial gain. Furthermore, developers who get paid to contribute are almost 20 percentage points less likely to think it’s fun than those who contribute for other reasons. They are also significantly less likely to believe in open-source as a source of freedom, as an ideological imperative. 

Typically developers don’t contribute to open-source for a single reason but are motivated by multiple factors. For example, half of the developers who contribute to open-source for improving their coding skills also think it’s fun. 56% of contributors who want to network also feel like it makes them belong somewhere.

What developers expect from companies

In our Q4 2019 Developer Economics survey, we also asked developers what open-source support they expect from companies. Thirty-three percent of developers not contributing to open-source don’t expect anything from companies, as compared to 15% among open-source contributors. That said, two-thirds of non-contributors still think that companies should be involved and provide support to the open-source software movement; they realise how important open-source is and believe that companies should be a part of it.

On the other hand, 44% of open-source contributors expect companies to support and contribute to open-source communities. This increases to 55% for developers who contribute to solve an issue. Many contributors (44%) expect full documentation on how to use open-source software on companies’ products or services. This is especially important to developers who get paid for their work (53%).

Interestingly, open-source developers do not necessarily expect companies to build products and services upon open-source software (39%). This is the least important vendor expectation from developers in terms of support for open-source software.

Open-source software contributors are a diverse group of people. Their motivations to contribute range from learning, having fun, solving issues to building relationships and reputations. In summary, developers have plenty of reasons to contribute to open-source, and they expect companies to support them along the way. 

If you are involved in open-source and want to share your views, visit our latest survey and help shape the trends.

Categories
Tips

Where do ML developers run their code?

In this blog post we’ll explore where ML developers run their app or project’s code, and how it differs based on how they are involved in machine learning/AI, what they’re using it for, as well as which algorithms and frameworks they’re using.

Machine learning (ML) powers an increasing number of applications and services which we use daily. For some organisations and data scientists, it is not just about generating business insights or training predictive models anymore. Indeed, the emphasis has shifted from pure model development to real-world production scenarios that are concerned with issues such as inference performance, scaling, load balancing, training time, reproducibility, and visibility. Those require computation power, which in the past has been a huge hindrance for machine learning developers.

A shift from running code on laptop & desktop computers to cloud computing solutions

The share of ML developers who write their app or project’s code locally on laptop or desktop computers, has dropped from 61% to 56% between the mid and end of 2019. Although the five percentage points drop is significant, the majority of developers continue to run their code locally. Unsurprisingly, amateurs are more likely to do so than professional ML developers (65% vs 51%).

By contrast, in the same period, we observe a slight increase in the share of developers who deploy their code on public clouds or mainframe computers. In this survey wave, we introduced multi cloud as a new possible answer to the question: “Where does your app/project’s code run?” in order to identify developers who are using multiple public clouds for a single project.

As it turns out, 19% of ML developers use multi cloud solutions (see this multi-cloud cheat sheet here) to deploy their code. It is likely that, by introducing this new option, we underestimate the real increase in public cloud usage for running code; some respondents may have selected multi cloud in place of public cloud. That said, it has become increasingly easy and inexpensive to spin up a number of instances and run ML models on rented cloud infrastructures. In fact, most of the leading cloud hosting solutions provide free Jupyter notebook environments that require no setup and run entirely in the cloud. Google Colab, for example, comes reinstalled with most of the machine learning libraries and acts as a perfect place where you can plug and play to build machine learning solutions where dependency and compute is not an issue.

While amateurs are less likely to leverage cloud computing infrastructures than professional developers, they are as likely as professionals to run their code on hardware other than CPU. As we’ll see in more depth later, over a third of machine learning enthusiasts who train deep learning models on large datasets use hardware architectures such as GPU and TPU to run their resource intensive code.

Developers working with big data & deep learning frameworks are more likely to deploy their code on hybrid and multi clouds

Developers who do ML/AI research are more likely to run code locally on their computers (60%) than other ML developers (54%); mostly because they tend to work with smaller datasets. On the other hand, developers in charge of deploying models built by members of their team or developers who build machine learning frameworks are more likely to run code on cloud hosting solutions.

Teachers of ML/AI or data science topics are also more likely than average to use cloud solutions, more specifically hybrid or multi clouds. It should be noted that a high share of developers teaching ML/AI are also involved in a different way in data science and ML/AI. For example, 41% consume 3rd party APIs and 37% train & deploy ML algorithms in their apps or projects. They are not necessarily using hybrid and multi cloud architectures as part of their teaching activity.

The type of ML frameworks or libraries which ML developers use is another indicator of running code on cloud computing architectures. Developers who are currently using big data frameworks such as Hadoop, and particularly Apache Spark, are more likely to use public and hybrid clouds. Spark developers also make heavier use of private clouds to deploy their code (40% vs 31% of other ML developers) and on-premise servers (36% vs 30%).

Deep learning developers are more likely to run their code on cloud instances or on-premise servers than developers using other machine learning frameworks/libraries such as the popular Scikit-learn python library. 

There is, however, a clear distinction between developers using Keras and TensorFlow – the popular and most accessible deep learning libraries for python – compared to those using Torch, DeepLearning4j or Caffe. The former are less likely to run their code on anything other than their laptop or desktop computers, while the latter are significantly more likely to make use of hybrid and multi clouds, on-premise servers and mainframes. These differences stem mostly from developers’ experience in machine learning development; for example, only 19% of TensorFlow users have over 3 years of experience as compared to 25% and 35% of Torch and DeepLearning4j developers respectively. Torch is definitely best suited to ML developers who care about efficiency, thanks to an easy and fast scripting language, LuaJIT, and an underlying C/CUDA implementation.

Hardware architectures are used more heavily by ML developers working with speech recognition, network security, robot locomotion and bioengineering. Those developers are also more likely to use advanced algorithms such as Generative Adversarial Networks and work on large datasets, hence the need for additional computer power. Similarly, developers who are currently using C++ machine learning libraries make heavier use of hardware architectures other than CPU (38% vs 31% of other developers) and mainframes,  presumably because they too care about performance.

Finally, there is a clear correlation between where ML developers’ code runs and which stage(s) of the machine learning/data science workflow they are involved in. ML developers involved in data ingestion are more likely to run their code on private clouds and on-premise servers, while those involved in model deployment make heavier use of public clouds to deploy their machine learning solutions. 31% of developers involved across all stages of the machine learning workflow – end to end – run code on self hosted solutions, as compared to 26% of developers who are not. They are also more likely to run their code on public and hybrid clouds. 

By contrast, developers involved in data visualisation or data exploration tend to run their code in local environments (62% and 60% respectively), even more so than ML developers involved in other stages of the data science workflow (54%).

Developer Economics 18th edition reached 17,000+ respondents from 159 countries around the world. As such, the Developer Economics series continues to be the most global independent research on mobile, desktop, industrial IoT, consumer electronics, 3rd party ecosystems, cloud, web, game, AR/VR and machine learning developers and data scientists combined ever conducted. You can read the full free report here.

If you are a Machine Learning programmer or Data Scientist, join our community and voice your opinion in our current survey to shape the next State of the Developer nation report.

Categories
Community Interviews

[Interview] Supporting displaced people: Techfugees

We recently learned about a tech community with a mission to respond to the needs of refugees and we had to meet them. Techfugees is an impact driven global organisation nurturing a sustainable ecosystem of tech solutions, supporting the inclusion of displaced people. They do so, through several actions, mainly: Tech4Women, Tech4Refugees and the Basefugees initiatives

We met with Josephine Goube, CEO in Techfugees to get to know more about the organisation and the way they support refugees. We were fascinated by their work and determination and we have decided to support them. /Data and the Developer Economics Community will be donating $0.10 for every developer who completes the Q2 2020 Developer Economics survey. If you are a developer yourself make sure you take the Developer Economics survey and help us raise $1,900 for Techfugees.

You can also support Techfugees with donations or by volunteering your tech skills. Learn more directly from the team, here.

How did Techfugees come to life? What was the grand breaking event that inspired you to found this organization?

Founded in 2015, Techfugees was born out of the fact that 93% of displaced people who arrived on the shores of Europe owned a smartphone and 87% of displaced people live in an area of 2/3G coverage. We saw that they did no longer rely on information & help provided by NGOs solely, but a lot more from social media networks, and so we started building mobile tech that could be useful to them.


What would you say has been the biggest challenge for you and your beneficiaries?

Lack of funding and a hostile environment have been very challenging for us!   There are feelings that have been building up over the years against displaced people. The fact that we want to bring technology to refugees has been faced with disbelief, and has been disregarded as being pointless. Comments such as “They don’t have phones” or “they first need water and food” tells us a lot about how the use of sensational media coverage has made it difficult for citizens to learn the real facts… One of them being that a lot of displaced people use ⅓ of their budget on phone data and that mental health shows significant improvement when one is offered the possibility to stay in touch with loved ones.


In what ways can technology and innovation help displaced people? 

For people that are very constrained by space and time (borders, camps, …), digital technologies are not only breaking isolation but they also are an opportunity to break those very restrictions. People must have felt it through lockdown situations: it is amazing how much can be done digitally! Similarly, for displaced people, the internet and smartphones and the digital economy is a revolution.


Techfugees take on various projects to help refugees. Which one would you say has been the most impactful and why? What kind of projects are you currently running?

There are not one but many projects that I would like to mention. As with anything related to the internet and networked technologies,  the more projects you run, the greater the impact of what you do! . I will share one of the most illustrative examples. Refugee.info, is a project coming out of our first hackathon in London 2015. Its mission is to deliver information to refugees and it had done so for more than a million displaced people since 2015. What Refugee.info did to become so successful at providing the service was to iterate on technology with the feedback of NGOs & refugees on the ground. Also, they started collaborating with another #Tech4refugees project coming out of a hack – Natakallam – an online language learning service delivered by refugees who did the translation of their app. In this way, not only did Refugee.info end up delivering information to refugees, they ended up supporting refugee translators with their work.

This one simple example shows you two things: the fact that when more technology projects supporting refugees collaborate they are more impactful, and that the best projects integrate refugees within their own teams to deepen their impact. 


We see that hackathons are the heart of your organization’s activities. How many have you organized so far, are these created for misplaced people only? Any upcoming hackathon?

We have organised more than 30+ hackathons bringing displaced people and locals around the world, since 2015. One in four participants in those networking and creation spaces had a refugee background. The aim of these hacks are mainly educational and to provide networking opportunities, more than building the next big thing. Having said that, annual rounds of catch up with past #tech4refugees project participants enabled us to gather lots of data about their needs over time and identify some interesting insights and trends.. From the data gathered, we were able  to measure the impact of  Techfugees’ support in our hackathons participants’ lives.t Our hackathons teams had a higher 1-year survival rate, from 16% up to 33%, demonstrating that post-hack support is impactful and makes a solid difference.


How has the coronavirus situation affected the refugee community and your organization in particular?

In March 2020, Techfugees launched its Data Hub as a response to the Covid-19 outbreak. The Data Hub, brings together displaced persons, NGOs, members of civil society and innovators from all over the world, to map the impact of Covid-19 on displaced communities and source existing solutions to help mitigate them. The data is freely available on: http://bit.ly/covidrefugees. For us in Techfugees, it is important to listen to displaced people and take into consideration their situation and experiences. As a result, and as we saw more data coming in, we launched Techfugees Live Sessions! A series of online bi-monthly talks that provides regional and local updates on how communities are coping with the situation and what tech solutions are currently being used by these communities. 

Short Bio: Graduate from Sciences Po Paris and the London School of Economics, Josephine has been the CEO of Techfugees and its worldwide chapters since 2015. She is also a board member of the Norwegian Refugee Council and an informal expert alongside the European Commission about migration issues. Nominated as one of the top “30 under 30 Social Entrepreneurs” by Forbes in 2016, 2017 and 2018, in 2017 she was honoured as “Digital Women” of the year in France. From 2012 to 2016, Josephine was Migreat’s partnerships manager, a London startup specialized in applying for visas for Europe.

Looking to find out more about how NGO’s are contributing to the tech environment? Read our interview with CodeYourFuture.

Categories
Community

CodeYourFuture: Combining programming and social impact

CodeYourFuture is a non-profit organisation supporting anyone who can’t get the vocational training they need to find meaningful work. Refugees, asylum seekers and other disadvantaged people – those below the poverty line, single parents on a low income, those with mental, learning or physical disabilities. They strengthen their students’ professional skills, teach them the fundamentals of the web, powerful modern languages such as javascript, and web application back-end development. After that, they help their students find jobs in the tech industry.

We reached out to Alec McCrindle and had an insightful chat about the mission of CodeYourFuture, and also had the opportunity to speak with some of the students there. 


How do you run courses and programming lessons?

We run weekly classes that follow a curriculum that takes our students from limited programming knowledge through to becoming a junior developer. Between classes, our students complete coursework which is reviewed by professional developers. All of our classes are developed and delivered by volunteers. For anyone interested in attending our courses, here are some more details, the agenda of an average class and also the guide we have created for online teaching.

What are the criteria for someone to participate in your courses?

We accept anyone who can’t get the vocational training they need to find meaningful work.
Refugees, asylum seekers and other disadvantaged people, those below the poverty line, single parents on a low income, those with mental, learning or physical disabilities. Anyone who can’t go to a bootcamp, for financial or other reasons.
We also asked Ellie, Constantin and Yohannes about their background:
Ellie: I have a bachelor of electrical engineering from my home country, I didn’t have any software engineering experience before CodeYourFuture.
Constantin: I worked in a magazine designer role and later switched to photography.
Yohannes: I graduated with a Computer Science degree in 2010 in Sudan. I loved working with a team and solving problems and coming up with solutions. After I arrived in the UK, I started working part-time and doing a web development course at CodeYourFuture. After completing my course, I will be ready to take my career to the next level.

Why did you choose to learn how to code? What’s the most fun thing about coding?

Ellie: Since I was a student, I was interested in software engineering because I was studying telecommunications engineering. I can understand electrical signals or electromagnetic waves, but I wanted to do something that I can see instant results like coding and creating something. The most fun thing about coding for me is solving the problems, I love math and coding is like math for me. With coding whatever you are interested in (like making web pages or applications or animations..) you can read about them and immediately start to practice.
Constantin: Technology becomes more and more important. It is part of every industry. I wanted to start programming because of 3D. Still, at CodeYourFuture, I found that creating code feels like a creative task and it can be very satisfying, especially when you think that it can be applied everywhere. The feeling you get from developing websites, apps, marketing tools for anything you like. I find it very funny, when you think that so many people are scared of code and they prefer to study sometimes much more complex interfaces, and you feel like you’re a keeper of secret knowledge.
Yohannes: I have been passionate about technology and information technology since I was 12 years old and that is why I have done a degree in computer science. I would love to pursue a career in software debugging and programming. I would say the most fun about coding is learning new concepts, and it is not boring at all.

What does your team look like?

We have a small global team and organizers in each region we serve. These are the West Midlands, the North West, Scotland and Greater London, Rome and soon, Cape Town and Tunis. We have volunteer teams that look after education, personal development, outreach and a tech team that works on systems and projects.

How can someone contribute to CodeYourFuture?

There are two ways to contribute. Firstly, through corporate partnerships to help us bring a new range of courses to more disadvantaged people than ever before. As part of any sponsorship, there are opportunities for personalized volunteer experiences for employees, for branding, PR, and a recruitment pipeline to diversify workforces.
Then, we also have individual volunteers. We have an opportunity to help a lot of people learn a valuable skill, at a time when they need it the most. We’re looking for coding teachers, mentors, marketing experts and many more. You don’t need any experience – and non-tech folks are welcome too! Our website has more details about the roles and how to sign up. If people are unable to volunteer – maybe they know someone who may be interested?

What’s your vision for your students after they graduate from CodeYourFuture?

For them to lead thriving lives! That starts with a job as a developer in a company that will support their growth. Some graduates may continue their studies – we can help them find full-time learning opportunities too. We aim to support them through the community for as long as they need. Many graduates come back to CodeYourFuture as volunteers, which is an amazing cycle.

Going back to the students, to see this from their view, what kind of a career would you like to have in 5 years? What would you like to have accomplished by then?

Ellie: If I work continuously and I don’t have any distractions in my life I would say I want to be in the first 10 companies in the world or lead one of the banks of London.
Constantin: I also study Augmented Reality, and some companies see the development of web technologies being towards a Virtual World. I try to prepare myself for that. Also, I am interested in Digital Twins, BIM models, visual effects and game development, and 3D printing. Of course, until I reach that I will probably be doing layouts for sites like I did for magazines. I think I have enough courage to start building apps or games for myself or for a small company. I want to add some more languages to my skill set, I think Python and C++.
Yohannes: In five years, I would like to be a more professional and senior developer in one of the top banks, and play a key role in optimising and improving their software systems. During these five years, I would like to accomplish advanced courses in network and system security.

How many students have graduated from the program so far and where are they from?

During the last 3 years that we operate, over 100 students from around 30 countries have graduated from our program. This year alone, another 100 should graduate. We’re planning classes in Cape Town at the moment!

So, what have actually been the biggest obstacles for the students during their training program?

Ellie: I think the biggest obstacle during my training program is self-confidence… because sometimes I feel I lose myself.
Constantin: Working. When I first moved to the UK I had to work as a freelance photographer, as that is what I am best at. But sometimes you need to work a lot or in night shifts.
And of course, COVID and lockdown. On the other side, that has been a great opportunity to have enough time to study and be with my new-born daughter.
Yohannes: The biggest obstacle I have faced during the training program has to do with finding the self-esteem to ask questions on the main slack channel. After having a face to face chat with my personal development mentor, I have improved my confidence skills a lot.

How many people are involved in running the school and doing the teaching?

Dozens of core volunteers and well over 100 occasional volunteers. Doing the following:
Education – they create and deliver teaching content. They also mentor and guide our students through the course
Outreach – Find new volunteers and students, contact employers and other NGOs – do marketing related work
Personal Development – Develop our students soft-skills and personal support through the course
Tech Team – supporting grads who need to practice on live projects for CodeYourFuture.

Has the Covid-19 outbreak affected your program? Are you planning to pivot any of your activities?

We operated in a hybrid fashion before the pandemic, so it wasn’t too difficult to move the classes online. One of the main challenges has been maintaining the strength of the community. We are like a big family, and we miss each other! We’ve been organizing different social activities; there are tea breaks, remote game nights, and some enthusiastic students and volunteers have a weekly exercise session!

The critical pivot has been at a volunteering level. As we’re entirely remote, we’re able to include volunteers from anywhere. We have people joining from the US, Costa Rica and Lebanon – helping with all aspects of our program. It’s been incredible to see all these new people get involved. You can join too!

What kind of skills have you managed to develop while in coding school? Except for coding skills, what would you say you gained from this program?

Ellie: Practicing continuously, time managing, self-confidence – I changed my lifestyle.
I manage my time more than before, even if I feel I can’t. I try again and don’t lose my confidence, and don’t let conditions keep me down. CodeYourFuture helped me to be more serious about coding and changing my lifestyle. To remove anything else which is not important.
Constantin: When I first came to CodeYourFuture, I was like an alien just landed from another planet. You first see a lot of people in the same situation from countries of which existence you do not even know, and a volunteer starts breathing exercises. And you realize ”ok we all breathe in the same way!”
Now in the middle of the course, we are all friends, having fun on morning CYF energizers, evening Javascript calls and coffee-breaks. I feel like I know people from every tiny place on earth. And all that in one place.
Yohannes: One of the important skills I have gained during the programme are soft skills – such as team-working, task prioritising and effective time management. The soft skills we have learned have been very effective in improving our learning ability.

And a final question for Ellie, Constantin and Yohannes, what kind of advice would you give to your younger self or to another refugee thinking of getting an education in programming?

Ellie: You need to want it badly and to change your lifestyle until you get what you want. You also need at first to have someone like CodeYourFuture to show you the best way to reach your goals. Constantin: Do not procrastinate. Time is money; start now. Click that apply button!
Yohannes: I would recommend him/her to join CodeYourFuture in becoming a developer.

Special thanks to Alec from CodeYourFuture, who helped us through this interview. You can reach out to the team and get to meet them too, on twitter or Facebook.

Categories
News and Resources Tips

Developer Certification Programs to help boost your career

You are finally ready to pursue your career as a developer. Well, a big fat congratulations to you! It’s high time your homework begins! Whatever you choose to become, it does require a sincere commitment of time, effort, and resources (e.g. developer certification programs). You will need to make some hard choices such as which programming language to kick off with (find out which are the top programming languages communities to look out for), or what development area to focus. Keep in mind that on average developers are involved in five sectors concurrently. However, on top of programming and coding skills you will also need to work on your project management skills. You also may need to dive into the Agile Manifesto

Can you guess how many software developers are there in the world? According to the most recent Global Developer Population report,  in the beginning of 2019 there were just under 19 million active software developers. Out of these, 13M are software professionals.

We have used our current methodology to produce estimates of the global developer population for the past four half-year periods. Each estimate was produced independently of the others. This reveals an increase in the developer population of 4.2M developers since mid 2017, or an annual growth that hovers around 20%.
We have used our current methodology to produce estimates of the global developer population for the past four half-year periods. This reveals an increase in the developer population of 4.2M developers since mid 2017, or an annual growth that hovers around 20%. This growth rate seems to be accelerating, although it is based on just a few periods.

Day in day out, the population is growing at over 20% annually. This means you need to stand out from the competition. Now before we proceed any further, we need to understand the value of developer certifications. Why are they important? Why is there so much hype on gaining certificates and investment done in training? The added value is pretty much substantial. And merits can be bifurcated into two categories: What value certificates bring to individuals? How they affect decisions made by organizations?

Value to individuals

  1. Professional credibility: This describes your future relationship between co-workers and supervisors. You demonstrate the fact that you have developed certain skills that need to be possessed to succeed. Also, you are willing to put all the time and effort that needs to get certified. 
  2. Personal Satisfaction: There are times when we feel like an expert. After several years of knowledge, we step into the workspace with confidence and end up asserting ourselves.
  3. Salary: An individual with more IT certifications has the potential to make much more than those with just one certification. Additional certifications are not a bad thing after all. 

Overall professional growth and career advancement require you to learn present and upcoming technologies and enhance the skills you currently possess. 

Value to organizations 

  1. Job requirements: With the continuous advancement in technology, there’s a need to have subject matter experts on new topics. 
  2. Filling skill gaps: According to many software development companies, skill gaps are can be put a strain and the best way through these, is extensive training. Of course, there is no denying the fact that certified employees can lead to greater productivity. They can increased workforce morale, as well as knowledge shared across the entire department.  
  3. Retention – Job satisfaction results in greater staff retention. Employees who feel fulfilled and satisfied from inside are less likely to pursue other employment.

It’s Time to make the right choice – Answer the following questions

  • What do I want to accomplish? 
  • What am I interested in? 
  • Have I done my homework yet? 
  • What resources should I consider using? 
  • What’s next? 

Further below you will find certain software developer certification programs that can surely aid you in boosting your career.

1. Microsoft (MTA): This certification, in particular, is crucial for high school and college students around. Right from web development to software development, mobile, gaming, and more, the program offers it all! It depends upon you whether you achieve certification on a single track or several. 

2. Microsoft Azure: I am pretty sure you must have come across this certification. After all it is one of the most highly recognizable in the IT industry. This certification in particular also has the potential to carry a considerable cachet. Furthermore, with Azure, you’ll build, manage, and deploy scalable, highly available, and performant web applications.

3. Oracle (OCP, OCM, OCE): Unlike others, Oracle offers numerous Oracle Java Certifications at several levels such as Associate professionals (OCP), Master (OCM), Expert (OCE). The professional-level certification typically requires you to have an OCP Java Certification for a programmer. Otherwise, you must have a Sun certified Oracle Java Certification for programmer credential as a prerequisite. Exams taken here are all multiple choice and some include scenario-based questions as well. Also, there is the option of Oracle certified professional MySQL course, for developers who write applications for MySQL database servers. Fortunately, this slot has no prerequisites but Oracle itself does recommend you take the MySQL for developer certification. This exam is single-level and focuses on practitioner-level skills in all aspects of developing MySQL applications: architecture, syntax, design, modification and the list goes on.  

4. Amazon Web Services (AWS): Amazon Web Series provides scalable cloud computing for creating web applications. Being an AWS certified developer means the associate level is for developers who design and run applications on the AWS platform. Also, here the credentials come with no prerequisites but that doesn’t mean you should take it lightly. You must take a multiple-choice exam on AWS fundamental, plus designing, developing, and deploying cloud-based solutions, security, and debugging.

5.  Salesforce: With the rise in Salesforce development companies, organizations are searching for professionals with this certification. Initially developed as one of the original providers of enterprise customer relationship management (CRM). It now focuses on many facets of enterprise cloud computing and applications. The company’s entry-level certification identifies developers capable to design as well as build custom applications and analytics using the Force.com platform. Salesforce recommends that you take the Building Applications with Force.com and Visualforce training courses to prepare for the exam. To achieve certification, you must pass an exam that covers application design, the Force.com platform, data modelling, user interface, logic, data management, reporting, and analysis. Next, you can move on to the Salesforce.com Certified Advanced Developer certification. This focuses on skills required to use Apex and Visualforce to build custom applications, create test plans and perform tests, and manage the development lifecycle and environments. The organization’s Developer certification is a prerequisite. 

6. Scrum: Another interesting developer certification course you must consider is in the Scrum alliance. For those new to the Agile Manifesto , Scrum.org  is a member-based organization. It promotes the use of Scrum through education, advocacy, and networking/collaboration. The entry-level Scrum Alliance certified Scrum Developer (CSD) certification targets developers who understand Scrum principles and have knowledge of specialized Agile engineering skills.  

7. Project Management: Last but certainly not least, the Project Management Institute. An organization that offers numerous software development related certifications including the PMI Agile Certified Practitioner (PMI – ACP). The cert recognizes developers with knowledge of agile project management principles, practices, tools, and techniques. All you require having is: 

  • 2000 hours of general project experience working on project teams, or an active PMP or pgMP certification
  • 1500 hours working on Agile project teams or with methodologies
  • 21 contact hours in agile practices

The exam covers agile tools, techniques, knowledge, and skills. PMI has a strong relationship with academia. You’ll find that many colleges and universities offering courses on its certifications include the PMI-ACP.

What other courses have you taken or are considering taking? Have you attended any physical courses lately?

Charles Richard, is a Business Analyst at TatvaSoft UK. Besides his profession, Charles likes to share some new and trending technical aspects. To know more about his leading software development company in London, please visit www.tatvasoft.co.uk

Categories
Community Languages News and Resources Platforms Tools

Current development trends in software engineering

Every year we conduct two global, independent developer surveys engaging more than 30,000 developers. We track development trends across platforms, revenues, apps, tools, languages etc. The 18th Developer Economics survey ran from November 2019 to February 2020 with more than 17,000 developers and tech-makers participating, allowing us to analyze and understand development trends on major areas such as mobile, cloud, desktop, IoT, web, augmented and virtual reality, machine learning and games. 

It’s no secret that we are data-enthusiasts. Data is in our DNA.

After each survey wave, we transform these data into graphs and insights and offer part of them as resources to our developer community. Our methodology is founded on 9 essential and non-negotiable qualities:  magnitude, impartiality, inclusivity, consistency, substantive, engagement, diligence, confidence and breadth. See more on how our methodology allows us to understand and profile developers.

Our goal is not only to help the world understand developers but also to add value to all the developers out there, by offering them the necessary insights to benchmark themselves and make smarter business decisions based on current development trends.

So let’s have a look at what our developers are saying, shall we?

Starting from some basic insights, it is important to know in which age group our respondents belong: 35% of developers worldwide are between 25 and 34 years old. The second largest demographic – almost 28%- is the young developers, aged 18 to 24 years old. 

What age group are you in?

Development trends

Just over half of our respondents reported having less than 5 years of coding experience. As our research covers both professionals and amateurs such as hobbyists and students, the experience mix makes perfect sense and is representative of the coding skills of the global developer population. We find that the young and relatively inexperienced are the first to jump into emerging sectors drawn by the hype, and they play a key role in their evolution.

How many years have you been working on software projects?

Development trends

Focusing on programming language preferences of mobile and backend developers, we find that Java is the third option for backend developers, while the most popular choice of mobile developers. The first choice of backend developers is instead Javascript with over half using it for cloud development. 

Which programming languages do you use to write code that runs on the device in your mobile apps?

development trends

Which programming languages do you use to write code that runs on the server?

development trends

When it comes to front-end frameworks or libraries for web applications most programmers use jQuery (49.7%) and Bootstrap (48%). Other frameworks our respondents stated they’re using are React (42.9%), Vue (28%) and Angular (2+) (25.2%). 

What about trends in augmented and virtual reality (AR/VR)? Almost half of the developers working on AR/VR use C#. Moreover, as is typical of a still-emerging sector, almost 60% of respondents said they are hobbyists in this field.
Last but not least game development. Developers mostly prefer to create adventure and action game apps with 44% of respondents choosing each of these. 36% create Arcade games while almost 23% choose Role Playing or Strategy games.

Which categories do your games fit in?

development trends

For more insights from our latest survey, you can check out the Developer Economics graphs dashboard. It’s also a great opportunity to benchmark yourself against the global average. 
Enjoy!

Looking for a more thorough report analysing the developer population and trends? Download our next State of the Developers Nation report 18th Edition. You will find it here.

Categories
Community

Coding Schools: Training for a New Life

The increase of refugee arrivals in Europe and the US created a significant challenge in the social and economical environment. At the same time, the need for employees in the tech world is constantly growing. One of the most promising ideas emerging from this situation were Coding Schools for refugees. Coding schools were created in order to connect the dots between talented people with a refugee background without tech experience and employment opportunities in the tech world. They are designed to offer not only training on hard skills but soft skill orientation, psychological support and interview preparation. Adding to this, more and more tech companies are looking to recruit refugees in order to increase diversity in the workspace and drive innovation. 

As Nataša Koprtla, Co-Founder of Borders:none and Vincent van Grondelle, Program Manager of Migracode Barcelona, shared with us, the goal is to build a community that not only educates refugees but also supports them through labour integration and helps learners resolve any additional issues they might be dealing with. Let’s find out more about these coding schools.

Would you like to tell us a little bit about your organization and vision?

Nataša: We, in Borders:none believe in integration through connecting with like-minded individuals and learning new skills. Friendship and knowledge are the biggest gifts you can give to someone who was forced to flee their own home. And we strongly believe there are no boundaries in human potential. That is why we help refugees, asylum seekers and other people who were forced to migrate. Our organisation gives them a possibility to make their life better through our programs. We mostly work with young refugees aged 18-30 years old and tailor our projects according to their inputs and needs.

We accept everybody with an interest in this kind of stuff. Our courses begin with workshops about websites, what they are, what they consist of. We analyse them together, we draw wireframes together and interactively we learn about the elements of websites. During the first two weeks of the program we don’t use computers at all. After that, we start with CSS and HTML. We use non-formal methods of learning. They are proven to have the best impact when it comes to adult learners, so mostly we do “learning by doing”. 

Vincent: Migracode Barcelona is a coding school for people with a migration background. People who are in a vulnerable or difficult position. They might not have the educational background or the economic resources to find a job and sustain their life in Spain or Europe. Migracode’s main goal is to support refugees and migrants to get free tech education and to connect them to the tech market. With this labour integration process, we hope to actually improve their living situations. At the same time, we really aim to build a community, a migrants tech community. We bring local people together with our students to promote social inclusion. In Migracode, we create a diverse and inclusive community of people with an interest in coding. Last but not least, we provide first-line Social Work support, if needed. For instance, we may forward our beneficiaries to specialised organisations for trauma counselling.

Who are your teachers? How many developers are volunteering in your courses? 

Nataša: Our teachers are mostly freelancers or they work in small companies or cooperatives. They are developers with many years of experience in HTML, CSS, JavaScript, Java and Ruby on rails. For now, we mostly stick to HTML and CSS because we believe they are the basis for everything. Most of our teachers are with us from the beginning. They have invested a lot of time and energy in this project. There are currently nine developers participating in our courses. We also have class assistants who help people follow the class and facilitate classes. We use modern technologies, similar to most IT companies (like Slack). They help us stay in touch with our students, to support their tasks and homework writing and to actively discuss topics related to what they learn. 

Vincent: We have more than eighty people in our pool of volunteers who are supporting in teaching. All the teachers are volunteers. Any additional support like LinkedIn support, cv support, legal-related support, career coaching support and so on comes from our volunteers. We also have some volunteers from companies offering soft skills training. There are a lot of people who apply to support our program. Of course, not all of them are constantly involved.

On a weekly basis, we have at least four people actively involved. Fortunately, the network constantly evolves. They join our slack channel and then they can choose how they will offer their service. They can, for example, support in 1-2-1 sessions, support with checking the homework or they can even choose to join a class and support in teaching. There are the main instructors, they teach a full module which lasts around three weeks. We also have some other instructors who are more independent and choose how to support. It surely is a lot to manage since we have limited human resources but using Slack has proven to be the best way to keep them engaged.

You both mentioned several courses and different kinds of training. What courses do you offer and what kind of skills a developer will have gained in the end?

Nataša: We offer basic HTML and CSS classes and advanced HTML and CSS (with a little bit of JavaScript). We had one basic Java course and we had a few workshops on different IT topics. We held courses twice a week for an hour and a half and in the meantime, we use Slack channel for discussion with our students and for supporting them in their homework and tasks. Our approach to learning is non-formal and we mostly do “learning by doing” especially in our advanced classes. We use codepen.io where we work together on various projects and thus learning how to create the different chunks of a website.

We also take our students to events held in local society – all kinds of meetups which could be interesting to them. Due to the specific situation, our groups usually don’t progress to higher levels of education. Croatia is a transit country and we don’t have many refugees and asylum seekers here. People leave the country or find employment in some other profession. They need to work in order to pay for living costs) and prolong their learning process for a few years. 

Vincent: We teach the basics of full-stack until they reach a junior level. We offer courses of five very profound coding front and backend languages such as HTML, CSS, Javascript, React Node JS and database. Basically, we provide them with the main skills and knowledge. When the time comes to join a company they can get a very specific training of the language the company prefers. You can’t prepare someone to know all coding languages perfectly and start right away with every company. So they get basic knowledge and during their first job experience, they can dive deeper into specific languages.

What about funding? Do you receive any support?

Nataša: We don’t get funding. Everything we do is completely on a voluntary basis. One company and some people donated laptops. while venues provide free rooms to organize our classes. That is also one of the reasons we only do one course at a time with a maximum of 10 students. 

Vincent: Being an NGO with limited resources can be challenging. We’ve received great support from the private sector but still, it is a challenge to manage such a project. On the one hand, we’ve been very lucky, we’ve engaged some great partners who have been supporting us very generously. But there still is this constant process we are in. We are searching for sustainable funding in order to include more people and make the management of the program more stable.

What is the biggest challenge you have faced so far as coding schools?

Nataša: The biggest challenge is to keep our students motivated all the time, not to drop-out. We are dealing with a specific population with a very high risk of dropping out. Marginalised groups are in general prone to drop out. Refugees and asylum seekers with whom we work have their own specifics and obstacles that prevent them from completing courses. That is why we invest a lot of energy not only in teaching but to develop methods to decrease these rates. Other challenges are more related to financing issues – not having our own space and other logistics. But thankfully, due to some donations, we managed to ensure a venue for this year’s courses.

Vincent: There is a big challenge in keeping the students engaged and to not allow external factors of their lives prevent them from finishing or even joining our course. Making sure that students are getting adequate support from us to continue the course has been challenging. Until now we’ve managed to prevent that by providing them with social support.
On a more organisational level, we have limited staff resources and we are managing a code school with thirty-three students and eighty volunteers involved. Of course, having the volunteers around makes this whole project possible but it is a huge challenge to manage. Also, the COVID-19 situation actually caused one of the difficulties we are dealing with. We switched completely to online courses and it is actually going quite well but we miss this important part where we actually meet the students and talk to them face to face.

And what are the next steps for your organization? Do you have any new course coming up?

Nataša: At the moment we’re in the process of writing an application for funding to our municipality. Hopefully, this will be completed within the year. In the future, we hope to be able to provide more courses and to include more weekly hours in our curriculum. This is very much dependable on financial support. We usually have two courses during the year – autumn and spring – and they last three months each. If we manage to get the funding we’ll certainly organize more courses. Courses including basic digital skills for students who need that first step before entering programming classes. 

Vincent: For now, we are aiming to have two groups of students simultaneously each time we start a new course. Right now we have three groups. One started in October as a pilot program with nine students. Two groups of twelve students each, started in March. Currently, we are also planning two new courses to start in June or July, depending on the development of the COVID-19 crisis. Also, we are currently working on a job fair. Given the situation, we switched to an online event and most of the companies we are connected to are interested in hiring. 

Could you share with us an inspiring story from your students?

Nataša: We had a lot of students by now and each story is specific. But I’ll mention just a few of them. We had a student from Egypt who made a total career switch. He started to learn coding with us, then we managed to find a traineeship for him. Α year and a half from when he started learning he found a job in one of the biggest Croatian companies all by himself. He is still learning and thriving to get to a higher level.

Another inspiring story comes from a  very young man from Syria who started learning with us but due to job obligations he couldn’t attend. Ηe continued all by himself and managed to master the materials. We are still supporting him until he can get an internship in an IT company. 

I’ll just mention two more older men who are great examples of highly motivated students. Both of them didn’t have any background in this field and their digital skills were on the lower level. One of them was from Ukraine and didn’t understand English. He studied a lot at home, in Russian. Both managed to finish the basic course and are highly motivated to continue. 

Vincent: Most of our students are facing various difficulties in their everyday life. Some of them are sharing a very small apartment with five people or single parenting their children. It’s amazing how at the end of the day they still manage to keep up and successfully continue with our program, with graduation in prospect. Also, after the coronavirus outbreak, it has turned out to be quite a challenge for us and for our students to move all of our classes online. We also moved our job fair to an online event. During this event, six companies participated and had sessions with our students. After this event at least three from nine graduate students got job interviews. They are currently in the process of interviewing. I think it shows a lot about our student’s possibilities, effort and ambition. 

Last but not least, how can someone contribute to these coding schools?

Nataša: There are several ways of how people or companies can get involved. We are always looking for new developers who would like to volunteer. At the moment we are running online classes so volunteers don’t need to be based in Zagreb. Developers can help in other ways as well – homework help, supporting individuals who need more support regardless of school classes. We are in a need for the equipment –mostly laptops but also additional gear. And of course, we need financial donations to keep us running the school. We want to provide more different courses and a larger number of classes for our students. In the end, companies can support our students by giving them opportunities for traineeship or internship.

Vincent: We are currently finding out that online teaching actually works. So for people who aren’t currently in Barcelona can contribute by having one-two-ones sessions with our students. They can also help with checking homework admissions and leaving feedback. On another level, companies can help with financing, material donations, space and soft skills training.

Short bio:

Nataša Koprtla is working with the Borders:None organization. She is a project manager with more than 10 years of experience in digital agencies, creative advertising agencies, IT companies. A psychologist and youth worker in the field of refugee youth and young asylum seekers. She has 4 years of experience working directly with young refugees and carrying out the projects related to this group.

Connect with Borders:none on Facebook

Vincent van Grondelle is the Program Manager of Migracode Barcelona. With a background in Social Work, Data Analysis and Non-Profit Management, he is now responsible for reporting, financing, managing volunteers, supporting students and for creating non-profit and corporate business relationships.

Connect Migracode on LinkedIn, Facebook, Twitter, Instagram

Looking to find out more about how other NGO’s are contributing to the tech environment? Visit our interview with Naomi Molefe, SA Chairperson in Women in Big Data, or our discussion with James Sugrue, co-Founder of donate:code and Aggelina Mila, coordinating Business Development at Social Hackers Academy.


Categories
Languages

Infographic: Top programming language communities

Which programming languages the developer nation uses the most? Our data reveal which programming language communities are rising faster than others, which are dropping down the rankings, and which are the new additions to the club! Take a look at our infographic containing key findings from our Developer Economics Q4 2019 survey. 

First of all, let’s all hail for our two years in a row queen, ? JavaScript. The JavaScript community counts more than 12 million users worldwide with an increase of 33% over the last two years.

Among the top programming languages, Python and Kotlin have climbed up faster than any other. With a slow and steady rise Python finally managed to edge out Java, counting 8.4 million users and ranking as the second most used language. When it comes to Machine Learning, Python is the first choice of the developer community, chosen from more than 70% of developers involved in ML. Meanwhile, Kotlin has shown significant growth, it nearly doubled in size in the past two years, finding its way into mobile and AR/VR programming.

After almost 10 years of its launch date and a head to head race with Ruby, Go (or Golang) managed to enter the club of the top 10 most used languages, counting 1.4 million users. Another up and coming language making its way mostly through the AR/VR field is Rust exceeding half of million users.

Let’s not forget that developers are dropping languages all the time. The practice of programming is not static. Even though Swift and Objective-C have been used significantly by the Apple community it seems that the developers are slowly abandoning them. On a similar trend, Ruby and Lua seem to have the biggest decrease (30% & 40%).

Check out our infographic which highlights the top trending programming language communities:

programming language communities

The estimates we present here look at active software developers using each programming language, across the globe and across all kinds of programmers.

Looking for a more thorough report on programming language communities? Check out our free State of the Developer Nation Q4 2019 report examining also different topics such as Contribution to Open-Source Software, DevOps Participants and Adoption, Machine Learning, Augmented & Virtual reality and Emerging technologies.

Also, here you can view the latest global average data trends on major development areas.

Categories
Tips

5 Challenges for a Freelance Developer

Thinking about becoming a Freelance Developer? Freelancing can provide overall freedom for you to decide your working hours and salary. Let’s go over some common challenges, pros, cons and trade-offs you may encounter choosing this career path. Hopefully, my experience will help you make an informed decision.

Challenge #1: Steady Income

A strong point in favour of a regular job is a steady income. As a freelance developer, you have to face reality. While there is no real cap to how much you can make, there will be peaks and troughs in your monthly income. 

High and low seasons won’t necessarily follow each other in fixed intervals. In other words, be prepared for long periods of low income especially during your first couple of years.

Pro Tips

Aside from the services you may provide, do your best to generate passive residual income. Maybe consider an app that sells revenue, unobtrusive ads on your website or even a channel on a streaming website. There are many options to choose from nowadays.

Save as much as you can when you are in the high season! Conduct yourself in a frugal manner and eventually, you’ll figure out how much you can add in your expenses without dipping into your savings. You can always use an app to help you manage your finances!

If you still live with your parents, do not rush to move out. Save as much as you can (and make sure to help your parents with the bills). When your savings and your base income are healthy enough, then plan accordingly to find your own space. As a freelance developer, you’ll have steady expenses but not a steady income. Getting involved in the finances of your home will give you firsthand knowledge of how things work. Even if you are fortunate enough and there is no need for you to assist in the household expenses, still offer to handle some of the bills, as this will be part of your learning process.

Challenge #2: Time Management

It’s in the name, Free-lancing! You are your own boss and you have total control over your time. This is a huge pitfall when it comes to freelancing. Indeed you can start your workday after 10 am but watch out. You may not be as productive as you’re hoping to be. Unexpected things come up. Your computer may break, your internet service may stop working and a number of other things could go wrong.

As developers, we pretty much get paid to figure things out and make them simpler and more accessible to everyone else. There are times when no matter how much planning you put into it, the beautifully crafted algorithm will not work and it doesn’t have to be a syntax error. It might be something far more insidious than that. For instance, back in 2006, I was working on an HTML project and wanted to track the checkboxes that were not checked by the user once a form was sent. It took me days to realize that unchecked checkboxes are simply not posted when the form is submitted. As simple it may sound, this was one of those things that you learn from a painful and time-consuming experience.

Pro Tips

Discipline is key for proper time management. Learn how to say “NO” when you have to. You love solving problems and helping people, I get that. However, don’t forget that your freelancing career is only as serious as you take it and your clients can sense that from a mile away. 

Set a working schedule for yourself and stick to it. It might not be easy but it will be totally worth it. If you have a strong reason to miss work, at least make sure you have some wiggle room to make up for that time. 

One tip to always keep in mind: Watch out for the holiday season. If you choose so, holidays may not limit your capacity to work but will probably limit your clients’ availability to answer your phone calls or emails, should you need anything from them.

*** Time Management is closely connected to productivity but we’ll cover that further in challenge #4

Challenge #3: Deliverables

Developers are responsible for solving problems. Many times very simple problems but others very complex ones. Your capacity to deliver such solutions will determine how successful you may be. Clients will do their best to communicate their needs to you. More often than not they will fail at getting their point across. Pay attention to every detail,- the context of the problem, the scope of the problem- and try to connect the dots between what they say, what they mean and what you understand.

Clients will do their best to communicate their needs to you. More often than not they will fail at getting their point across. Pay attention to every detail,- the context of the problem, the scope of the problem- and try to connect the dots between what they say, what they mean and what you understand.

Pro Tips

Be honest with your clients. If you can’t deliver a solution, let them know. You are not required to know everything. Mutual trust is something built over time and if you feel that -while you are not an expert in a subject- you may conquer the learning curve to deliver the solution, communicate it to your clients.

Communication is key. If a client hasn’t heard from you in weeks they may think that you have abandoned them. You do not need to email or contact them every day, but often enough to keep them up to date with the ongoing process of the contracted work.

Challenge #4: Being Productive as a Freelance Developer

This happens to be one of the toughest things to keep up with as a Freelance Developer.  It depends a lot on overcoming the previously mentioned challenges. Many times your productivity will peak when you need it the least (low season for example) and fail you when you need it the most.

In reality, this is a challenge for everyone, even people with steady full-time jobs. It puts extra weight and stress on a Freelance Developer because you’ll need to handle everything on your own, even more so at the beginning. You need to be your own boss, accountant, assistant, supervisor, public relations expert, customer support, and so many more. Say NO to yourself when you want to say YES, can be soul tempering as much as it can be disappointing, but it is critical.

Pro Tips

The road to a productive day is an exploratory journey. Know yourself, balance how much you demand and how much you reward yourself, do your best to be the boss you wish you had but also the employee you wish to have. Don’t forget to exercise, eat well, sleep and keep an eye on your health as your body and mind are the most important tools for you to provide your services. 

We tend to use our computers for everything we do: work, watch series and movies, play or stream games, catch up with friends and family, read and anything else possible., etc. I did it for a long time until I got my hands on an old console and noticed how much more productive I got. Separate these things. When your computer is your go-to for everything, you’ll want to play when it’s time to work and vice-versa. There’s nothing wrong with playing video games in an old console, reading an old book or switching to an old e-reader. Don’t let the trends make you waste money and time you don’t have. Every cent and every minute counts.

Challenge #5: Keeping up with the Industry

A new Javascript framework is born every day. Keeping up has to do with learning new things as it has to do with discerning which things are worth learning. Depending on your choice of stack or target for software development this can be very complicated and time-consuming.

Desktop, Web or Mobile, each have their own set of programming languages, database choices, architectures, distribution systems, update cycles and so much more.

Pro Tips

Choose a single target first and mature in it. Try to be a shark, a horse or an eagle, never a duck, yes the duck can fly, swim and run but never as good as the ones mentioned above. Master one domain before adding a second one. Trends can be very misleading, so be careful. Just because everyone loves or hates the “new” thing, that doesn’t mean you should do too. 

Be critical, read, compare, test, research and make informed decisions – at the end of this article, you’ll find some indicative useful links of sites and tools for that.  You’ll find an outstanding feeling of realization and meaning when you take your algorithms and carefully improve them, remember there’s nothing wrong with making mistakes. In reality, this is a core part of a healthy learning process. However small the step forward it may seem, it’s still a step forward. Code bases and apps are improved in tiny percentages in different areas which add up to a much larger percentage of improvement. 7% Faster on the client-side, 12% faster on the server-side, 16% faster and better-indexed queries switching png icons for SVG’s, removing unused assets and before you know it, your website, web-based or mobile app can be much faster and deliver a much better overall experience.

Conclusions from the Life of a Freelance Developer

As a freelance developer your path can be very rewarding and fulfilling as long as you always do your best. Even if getting the job done might not be enough sometimes, you will still have the certainty that you gave it your 100%. This will soon add up to your advantage.

The beautiful process of learning a new skill and putting it into practice, giving life to an idea, watching it unfold is pure science. This will provide you with a real and palpable sense of achievement and purpose. You start with a simple “hello world” in your first programming language and as you progress it gets more difficult but more interesting as well. Trial and error, you learn, you grow, you overcome or fail. Do it every day, code a little and become more competent.

The dynamics between the known, the unknown and the threshold you cross to narrow that gap is what’s so engaging about the freelance developer lifestyle. Conquer yourself as you conquer new skills.

Useful sites for reading and researching:

Useful sites and tools for testing & benchmarking:

Short Bio: Darwin Santos is a Web Developer from the Dominican Republic and has been a member of the Developer Economics Community since 2017. He specializes in web-based ERP/CRM hybrids and health care systems. He has been working with web technologies since the early 2000s. Several of his deployments have been running for years and are constantly improved and updated. He is also very experienced in database design, data normalization and data migration, with several successful migrations of 20+ years worth of data under his belt. He prefers functional and procedural programming over OOP.

LinkedIn: https://www.linkedin.com/in/darwin-santos-3a5b4066/

Categories
Community

Developer Psychographics: Curious & Creative Problem-Solvers

Did you know that more developers are team players than loners? If you are like us, you probably love these kinds of facts. You can find more of these in our State of Developer Nation Report (SoN). This edition includes a chapter on Developer Psychographics.

The SoN report comes as a result of our Developer Economics surveys. These are answered annually by tens of thousands of developers, from all over the world. Therefore, these are some of the most reliable reports globally when it comes to developer trends.

The developer community is one of the most developing (see what I did there?) communities in the world. Changes are constant and sometimes, unpredictable. That is why our surveys are as inclusive and all-around as they can be, so that we don’t miss a single thing and we are always up to date.

Developer Psychographics: How do developers describe themselves?

This differs depending on their technology sector, their age and more. For instance, most developers see themselves as Logical persons. However, those working on game development see themselves mainly as Gamers (obviously).

developers

Younger developers mainly see themselves as Gamers. On the other hand, those over 35 years old are more likely to self identify as Readers. In addition, “Gamers” are the least popular term amongst developers aged 45-54 years old.

developers

During the Developer Economics Q2 2019 Survey, we offered respondents over 20 words to create a word sketch that would best describe themselves. Participants could use up to five words and also provide their own descriptions in a text field. We received over 300 responses which ranged from “analytical” to “zoned out”.

It would seem that we are amongst some Curious, Enthusiastic, Friendly, Geeks, and the occasional Innovative, Lazy Leaders Developers.

A few developers pondered if we were asking these questions in an effort to set up a dating site (we are not!). Speaking of love,  however, we found a few developers who love dancing, love the future, love puzzles and music.

Finally, we discovered that a lizard person had answered the survey.

This will surely help our research in years to come!

developers

If you enjoyed this post, you can read the first part of our Developer Psychographics here: How developers see themselves . We also created a webinar on this topic, which is now available on YouTube. Check it out: Developer Personas and Psychographics.

The full State of the Developer Nation report, 17th Edition, with more interesting facts like these ones, is available here.

Join our community for more

Our next report will be out soon, including all the latest trends of the developer world. Why not sign up in our community and receive it right in your inbox?

Our Developer Economics newsletters are fortnightly, include useful developer resources and news, always start with dev humor and are 100% spam free.

Till our next survey!