Technology Tales

Notes drawn from experiences in consumer and enterprise technology

11:45, 5th February 2026

Python's built-in input function captures keyboard data from users by displaying a prompt message and pausing programme execution until the user types a response and presses Enter, returning the entered data as a string regardless of what was typed. The function accepts an optional prompt parameter that appears on-screen before input collection begins, making it possible to create interactive programmes that respond dynamically to user-provided information such as names, preferences or configuration settings.

Since input always returns strings, developers must explicitly convert responses to other types like integers or floats using conversion functions when numerical values are needed for calculations, wrapping these conversions in try-except blocks to handle ValueError exceptions that occur when users enter incompatible data types. Multiple entries can be collected by combining input with loops and data structures like lists or sets, allowing programmes to gather comma-separated values or repeatedly prompt users until sufficient responses are collected, with string methods like split and strip processing the raw input into usable formats.

For sensitive information such as passwords or API keys, the standard library's getpass module provides an alternative that prevents typed characters from appearing on-screen during entry, whilst third-party libraries like PyInputPlus extend input functionality by automatically validating responses against specified constraints like minimum and maximum values, re-prompting users when invalid data are entered without requiring manual error-handling code.

18:14, 23rd January 2026

Markdown and Visual Studio Code

Visual Studio Code offers a range of features to support working with Markdown files, including an Outline view that displays a document's header hierarchy, snippets for common elements like code blocks and images, and keyboard shortcuts for navigating directly to headers within a file or across an entire workspace. IntelliSense provides path completions for links and images, and files can be inserted via drag and drop or copy and paste, with VS Code able to automatically copy external images into the workspace. AI-powered alt text generation is available for image links through GitHub Copilot, while smart selection allows users to expand or shrink selections across block elements. Link validation can be enabled to catch broken local references, and the Rename Symbol function allows headers and links to be updated consistently throughout a project. A real-time preview panel supports synchronised scrolling between the editor and preview, renders mathematical formulae using KaTeX, and can be extended with custom stylesheets or third-party extensions. Security settings control what content the preview is permitted to load, and a Doc Writer profile template is available to help configure a productive Markdown editing environment from the outset.

17:19, 22nd January 2026

Letting AI agents generate and run code raises a basic safety problem, since executing untrusted code on live servers can expose secrets, waste resources or damage systems, so dedicated sandboxes have become an important way to isolate build, test and debugging work before producing changes for human review. Five platforms are outlined: Modal provides serverless CPU and GPU execution with short-lived container sandboxes managed in code, Blaxel offers agent oriented micro VMs that can pause at low cost and resume quickly, Daytona focuses on very fast creation of stateful isolated runtimes with options for stronger container isolation, E2B supplies controlled interpreter style environments for Python and JavaScript via SDKs with an open-source base and Together Code Sandbox delivers configurable micro VM environments with snapshot creation, rapid start up and scaling aimed at larger AI coding products. Choice depends on whether priorities are Python-centric pipelines, long-lived agent workspaces, interpreter style execution or tight coupling to an existing model and infrastructure stack.

10:33, 22nd January 2026

While modern AI tools can generate working Python code rapidly, the longer-term challenge is keeping that code readable, consistent and easy to maintain, since AI tends to optimise for immediate prompt fulfilment rather than sustainable design. A practical approach is to avoid having AI invent the architecture from scratch by first setting up the project structure yourself, implementing a few reference features and establishing clear patterns for dependencies, error handling and data validation. Maintainability can be improved by making strict type hints mandatory and enforcing them with tooling such as mypy, using contract-driven libraries such as Pydantic, FastAPI and typed SQLAlchemy models, and providing a short project guidelines file that spells out required structure, preferred libraries, forbidden patterns and testing expectations. Prompts should point to existing examples, ask for a plan before code is written and require meaningful tests beyond the happy path, then the output should be checked systematically with automated linters, type checks and test runs before it is accepted.

19:15, 10th January 2026

Released on 8th January 2026, the December 2025 update of VSCode focuses on project maintenance while also delivering a broad set of changes across chat, the editor, source control, the terminal, debugging, testing and extension development. It introduces experimental Agent Skills and improves session management and navigation in chat, adjusts restart behaviour to open a fresh chat by default and expands terminal tool controls with clearer auto approval rules, session and workspace allow options and an option to keep tool run commands out of shell history. Accessibility is improved through livestreaming of chat output in the Accessible View, reduced noise from protocol server output and a new window title variable showing the active editor language, while editor and code editing updates include drag and drop profile import, copying breadcrumb paths, more robust symbol search and new snippet case transformations. Git features add configurable blame behaviour and a clearer commit message editor, an experimental worktrees view appears in the repositories explorer, the terminal receives a reworked IntelliSense default interaction plus major performance, rendering and VT sequence upgrades and developers get new Quick Pick API capabilities, experimental TypeScript first extension authoring and assorted fixes.

12:58, 8th January 2026

Plotly is an open-source data visualisation platform offering interactive charts and maps across a range of programming languages and frameworks, including Python, R, Julia, JavaScript, ggplot2, F# and MATLAB. Founded over a decade ago, the company has grown from its open-source roots into a trusted partner for Fortune 500 enterprises and millions of data teams worldwide.

Its product suite includes Plotly Studio, which uses AI-driven agentic analytics to transform uploaded datasets into interactive data applications within minutes, generating clean Python code without requiring users to write or debug any themselves. Plotly Cloud provides one-click deployment and secure collaborative sharing of these applications, while Dash Enterprise offers a self-hosted or managed platform designed for large organisations requiring advanced security, governance and scalability across thousands of users. The platform is designed to serve users of all skill levels, from marketing managers building simple dashboards to seasoned data scientists deploying production-grade analytical tools, all within a single unified ecosystem.

11:38, 16th December 2025

Security researchers have identified a campaign in which malicious Microsoft Visual Studio Code extensions, presented as a harmless dark theme and an AI coding assistant, were used to deliver information stealing malware aimed at developers. Although the lures differed, both extensions deployed the same payload, using a legitimate screenshot tool bundled with a malicious DLL so that the signed executable appeared trustworthy while loading the attacker’s code via DLL hijacking. The malware was reported to capture screenshots and exfiltrate sensitive data such as credentials, Wi-Fi passwords, clipboard contents and browser sessions, reflecting a wider pattern of attackers targeting developers and the software supply chain through widely used repositories and development platforms. The extensions were removed from the marketplace after discovery, with researchers assessing the operation as uneven in polish but effective in the techniques that matter.

11:36, 16th December 2025

A recent announcement by IBM and HashiCorp means future Terraform releases will end support for defining infrastructure using third-party programming languages such as Python or Ruby, leaving HashiCorp Configuration Language as the only supported option. This change shifts Terraform towards a narrower focus on its core language and reduces the burden of maintaining multiple language ecosystems, but it also forces teams that adopted Terraform for its language flexibility to plan migrations, retrain staff and manage the operational risk of changing established workflows. The change particularly affects the Cloud Development Kit for Terraform, with vendor support ending even if the project remains available under an open licence and may be sustained by the community. In response, organisations must weigh the effort of moving to HCL against considering other infrastructure as code tools that retain multi-language support, while recognising that any transition will take time and careful planning.

11:34, 16th December 2025

After the latest update to Visual Studio Code, daily users are likely to notice a stronger emphasis on AI agents, a preview of TypeScript 7 and the withdrawal of IntelliCode. The update introduces the loosely defined Agent HQ initiative and an Agent Sessions view for monitoring multiple background agents, although this view has been disabled by default and folded into Chat, creating confusion about what is new now and what is merely a longer-term direction. Alongside practical additions such as keeping agents running when Chat is closed, moving sessions between local and cloud environments and supporting custom subagents, the changes raise sharper security questions, including the risks of prompt injection and the presence of a YOLO setting that removes approval safeguards. TypeScript 7 is presented as a serious performance step forward through a Go rewrite of the compiler and language service, while the deprecation of the free, local IntelliCode completion feature pushes users towards GitHub Copilot with monthly free limits and paid subscriptions thereafter, leaving teams to weigh costs, workflow impact and security before enabling new capabilities.

13:47, 7th December 2025

Sublime Text 4 is a code editor available for Windows, Mac and Linux that has received a significant update introducing a range of new features. GPU rendering now delivers a smoother interface across all three platforms, supporting resolutions up to 8K with reduced power consumption. Native support has been added for Apple Silicon processors on Mac, along with Linux ARM64 builds for devices such as the Raspberry Pi.

A new Tab Multi-Select feature makes it easier to work with split views across the interface, while the auto-complete engine has been rewritten to offer smarter, context-aware suggestions drawn from existing project code. Built-in support for TypeScript, JSX and TSX has been introduced, and the syntax highlighting engine has been improved with better memory usage and faster load times. The user interface has been refreshed with updated themes, new tab styles and auto dark-mode switching, and the Python API has been updated to version 3.8 whilst retaining backwards compatibility with older packages.

The R-IDE project enhances Sublime Text as an integrated development environment for R by incorporating language server support, improving R Markdown handling and facilitating R package management. It requires installation of the languageserver package from CRAN and integration with Package Control for LSP and LSP-R components. Users can access an R-IDE menu for executing commands, modify build systems and run R functions directly through the editor. Additional tools such as SendCode, Bracket Highlighter and Terminus are recommended to complement its functionality. The repository includes configuration files, syntax definitions and settings for various R-related tasks, with contributions from multiple developers and written primarily in Python with minor R components. It is hosted on GitHub under an MIT licence and has been actively maintained with updates addressing syntax corrections and feature enhancements over several years.

  • The content, images, and materials on this website are protected by copyright law and may not be reproduced, distributed, transmitted, displayed, or published in any form without the prior written permission of the copyright holder. All trademarks, logos, and brand names mentioned on this website are the property of their respective owners. Unauthorised use or duplication of these materials may violate copyright, trademark and other applicable laws, and could result in criminal or civil penalties.

  • All comments on this website are moderated and should contribute meaningfully to the discussion. We welcome diverse viewpoints expressed respectfully, but reserve the right to remove any comments containing hate speech, profanity, personal attacks, spam, promotional content or other inappropriate material without notice. Please note that comment moderation may take up to 24 hours, and that repeatedly violating these guidelines may result in being banned from future participation.

  • By submitting a comment, you grant us the right to publish and edit it as needed, whilst retaining your ownership of the content. Your email address will never be published or shared, though it is required for moderation purposes.