SSH certificates allow system administrators to SSH into machines without having to manage authorized keys in the servers.
9 Nov 2022
8 Nov 2022
Merging arrays is a common task you’ll face in most programming languages, especially merging arrays while only adding unique values. In this article, I’ll talk you through a few approaches to this in TypeScript, as well as the unique TypeScript quirks you might face. If you’re trying to solve this problem in React, why not […]
TypeScript string literal types are a great tool that let you define a type as a literal string value. They’re also really useful when combined with type unions, commonly used as a sort of alternative to enums, when you just want to deal with strings. Here’s a simple example of a string literal union. Anything […]
First and foremost, thanks for visiting my little slice of the internet! I hope the following is both insightful and comedic as I plan to @inject well constructed jokes throughout this post. Introduction Hello! My name is Aleksei and at the time of writing this I’m a rising Senior perusing a Bachelors of Science in Computer Science at the Rochester…
So you're building serverless applications with Microsoft Azure Functions, but you need to persist data to a database. What do you do about controlling the number of concurrent connections to your dat... The post Getting Started with MongoDB Atlas and Azure Functions using Node.js appeared first on Microsoft.
Which payment gateway is right for you? View this payment gateway comparison.
What’s a convenience fee and is it something you should be charging?
The best international transfer options besides Payoneer
What can a smart routing payment gateway do for your business?
Find out when and how to use a cascade payment system.
We look at the benefits of bulk payment processing for your business.
In September, we announced our new low-cost Eco dynos plan and Mini plans for Heroku Postgres and Heroku Data for Redis®. The time has come! These plans are available today for new and existing applications. For customers paying by credit or debit card, the Eco dynos and Mini data plans are free until November 30th, […] The post Eco and…
7 Nov 2022
PubNub CEO, Todd Greene, spoke at Web Summit 2022 to discuss how technology is bridging the gap between physical and virtual experiences.
How can you improve the success rate of your customer’s transactions?
Authors: Rojan Rijal , Tinder Security Labs | Johnny Nipper, Product Security Manager | Tanner Emek, Engineering Manager Recently, Tinder Security Labs gave a talk at Recon Village @ Defcon 30 called “Scanning your way into internal systems via URLScan.” We went over examples of sensitive links indexed by URLScan that could be leveraged to gain access into corporate systems.…
How are B2B payment processing solutions different to B2C solutions?
How you can give yourself the best chance for success with B2B ecommerce
Learn about the benefits of ecommerce for small businesses.
Learn how start a small ecommerce business
Discover the benefits of using a multiple channel payment provider.
Enterprises must embrace both build and buy in software development
6 Nov 2022
Find out the best accounting software for the hospitality industry.
What are some good options for accepting online payments?
We look at how to optimise your invoice process to facilitate cash flow.
4 Nov 2022
So you want to build a REST API, but you don't want to worry about the management burden when it comes to scaling it to meet the demand of your users. Or maybe you know your API will experience more b... The post Build a Totally Serverless REST API with MongoDB Atlas appeared first on MongoDB.
Discover the definition and benefits of smart invoicing software.
Learn about cost plus pricing
Learn about subscription business model pros and cons.
Is your SaaS business retaining enough customers?
Explore the benefits of digital payments for your business
What could a modern payments system do for your business?
What is a credit card pre- authorisation and how does it protect your business?
Could a fund flow analysis help you to plan for the future of your business?
The standard SQL WITH clause has been tremendously helpful in structuring SQL queries. Instead of nesting everything in unreadable derived tables like this: People have started moving the logic up front, just like in any other programming language, where we declare things first, lexically, then use them: Both queries will produce the 5 actors with … Continue reading LATERAL is…
Today, we’re announcing heroku data:labs, an extension of the Heroku Data client plugin. This plugin allows you to make configuration changes to your Heroku Postgres addons. Previously, you could only enable these features by opening a ticket with Heroku Support. With heroku data:labs, you’ll save time by turning these features on and off yourself. heroku […] The post Announcing Heroku…
Modern software needs modern digital operations
3 Nov 2022
If you aren’t already familiar with the concept of interfaces or what they are in TypeScript, be sure to check out this article first, as Interface Declaration Merging is linked directly to them. Otherwise, we shall proceed with the rest of the article. What Does Interface Declaration Merging Refer To? You might find yourself needing […]
If you’ve worked with TypeScript extensively, you would know that we cannot inherit or extend from more than one class at a time. However, this inconvenience is something we can get around by using something called Mixins. So, what exactly are Mixins? Introduction to TypeScript’s Mixins As mentioned prior, Mixins allow us to inherit from […]
Similar to Type Aliases, TypeScript’s Interfaces provide us a medium to avoid code duplication across our TypeScript codebases. If we were to look at the alternative way of defining types, we would find ourselves defining and redefining types inline each time we want to benefit from TypeScript’s strong static typing system. What Is an Interface? […]
We may find ourselves defining the same Type in different places, which is not ideal, considering all the bad things we often hear about code duplication, but what can we do? The answer to that is Type Aliases. TypeScript allows us to reuse certain types by defining them the same way we would otherwise define […]
You may already know that, in React, we may map over a collection of items (Such as an array) using various iterator methods, such as Array.prototype.map or the trusty for loop outside JSX and generate Components or JSX Elements as we go. You can learn more about Iterators in React in this article. However, you […]
The November 2022 release of the Python and Jupyter extensions for Visual Studio Code are now available. This release includes automatic installation of the isort extension, auto imports turned off by default with Pylance, "just my code" cell debugging in Jupyter and more! The post Python in Visual Studio Code – November 2022 Release appeared first on Microsoft for Python…
I'm sure you've run into this issue before. You try to a project up but you get an error that looks something like the following: What's…
How GitHub converts previously encrypted and unencrypted columns to ActiveRecord encrypted columns
GitHubBackground In the first post in this series, we detailed how we designed our easy‐to‐use column encryption paved path. We found during the rollout that the bulk of time and effort was spent in robustly supporting the reading and upgrading of previous encryption formats/plaintext and key rotation. In this post, we’ll explain the design decisions we made in our migration…
Starting today, developers can begin building apps with the DALL·E API.
2 Nov 2022
This document describes the vision for a new way to create and share content with Blender through Blender Apps.
Discover how smart payment processing works.
The groupBy function is generally used to group arrays together by a certain condition. You can easily go for a built-in solution, such as lodash’s groupBy function, or implement it yourself in TypeScript. Lodash _.groupBy Lodash is a library that contains a large selection of utility functions, such as for flattening arrays, sorting arrays, debouncing […]
Conditional types in TypeScript help you to create types depending on another type, by checking if that type satisfies some condition. In their simplest form, they take the format of: Here’s a simple example, checking if a type can be converted to a string. Here I’m looking for which of these primitive types in my […]
MapTiler Server 4.2 has many improvements, giving you API controls, Static maps, WMS services and High DPI maps.
1 Nov 2022
My name is Avery Dunn and I am a rising master’s student at Washington University in St. Louis studying computer science. For the past 12 weeks, I have been a software engineering intern on the API & Platform pod of the Foundation team. I am an active Strava user and have been for approximately 3 years with my favorite activity…
A simple guide to what you need to know about churn in ecommerce
What you need to know about the top 5 ecommerce customer retention strategies.
As a software engineer that lives too much of his life on a computer, I like keeping my machine as clean as possible. I don’t keep rogue downloaded files and removes apps when I don’t need them. Part of keeping a clean, performant system is removing empty directories. To identify empty directories, I use the following command: To remove empty…
What’s the one thing that most security professionals can agree on? It’s that good security is about so much more than great point products. Why? Because best of breed solutions are limited in what they can do for your overall security posture. What matters is not only how effective each security solution is at defending […] The post Introducing the…
31 Oct 2022
Four development missteps to avoid in order to increase your chances of building a high-performing, successful app that engages users.
The MDN Web Docs team recently undertook a project to revamp and reorganize the “Contribution Docs”. These are all the pages on MDN that describe what's what – the templates and page structures, how to perform a task on MDN, how to contribute to MDN, and the community guidelines to follow while contributing to this massive open source project. The…
Scaling fast and deciding whether to buy or to build your payments and billing solution in-house? In this webinar we unpack the financial impact of building and managing your payment and billing solution in-house.
One of the ideological sticking points of the first JavaScript framework was was extending prototypes vs. wrapping functions. Frameworks like MooTools and Prototype extended prototypes while jQuery and other smaller frameworks did not. Each had their benefits, but ultimately all these years later I still believe that the ability to extend native prototypes is a massive feature of JavaScript. Let’s…
Driving inclusion for women and gender diverse people at Thoughtworks
30 Oct 2022
Check how to boost engagement and simplify communication with 💬 Chat API, offering robust real-time messaging without the development complexity
Pocketbase is an open-source application and alternative to Google Firebase. This is offering realtime database, authentication(including social), and file storage for your next web and mobile application. This article is about how to host the Pocketbase application server which usually runs at 8090 port with your existing application server. If you are using Linux and Apache based server, the following…
This morning (October 30th 2022), the clocks went back in the UK – the time that would have been 2am fell back to 1am. This is just the regular “fall back” transition – there’s nothing special about it. As it happens, I’d driven my electric car for quite a long journey yesterday, so I had … Continue reading Handling times…
29 Oct 2022
For a recent project, I needed all the NVD CVE and EPSS data in Elasticsearch and couldn’t find an easy way to do it, so I built CVElk. CVElk quickly builds a local Elastic Stack using docker compose with the help of a simple shell and python script. Philipp Krenn from Elastic also contributed an updated dashboard to the project…
28 Oct 2022
This post discusses the algorithm behind Personal Heatmap, one of Strava’s most acclaimed subscriber features. Product Overview The Personal Heatmap feature has been around in some form since 2015, but we gave it a major overhaul in 2020. For those unfamiliar, the heatmap is an aggregated view of an athlete’s GPS-enabled activities on Strava. Activity data is rendered onto a…
Real-time Communication Platforms address the new delivery requirements of real time business models that are changing the face of business globally
The concept of portals, or a means to transport template HTML to various regions of the DOM inside an app, is one of the new features of Vue 3 that has been in the making for a while. The portal-vuelibrary in Vue2 allowed users to create portals, a React functionality that is frequently used. But […]
Why is cloud migration strategy critical for multinational companies entering China? (part two)
Thoughtworks InsightsWhy is cloud migration strategy critical for multinational companies entering China? (part two)
Why is cloud migration strategy critical for multinational companies entering China? (part one)
Thoughtworks InsightsWhy is cloud migration strategy critical for multinational companies entering China? (part one)
How do we support digital integration across the public and private sector?
27 Oct 2022
One of the things I like to do on this blog is write about new research that has a practical angle. Most of the time (I swear) this involves writing about other folks’ research: it’s not that often that I write about work that comes out of my own lab. Today I’m going make an … Continue reading One-Time Programs…
When we’re working with a multi-layered Vue app, we typically utilize props to transfer data from a parent component to a child component. This has been made simple and easy to perform with Vue.js. However, passing data from a parent-level component to a nested child component that’s several levels deep has surely frustrated most Vue […]
If you’ve worked on larger projects that do not already use Redux, you’ve probably encountered Prop Drilling and know how annoying and bad-looking that process is. However, if you haven’t, there is an article on the subject that you can check out here. One solution to that problem, as well as some other architectural ones, […]
Introduction Not so long ago, in version 3.0, TypeScript introduced a new `unknown` type to its toolkit, but what does this type do, and more specifically, when should we use it? This article will look at this “new” type to better understand its goal. We’ll also consistently compare it to its sibling, the any type; […]
One of the most important things when writing scalable applications is ensuring that the components that make up those applications are scalable and, thus, reusable by themselves. When working with TypeScript, one of the utilities that ensure units of work are reusable and scalable is Generics. Introduction to TypeScript’s Generics Generics are not exclusive to […]
When working with TypeScript or migrating an already existing codebase over to TypeScript, it is crucial to know how to handle typing properly. One tricky typing scenario to get right is when we decide whether or not to use any for a particular scenario. In this article, we’ll discuss about the any type; what it […]
I’ve been writing a bunch of jest tests recently for libraries that use the underlying window.crypto methods like getRandomValues() and window.crypto.subtle key management methods. One problem I run into is that the window.crypto object isn’t available, so I need to shim it. To use the window.crypto methods, you will need Node 15+. You can set the window.crypto by importing the…
How tech could bridge the financial advice gap
Embracing banking ecosystems – part four
Here’s how leaders can evaluate new-age technologies
Thoughtworks Live 2022 recap: How sustainable organizations sidestep disruption
Thoughtworks InsightsThoughtworks Live 2022 recap: How sustainable organizations sidestep disruption
Why are foreign websites slower in China?
26 Oct 2022
As JSX projects get increasingly complex, we often find ourselves reverse-engineering whole chunks of code to fix or change existing functionality. JavaScript doesn’t really help in that regard, especially when trying to figure out what specific code snippets do unless they have been run first. Intro to TypeScript Suppose you are not already familiar with […]
Python 3.11 brings the specialized adaptive interpreter, the starting point of a large plan to make Python much faster. At Microsoft, we have a full-time team dedicated to this project. The post A Team at Microsoft is Helping Make Python Faster appeared first on Microsoft for Python Developers Blog.
This blog post is the first part in a two‐part series on how GitHub is using ActiveRecord::Encryption. You may know that GitHub encrypts your source code at rest, but you may not have known that we also encrypt sensitive database columns in our Ruby on Rails monolith. We do this to provide an additional layer of defense in depth to…
The United States is one of the last bodies that refuses to implement the Celsius temperature standard. Why? Because we’re arrogant and feel like we don’t need to change. With that said, if you code for users outside the US, it’s important to provide localized weather data to users. Let’s took at how you can convert between Fahrenheit and Celsius.…
Better developer platforms are the key to better digital products
Embracing banking ecosystems – part three
Here's how government can accelerate their digital journey and empower citizens
Thoughtworks InsightsHere's how government can accelerate their digital journey and empower citizens
Macro trends in the tech industry | October 2022
25 Oct 2022
About Me: Hey there! My name is Ryan, and I come from an unconventional background. I am not like most interns from the group in 2022. I’ve dropped out of college 3 times, worked in different fields for about 10 years, then transitioned into a bootcamp. Now working with Strava, they have set the expectation of what it should be…
Mapped Types in TypeScript let you transform one type to another, by transforming the keys from one type to another. TypeScript offers a lot of flexibility with this, allowing you to modify the name of types, perform string interpolation on keys and more. In this article, I’ll explain their utility, with a few useful examples […]
The builder pattern in TypeScript is used to give a more flexible solution to creating complex objects, by breaking the construction up into separate steps. An example of this is the Promise class, which you may be familiar with. The builder pattern is useful for building complex objects. It lets you break up construction into […]