💻Tech News
Your daily digest of developer and programming news
Recent Stories (30)
| Title | Source | When |
|---|---|---|
| Announcing TypeScript 5.8 Beta Today we are excited to announce the availability of TypeScript 5.8 Beta. To get started using the beta, you can get it through npm with the following command: npm install -D typescript@beta Let’s take a look at what’s new in TypeScript 5.8! Checked Returns for Conditional and Indexed Access Types Consider an API that presents […] The post Announcing TypeScript 5.8 Beta appeared first on TypeScript. | TypeScript Blog | about 1 year ago |
| Allowlisting some Bash commands is often the same as allowlisting all Comments | Hacker News | 5 days ago |
| Show HN: A MitM proxy to see what your LLM tools are sending Comments | Hacker News | 5 days ago |
| Show HN: I Built a Sandbox for Agents Comments | Hacker News | 5 days ago |
| Show HN: I made AI earphones remember everything (auto-sync to Obsidian) Comments | Hacker News | 12 days ago |
| A 10x Faster TypeScript Today I’m excited to announce the next steps we’re taking to radically improve TypeScript performance. The core value proposition of TypeScript is an excellent developer experience. As your codebase grows, so does the value of TypeScript itself, but in many cases TypeScript has not been able to scale up to the very largest codebases. Developers […] The post A 10x Faster TypeScript appeared first on TypeScript. | TypeScript Blog | 11 months ago |
| Announcing TypeScript 5.9 Beta Today we are excited to announce the availability of TypeScript 5.9 Beta. To get started using the beta, you can get it through npm with the following command: npm install -D typescript@beta Let’s take a look at what’s new in TypeScript 5.9! Minimal and Updated tsc --init Support for import defer Support for --module node20 […] The post Announcing TypeScript 5.9 Beta appeared first on TypeScript. | TypeScript Blog | 7 months ago |
| Progress on TypeScript 7 – December 2025 Earlier this year, the TypeScript team announced that we’ve been porting the compiler and language service to native code to take advantage of better raw performance, memory usage, and parallelism. This effort (codenamed “Project Corsa”, and soon “TypeScript 7.0”) has been a significant undertaking, but we’ve made big strides in the past few months. We’re […] The post Progress on TypeScript 7 – December 2025 appeared first on TypeScript. | TypeScript Blog | 2 months ago |
| Announcing TypeScript Native Previews This past March we unveiled our efforts to port the TypeScript compiler and toolset to native code. This port has achieved a 10x speed-up on most projects – not just by using a natively-compiled language (Go), but also through using shared memory parallelism and concurrency where we can benefit. Since then, we have made several […] The post Announcing TypeScript Native Previews appeared first on TypeScript. | TypeScript Blog | 9 months ago |
| Announcing TypeScript 5.8 RC Today we are excited to announce the Release Candidate (RC) of TypeScript 5.8! To get started using the Release Candidate, you can get it through npm with the following command: npm install -D typescript@rc Let’s take a look at what’s new in TypeScript 5.8! What’s New Since the Beta? Since our beta release, we have […] The post Announcing TypeScript 5.8 RC appeared first on TypeScript. | TypeScript Blog | 12 months ago |
| Show HN: A desktop app that blocks work when you bite your nails Comments | Hacker News | 8 days ago |
| I added a Bluesky comment section to my blog Comments | Hacker News | 9 days ago |
| 3D-Printed Mathematical Lampshades Comments | Hacker News | 9 days ago |
| Porting 100k lines from TypeScript to Rust using Claude Code in a month Comments | Hacker News | 7 days ago |
| You can just port things to Cloudflare Workers Comments | Hacker News | 8 days ago |
| Announcing TypeScript 5.8 Today we’re excited to announce the release of TypeScript 5.8! If you’re not familiar with TypeScript, it’s a language that builds on top of JavaScript by adding syntax for types. Writing types in our code allows us to explain intent and have other tools check our code to catch mistakes like typos, issues with null […] The post Announcing TypeScript 5.8 appeared first on TypeScript. | TypeScript Blog | 11 months ago |
| Announcing TypeScript 5.9 RC Today we are excited to announce the Release Candidate (RC) of TypeScript 5.9! To get started using the Release Candidate, you can get it through npm with the following command: npm install -D typescript@rc Let’s take a look at what’s new in TypeScript 5.9! Minimal and Updated tsc --init Support for import defer Support for […] The post Announcing TypeScript 5.9 RC appeared first on TypeScript. | TypeScript Blog | 6 months ago |
| Announcing TypeScript 5.7 Today we excited to announce the availability of TypeScript 5.7! If you’re not familiar with TypeScript, it’s a language that builds on JavaScript by adding syntax for type declarations and annotations. This syntax can be used by the TypeScript compiler to type-check our code, and it can also be erased to emit clean, idiomatic JavaScript […] The post Announcing TypeScript 5.7 appeared first on TypeScript. | TypeScript Blog | about 1 year ago |
| Announcing TypeScript 5.9 Today we are excited to announce the release of TypeScript 5.9! If you’re not familiar with TypeScript, it’s a language that builds on JavaScript by adding syntax for types. With types, TypeScript makes it possible to check your code to avoid bugs ahead of time. The TypeScript type-checker does all this, and is also the […] The post Announcing TypeScript 5.9 appeared first on TypeScript. | TypeScript Blog | 6 months ago |
| The Terminal: First Steps and Useful Commands for Python Developers The terminal provides Python developers with direct control over their operating system through text commands. Instead of clicking through menus, you type commands to navigate folders, run scripts, install packages, and manage version control. This command-line approach is faster and more flexible than graphical interfaces for many development tasks. By the end of this tutorial, you’ll understand that: Terminal commands like cd, ls, and mkdir let you navigate and organize your file system efficiently Virtual environments isolate project dependencies, keeping your Python installations clean and manageable pip installs, updates, and removes Python packages directly from the command line Git commands track changes to your code and create snapshots called commits The command prompt displays your current directory and indicates when the terminal is ready for input This tutorial walks through the fundamentals of terminal usage on Windows, Linux, and macOS. The examples cover file system navigation, creating files and folders, managing packages with pip, and tracking code changes with Git. Free Download: Click here to get a free cheat sheet of useful commands to get you started working with the terminal. Install and Open the Terminal Back in the day, the term terminal referred to some clunky hardware that you used to enter data into a computer. Nowadays, people are usually talking about a terminal emulator when they say terminal, and they mean some kind of terminal software that you can find on most modern computers. Note: There are two other terms that you might hear now and then in combination with the terminal: A shell is the program that you interact with when running commands in a terminal. A command-line interface (CLI) is a program designed to run in a shell inside the terminal. In other words, the shell provides the commands that you use in a command-line interface, and the terminal is the application that you run to access the shell. If you’re using a Linux or macOS machine, then the terminal is already built in. You can start using it right away. On Windows, you also have access to command-line applications like the Command Prompt. However, for this tutorial and terminal work in general, you should use the Windows terminal application instead. Read on to learn how to install and open the terminal on Windows and how to find the terminal on Linux and macOS. Windows The Windows terminal is a modern and feature-rich application that gives you access to the command line, multiple shells, and advanced customization options. If you have Windows 11 or above, chances are that the Windows terminal is already present on your machine. Otherwise, you can download the application from the Microsoft Store or from the official GitHub repository. Before continuing with this tutorial, you need to get the terminal working on your Windows computer. You can follow the Your Python Coding Environment on Windows: Setup Guide to learn how to install the Windows terminal. After you install the Windows terminal, you can find it in the Start menu under Terminal. When you start the application, you should see a window that looks like this: It can be handy to create a desktop shortcut for the terminal or pin the application to your task bar for easier access. Linux You can find the terminal application in the application menu of your Linux distribution. Alternatively, you can press Ctrl+Alt+T on your keyboard or use the application launcher and search for the word Terminal. After opening the terminal, you should see a window similar to the screenshot below: How you open the terminal may also depend on which Linux distribution you’re using. Each one has a different way of doing it. If you have trouble opening the terminal on Linux, then the Real Python community will help you out in the comments below. macOS A common way to open the terminal application on macOS is by opening the Spotlight Search and searching for Terminal. You can also find the terminal app in the application folder inside Finder. When you open the terminal, you see a window that looks similar to the image below: Read the full article at https://realpython.com/terminal-commands/ » [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | about 6 hours ago |
| The Real Python Podcast – Episode #282: Testing Python Code for Scalability & What's New in pandas 3.0 How do you create automated tests to check your code for degraded performance as data sizes increase? What are the new features in pandas 3.0? Christopher Trudeau is back on the show this week with another batch of PyCoder's Weekly articles and projects. [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 3 days ago |
| How Long Does It Take to Learn Python? Have you read blog posts that claim you can learn Python in days and quickly secure a high-paying developer job? That’s an unlikely scenario and doesn’t help you prepare for a steady learning marathon. So, how long does it really take to learn Python, and is it worth your time investment? By the end of this guide, you’ll understand that: Most beginners can learn core Python fundamentals in about 2 to 6 months with consistent practice. You can write a tiny script in days or weeks, but real confidence comes from projects and feedback. Becoming job-ready often takes 6 to 12 months, depending on your background and target role. Mastery takes years because the ecosystem and specializations keep growing. The short answer for how long it takes to learn Python depends on your goals, time budget, and the level you’re aiming for. Get the PDF Guide: Click here to download a free PDF guide that breaks down how long it takes to learn Python and what factors affect your timeline. Take the Quiz: Test your knowledge with our interactive “Python Skill Test” quiz. You’ll receive a score upon completion to help you track your learning progress: Interactive Quiz Python Skill Test Test your Python knowledge in a skills quiz with basic to advanced questions. Are you a Novice, Intermediate, Proficient, or Expert? How Long Does It Take to Learn Python Basics? Python is beginner-friendly, and you can start writing simple programs in just a few days. But reaching the basics stage still takes consistent practice because you’re learning both the language itself and how to think like a programmer. The following timeline shows how long it typically takes to learn Python basics based on how much time you can practice each week: Weekly practice time Typical timeline for basics What that feels like 2–3 hours/week 8–12 months Slow but steady progress 5–10 hours/week 3–6 months Realistic pace for busy adults 15–20 hours/week ~2 months Consistent focus and fast feedback 40+ hours/week ~1 month Full-time immersion These ranges assume about five study days per week. If you add a sixth day, you’ll likely land toward the faster end of each range. You’ll get better results if you use this table as a planning guide. Don’t think of it as rigid deadlines—your learning pace depends on many factors. For example, if you already know another programming language, then you can usually move faster. If you’re brand-new to coding, then expect to be at the slower end of each range. As a general guideline, many beginners reach the basics in about 2 to 6 months with steady practice. Note: If you’re ready to fast-track your learning with an expert-guided small cohort course that gives you live guidance and accountability, then check out Real Python’s live courses! With a focused schedule of around four hours per day, five days per week, you can often reach the basics stage in roughly 6 to 10 weeks, assuming you’re writing and debugging code most sessions. By then, you should be able to finish several small projects on your own. When you read online that someone learned Python quickly, they’re probably talking about this basics stage. And indeed, with the right mix of dedication, circumstances, and practice, learning Python basics can happen pretty fast! Before you go ahead and lock in a timeline, take a moment to clarify for yourself why you want to learn Python. Understanding your motivation for learning Python will help along the way. What Does "Learning Python" Even Mean?Show/Hide Learning Python means more than just learning the Python programming language. You need to know more than just the specifics of a single programming language to do something useful with your programming skills. At the same time, you don’t need to understand every single aspect of Python to be productive. Learning Python is about learning how to accomplish practical tasks with Python programming. It’s about having a skill set that you can use to build projects for yourself or an employer. As your next step, write down your personal goal for learning Python. Always keep that goal in mind throughout your learning journey. Your goal shapes what you need to learn and how quickly you’ll progress. What’s a Practical 30-Day Learning Plan for Complete Beginners? When you’re clear about your why, you can start drafting your personal Python learning roadmap. If you’re starting from zero and can spend about 5 to 10 hours per week, the following plan keeps you moving without becoming overwhelming: Week 1: Install and set up Python, learn about basic syntax, variables, and conditional statements Week 2: Learn about basic data types, for and while loops, and functions Week 3: Work with lists and dictionaries, file I/O, and debugging basics Week 4: Build a small project, add simple tests, and polish it through refactoring Aim to finish at least one small project by the end of the month. The project matters more than completing every tutorial or task on your checklist. Read the full article at https://realpython.com/how-long-does-it-take-to-learn-python/ » [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 5 days ago |
| Create Callable Instances With Python's .__call__() In Python, a callable is any object that you can call using a pair of parentheses and, optionally, a series of arguments. Functions, classes, and methods are all common examples of callables in Python. Besides these, you can also create custom classes that produce callable instances. To do this, you can add the .__call__() special method to your class. Instances of a class with a .__call__() method behave like functions, providing a flexible and handy way to add functionality to your objects. Understanding how to create and use callable instances is a valuable skill for any Python developer. In this video course, you’ll: Understand the concept of callable objects in Python Create callable instances by adding a .__call__() method to your classes Compare .__init__() and .__call__() and understand their distinct roles Build practical examples that use callable instances to solve real-world problems [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 6 days ago |
| The Real Python Podcast – Episode #281: Continuing to Improve the Learning Experience at Real Python If you haven't visited the Real Python website lately, then it's time to check out a great batch of updates on realpython.com! Dan Bader returns to the show this week to discuss improvements to the site and more ways to learn Python. [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 10 days ago |
| How to Integrate Local LLMs With Ollama and Python Integrating local large language models (LLMs) into your Python projects using Ollama is a great strategy for improving privacy, reducing costs, and building offline-capable AI-powered apps. Ollama is an open-source platform that makes it straightforward to run modern LLMs locally on your machine. Once you’ve set up Ollama and pulled the models you want to use, you can connect to them from Python using the ollama library. Here’s a quick demo: In this tutorial, you’ll integrate local LLMs into your Python projects using the Ollama platform and its Python SDK. You’ll first set up Ollama and pull a couple of LLMs. Then, you’ll learn how to use chat, text generation, and tool calling from your Python code. These skills will enable you to build AI-powered apps that run locally, improving privacy and cost efficiency. Get Your Code: Click here to download the free sample code that you’ll use to integrate LLMs With Ollama and Python. Take the Quiz: Test your knowledge with our interactive “How to Integrate Local LLMs With Ollama and Python” quiz. You’ll receive a score upon completion to help you track your learning progress: Interactive Quiz How to Integrate Local LLMs With Ollama and Python Check your understanding of using Ollama with Python to run local LLMs, generate text, chat, and call tools for private, offline apps. Prerequisites To work through this tutorial, you’ll need the following resources and setup: Ollama installed and running: You’ll need Ollama to use local LLMs. You’ll get to install it and set it up in the next section. Python 3.8 or higher: You’ll be using Ollama’s Python software development kit (SDK), which requires Python 3.8 or higher. If you haven’t already, install Python on your system to fulfill this requirement. Models to use: You’ll use llama3.2:latest and codellama:latest in this tutorial. You’ll download them in the next section. Capable hardware: You need relatively powerful hardware to run Ollama’s models locally, as they may require considerable resources, including memory, disk space, and CPU power. You may not need a GPU for this tutorial, but local models will run much faster if you have one. With these prerequisites in place, you’re ready to connect local models to your Python code using Ollama. Step 1: Set Up Ollama, Models, and the Python SDK Before you can talk to a local model from Python, you need Ollama running and at least one model downloaded. In this step, you’ll install Ollama, start its background service, and pull the models you’ll use throughout the tutorial. Get Ollama Running To get started, navigate to Ollama’s download page and grab the installer for your current operating system. You’ll find installers for Windows 10 or newer and macOS 14 Sonoma or newer. Run the appropriate installer and follow the on-screen instructions. For Linux users, the installation process differs slightly, as you’ll learn soon. On Windows, Ollama will run in the background after installation, and the CLI will be available for you. If this doesn’t happen automatically for you, then go to the Start menu, search for Ollama, and run the app. On macOS, the app manages the CLI and setup details, so you just need to launch Ollama.app. If you’re on Linux, install Ollama with the following command: Shell $ curl -fsSL https://ollama.com/install.sh | sh Once the process is complete, you can verify the installation by running: Shell $ ollama -v If this command works, then the installation was successful. Next, start Ollama’s service by running the command below: Shell $ ollama serve That’s it! You’re now ready to start using Ollama on your local machine. In some Linux distributions, such as Ubuntu, this final command may not be necessary, as Ollama may start automatically when the installation is complete. In that case, running the command above will result in an error. Read the full article at https://realpython.com/ollama-python/ » [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 12 days ago |
| Quiz: How to Integrate Local LLMs With Ollama and Python In this quiz, you’ll test your understanding of How to Integrate Local LLMs With Ollama and Python. By working through this quiz, you’ll revisit how to set up Ollama, pull models, and use chat, text generation, and tool calling from Python. You’ll connect to local models through the ollama Python library and practice sending prompts and handling responses. You’ll also see how local inference can improve privacy and cost efficiency while keeping your apps offline-capable. [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 12 days ago |
| uv vs pip: Python Packaging and Dependency Management When it comes to Python package managers, the choice often comes down to uv vs pip. You may choose pip for out-of-the-box availability, broad compatibility, and reliable ecosystem support. In contrast, uv is worth considering if you prioritize fast installs, reproducible environments, and clean uninstall behavior, or if you want to streamline workflows for new projects. In this video course, you’ll compare both tools. To keep this comparison meaningful, you’ll focus on the overlapping features, primarily package installation and dependency management. [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 13 days ago |
| How to Integrate ChatGPT's API With Python Projects Python’s openai library provides the tools you need to integrate the ChatGPT API into your Python applications. With it, you can send text prompts to the API and receive AI-generated responses. You can also guide the AI’s behavior with developer role messages and handle both simple text generation and more complex code creation tasks. Here’s an example: Python Script Output from a ChatGPT API Call Using openai After reading this tutorial, you’ll understand how examples like this work under the hood. You’ll learn the fundamentals of using the ChatGPT API from Python and have code examples you can adapt for your own projects. Get Your Code: Click here to download the free sample code that you’ll use to integrate ChatGPT’s API with Python projects. Take the Quiz: Test your knowledge with our interactive “How to Integrate ChatGPT's API With Python Projects” quiz. You’ll receive a score upon completion to help you track your learning progress: Interactive Quiz How to Integrate ChatGPT's API With Python Projects Test your knowledge of the ChatGPT API in Python. Practice sending prompts with openai and handling text and code responses in this quick quiz. Prerequisites To follow along with this tutorial, you’ll need the following: Python Knowledge: You should be familiar with Python concepts like functions, executing Python scripts, and Python virtual environments. Python Installation: You’ll need Python installed on your system. If you haven’t already, install Python on your machine. OpenAI Account: An OpenAI account with API access and available credits is required to use the ChatGPT API. You’ll obtain your API key from the OpenAI platform in Step 1. Don’t worry if you’re new to working with APIs. This tutorial will guide you through everything you need to know to get started with the ChatGPT API and implement AI features in your applications. Step 1: Obtain Your API Key and Install the OpenAI Package Before you can start making calls to the ChatGPT Python API, you need to obtain an API key and install the OpenAI Python library. You’ll start by getting your API key from the OpenAI platform, then install the required package and verify that everything works. Obtain Your API Key You can obtain an API key from the OpenAI platform by following these steps: Navigate to platform.openai.com and sign in to your account or create a new one if you don’t have an account yet. Click on the settings icon in the top-right corner and select API keys from the left-hand menu. Click the Create new secret key button to generate a new API key. In the dialog that appears, give your key a descriptive name like “Python Tutorial Key” to help you identify it later. For the Project field, select your preferred project. Under Permissions, select All to give your key full access to the API for development purposes. Click Create secret key to generate your API key. Copy the generated key immediately, as you won’t be able to see it again after closing the dialog. Now that you have your API key, you need to store it securely. Warning: Never hard-code your API key directly in your Python scripts or commit it to version control. Always use environment variables or secure key management services to keep your credentials safe. The OpenAI Python library automatically looks for an environment variable named OPENAI_API_KEY when creating a client connection. By setting this variable in your terminal session, you’ll authenticate your API requests without exposing your key in your code. Set the OPENAI_API_KEY environment variable in your terminal session: Windows Linux + macOS Windows PowerShell PS> $env:OPENAI_API_KEY="your-api-key-here" Shell $ export OPENAI_API_KEY="your-api-key-here" Replace your-api-key-here with the actual API key you copied from the OpenAI platform. Install the OpenAI Package With your API key configured, you can now install the OpenAI Python library. The openai package is available on the Python Package Index (PyPI), and you can install it with pip. Open a terminal or command prompt, create a new virtual environment, and then install the library: Windows Linux + macOS Read the full article at https://realpython.com/chatgpt-api-python/ » [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 14 days ago |
| Quiz: How to Integrate ChatGPT's API With Python Projects In this quiz, you’ll test your understanding of How to Integrate ChatGPT’s API With Python Projects. By working through this quiz, you’ll revisit how to send prompts with the openai library, guide behavior with developer role messages, and handle text and code outputs. You’ll also see how to integrate AI responses into your Python scripts for practical tasks. [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 14 days ago |
| The Real Python Podcast – Episode #280: Considering Fast and Slow in Python Programming How often have you heard about the speed of Python? What's actually being measured, where are the bottlenecks---development time or run time---and which matters more for productivity? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder's Weekly articles and projects. [ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ] | Real Python | 17 days ago |