Cheuk Ting Ho
Developer Advocate @Anaconda
Actions
Before working in Developer Relations, Cheuk has been a Data Scientist in various companies which demands high numerical and programmatical skills, especially in Python. To follow her passion for the tech community, Cheuk is now the Developer Advocate at Anaconda. Cheuk also contributes to multiple Open Source libraries like Hypothesis and Pandas.
Besides her work, Cheuk enjoys talking about Python on personal streaming platforms and podcasts. Cheuk has also been a speaker at Universities and various conferences. Besides speaking at conferences, Cheuk also organises events for developers. Conferences that Cheuk has organized include EuroPython (which she is a board member), PyData Global and Pyjamas Conf. Believing in Tech Diversity and Inclusion, Cheuk constantly organizes workshops and mentored sprints for minority groups. In 2021, Cheuk has become a Python Software Foundation fellow.
Links
HTMX vs WASM - more backend or more frontend?
Mozilla has been promoting the use of WASM for years, they had the Iodide project which give birth to the popular Pyodide project. On the other hand, HTMX is gaining attraction last year and is favoured by some Django devs.
First we would explore the history of WASM and the Iodide project, what they enable and the closing of the Iodide project. Then we will talk about the rise of the Pyodide project and what this project enables - including another popular framework - PyScript. There will be some quick code demo of both Pyodide and PyScript.
Then, we will switch our attention to HTMX, what's the idea behind it and how it can be used to access AJAX, CSS Transitions, WebSockets and Server-Sent Events directly in HTML. There will also be some code demos of how to use HTMX, especially using it together with Django.
Last, there will be a conclusion, do we want more backend or more frontend? And most importantly, will web developers ever need to write JavaScript anymore?
The shadows that follow the AI generative models
Generative AI models are a buzz in recent years, from stable diffusion to ChatGPT our social media threads are flooded with people trying them out. However, following these models are issues that we have to be aware of. Including biases, plagiarism and false information.
In this talk, we will go through the most popular AI generative models recently, just so we can be on the same page. Then for each of them, we will explore some issues that arise with those models - including biases within the model that could possibly further reinforce stereotypes, copyright issues for articles or images that are generated with the models, the potential spreading of false information etc.
We cannot provide definite solutions to those problems but we will conclude the talk with some efforts to potentially solve the problem. Hopefully, by spreading awareness we can use these powerful models in an ethical way and get the most benefit from them while staying away from the potential harm.
What’s wrong with Hacktoberfest
In this talk, we will briefly introduce Hactoberfest, though not much introduction is needed as it is a well-known event. We will go through some fun facts and the history of Hacktoberfest fest and how it goes from 700 participants to more than 100,000. Then, we will go from why it is good for the open source community and from both the perspective of the contributors and the maintainers.
Then, we will have a switch of tones and looks at the fact that what happened in recent years that problems starts to appear. There are massive numbers of contributions and some of them is not meeting the need of the projects. To put it simply, there are a large number of "low-quality PRs" - e.g. meaning less fixing of wordings, formatting etc. Then we are going to explore various solutions, those that the organisers used in the past and the ones that I would like to suggest.
This talk is for anyone that cares about open-source contributions and would like to have a healthier community.
Don't just test, my friend, test better
We all know that we need to write tests, some of you may even practice test-driven development. Pytest provides lots of tools for you to write better tests, however, not all of them we are familiar with. Let's revisit them and see how they can be used to write better tests.
In this talk, we will visit some valuable tools in Pytest, for example, parameterize, fixture and xfail. All of them provided what problem these tool is trying to solve, an example use case and an example code. The talk will be conducted in a storytelling kind of way, with an example project and writing a test suit to test different features in the project. The goal of this talk is to give beginner code a head start in improving their ability to write meaningful and complex tests.
This talk is for beginner programmers and data scientists who can write Python code and know the basics of testing but have yet to get their hands dirty in writing complex tests that, for example, involve an external application, which will require extra tools from Pytest to achieve that.
## Outline
- Introduction and showing an example project (5 mins)
- Using parameterize - what is the problem and how it solve it (5 mins)
- Using fixture - what is a fixture and how can it be used - with example (10 mins)
- Skipping and marking xfail for tests - why and how to do so (5 mins)
- Conclusion (5 mins)
Untangle Python Spaghetti - Deep dive into environments and dependencies management
After learning doing in Python, we started multiple Python or Data Science projects. Dependency management becomes a skill that we need to avoid requirement conflicts amount projects. In this talk, we will learn how dependencies management tools work and how to choose the right one to use.
In this talk, we will use venv, the environment managing tool that come with CPython, and conda, the tool that is popular among data science partitioners to decipher how environment and dependency management works. First, we will go through some basic knowledge of how Python "sees" your package and know where to import them when needed. Then, we will make the audience aware that, to avoid the requirement conflict amount different projects, we need a new set of environments for each project.
Then, we will see how tools like venv and conda can create a new set of environments. We will cover both the practical aspect - how to use the tools and which one to use, and the theoretical aspect - the inner working of the tools and why they are different. This will make the audience get familiar with some tools that are at their disposal and inspire them to start using them for their work.
This talk is for beginner Pythonistas or data scientists who started to use Python professionally and those who are curious to know how the environment and dependency management tools work.
## Outline
- Introduction (5 mins)
- How Python sees your packages (5 mins)
- Why we need separate environments (1 mins)
- How venv create new environment (2 mins)
- How conda create new environment (2 mins)
- Comparing venv and conda - which one to use (5 mins)
- Conclusion (5 mins)
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top