4 Oct 2018
Here are some common mistakes people make when authoring Lambda functions with Node.js 8.10.
3 Oct 2018
Direct Debit payments are automated, but they're not always integrated. Here's the difference – and why it matters.
2 Oct 2018
Payment collection is a major source of admin for any SMB. Claim back the time with these business hacks.
1 Oct 2018
A quick review of my second ever GopherCon - the first one as a speaker, and my experience talking.
Small business admin is a headache for any busy entrepreneur. But there are ways to minimise the pain, speed up processes and improve business performance.
Top tips for achieving cash flow health – a guide for Australian SMBs.
This is something I keep rediscovering, because I keep forgetting it. JSON.stringify will omit all object attributes that are undefined. In most cases, it doesn't really matter, because if we parse that string back, and try to access that attribute - it will be undefined by design. Check the example below: const user = { name: 'Stanko', phone: undefined };…
28 Sept 2018
An excellent talk about the importance of simplicity in the language which is anything but: NDC Techtown 2018 playlist
26 Sept 2018
At a customer site, I recently refactored a “slow-by-slow” PL/SQL loop and turned that into an efficient set based UPDATE statement saving many lines of code and running much faster. In this blog post, I will show how that can be done. The blog post will focus on Oracle and UPDATE, but rest assured, this … Continue reading How to…
The interaction between career development and on-call is actually really, really, bad. Bluntly, the profession takes on-call seriously, tries to be good at it, yet it is very very rare for this to be rewarded in any meaningful way. In 11 years at my previous employer, I never saw anyone get promoted for on-call performance. […]
At Jane Street, we often work with data that has a very low signal-to-noise ratio, but fortunately we also have a lot of data. Where practitioners in many fields might be accustomed to having tens or hundreds of thousands of correctly labeled examples, some of our problems are more like having a billion training examples whose labels have only a…
25 Sept 2018
5 steps to healthier cash flow for you and your clients
Caltrain is spending $2 billion to electrify the entire railway from SF to Tamien, and buy new train cars. This is expensive and painful - weekend headways are 90 minutes, and the 4th and King/22nd St. stations won't get trains on Saturdays and Sundays for about six months. Why is Caltrain doing this? There are […]
All the important steps that help a new business get up to speed on GoCardless.
24 Sept 2018
23 Sept 2018
This blog is mainly reserved for cryptography, and I try to avoid filling it with random “someone is wrong on the Internet” posts. After all, that’s what Twitter is for! But from time to time something bothers me enough that I have to make an exception. Today I wanted to write specifically about Google Chrome, … Continue reading Why I’m…
One of my favourite talks from the elusive Systems We Love conference series. Videos: https://systemswe.love/videos
21 Sept 2018
Everyone knows the SQL SUM() aggregate function (and many people also know its window function variant). When querying the Sakila database, we can get the daily revenue (using PostgreSQL syntax): The result will look something like this: date |daily_revenue |cumulative_revenue -----------|--------------|------------------- 2005-05-24 |29.92 |29.92 2005-05-25 |573.63 |603.55 2005-05-26 |754.26 |1357.81 2005-05-27 |685.33 |2043.14 2005-05-28 |804.04 … Continue reading How to…
20 Sept 2018
SQL is a verbose language, and one of the most verbose features are window functions. In a stack overflow question that I’ve encountered recently, someone asked to calculate the difference between the first and the last value in a time series for any given day: Input volume tstamp --------------------------- 29011 2012-12-28 09:00:00 28701 2012-12-28 10:00:00 … Continue reading How to…
Why Direct Debit payments fail, failure rates and what you can do about it.
Last year we held a machine learning seminar in our London office, which was an opportunity to reproduce some classical deep learning results with a nice twist: we used OCaml as a programming language rather than Python. This allowed us to train models defined in a functional way in OCaml on a GPU using TensorFlow.
19 Sept 2018
A comparison of HTTP, REST, WebSockets, pub/sub, MQTT and the other messaging apis enabling Web 3.0 communication.
This is more of a quick, explanatory “heads-up” post than anything else. On March 31st 2018, I started an experiment: I created a new Stack Overflow user called “Daisy Shipton” with no picture and a profile that just read “Love coding in C#” (or similar). I wanted to see how a new user presenting with … Continue reading Farewell, Daisy…
SoundCloud is built on hundreds of microservices. This creates many challenges, among them debugging latency issues across the services…
18 Sept 2018
We tested both the Magic Leap and Microsoft HoloLens augmented reality headsets and walkthrough the pros and cons of each.
The step-by-step checklist to creating a better online journey for your new members.
17 Sept 2018
We surveyed 1000 millennials about their billing and payment preferences – this is what they said
We just rolled out the first batch of high-res satellite imagery with amazing 12.5cm per pixel resolution.
When your team team is distributed or remote, building a company culture takes a different kind of effort. Here's how we keep culture strong at Serverless.
16 Sept 2018
Ousterhout’s opus is tearing up tech twitter at the moment. But for those outside the North American prime shipping service area, we’re shit out of luck until a digital version is available. Until then, here’s Ousterhout’s Google Tech talk: Slides: https://platformlab.stanford.edu/Seminar%20Talks/retreat-2017/John%20Ousterhout.pdf CS190: https://web.stanford.edu/~ouster/cgi-bin/cs190-winter18/index.php
15 Sept 2018
“It turns out that style matters in programming for the same reason that it matters in writing. It makes for better reading.” Douglas Crockford I stumbled across this old (in internet years) presentation a few weeks ago and it’s been on high rotation since. If you can look past the recording difficulties (and the evacuation […]
14 Sept 2018
13 Sept 2018
Often when you develop an application performance matters. The most important asset you have when it comes to perceived performance is the response time of your backend services. If you use GraphQL it is most likely the system that comes right before the user-facing application, so it should be the central part to take a look at when it comes…
Previously I wrote about pedestrian/bike improvements for the east side of 101. There's now a proposal for the east side exit of 101, shown in this slide at a recent Caltrain board meeting. It's not ideal to have pedestrians and cyclists on the north side of East Grand for two reasons: ped/bike crossings will hold […]
11 Sept 2018
6 steps to improving new member online engagement, satisfaction and retention.
It's Rail Safety Month and last month at the Caltrain CAC we got a presentation on suicides on the Caltrain line. I've added some key papers that study railway suicide to this Github repository. At a high level, they show: There are several factors that predict suicide incidence. There are several factors that have been […]
Cloudflare Workers integrates with the Serverless Framework. Use Cloudflare Workers to add reliability and uptime to your existing FaaS!
10 Sept 2018
How to add an extra-layer of end-to-end encryption to a ChatEngine-powered chat app with Virgil Security.
Our first cohort of OpenAI Scholars has now completed the program.
We surveyed 500 millennial organisation members about their preferences on payment methods, billing cycles, security and more.
API World, the largest API conference, awarded the Serverless Framework the top honor for Microservices API!
9 Sept 2018
7 Sept 2018
I recently stumbled upon a curious query on a customer’s productive Oracle database: Two things caught my attention: The query was executed many billions of times per month, accounting for about 0.3% of that system’s load. That’s 0.3% for something extremely silly! I don’t think that customer would ever qualify the DUAL table as SYS.DUAL, … Continue reading Beware of…
I want to share a hack (or a trick if you prefer) my colleague Marko showed me today. What is the problem? We want our flex items to be equally distanced between each other and from the parent's edge. Unforunately space-evenlyI wasn't aware of this property, thank you Marc for mentioning it in the comment below. is not supported in…
5 Sept 2018
In this post, we'll take a look at how to prepare, how you should drive the co-operation and what kind of services you can expect from IT outsourcing companies. The post Advice for Working with Professional Services Companies ( IT Outsourcing ) appeared first on RisingStack Engineering.
8 common misconceptions around switching Direct Debit provider, and how you can make the whole process stress-free.
4 Sept 2018
An overview of HIPAA-compliance for healthcare applications including messaging, BAAs, ePHI, and how to get started.
Creating own map design is now straightforward with a new map design tool.
3 Sept 2018
I’ve stumbled across this fun SQL question on reddit, recently. The question was looking at a time series of data points where some events happened. For each event, we have the start time and the end time timestamp start end ----------------------------------- 2018-09-03 07:00:00 1 null 2018-09-03 08:00:00 null null 2018-09-03 09:00:00 null null 2018-09-03 10:00:00 … Continue reading Find the…
This is a short response to the recently announced Go 2 generics draft proposals Update: This proposal is incomplete. It cannot replace two common use cases. The first is ensuring that several formal parameters are of the same type: contract comparable(t T) { t > t}func max(type T comparable)(a, b T) T Here a, and […]
Find out how member demands and preferences will evolve over the next few years and whether your current Direct Debit solution can handle these changes.
MapTiler reveals Intelligent Maps, which can dynamically adapt colors, displayed language and data for individual visitors and perfectly fit the need of companies who use the maps in their...
I’m laying out my design process for those interested in creating a solid brand identity—whether its from a green field, or you’re working to evolve an existing one.
2 Sept 2018
For the past month or so I've been commuting to a biotech office east of 101 in South San Francisco. I've gotten a little depressed about how car-centric the infrastructure is and I wanted to share some small wins that could improve the bike and pedestrian experience. Why bother? Well, the roads get really full […]
31 Aug 2018
How cognitive services - artificial intelligence, machine learning, and automation, are changing the eCommerce landscape.
The current challenges eCommerce companies are facing, and what the future holds for them from a technology standpoint.
New 3D terrain for Cesium JavaScript library you can start using for free.
Introduction # This post will be a brief intro into VMWare’s distributed switch technology and how to get your feet wet in the setup. This will not cover the advanced features or in-depth configuration but a followup may come in the future.
30 Aug 2018
The new rest API in Burp 2.0 it is going to be amazing but it will allow things like this 9 line shell script I wrote this morning that will grab all public bounty sites from @arkadiyt’s bounty-targets-data repo and kick off a full scan. https://gist.github.com/jgamblin/c22c0791af7572280d7fd569141650fe I almost didn’t post this blog because I *think* this script is, in general,…
The Serverless team wanted to get more active on social media, so we created a 10 week program. It was so successful, we decided to open source it!
29 Aug 2018
Is it time for the rise of the serverless data warehouse? Read this post to find out, and for some serverless data warehousing pro-tips and considerations.
At SoundCloud, we follow best practices around continuous delivery, i.e. deploying small incremental changes often (many times a day). In…
28 Aug 2018
One of the more frequent questions people have when switching from JPA to jOOQ is how to migrate from using JPA’s first level cache? Speaking of that, are there any jOOQ guides on how to replace JPA? Any patterns on how to work without EntityManager to manage in-memory state (EM#merge()), 1st level cache, etc. — … Continue reading A Frequent…
I spend a lot of time working with MacOS and I have noticed that out of the box the operating system has some basic security settings that are not enabled by default so I have built a small script that automates configuring these. It does the following: Requires Password Immediately After Sleep. Turns On Firewall. Enables Stealth Mode. Disables Remote…
Just a quick reminder how to run a Spring Boot JAR (or any other self JAR executable) with SELinux enabled: chcon --type=java_exec_t /opt/myapp/spring-boot-app.jar To make this persistent you have to use the bin_exec_t type as java_exec_t is just an alias: # apply the bin_exec_t semanage fcontext -a -t bin_exec_t /opt/myapp/spring-boot-app.jar […] The post Running a Spring Boot JAR service with…
23 Aug 2018
OpenAI Five lost two games against top Dota 2 players at The International in Vancouver this week, maintaining a good chance of winning for the first 20–35 minutes of both games.
22 Aug 2018
Yesterday, one of my colleagues shared UI Movement website. It resulted in me playing with random animations trying to replicate mockups I liked. Here are the results:
21 Aug 2018
Implementing user authentication in serverless applications: storing user info with sessions & JWT, token validity with Lambda Custom Authorizers, user management & more.
20 Aug 2018
How to create your own mutliplayer race game with PubNub and the Go programming language.
19 Aug 2018
This weekend I’ve been freshening up the introductory material for a workshop that Francesc Campoy and I are teaching at GopherCon this month. As part of my research, these videos have been on high rotation. The first video by Sophie Wilson, the designer of the first ARM chip from which both the company and the line […]
18 Aug 2018
TL;DR There are several ways that attackers can leverage COM hijacking to influence evasive loading and hidden persistence. A few examples include CLSID (sub)key abandonment referencing, key overriding, and key linking. There are several programs and utilities that can invoke COM registry payloads including Rundll32.exe, Xwizard.exe, Verclsid.exe, Mmc.exe, and the Task Scheduler. In the traditional […]
16 Aug 2018
How to run A/B testing for your multiplayer game to identify how players are performing on different types of levels.
The Serverless Event Gateway quickstart for Kubernetes. Host your own private Event Gateway, point to any FaaS provider with CloudEvents.
15 Aug 2018
How to create a multiplayer VR bowling game for Google Cardboard with A-Frame, WebVR, Glitch, and PubNub.
Why PubNub is valuable for your developer toolbox, and how to kick off your PubNub education.
Oracle is one of the few databases that implements the SQL standard ORDBMS extensions, which essentially allow for nested collections. Other databases that have these features to some extent are CUBRID, Informix, PostgreSQL. Oracle has two types of nested collections: The main difference at first is that a nested table can be of arbitrary size, … Continue reading How to…
In this post, I’d like to share with you my serverless-specific IDE setup with WebStorm, and how it can massively accelerate your serverless workflow.
14 Aug 2018
In this post, I’m going to teach how you can debug a Node.js app in a Docker container to catch bugs that cannot be revealed in any other way. The post How to Debug a Node.js app in a Docker Container appeared first on RisingStack Engineering.
13 Aug 2018
Today, we’re open-sourcing Kafka-Kit, a toolset for scaling and recovering Kafka.
11 Aug 2018
I use a shell every day. Almost always, I want to repeat a previous command, or repeat it after a slight modification. A very convenient way is to use arrow-up to get the most recent command back. Another common trick … Continue reading →
10 Aug 2018
Mathematics students often hear about the classic “blue-eyed islanders” puzzle early in their career. If you haven’t seen it, read Terry Tao’s excellent writeup linked above. The solution uses induction and the idea of *common knowledge—*I know X, and you know that I know X, and I know that you know that I know X, and so on—to make a…
9 Aug 2018
Use the Serverless Framework, Django, SQLite and Python to quickly deploy a REST API.
8 Aug 2018
Over the last few months, we’ve been readying Clever SSO for our biggest year ever. We want students across the country logging in quickly and reliably to all of their learning applications. A couple of months ago, we described our initial stress testing approach. In this post, we want to tell you more about this […] The post Clever SSO…
For several years this blog was generated using the PHP static site generator Sculpin. I switched to Grav before deciding it was not for me. My blog does not contain dynamic data that requires PHP processing, and static HTML with JS is fine. One of the issues I had with Grav was its requirement of both a PHP-FPM and Nginx/Apache…
7 Aug 2018
In this article, we’ll guide you through the process of deploying a stateful, Dockerized Node.js app on Azure Kubernetes Service (AKS)! The post Deploying a Stateful Application on Azure Kubernetes Service (AKS) appeared first on RisingStack Engineering.
Watch the new design of MapTiler, see the beautiful graphics, new logo, and read how be built it.