To tell the story of how Kubernetes evolved into the great tool that we know today, we visualized the major milestones on an interactive timeline! The post The History of Kubernetes on a Timeline appeared first on RisingStack Engineering.
20 Jun 2018
Vendor choice is the most important thing IT leaders could be thinking about today. And the path to achieving it is data portability.
18 Jun 2018
Functions: On Request event handler feature, enabling developers to globally deploy a serverless REST API in minutes, not months.
The Function monitoring tool is a Python script that monitors all of your event handlers and displays alerts/notifications in the terminal.
Component library for EON that makes it even easier to start integrating PubNub and real-time charts and dashboards into your React app!
Organisations who are paying attention already know they need to have an open web API, and many already have under development or in the wild. Make sure you haven’t been caught by the pitfalls of many early API releases. Multiple points of failure: The 5 tips Test it all Plan for future versions Embrace standards […]
This post explores the double fault exception in detail, which occurs when the CPU fails to invoke an exception handler. By handling this exception, we avoid fatal triple faults that cause a system reset. To prevent triple faults in all cases, we also set up an Interrupt Stack Table to catch double faults on a separate kernel stack. This blog…
17 Jun 2018
CPU exceptions occur in various erroneous situations, for example, when accessing an invalid memory address or when dividing by zero. To react to them, we have to set up an interrupt descriptor table that provides handler functions. At the end of this post, our kernel will be able to catch breakpoint exceptions and resume normal execution afterward. This blog is…
15 Jun 2018
Clock’s ticking. JDK 11 will remove a bunch of deprecated modules through JEP 320, which includes the Java EE modules, which again includes JAXB, a dependency of many libraries, including jOOQ. Thus far, few people have upgraded to Java 9 or 10, as these aren’t LTS releases. Unlike in the old days, however, people will … Continue reading How to…
To complete the testing picture we implement a basic integration test framework, which allows us to run tests on the target system. The idea is to run tests inside QEMU and report the results back to the host through the serial port. This blog is openly developed on GitHub. If you have any problems or questions, please open an issue…
14 Jun 2018
Wireguard is the hip, new way to VPN :P No, but seriously I wanted to try it out because it is super interesting and I think the direction it is going is awesome. Read about it on their website if you have not already. What is cool about Wireguard is it integrates into the Linux networking stack so you have…
SaaS businesses are losing 1-4% of their customers through involuntary churn
Transferring your Direct Debit mandates from one provider to another is easy using the bulk change process.
Optimise your payments strategy to drive changes in key business metrics like Churn Rate and Customer Lifetime Value, with this cheat sheet from GoCardless and ChartMogul.
13 Jun 2018
Google provides a trusted/secure login system that's familiar to users, consistent across devices, and removes burden of new account creation.
12 Jun 2018
Lately at work, my colleagues build some awesome tooling to fetch data in an easy way. It’s built around RxJS, which I previously had very little knowledge about. I saw cool ways of getting and combining data, which inspired me to build a little game with RxJS in React Native. The game idea is to have a ball on a…
How to implement PubNub with the Ethereum blockchain to create a PubNub-powered DApp with Truffle, Infura and the Ropsten Test Network.
We're always trying to find ways we can give back to our local community. Our latest adventure: organizing a TeenTech coding workshop for high schoolers.
11 Jun 2018
Chat has hit the mainstream. Our eBook provides 360-degree view of chat app development, deployment, and scale—and why chat is eating the world.
We've collected together advice on churn from some of the world’s most successful and outspoken investors and SaaS C-suite executives.
We’ve obtained state-of-the-art results on a suite of diverse language tasks with a scalable, task-agnostic system, which we’re also releasing. Our approach is a combination of two existing ideas: transformers and unsupervised pre-training. These results provide a convincing example that pairing supervised learning methods with unsupervised pre-training works very well; this is an idea that many have explored in the…
8 Jun 2018
It has been one month since I started working fully remote, and I think I learned some things I can share.
7 Jun 2018
I figured it would be nice to have one canonical place for talks I have given. So here it is… 2019 CERN - Why Open Source Firmware is Important This talk will dive into some of the problems of running servers at scale, including data from surveys about physical infrastructure and firmware concerns. In this talk, we’ll understand how open…
Today, jOOQ 3.11 has been released with support for 4 new databases, implicit joins, diagnostics, and much more New Databases Supported At last, 4 new SQL dialects have been added to jOOQ! These are: jOOQ Professional Edition Aurora MySQL Edition Aurora PostgreSQL Edition Azure SQL Data Warehouse jOOQ Enterprise Edition Teradata Implicit Joins One of … Continue reading jOOQ 3.11…
6 Jun 2018
I’ve finally had a chance to read a book I bought a while ago called “97 Things Every Software Architect Should Know – Collective Wisdom from the Experts“. Not the shortest title for a book, but very descriptive. I bought this book at the OSCON Conference in Portland last year. It’s an interesting book and […]
In this much overdue article, I will explain why I think that in almost all cases, you should implement a “database first” design in your application’s data models, rather than a “Java first” design (or whatever your client language is), the latter approach leading to a long road of pain and suffering, once your project … Continue reading Truth First,…
Flight paths (polylines) are a list of points, where line segments are drawn between consecutive points. We'll implement them with the Google Maps API.
Learn how to build a GraphQL location search service similar to AirBnB's using a fully serverless stack on AWS.
5 Jun 2018
If you’ve followed our blog for some time, you’ve likely encountered posts detailing how to engage in various kinds of software testing, from performance to data-driven to security and more. This post continues that trend with a focus on testing your site for accessibility. What is Accessibility? If you are unfamiliar with the […]
Or, how to raise a project from the dead with tools you probably have lying around at home.
4 Jun 2018
Churn definitions and benchmarks from the likes of ChartMogul, Profitwell and Recurly, as well as action steps to help you tackle voluntary and involuntary churn.
2 Jun 2018
I like to keep my GitHub clean. I delete forks I’m not using anymore, move old abandoned repositories to my graveyard and etc.
ccache, the compiler cache, is a fantastic way to speed up build times for C and C++ code that I previously recommended. Recently, I was playing around with trying to get it to speed up my Linux kernel builds, but wasn’t seeing any benefit. Usually when this happens with ccache, there’s something non-deterministic about the builds that prevents cache hits.…
A step-by-step tutorial for writing your first Serverless Component, and then using it to build a serverless application.
1 Jun 2018
This is a weird one, and not something you will stumble into every day. But it is a bug nonetheless. On iOS safari, if you use window.scrollTo(0, y) and y is larger than document's maximum scroll, any immediate call to getBoundingClientRect will return incorrect top value.Same will happen for horizontal scroll and left value. What happens is that browser thinks…
31 May 2018
How to build your own connected Raspberry Pi smart door lock, with remote control and access management for granting and revoking permissions.
Ruby comes with good support for Unicode-related features. Read on if you want to learn more about important Unicode fundamentals and how to use them in Ruby… …or just watch my talk from RubyConf 2017: ⑩ Unicode Characters You Should Know About as a 👩💻 Ruby ♡ Unicode Characters in Unicode Codepoints & Encodings Grapheme Clusters Normalization Confusables Case-Mapping Case-Folding…
Create map design in a few mouse clicks. Change languages, fonts, and colors.
The new MapTiler Platform offers base maps of the entire world, geodata processing, and a mobile application that covers the entire map-creation flow.
A step-by-step tutorial that guides you through creating a dynamic website with pre-built Serverless Components.
30 May 2018
We’re now accepting applications for the next cohort of OpenAI Fellows, a program which offers a compensated 6-month apprenticeship in AI research at OpenAI.
29 May 2018
This post discusses how maps are implemented in Go. It is based on a presentation I gave at the GoCon Spring 2018 conference in Tokyo, Japan. What is a map function? To understand how a map works, let’s first talk about the idea of the map function. A map function maps one value to another. Given […]
As an accountant you can help clients understand and find business finance options that fit their needs. Let’s take a look at the key facts you and your client should know when looking for finance.
28 May 2018
I wanted to set up a prometheus machine for me to monitor random stuff, but I was always postponing that because I didn’t want to use SSH port-forwarding, firewalls, create a VPC and/or setup an OpenVPN server or anything like that.
25 May 2018
The SQL standard knows a lesser known feature called GROUPING SETS. One particular side-effect of that feature is that we can group by “nothing” in SQL. E.g. when querying the Sakila database: This will yield: count | ------| 1000 | What’s the point, you’re asking? Can’t we just omit the GROUP BY clause? Of course, … Continue reading How to…
We’re releasing the full version of Gym Retro, a platform for reinforcement learning research on games. This brings our publicly-released game count from around 70 Atari games and 30 Sega games to over 1,000 games across a variety of backing emulators. We’re also releasing the tool we use to add new games to the platform.
24 May 2018
An absolutely crucial part of the experience of being an engineer at SoundCloud is learning and growing as a person. Pretty much everyone we hire mentions this aspect as one of their main motivations for joining the company. And while retaining highly talented and motivated people and helping them develop is naturally valuable for SoundCloud as a company, it’s also…
23 May 2018
Belmont is finalizing plans to build affordable housing on two parcels it owns across from the Caltrain station along El Camino Real. The proposal from the developer, LINC Housing, would construct around 20 large-family affordable units (2 and 3 bedrooms) and 20 senior housing units (one bedroom). Belmont reduced the parking requirements for new construction […]
Maps of the entire world for web, mobile, and desktop applications. Powered by open-source and open data, running on a reliable infrastructure.
22 May 2018
iframe { height: 640px; width: 100%; margin: 0 auto; border: 5px solid #E0F7FA; border-radius: 3px; } Machine Learning (ML) is the dope new thing that everyone’s talking about, because it’s really good at learning from data so that it can predict similar things in the future. Doing ML by hand is pretty annoying since it usually involves matrix math which…
Once in a while, I daydream about being thrown back in time. I’d have no Wikipedia, no books, or any access to information except what’s already in my head. If I were thrown into Victorian London, what could I do? What could I teach them? Well, the first thing I would do is tell them to wash their hands. With…
A feature on Bustle, sponsored by Windows, on my some of my teammates and myself, where we discuss work, the team, and falling in love with coding.
21 May 2018
MapTiler is the best Google Maps API alternative with a FREE plan.
20 May 2018
There seems to be some confusion around sandboxing containers as of late, mostly because of the recent launch of gvisor. Before I get into the body of this post I would like to make one thing clear. I have no problem with gvisor itself. I think it is very technically “cool.” I do have a problem with the messaging around…
19 May 2018
Introduction This blog started off life as a blog post on how I use nix but somehow transformed itself into a “how I do data visualisation” blog post. The nix is still here though quietly doing its work in the background. Suppose you want to analyze your local election results and visualize them using a … Continue reading Cartography in…
We need to ship what we started and let our newer contributors shine and lead.
18 May 2018
EDIT: See my post on a design doc for a multi-tenant orchestrator instead. I wrote this when an internal requirement was to use Kubernetes but I do not personally think you should use Kubernetes for this use case. Kubernetes is the new kernel. We can refer to it as a “cluster kernel” versus the typical operating system kernel. This means…
17 May 2018
Last week, I was fortunate enough to attend GeeCON. GeeCON is a well-known conference in the JVM world and this year marked its 10th anniversary. More than 1200 people came to see over 80 sessions from more than 70 speakers distributed across 4 tracks over 3 days in Krakow, Poland. This was my first time attending GeeCON. In retrospect,...
TL;DR. No. Or keep reading if you want. On Monday a team of researchers from Münster, RUB and NXP disclosed serious cryptographic vulnerabilities in a number of encrypted email clients. The flaws, which go by the cute vulnerability name of “Efail”, potentially allow an attacker to decrypt S/MIME or PGP-encrypted email with only minimal user interaction. By … Continue reading…
DevTO is a popular meetup for software developers in Toronto. Attended by over 100 developers on the last Monday of each month, the group features two 20-minute presentations on various topics from the industry, accompanied by food, drinks and networking. On April 30, Wealthsimple hosted the event celebrating the 7th anniversary of DevTO. I was invited to...
Serverless Platform updates - Install Components from url, Fn Project support, CloudEvents
ServerlessSee what's new in Serverless Components, Framework, and Event Gatway. Install Components from url, Fn Project support, and more.
16 May 2018
Two months ago, we experienced the worst outage in the history of Clever SSO. We wrote up a postmortem soon afterwards. We mentioned at the time that this postmortem was the beginning of our process to reevaluate everything we do to make sure we can be worthy of the trust you place in us. We […] The post Clever Reliability…
Learn how to use the Functions CLI for testing and deploying your code. This guide shows how to automate the CI/CD process with Travis-CI.
We collected the best Node.js & Microservices articles written by RisingStack's engineers in the past 5 years. In case you're new to the blog, start here. The post The Best Node.js & Microservices Articles we Ever Wrote appeared first on RisingStack Engineering.
10 important questions about your Direct Debit solution - a guide for gym business leaders
GoCardlessAre you getting the most out of your Direct Debit provider? We’ve put together 10 questions to help you find out.
We’re releasing an analysis showing that since 2012, the amount of compute used in the largest AI training runs has been increasing exponentially with a 3.4-month doubling time (by comparison, Moore’s Law had a 2-year doubling period)[^footnote-correction]. Since 2012, this metric has grown by more than 300,000x (a 2-year doubling period would yield only a 7x increase). Improvements in compute…
15 May 2018
Unity SDK with PubNub. Data synchronization, which ensures that two or more clients are synced, is essential for multiplayer games specifically.
Starting with Ruby 2.5¹ it is possible to customize the behavior of Kernel#warn through the Warning module. Here is how: def Warning.warn(w) # super calls the original behavior, which is printing to $stderr super "\e[31;1mRUBY WARNING: \e[22m#{w.sub(/warning: /, '')}\e[0m" end # # # # examples warn "test" # => RUBY WARNING: test { a: 1, a: 2 } # =>…
Streets is a new map style with a clear roads' hierarchy that shows only relevant information for quick decision.
14 May 2018
One of the most exciting strengths of React Native is that it allows you to bridge native calls to Javascript. In contrast to other frameworks that pre-define what can be executed on the native side React Native is easily extensible. With great power comes great responsibility The React Native community is hard to compare with others, you have a lot…
Google’s BigQuery has a very interesting SQL language feature, which I’ve missed many times in other databases: select: SELECT [{ ALL | DISTINCT }] { [ expression. ]* [ EXCEPT ( column_name [, ...] ) ] [ REPLACE ( expression [ AS ] column_name [, ...] ) ] | expression [ [ AS ] alias … Continue reading Selecting all…
Compliance requirements for online payment pages for Bacs, SEPA, BG Autogiro and BECS.
Learn how to use pre-built Serverless Components and a static site generator like Hugo to create and deploy a blog site.
13 May 2018
11 May 2018
Track play counts are essential for providing a good creator experience on the SoundCloud platform. They not only help creators keep track of their most popular songs, but they also give creators a better understanding of their fanbase and global impact. This post is a continuation of an earlier post that discussed what we do at SoundCloud to ensure creators…
10 May 2018
9 May 2018
Object Storage Use Cases Part 2: Storing your reveal.js presentation in Object Storage
CSC - IT Center For Science - Cloud TeamThis is part of a technical series of blog post where the CSC Pouta Cloud Team illustrates with words and sometimes figures how to do things with our object storage. NFS + ZFS + Encryption blog post aws tool and reveal.js to upload a presentation at a nice https://mypresentation20180423.object.pouta.csc.fi/index.html URL. automatic redirection to index.html with HAProxy if there is no…
There's a pretty famous software engineering slide called "Latency Numbers Every Programmer Should Know." I thought I would write an equivalent for housing construction, since a lot of these statistics can be hard to estimate. The goal is to make it easy to do a ballpark estimate of the impacts of a particular proposal. For […]
With MapTiler, you can publish your maps using mutliple opne-source SDKs, JavaScript libraries, and style them the way you want.
Recently I switched to a new laptop and had to set it up to my likings.This comic describes my setup pretty accurately. My setup includes a bunch of small apps I found over the years. It seems that most people are not aware of these, so I decided to share a list. All of them are free (with the exception…
8 May 2018
Use Machine Learning on high volumes of text for business automation. MonkeyLearn's powerful ML API can be streamlined thanks to Functions.
Learn how to build a complete AngularJS chat app with a real-time user roster
This tutorial walks through building chat with our core pub/sub technology (and other PubNub features). We recently launched ChatEngine, a new fra
IoT security has been a predominant topic of discussion, both for IoT businesses and their end users for the last decade.
This article helps you to learn the basic concepts of Kubernetes, so you can have a modern, safe and reliable production infcrastructure in the cloud. The post What is Kubernetes & How to Get Started With It appeared first on RisingStack Engineering.
What ambitious web application developers need to learn from game developers. Presented at EmberConf 2018 in Portland.
This is a wide-ranging talk on learning and why you need to understand how people learn if you want to build good software. Plus I build a fun orbital mechanics demo. Presented at EmberNYC, March 2018.