Cloud architects: Try thinking like a CFO
When I ran architecture teams, I gave one piece of advice that often surprised people: “We need to think like CFOs and not CIOs.” I voiced this reminder whenever the work veered away from, “What business value are we seeking?” toward, “Who h...
Deno 2.0 moves to release candidate stage
Deno 2.0, a planned major release of the Deno runtime for JavaScript, TypeScript, and WebAssembly and rival to Node.js, is now available as a release candidate. The new version brings two big changes to global variables, new features to improve depend...
New Arm partnerships extend AI performance from edge to cloud
Looking to bring AI and machine learning workloads to Arm-based hardware, Arm is integrating its Arm Kleidi AI acceleration technology with PyTorch and ExecuTorch, the new on-device inference runtime from PyTorch. The arrangement, announced September ...
YugabyteDB 2.19 gets new PostgreSQL-compatibility features
Yugabyte is adding new features to the latest release of its database, YugabyteDB 2.19, aimed at evolving it from a Postgres-compatible distributed database to a distributed PostgreSQL database. That seems like a fine distinction, but according to Yug...
Exceptions in Java: Advanced features and types
The Java platform includes a variety of language features and library types for dealing with exceptions, which are divergences from expected program behavior. In my previous article, you learned about Java’s basic exception handling capabilities. Th...
Bringing Universal Windows Platform apps to .NET 9
Microsoft’s journey to today’s Windows App SDK and Win UI as a unified framework for building .NET desktop applications hasn’t been smooth. Today’s platform brings modern tools and designs to familiar frameworks, but it’s hard to update olde...
Exception handling in Java: Advanced features and types
The Java platform includes a variety of language features and library types for dealing with exceptions, which are divergences from expected program behavior. In my previous article, you learned about Java’s basic exception handling capabilities. Th...
How to work with FusionCache in ASP.NET Core
Caching has long been one of the most successful and proven strategies for enhancing application performance and scalability. There are several caching mechanisms in .NET Core including in-memory caching (IMemoryCache API), distributed caching (IDistr...
Swift 6 arrives with improved concurrency, data-race safety
Swift 6, the latest version of the general-purpose language developed by Apple, is now available. The language update features concurrency improvements, including extended safety guarantees for data races. Linux and Windows support and a new testing l...
Intro to Deno Fresh: A fresh take on full-stack JavaScript
After Brendan Eich’s conception of the language itself, the second most momentous event in JavaScript history (so far) was Ryan Dahl’s humble suggestion that JavaScript could run as an event loop on the server. This notion eventually became Node.j...
How Cloud Custodian conquered cloud resource management
Kapil Thangavelu says he probably would have been a history professor if he hadn’t discovered Python in college. His early-days exposure to Zope and Plone — a Python web application server and content management system, respectively — put him ...
Can Java rival Python in AI development?
Can Java give Python a run for its money in the burgeoning, trendy AI space? While Python still gets top billing when it comes to developing for AI, Java proponents see the nearly 30-year-old Java programming language ready to take charge in the AI fi...
C++ Alliance takes aim at C++ memory safety
Concerns about C++ memory safety soon could be in the past. The C++ Alliance, a charity whose mission is to make the C++ language accessible and useful, is working to add memory safety features to C++, through its Safe C++ Extensions proposal. The all...
JDK 23: The new features in Java 23
Java Development Kit (JDK) 23, the latest update of standard Java, is now generally available. Major features and changes range from previews of module import declarations, stream gatherers, structured concurrency, scoped values, and a class-file API ...
Overcoming AI hallucinations with RAG and knowledge graphs
Generative AI depends on data to build responses to user queries. Training large language models (LLMs) uses huge volumes of data—for example, OpenAI’s GPT-3 used the CommonCrawl data set, which stood at 570 gigabytes and 400 billion tokens. But t...
9 hacks for a better nightly build
In the beginning, there was no need to build anything. We manipulated the toggle switches on the front panel of a mainframe, and the code either ran or it didn’t. Creating software was very straightforward. Maybe not easy, but certainly uncomplicate...
When your cloud strategy is ‘it depends’
This past week I spent time with some IT executives at a Fortune 500 company. Despite years of big spending on AWS, the company made a commitment years ago to switch to Microsoft Azure. Today they’re still on AWS… and Azure… and private data cen...
3 common misconceptions around biometrics and authentication
Scared of flying but don’t think twice about a lengthy road trip? Consider this: NOVA reports that your odds of a fatal car crash are 1 in 5000, but the chance of perishing in a plane is just 1 in 11 million. Despite air travel being 2,200 times saf...