Thursday, April 25, 2024
HomePythonPyDev of the Week: Thomas Fan

PyDev of the Week: Thomas Fan


This week we welcome Thomas Fan (@thomasjpfan) as our PyDev of the Week! Thomas is a core developer of the scikit-learn, a machine studying package deal for Python.

For those who’d wish to see what else Thomas is as much as you possibly can take a look at Thomas’s web site or his GitHub profile.

Let’s take a couple of moments to get to know Thomas higher!

Are you able to inform us a little bit about your self (hobbies, schooling, and so forth):

I’m a Employees Software program Engineer at Quansight Labs, which goals to maintain and develop community-driven PyData open-source tasks. My tutorial background consists of arithmetic and physics, the place I carried out Quantum Computing analysis. Exterior of software program, I take pleasure in strolling round NYC, swimming, and studying non-fiction books.

Why did you begin utilizing Python?

In graduate faculty, I turned serious about Python to help with my Quantum Computing analysis. Particularly, I began utilizing the Python library, QuTiP, to simulate the dynamics of quantum techniques.

What different programming languages are you aware and which is your favourite?

I’ve realized C, C++, Cython, JavaScript, Go, R, and Rust by the years. Every language has its strengths and weaknesses in expressiveness and its goal area. These days, I think about different programming languages as a gateway to speed up computation in Python. For instance, NumPy makes use of C and Fortran, PyTorch makes use of C++, Scikit-learn makes use of Cython, and Polars makes use of Rust. Python remains to be my favourite language, however Rust is an in depth second.

What tasks are you engaged on now?

At the moment, I’m engaged on bettering how scikit-learn works on heterogeneous information. We just lately launched v1.2, which permits scikit-learn transformers to return Pandas DataFrames. Moreover, I’m engaged on including extra machine-learning strategies for encoding categorical options and bettering the consumer expertise for tree-based fashions, resembling our Histogram-based Gradient Boosting Bushes.

Which Python libraries are your favourite (core or third get together)?

From the core library, my favourite modules are functools and itertools. My favourite third-party libraries are Polars for quick DataFrames and PyTorch for deep studying.

How did you get entangled with the scikit-learn undertaking?

In 2018, I used to be unhappy with how scikit-learn labored with Pandas, so I began contributing to bettering Pandas compatibility. Later that 12 months, I joined Andreas Mueller at Columbia College to work on scikit-learn and associated tasks. Just a few months into the place, I flew to Paris to fulfill with scikit-learn maintainers throughout a improvement dash. Just a few weeks after the event dash, I used to be nominated and voted in to be a maintainer.

What are among the most shocking stuff you’ve seen scikit-learn used for?

At a convention, I used to be shocked to study that an attendee used the SplineTransformer and Generalized Linear Fashions to assemble Generalized Additive Fashions for time collection evaluation. These options have been comparatively new then, so listening to about their fast adoption was shocking.

Is there anything you’d wish to say?

In 2016, whereas increasing my Python abilities, I discovered Mike’s Python 201 guide helpful for studying intermediate matters. Subsequently, I need to thank Mike for his unbelievable work in instructing and selling Python.

Thanks for doing the interview, Thomas!



RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments