Home Artificial Intelligence Need to Be a Higher Data Scientist? Write Coding Tutorials! Coding Writing

Need to Be a Higher Data Scientist? Write Coding Tutorials! Coding Writing

0
Need to Be a Higher Data Scientist? Write Coding Tutorials!
Coding
Writing

Photo by Mimi Thian on Unsplash

After I first began writing, I could hardly code. My little Python experience got here from university projects. At the identical time, I believed I used to be a terrific author! Now looking back, I cringe at a few of my earlier articles.

This shows me that writing tutorials has improved each my technical and communication skills. Ultimately, it has made me a greater data scientist. I need to share my experience and discuss some specific advantages. This includes writing readable code and providing step one to writing about difficult topics.

Technical skills are obviously necessary to developers and data scientists. At the identical time, we work in fields which might be consistently changing. This implies we want to maintain up with the newest tools. This might be difficult and time-consuming so it takes an actual commitment to learn repeatedly.

Writing has motivated me to consistently learn recent technical skills and to develope a deep knowledge on those topics.

Writing has been a terrific motivator. Not only can I learn recent things but I can share those lessons with the world. It’s addictive — having people read and interact together with your work. The will to consistently post recent articles has pushed me to consistently learn recent things.

Not only that but I find writing is the best strategy to learn. Often it’s only after I’ve tried to elucidate something that I’ve realised I don’t actually understand it. On top of this, I at all times aim so as to add value to a subject. Introducing novelty requires an excellent understanding. In this fashion, writing has been a check on my knowledge. It has pushed me to really understand the technical concepts I write about.

Writing readable code

A related skill is writing readable code. Good code should explain itself. Similarly, a tutorial based on readable code is less complicated to write down. I spend less time explaining what the code does and sometimes you haven’t got to elucidate it in any respect. I’ve found this profit extends to collaborating in industry.

Any idiot can write code that a pc can understand. Good programmers write code that humans can understand.

— Martin Fowler

An example comes from a recent article of mine — Using SHAP to Debug a PyTorch Image Regression Model. Within the tutorial, I worked with SHAP values given in a 5-dimensional array. I desired to visualise this array using one in every of the package’s functions. To do that, the array first needed to be reordered. Originally, the code looked like this:

# Reshape shap values for plotting
shap_numpy = [np.swapaxes(np.swapaxes(s, 1, -1), 1, 2) for s in shap_values]

The nested swapaxes functions weren’t fun to elucidate. The TLDR is that the code transposed the array’s third dimension with the fifth dimension. I discovered myself writing a lengthy paragraph about how the code was doing this. So, as an alternative, I rewrote the code:

# Reshape shap values for plotting
shap_numpy = list(np.array(shap_values).transpose(0,1,3,4,2))

The transpose function is more intuitive and the code was easier to elucidate. When writing code for tutorials, I’m at all times looking for examples like these. Readable code makes the writing process smoother and the tutorial more digestible.

I’ve found this skill particularly useful when collaborating with other professionals. You’ll be able to never get away from handovers and code reviews. Explaining code during these processes isn’t any different to explaining it in a web-based tutorial. Ultimately, writing readable code means I’ve spent less time explaining that code to colleagues.

After I first began working, I quickly realised that non-technical skills were also critical. You not only have to get results but additionally explain them and your process. I had to supply emails, presentations or technical documents each day. There was no getting away from writing!

…traditionally, different people follow different paths of their careers―some are more technical, others are more creative and communicative. A knowledge scientist has to have each.

―Monica Rogati

Writing coding tutorials is great practice for this. The more I wrote the higher I used to be at communicating at work. Complex evaluation became easier to elucidate and I needed to make clear my work less. I quickly saw the tangible advantages. Yet, this was just the beginning.

Using tutorials as a place to begin to your writing

In comparison with other articles, coding tutorials are easy to write down. There are not any deep thoughts or nuanced arguments. You only explain the code. This implies they is usually a strategy to get into tougher writing.

Writing is something you should practise to get good at. Tutorials helped me take my first steps. I began to experiment by adding catchy stories to the instructions and conclusions. Stumbling through these helped me to maneuver into several types of articles.

Taking more confident strides, I moved onto pieces based on my experience as an information scientist. These were articles based on more abstract concepts, my personal experience and feelings. I discovered these far harder to write down than any coding tutorial. Yet, I’d not be at this point if not for those first tutorials.

Looking back, there have been many advantages from writing coding tutorials. I’ve improved my technical knowledge and learned to write down readable code. Writing tutorials has also brought me to the purpose where I feel confident to write down about nearly anything. I haven’t even mentioned the advantages for my fame and the financial compensation.

So, when you are fascinated about writing, coding tutorials are a terrific strategy to start. If you happen to are scuffling with ideas, you could find this text useful:

LEAVE A REPLY

Please enter your comment!
Please enter your name here