Let's assume you're building a blog with Sequelize. On your blog, you can create a bunch of s. As a way to describe your post, it can…
30 Apr 2019
A tutorial on building an iOS mobile group chat app with Swift 5 and PubNub, including messaging and message persistence.
A tutorial on building an iOS mobile group chat app with Swift 5 and PubNub, including messaging and message persistence.
Ensuring no disruption to customers, and continuing our international expansion.
Thoughtworks and MeetupAI welcomed a group of speakers and panelists, presented by Anna Gudmundson, to discuss the business value of ethical Artificial Intelligence and Machine Learning.
29 Apr 2019
If you’re like me, or like many other Python developers, you’ve probably lived (and maybe migrated) through a few version releases. Python 3.7(.3), one of the latest releases, includes some impressive new language features that help to keep Python one of the easiest, and most powerful languages out there. If you’re already using a Python […] The post Getting to…
We’ve been mostly looking at small, discrete distributions in this series, but we started this series by looking at continuous distributions. Now that we have some understanding of how to solve probability problems on simple discrete distributions and Markov processes, … Continue reading →
Are you looking to develop your own application on top of the Bazaarvoice Response API? Well, we got something for you. The Response API Demo App is a simple Node-React application which demonstrates how to use Response API in conjunction with our 3-legged OAuth2 API. It is recommended to go through the Developer Portal and […]
This is a deep-dive article on the changes from Node.js v12 we consider essential to highlight! The post Node.js v12 – New Features You Shouldn’t Miss appeared first on RisingStack Engineering.
26 Apr 2019
Last time on FAIC we implemented the Markov process distribution, which is a distribution over state sequences, where the initial state and each subsequent state is random. There are lots of applications of Markov processes; a silly one that I’ve … Continue reading →
UML class diagrams can be a useful tool for communicating designs with other developers - or just drawing out your design candidates before…
25 Apr 2019
We’ve created MuseNet, a deep neural network that can generate 4-minute musical compositions with 10 different instruments, and can combine styles from country to Mozart to the Beatles. MuseNet was not explicitly programmed with our understanding of music, but instead discovered patterns of harmony, rhythm, and style by learning to predict the next token in hundreds of thousands of MIDI…
24 Apr 2019
I found a very interesting SQL question on Twitter recently: Hi @sfonplsql we have some scenario, Let us 01Jan Mkt Value 100, 02Jan 120, next entry available 25th Jan 125, from 3rd Jan 24 Jan, our value should be 120. How to arrive ? Thanks @oraclebase — Vikki (@vikkiarul) April 23, 2019 Rephrasing the question: … Continue reading Using IGNORE…
The SCV team at AO.com started with one serverless service. They were so impressed with the turnaround time and low maintenance overhead that the entire team went Serverless First.
I’m responsible for bringing graduates into Thoughtworks in the UK. I get to work on a number of exciting initiatives, and the one I’m working on right now is a scholarship in partnership with Northcoders, designed to bring more underrepresented minorities into tech. Northcoders is an organisation in Manchester that runs technology boot camps. We chose to work with them…
Whenever we publish a Technology Radar, I take a look at broader trends within the technology industry that don’t necessarily make it onto the radar as blips or themes. Creating the Radar is an excellent chance to dissect what’s going on in the software world, here’s the latest: Buy now, pay later
For the naysayers, there’s little value to be found in exploring new programming languages. After all, most languages today are Turing complete — they can implement everything that is implementable — so what’s the point of learning something new? For self-confessed language geeks like myself — I’d learned five of them before leaving university — that line of argument misses…
23 Apr 2019
[Code for this episode is here.] So far in this series we’ve very briefly looked at continuous distributions on doubles, and spent a lot of time looking at discrete distributions with small supports. Let’s take a look at a completely … Continue reading →
We’ve developed the Sparse Transformer, a deep neural network which sets new records at predicting what comes next in a sequence—whether text, images, or sound. It uses an algorithmic improvement of the attention mechanism to extract patterns from sequences 30x longer than possible previously.
C++/QML application using Qt 5 that shows several types of MapTiler streets map.
Serverless Framework v1.41 - X-Ray for API Gateway, Invoke Local with Docker Improvements & More
ServerlessCheck out what’s included in Serverless Framework v1.41.
In early March, hundreds of technologists gathered in Shenzhen, China, to join the Technology Radar Summit — an event hosted by Thoughtworks which explored a wide range of subjects, such as microservices, continuous intelligence, and IoT.
22 Apr 2019
Earth Day inspires millions of people around the world to take action on behalf of our beautiful planet. For some, this means getting out and volunteering for a day with an environmental group. For others, it’s about changing our daily habits to be more mindful about things like recycling, driving, or water usage. But a […] The post Finding Inspiration…
I had the chance to attend LoCoMoCoSec this year and had a fantastic time. It was a well-run conference that was extremely focused on being friendly for families and being inclusive of the diverse group of people who make up our community. It also doesn’t hurt that it was in one of the most beautiful places I have ever seen.…
In June 2016, while sitting across my family at dinner, I announced my application for a one-in-a-million chance at a Google Anita Borg Scholarship. source: http://ignite.globalfundforwomen.org
20 Apr 2019
Our hero, a mathematician, is writing notes in LaTeX and needs to convert it to a format that her blog platform accepts. She’s used to using dollar sign delimiters for math mode, but her blog requires \( \) and \[ \]. Find-and-replace fails because it doesn’t know about which dollar sign is the start and which is the end. She…
In my domain-driven design journey, I've come to realize that auto-incremented IDs just aren't gonna cut it for me anymore for my Sequelize…
19 Apr 2019
Chirp provides yet another way to bring users together on a real-time chat application - using simple audio chirps to instantly connect chatters.
Chirp provides yet another way to bring users together on a real-time chat application - using simple audio chirps to instantly connect chatters.
Chirp instantly connects chat users to eachother with a simple audible chirp. This tutorial shows you how to integrate it into a real-time chat app.
Chirp instantly connects chat users to eachother with a simple audible chirp. This tutorial shows you how to integrate it into a real-time chat app.
Chirp is like an audio QR code. It can be used to easily connect users to a chatroom or any other real-time experience. This tutorial shows how.
Chirp is like an audio QR code. It can be used to easily connect users to a chatroom or any other real-time experience. This tutorial shows how.
18 Apr 2019
If you're looking to ensure your industrial IoT deployment runs smoothly and efficiently, predictive maintanence is a huge value add.
If you're looking to ensure your industrial IoT deployment runs smoothly and efficiently, predictive maintanence is a huge value add.
A tutorial on building an app allowing multiple users to edit a single spreadsheet with data synchronization and real-time updates.
A tutorial on building an app allowing multiple users to edit a single spreadsheet with data synchronization and real-time updates.
Project Things is graduating from its early experimental phase and from now on will be known as Mozilla WebThings. This platform for monitoring and controlling devices over the web consists of the WebThings Gateway, a software distribution for smart home gateways focused on privacy, security and interoperability, and the WebThings Framework, a collection of reusable software components that help developers…
We’re excited to announce the launch of our public bug bounty program with Bugcrowd — the #1 crowdsourced security platform. This public program is open to Bugcrowd’s full crowd of top, trusted whitehat hackers, and we will award up to $1,500 per vulnerability identified on our website, API, and mobile apps.
Risk management. There's a tool for that. In fact, there are many tools you can use to document and visually represent information. It really doesn't matter which one you use, what matters is the quality of information captured, the nature and structure of thinking used to analyse the risks, and the decisions the thinking facilitates.
17 Apr 2019
So… I’ve got good news and bad news. The good news is: I’ve described an interface for discrete probability distributions and implemented several distributions. I’ve shown how projecting a distribution is logically equivalent to the LINQ Select operator. I’ve shown … Continue reading →
Fluent is a family of localization specifications, implementations and good practices developed by Mozilla. With Fluent, translators can create expressive translations that sound great in their language. Today we’re announcing version 1.0 of the Fluent file format specification. We’re inviting translation tool authors to try it out and provide feedback. The post Fluent 1.0: a localization system for natural-sounding translations…
If you haven’t heard of it, Depth First Learning is a wonderful resource for learning about machine learning.
16 Apr 2019
The data we store holds value, but refining data into meaning remains a difficult task. Over the last few months, we’ve taken a step back to figure out what we can do to help our users cross that divide, and rebuilt Heroku Dataclips from scratch with that goal in mind. The result is an experience […] The post A Dialog…
Embed the "Powered by PubNub" badge on your site and we'll send you some PubNub swag.
Embed the "Powered by PubNub" badge on your site and we'll send you some PubNub swag.
You know how some blogs have a section after reading an article that says "Related Posts" or "You might also like" (hint: check the bottom…
Pyodide is an experimental project from Mozilla to create a full Python data science stack that runs entirely in the browser. We think it’s worthwhile to work on moving the JavaScript data science ecosystem forward, and that's why we built and released Iodide earlier this year. In the meantime, we’re meeting data scientists where they are by bringing the popular…
One of the most wanted features in the Oracle database is the BOOLEAN type. The SQL standard specified it a while ago, and RDBMS like PostgreSQL show how powerful it can be, e.g. when using the EVERY() aggregate function. Before you move on reading this article, note that starting with Oracle 23c, the standard BOOLEAN … Continue reading Calling an…
Gibsons “San Francisco’s Slow-Motion Suicide” is worth reading, his take is that San Francisco has become too successful… inevitable to decline into some expensive backwater due to “the rent is too damn high”. He paints a compelling vision of the ills of appalling levels of income inequality, the monoculture of white-male-American tech-workers, and the metastasis of the city into the…
15 Apr 2019
Setting up a database is a relatively straightforward process (Heroku has an add-on for that), but getting it to run well in production is sometimes another matter. As your application grows and your data grows along with it, you will likely find a number of performance bottlenecks specifically related to your database, and this post […] The post Optimizing Database…
[Code for this episode is here.] Last time in this series I left you with several challenges for improving our DSL for imperative probabilistic workflows. But first, a puzzle: Question One: You are walking down the street when you see … Continue reading →
OpenAI Five is the first AI to beat the world champions in an esports game, having won two back-to-back games versus the world champion Dota 2 team, OG, at Finals this weekend. Both OpenAI Five and DeepMind’s AlphaStar had previously beaten good pros privately but lost their live pro matches, making this also the first time an AI has beaten…
Anyone who built software for a while knows that estimating how long something is going to take is hard. It’s hard to come up with an unbiased estimate of how long something will take, when fundamentally the work in itself is about solving something. One pet theory I’ve had for a really long time, is that some of this is…
The agile framework is a brilliant way to build and deliver scalable software solutions irrespective of size or complexity. The foundational principle of agile teams is continuous collaboration and conversation, which helps discover and maintain a consistently holistic and interdependent business view. This approach also keeps the team and client engaged ensuring resounding success until the end of the project,…
13 Apr 2019
How to build an app that analyzes and gauges customer feedback in real time using IBM Watson Natural Language Classifier and PubNub.
How to build an app that analyzes and gauges customer feedback in real time using IBM Watson Natural Language Classifier and PubNub.
What can Australian sporting clubs learn from the Premier League about recurring payments?
GoCardlessAustralian sporting clubs have long looked to overseas sporting codes for ways in which to improve their operations and fan experiences. The UK’s Premier League is a good example of where clubs lead the way on payment strategies.
IBM Watson Text-to-Speech API makes it easy to voice-enable your apps. This tutorial shows doing so on an AngularJS web app using PubNub BLOCKS.
IBM Watson Text-to-Speech API makes it easy to voice-enable your apps. This tutorial shows doing so on an AngularJS web app using PubNub BLOCKS.
12 Apr 2019
I’m continuing my efforts to port over and update my old blog content. The previous episode is here. We’re still in the first few weeks of me blogging; I was pumping out articles at a rate I now consider to … Continue reading →
Blockchain provides a secure way of accessing and transacting assets. However, the biggest benefit comes from its ability to execute smart contracts.
Blockchain provides a secure way of accessing and transacting assets. However, the biggest benefit comes from its ability to execute smart contracts.
11 Apr 2019
Last time in this series I proposed a stripped-down DSL for probabilistic workflows. Today, let’s see how we could “lower” it to ordinary C# 7 code. I’ll assume of course that we have all of the types and extension methods that … Continue reading →
Mozilla Developer Roadshow is a meetup-style, Mozilla-focused event series for people who build the web. In 2017, the Roadshow reached more than 50 cities around the world sharing highlights of Mozilla and Firefox technologies. Now, we’re back! To open our 2019 series, Mozilla presents two events with VR visionary Nonny de la Peña and the Emblematic Group in Los Angeles…
Often I need to “do X only if files on some folder changed” or whatever. I always need to Google that or find it on old scripts…
10 Apr 2019
The payment experience cheat sheet: a guide for Australian businesses with recurring revenue
GoCardlessUse our handy cheat sheet to make sure your payment experience is fully optimised for the requirements of your customer. Learn how to maximise payment success, get better insights into your process and reduce churn.
A design principle from Extreme Programming (XP) that states that a programmer shouldn't add any functionality until it's actually necessary…
9 Apr 2019
Heroku has many public API endpoints. Each of these endpoints needs to be tested so that we know how they work, and documented so that our customers (and other API consumers) know how they work. Follow along, and we’ll learn how Heroku uses JSON Schema to test and document our Platform API – and how […] The post Saved by…
Thanks again to the good people at Microsoft who have kept my old blog alive for now; my plan is to port the articles from the old site over, and then they will redirect from the old URLs to the … Continue reading →
To help get bugs in front of the right Firefox engineers quickly, we developed BugBug, a machine learning tool that automatically assigns a product and component for each new untriaged bug. By presenting new bugs to triage owners faster, we hope to decrease the turnaround time to fix new issues. Check out BugBug for your own issue-tracking triage. The post…
A question that is frequently occurring among my SQL training‘s participants is: What’s the difference between putting a predicate in the JOIN .. ON clause and the WHERE clause? I can definitely see how that’s confusing some people, as there seems to be no difference at first sight, when running queries like these, e.g. in … Continue reading The Difference…
We are currently in the process of migrating our alerting infrastructure from OMD to Atlassian’s OpsGenie. Most of the features (SMS, phone call etc.) worked out of the box but we struggled with pushing alerts back into our on-premises Jira instance. Enable logging of POST requests OpsGenie does not provide […] The post Using Atlassian OpsGenie with a localized on-premises…
Here's a really silly example. If you don't like it, well- damn. If you do, tell me about it. Pokemon Example w/ TypeScript Let's say you…
Wikipedia says an Anemic Domain Model "is the use of a software domain model where the domain objects contain little or no business logic…
By data integrity, we mean "what shape is this data allowed to take?”, “what methods can be called and at which point?", “what are the…
Over the last few years — perhaps not that unusually among the nerds I know — I’ve become increasingly fascinated by the Apollo program (and early space program more generally), and been reading my way through a growing number of books and documentaries written about it. At a party this weekend I got asked for my list of Apollo book…
8 Apr 2019
Without further ado, here’s my proposed stripped-down C# that could be a DSL for probabilistic workflows; as we’ll see, it is quite similar to both enumerator blocks from C# 2 and async/await from C# 5. (Code for this episode can … Continue reading →
Earlier this year, we partnered with Glitch.com on a starter kit that teaches the fundamentals of WebVR using A-Frame. Today, we introduce a week of WebVR experiments that build on the basics. Designed by Glitch creator Andrés Cuervo, each experiment is unique and is meant to teach and inspire as you craft your own WebVR experiences. The post Sharpen your…
In my previous post, I looked at how banks should take advantage of the open banking revolution as an opportunity to revolutionise their business. In this post, I want to talk about the changes needed to your business strategy, technology and more in order to start that journey - for all types of organisation. 1. Acquisition is not always the…
7 Apr 2019
Also from the Domain-Driven Design with TypeScript article series. In Domain-Driven Design, Value Objects are one of two primitive concepts…
6 Apr 2019
Originally published here April 2019, with discussions on Hackernews and Reddit. Have you heard of that little programming language called…
5 Apr 2019
Check out what’s included in Serverless Framework v1.40 (and v1.39).
4 Apr 2019
I’ve got no code for you this time; instead here are some musings about language design informed by our discussion so far. One of the most important questions to ask when designing a language feature is: what should the balance … Continue reading →
We prepared an automated update system that brings you regular weekly updates of maps from the OpenStreetMap vector tiles.
3 Apr 2019
Build your own version of Hacker News, entirely serverless via Functions, allowing users to submit links and update the feed in real time.
Build your own version of Hacker News, entirely serverless via Functions, allowing users to submit links and update the feed in real time.
I like good programming quotes. Here are some new ones I have found since my last posts. Complexity “Why do people find DNS so difficult? It’s just cache invalidation and naming things.” – @jdub “Your code doesn’t work!” “It works … Continue reading →
When we open-sourced buildpacks nearly seven years ago, we knew they would simplify the application deployment process. After a developer runs git push heroku master, a buildpack ensures the application’s dependencies and compilation steps are taken care of as part of the deploy. As previously announced, we’ve taken the same philosophies that made buildpacks so […] The post Turn Your…
Understanding the difference between contactless payments and mobile payment technology.
Understanding the difference between contactless payments and mobile payment technology.
Productivity tips and hacks for developers and writers
A short talk about unit testing that I gave at the Go London User Group last month. Links: Slides Playlist of videos from the March meetup
Once every two weeks, we prepare new versions of our mobile apps to be published to the app stores. Being confident about releasing software at that scale — with as many features and code contributions as we have and while targeting a wide range of devices like we do at SoundCloud — is no easy task. So, over the last…
In my previous post, I looked at why a ‘trust mantra” is not enough to stop customers from leaving if they feel their trust has been abused. To succeed, integrity needs to be an intrinsic part of your business; this means laying the foundations, serving customers the way they want, building confidence through useful services, and being proactive on their…
2 Apr 2019
Before that silly diversion I mentioned that we will be needing the empty distribution; today, we’ll implement it. It’s quite straightforward, as you’d expect. [Code for this episode is here.] public sealed class Empty<T> : IDiscreteDistribution<T> { public static readonly Empty<T> Distribution = new Empty<T>(); private Empty() { } public T Sample() => throw new Exception(“Cannot sample from empty distribution”);…
Learn the basics of React-Native development. Become confident with built-in components, styling, storing persisting data, animating the UI & more.. The post A Definitive React-Native Guide for React Developers: Getting Started appeared first on RisingStack Engineering.
A look at how Datadog builds and operates data pipelines reliably at scale.
Our maps will be even faster: we are announcing major infrastructure enhancements today!
1 Apr 2019
I just thought of a really cute application of the stochastic workflow technology we’ve been working on; most of the series has already been written but it fits in here, so I’m going to insert this extra bonus episode. We’ll … Continue reading →