Serdar Yegulalp
Senior Writer
Serdar Yegulalp is a senior writer at InfoWorld, covering software development and operations tools, machine learning, containerization, and reviews of products in those categories. Before joining InfoWorld, Serdar wrote for the original Windows Magazine, InformationWeek, the briefly resurrected Byte, and a slew of other publications. When he's not covering IT, he's writing SF and fantasy published under his own personal imprint, Infinimata Press.
Python virtualenv and venv dos and don’ts
Python virtual environments shine for keeping projects and conflicting packages separate. Just keep these dos and don’ts in mind.
3 Python web frameworks for beautiful front ends
Want to generate interactive websites with HTML, CSS, and JavaScript while programming in nothing but Python? One of these frameworks could do the trick.
3 great Git alternatives: Fossil, Mercurial, and Subversion
Git isn't the only open source version control system around. Here's what you need to know about three of its biggest competitors.
A first look at the Mojo language
Mojo aims to be as easy to use as Python, but as powerful and fast as Rust. Here's a first look at Python's newest challenger.
The best new features and fixes in Python 3.12
Better error messages, support for Linux profiling tools, and many improvements to Python's type hinting have just landed. Let's take a look.
8 VS Code extensions you didn’t know you needed
These surprising Visual Studio Code extensions aren't just for writing and editing code—though they'll also help you do that.
5 newer data science tools you should be using with Python
Already using NumPy, Pandas, and scikit-learn? Here are five more powerful Python data science tools ready for a place in your toolkit.
How to manage Python projects with Poetry
With Poetry, Python finally has a graceful way to manage virtual environments and dependencies for development projects. Here’s how to get started.
Python 3.12: Faster, leaner, more future-proof
Improvements to the next (and future) versions of Python are set to speed it up, slim it down, and pave the way toward even better things.
Master Python's datetime type
Learn how to work with date and time values using Python's datetime library, and how to avoid some of the gotchas and pitfalls of the datetime datatype.
Python concurrency and parallelism explained
Learn how to use Python’s async functions, threads, and multiprocessing capabilities to juggle tasks and improve the responsiveness of your applications.
Regex: Processing patterns in text
Regular expressions are built into many programming languages and used to match, search, and transform patterns of text in your programs. Get started with Regex.
How to convert Python to JavaScript (and back again)
Love Python? JavaScript, not so much? Here are seven tools that turn Python to JavaScript for use in web applications.
Docker sunsets Free Team subscriptions, roiling open source projects
Docker users with a legacy Free Team organization subscription have been told they have one month to convert to a paid tier or risk losing access to their data.
4 Python type checkers to keep your code clean
Mypy, Pytype, Pyright, and Pyre can help you keep your type-hinted Python code bug-free. Let’s see what each of these useful tools has to offer.
Is it finally time to remove the Python GIL?
The global interpreter lock is both a key component of the Python runtime and a major obstacle to multithreading. These are the plans to get around it or get rid of it.
How to write Python extensions in Rust with PyO3
Py03 lets you combine Rust's speed and memory safety with Python's ease of use. Here's how to write Rust extensions for Python that work just like regular Python modules.
How to use Python dataclasses
Python dataclasses can make your Python classes less verbose and more powerful at the same time. Here's an introduction to using dataclasses in your Python programs.
How to install Python the smart way
Learn how to get Python up and running on Windows, macOS, or Linux—and avoid the biggest pitfalls along the way.