~/devreads

25 Apr 2018

0xADADA 1 min read

This talk is a code walkthrough, implementing a date picker to showcase the power of ember-changeset and contextual components. Given at the Ember Boston Community meetup. Ember-changeset is an addon that provides an abstraction over Ember models such that only valid data will ever be set in a model. Contextual components are a set of conventions that allow a developer…

talksjavascriptweb developmentember.jscontextual components

24 Apr 2018

Peter Gillard-Moss 1 min read

As a young, ambitious developer with a strong sense of my own talent, I was eager to become a tech lead, and it took less than four years for me to achieve this goal. But over the next two years, the experience and reality of leading a team put me off leadership completely. For several years after, I retreated into…

23 Apr 2018

Lucas Arundell 7 min read

If there was one word to describe the theme of JSConfIS it would be experience. Beyond the wonder and fantastical environment of the conference’s location and backdrop (hosted in Reykjavik, Iceland at their world-famous Harpa concert hall) – the majority of talks focused on topics relating to both the user and the developer experience too. The […]

frontenddesignhow we work

22 Apr 2018

1 min read

Expect tests are a technique I’ve written about before, but until recently, it’s been a little on the theoretical side. That’s because it’s been hard to take these ideas out for a spin due to lack of tooling outside of Jane Street’s walls.

21 Apr 2018

jonskeet 8 min read

This blog post is effectively a log of my experience with the preview of the C# 8 nullable reference types feature. There are lots of caveats here: it’s mostly “as I go along” so there may well be backtracking. I’m not advising the right thing to do, as I’m still investigating that myself. And of … Continue reading First steps…

c# 8noda time

Matthew Green 10 min read

In general I try to limit this blog to posts that focus on generally-applicable techniques in cryptography. That is, I don’t focus on the deeply wonky. But this post is going to be an exception. Today, I’m going to talk about a topic that most “typical” implementers don’t — and shouldn’t — think about. Specifically: … Continue reading Wonk post:…

uncategorized

19 Apr 2018

Colin Schimmelfing 7 min read

For data engineers and analysts, it’s pretty common to get questions about missing or incorrect data. “Hey Data Engineer, there’s an issue with the data – I expect numbers at least 20% higher than what our reporting tools show. Can you take a look?” If you’ve ever been responsible for a Business Intelligence pipeline, you’ve […] The post Save sanity…

generalanalyticsdata

lukaseder 1 min read

Something that has been said many times, but needs constant repeating until every developer is aware of the importance of this is the performance difference between row-by-row updating and bulk updating. If you cannot guess which one will be much faster, remember that row-by-row kinda rhymes with slow-by-slow (hint hint). Disclaimer: This article will discuss … Continue reading The Performance…

sqlbatch operationbatch updatebulk operationbulk update

18 Apr 2018

1 min read

We’re releasing an experimental metalearning approach called Evolved Policy Gradients, a method that evolves the loss function of learning agents, which can enable fast training on novel tasks. Agents trained with EPG can succeed at basic tasks at test time that were outside their training regime, like learning to navigate to an object on a different side of the room…

research

17 Apr 2018

Stephen Blum 1 min read

Built with ‘security by design’, PubNub was built with developers in mind. And with onset of GDPR, PubNub delivers key components to help you comply.

Stephen Blum 1 min read

Built with ‘security by design’, PubNub was built with developers in mind. And with onset of GDPR, PubNub delivers key components to help you comply.

Alexandre Klaser 1 min read

In product development, there's a pretty important concept lurking around that sometimes gets lost between an abstract vision and its practical implications. It's called 'business value'. It should be something tangible, objectively measured, but often, this isn’t how it works. The more complex the scenario we’ve envisaged for creating business value gets, the more difficult it becomes to measure it.

16 Apr 2018

1 min read

How the new Datadog Agent written in Go runs Python checks.

13 Apr 2018

jonskeet 8 min read

I started writing a blog post about versioning in July 2017. I’ve mostly abandoned it, because I think the topic is too vast for a single post. It potentially needs a whole site/wiki/repository devoted to it. I hope to come back to it at some point, because I believe this is a hugely important topic … Continue reading Backward compatibility…

c#evil code

lukaseder 1 min read

In a previous blog post, I wrote about why you should (almost) always default to using bind variables. There are some exceptions, which I will cover in another follow-up post, but by default, bind variables are the right choice, both from a performance and from a security perspective. In this article, I will show an … Continue reading When Using…

sqlbind variablescursor cachedynamic sqlexecution plan cache

1 min read

Every now and then I hear some ridiculous things about the equals symbol. Some large subset of programmers—perhaps related to functional programmers, perhaps not—seem to think that = should only and ever mean “equality in the mathematical sense.” The argument usually goes, Functional programming gives us back that inalienable right to analyze things by using mathematics. Never again need we…

12 Apr 2018

Jonan Scheffler 20 min read

I sat down with some Ruby friends in Hiroshima last year to have a conversation about just-in-time compilation for Ruby, specifically the new MJIT method-based implementation. Those of you who are already familiar with JITs and how they work might want to skip directly to the interview, the rest of us are going to hang […] The post MJIT: A…

engineering

lukaseder 1 min read

A common problem with dynamic SQL is parsing performance in production. What makes matters worse is that many developers do not have access to production environments, so they are unaware of the problem (even if there’s nothing new about this topic). What exactly is the problem? Execution plan caches Most database vendors these days ship … Continue reading Why SQL…

sqlbind valuesbind variablescursor cacheexecution plan cache

11 Apr 2018

1 min read

iframe { height: 800px; width: 100%; margin: 0 auto; border: 5px solid #E0F7FA; border-radius: 3px; } When you have a float CSS property on a box (with a value different than none), this box must be laid out according to the float positioning algorithm. Loosely, it says: if the box has float:left, the box is positioned at the beginning of…

Sameer Soman 1 min read

In Part 1 of this series, we discussed the two styles of IoT device evolution; one, where simple sensory devices communicate with a cloud brain and the second, where Smart Internet Devices, or SIDs (thanks to low power and in-memory computing), become more prevalent. There, we had imagined the possibility of localized nano ecosystems made up of SIDs (NEoSIDs) becoming…

10 Apr 2018

lukaseder 1 min read

In a previous blog post, I’ve shown how the programmatic MockDataProvider can be used to mock the entire JDBC API through a single functional interface: Writing the provider manually can be tedious in some cases, especially when a few static SQL strings need to be mocked and constant result sets would be OK. In that … Continue reading Mocking JDBC…

javajooq-in-usedatabase mockingjdbc mockingjooq

9 Apr 2018

8 Apr 2018

JoJo Swords 1 min read

Rowan didn’t always want to be a software engineer. In fact, he had planned to study physics and astronomy when he started university. As a teen, he spent many hours behind a computer screen, where he became more and more curious as to how software worked, and the impact that technology could have on the world.

7 Apr 2018

Matthew Green 22 min read

Over the past several years I’ve been privileged to observe two contradictory and fascinating trends. The first is that we’re finally starting to use the cryptography that researchers have spent the past forty years designing. We see this every day in examples ranging from encrypted messaging to phone security to cryptocurrencies. The second trend is … Continue reading Hash-based Signatures:…

uncategorized

6 Apr 2018

Etienne Stalmans 6 min read

At Heroku we consistently monitor vulnerability feeds for new issues. Once a new vulnerability drops, we jump into action to triage and determine how our platform and customers may be affected. Part of this process involves evaluating possible attack scenarios not included in the original vulnerability report. We also spend time looking for “adjacent” and […] The post Ruby CVE-2017-17405:…

engineeringdeveloper toolsrubysecuritysecurity incidents

5 Apr 2018

1 min read

We’re launching a transfer learning contest that measures a reinforcement learning algorithm’s ability to generalize from previous experience.

research

4 Apr 2018

1 min read

One of the joys of working at Jane Street for the last 15 or so years has been seeing how our software stack has grown in scope. When I started, I was building pretty narrowly focused systems for doing statistical research on trading strategies, and then building systems for executing those same strategies.

3 Apr 2018

lukaseder 1 min read

In some cases, it’s really useful to be able to compile a class at runtime using the java.compiler module. You can e.g. load a Java source file from the database, compile it on the fly, and execute its code as if it were part of your application. In the upcoming jOOR 0.9.8, this will be … Continue reading How to…

java 10java 8java 9in-memory compilationjava compiler

2 Apr 2018

1 Apr 2018

30 Mar 2018

29 Mar 2018

Hany Elemary, Sarah LeBlanc 1 min read

Credit card fraudsters are always changing their behavior, developing new tactics. For banks, the damage isn’t just financial; their reputations are also on the line. So how do banks stay ahead of the crooks? For many, detection algorithms are essential.

28 Mar 2018

Kyle VIgen 10 min read

This story begins someplace familiar to many startups: our monolithic API had become unwieldy, and we wanted to transition towards a microservice architecture. And, like other young, scrappy startups, we couldn’t afford to freeze development while we re-architected the entire system. So, instead, each time we wrote a feature we carved off the related chunk […] The post Wag: A…

golang

lukaseder 1 min read

When performing reflective access to default methods in Java, Google seems to fail us. The solutions presented on Stack Overflow, for instance, seem to work only in a certain set of cases, and not on all Java versions. This article will illustrate different approaches to calling interface default methods through reflection, as may be required … Continue reading Correct Reflective…

javajava 10java 8java 9default methods

366 min read

This is an archive of the original "fsyncgate" email thread. This is posted here because I wanted to have a link that would fit on a slide for a talk on file safety with a mobile-friendly non-bloated format. From:Craig Ringer <craig(at)2ndquadrant(dot)com> Subject:Re: PostgreSQL's handling of fsync() errors is unsafe and risks data loss at least on XFS Date:2018-03-28 02:23:46 Hi…

27 Mar 2018

kevin 2 min read

In the middle of a housing crisis, cities up and down the Peninsula are moving forward with plans to add a ton of new office space and no new housing. These plans will add many more new commuters, without any corresponding housing for them. Last year the Apple Park launched in Cupertino. 2.8 million sq […]

todays world

5 min read

I’ve been reading up on operations research lately, including queueing theory. It started out as a way to understand the very complex mortgage process (I work at a mortgage startup) but it’s turned into my little hammer and now I see nails everywhere. One particular relationship that turns out to be somewhat more complex is the relationship between cycle time…

1 min read

This is my second Pastry Box Project post: on why working with other people makes projects more rewarding.

26 Mar 2018

bohops 7 min read

[Source: blog.microsoft.com] Introduction Not long ago, I blogged about Vshadow: Abusing the Volume Shadow Service for Evasion, Persistence, and Active Directory Database Extraction. This tool was quite interesting because it was yet another utility to perform volume shadow copy operations, and it had a few other features that could potentially support other offensive use cases. […]

uncategorizedblueteamdfirpentestredteam

6 min read

One challenge engineering teams often face is dealing with work that doesn’t revolve around developing new features but that still requires the team’s attention and time. The Content Engineering Team here at SoundCloud is no exception, so we iterated on a process to deal with unplanned and support tasks to end up with fewer interruptions and more time to spend…

25 Mar 2018

1 min read

Tai-Danae Bradley is one of the hosts of PBS Infinite Series, a delightful series of vignettes into fun parts of math. The video below is about the same of SET, a favorite among mathematicians. Specifically, Tai-Danae explains how SET cards lie in (using more technical jargon) a vector space over a finite field, and that valid sets correspond to lines.…

23 Mar 2018

Christoph Windheuser 1 min read

Artificial intelligence is everywhere: it promises to power fleets of self-driving vehicles, open up endless new business opportunities and even be the key to global power. Amid all the bluster it’s easy to lose sight of the genuine opportunity AI provides.

22 Mar 2018

21 Mar 2018

Schakko 1 min read

Today I struggled an hour or so to access a AWS hosted web application through IPv6. Just follow these rules: Get an IPv6 CIDR for your VPC: Go to VPC > Your VPCs > ${YOUR_VPC} > Edit CIDRs > Add IPv6 CIDR. The IPv6 CIDR is automatically choosen by AWS. […] The post Using IPv6 with AWS Application Load Balancer…

amazon web services

Arif Gursel 1 min read

Asynchronous provisioning allows add-ons to perform out-of-band provisioning in a first-class way. It’s intended for add-on services that need extended time to set up and help make automated app setup and orchestration easier and less error-prone. The customer will be billed as soon as the add-on starts provisioning. This means the time and cost of […] The post Updated Async…

ecosystemadd-onsapisdeveloper toolsintegrations

Sudhir Tiwari 1 min read

Imagine playing a game of rapid chess simultaneously with several players (a simul). If that’s not intimidating enough, imagine that the rules are in constant flux and new players can join the simul without any warning. This is similar to some of the experiences that business leaders go through today.

20 Mar 2018

Nahid Samsami 3 min read

Today we're excited to announce that we've open sourced oclif, a framework for building command line interfaces. We built oclif to serve as the common foundation for both the Heroku and Salesforce CLIs and to abstract away the common struggles. The framework is now available to any developer for building CLIs large or small. oclif […] The post Open Sourcing…

newsclideveloper toolslanguagesopen source

kevin 4 min read

Writing middleware in Go seems pretty easy at first, but there are several easy ways to trip up. Let's walk through some examples. Reading the Request All of the middlewares in our examples will accept an http.Handler as an argument, and return an http.Handler. This makes it easy to chain middlewares. The basic pattern for […]

todays world

Inny So, James Gregory 1 min read

Kubernetes is fast becoming the operating system for the Cloud, and brings a ubiquity which has the potential for massive benefits for technology organisations and developers. Kubernetes has seen a dramatic increase in visibility and adoption throughout 2017, with all major cloud providers now offering their own native Kubernetes service, and several container orchestration platforms rebuilding with Kubernetes as an…

19 Mar 2018

Michael Carroll 1 min read

We've always put security and compliance first. In this post, we'll dive into how you can ensure your PubNub-powered apps are GDPR-compliant.

Michael Carroll 1 min read

We've always put security and compliance first. In this post, we'll dive into how you can ensure your PubNub-powered apps are GDPR-compliant.