Learn coding in Python, Go and Rust from Serdar Yegulalp, software dev specialist and senior writer at InfoWorld.
Electron lets you build desktop web-UI apps, but requires embedding an entire browser. Electrobun lets you do the same, but by way of the Bun runtime and without embedding a browser. It also allows you to use Typescript, natively, as your frontend and backend languages. It also includes built-in tools for making apps self-updating via incremental patches. Watch how a simple hello-world app can be built in minutes.
Python has many powerful applications as a "meta-language" or a code generation system. The newly unveiled Copapy library uses Python as a system for generating and running assembly language on the fly. It was originally intended to generate code for real-time embedded systems, but it's got potential far beyond that, as you'll see in this video. It can be used to generate high-performance numerical code, with a much smaller library footprint than similar projects. For more about Python's new JIT, which employs techniques also used in Copapy: /article/4110565/get-started-with-pythons-new-native-jit.html For more about Numba, another library for JIT-compiling numerical code for performance: /article/2266749/speed-up-your-python-with-numba.html
With a powerful enough PC, you don't need a cloud-hosted service to work with LLMs — you can download and run them locally on your own hardware. The hard part is standing up the infrastructure manually, which can be complicated. LM Studio makes running LLMs locally as easy as running any other app, and provides a curated catalog of models to download and get started with right away.
Love PostgreSQL as a database, but hate having to provision it for your Python programs? The pgserver library spins up a no-maintenance, self-contained instance of PostgreSQL inside a Python virtual environment, letting you use PostgreSQL as a data layer without requiring any manual database setup.
Creating images or video with generative AI by writing Python (or another language) has one big drawback: the process itself isn't very visual. ComfyUI provides an interactive, node-based workflow tool to let you create generative AI workflows where you can see the fruits of your labor in real time, and get much faster feedback as you fine-tune the results. You can also export the resulting workflow to a Python script with additional tooling.
Want to work with SQLite databases via the same kind of workbench tools available for MySQL/MariaDB and PostgreSQL? These three projects — a desktop application, a web-based app, and a Visual Studio Code extension — give you interactive GUI environments for SQLite databases.
You might be familiar with how Python and C can work together, by way of projects like Cython. The new PythoC project has a unique twist on working with both languages: it lets you write type-decorated Python that can generate entire standalone C programs, not just importable Python libraries written in C. This video shows a few basic PythoC functions, from generating a whole program to using some of PythoC's typing features to provide better memory management than C alone could.
Zed, a new code editor and IDE, is currently in its early stages but already turning heads in the software development world. Unlike Visual Studio Code, it's platform-native, written in Rust for maximum performance and efficiency. This video shows Zed's basic functionality, including its rendering speed, built-in LLM features, and plugin ecosystem. 📍 Featuring: Dev with Serdar Host Serdar Yegulalp: https://www.linkedin.com/in/serdar-yegulalp-136a483/ /profile/serdar-yegulalp/ 👇 Got questions or suggestions? Drop a comment below! 👍 Like, 💬 Comment, 🔁 Share, and 🔔 Subscribe for more Dev with Serdar! Follow InfoWorld for the latest on software development, cloud computing, data analytics, and machine learning tools and technologies!
For all the love Python gets for being simple and uncluttered, it's not the only language around with those attributes. Kotlin, the language developed for the JVM by Jetbrains, has a similarly clean and straightforward design. In this video we lay a few simple Python and Kotlin programs side-by-side to see how the two languages stack up, and what Python users can expect if they want to pick up Kotlin.
The first alpha release of Python 3.15 showcases a great new feature: the statistical sampling profiler. With it, you can gain insight into where a Python program is spending most of its time — but unlike the existing profile and cProfile modules, you don't need to add instrumentation to your code, and the profiling process has virtually no impact on your program's performance.
Ever have a locally developed package you want to share across multiple projects, but without the hassle of reinstalling? You can do that with editable installs, as described here (/article/4011198/how-to-use-editable-installs-for-python-packages.html). But what if you want to share such a project automatically across every other project by default? This video shows you how to use editable installs, plus a subtle feature of virtual environments, to make projects installed in an underlying Python installation available universally.
Async in Python can be opaque — it's hard to tell at any given time what tasks are running, or what the task chains look like, at least not without lots of debugging code. Python 3.14 offers a new feature that lets you hook into a running Python process and see the live state of async tasks, without any additional libraries. This video demonstrates how you can dump the state of the program's async task queue to the console, or to a file, in both a simple list and a more detailed tree view.
Why, many Python devs ask, is it so hard to take a Python app and make it into a redistributable click-to-run package? The answer lies in features that are baked deep into Python's design as a language, and which make it challenging to bundle Python applications as standalone items. This video explores why this remains such a complex problem, and why the solutions and workarounds for it can only do so much.
In only a couple of years, generative AI has carved out a big niche for itself in the developer world, from tools that provide highly specific help to systems that generate whole codebases from scratch. But what's all this doing to us? What's it costing us, and where is it really helping? This video looks at three of the big impacts generative AI has had in the development world, and what to make of them.
A new Rust-powered tool, PyCrucible, lets you take Python apps and packages and turn them into click-to-run executables — without needing Python installed on the target system, and without needing the Rust compiler either. See how this elegant (if still minimal) tool can deploy a Python program with only a few steps on the developer's part.
Among the powerful new features in Python 3.14 is a new interface for attaching a live debugger to a running Python program. You can inspect the state of a Python app, make changes, single-step through it — all without having to modify the source code ahead of time to work with a debugger. This video shows a simple example of how it can be used, either with Python's own pdb debugging module, or with code you write for your own custom debugging scenarios.
The PyDoll library for Python automates actions in Chrome browsers and their cousins (like Microsoft Edge) without plugins, by using Chrome's own native automation APIs. See in this video how PyDoll's high-level syntax works, and how it can be used for testing web apps with either synchronous or async behaviors.
Rust projects can have notoriously long compile times. One way to speed up compilation is to split a project into multiple crates in a single "workspace", where each crate can be recompiled independently of the others if they're changed. This video shows how to do that with a simple example project — and how using a workspaced Rust project can also make it easier to manage overall.
Encryption is one of the hardest things to do well in computing, if only because there are so many ways to get it wrong. This video explores some common pitfalls with using encryption in software development, and how to avoid them. (First hint: Don't ever make your own encryption algorithm!)
When does it make sense to build a desktop app with native or semi-native UI components (such as GTK or QT), or to go the web-UI route and use toolkits like Electron? /article/3547072/electron-vs-tauri-which-cross-platform-framework-is-for-you.html /article/2240075/easy-cross-platform-app-dev-with-githubs-electron.html