~/devreads

22 Jan 2019

lukaseder 1 min read

B-Tree indexes are perfect when your data is uniformly distributed. They are not really useful, when you have skewed data. I’ll explain later why this is the case, but let’s first learn how to detect “skew” What is skew? Skew is a term from statistics when a normal distribution is not symmetric. The example given … Continue reading Calculate Percentiles…

sqlinverse distribution functionoraclepercentilespercentile cont

1 min read

Some time ago I’ve started working on updating automated tests written in selenium with java. After working a bit with it I’ve noticed that from time to time constructing XPath expression can get ugly. We are writing our tests in pure java and "ugliness" usually comes from string concatenation when some extra parameters must be taken into account. I’ve decided…

21 Jan 2019

Schakko 2 min read

I am currently working on a Jenkins declarative pipeline to connect the Jenkins builds with Kubernetes, Helm and Netflix Spinnaker. One of TODOs has been to deploy different artifacts (e.g. a helm chart my-chart-0.0.1.tar.gz) to an AWS S3-compatible bucket inside a Minio installation with help of pipeline-aws-plugin. When running withAWS(endpointUrl: […] The post Receiving “com.amazonaws.services.s3.model.AmazonS3Exception: Not Found” when using Jenkins’…

devops

3 min read

My top used shell command is |. This is called a pipe. In brief, the | allows for the output of one program (on the left) to become the input of another program (on the right). It is a way of connecting two commands together. For example, if I were to run the following: echo "hello" I get the output…

Luciano Mammino 14 min read

This article explores different ways to create iterators and iterable values in Javascript for dynamic sequence generation, specifically using functions, iterators, iterables and generators. It provides code examples for implementing the Fibonacci sequence with each approach.

javascriptnode-jsdesign-patterns

20 Jan 2019

Luciano Mammino 11 min read

A personal 2018 year in review including achievements like migrating my blog to a serverless setup, 8 conference talks, career growth at Vectra, open source contributions, and reflections on side projects. Outlines goals for 2019 like writing more, releasing middy 1.0, and getting advanced AWS certifications.

life

18 Jan 2019

Molly King 5 min read

Reviewing code Happy new year! The beginning of the year is a great time to reflect on our strengths, our accomplishments, and our areas of opportunity. Perhaps you’ve decided that code reviews are one of your areas of opportunity. Wonderful! I’m so glad you’re here. I highly recommend checking out parts 1 and 2 of this series, as code review…

code-review

patrick.sullivan 5 min read

Are you working on an agile team? Odds are high that you probably are. Whether you do Scrum/Kanban/lean/extreme, you are all about getting work done with the least resistance possible. Heck, if you are still on Waterfall, you care about that. But how well are you doing? Do you know? Is that something a developer […]

culturedeveloper portaldevopsopen sourceagile

1 min read

Support for a long awaited GNU C extension, asm goto, is in the midst of landing in Clang and LLVM. We want to make sure that we release a high quality implementation, so it’s important to test the new patches on real code and not just small test cases. When we hit compiler bugs in large source files, it can…

17 Jan 2019

16 Jan 2019

15 Jan 2019

1 min read

At Jane Street, our web UIs are built on top of an in-house framework called Incr_dom, modeled in part on React’s virtual DOM. Rendering different views efficiently in response to changes made to a shared model is a quintessentially incremental computation—so it should be no surprise that Incr_dom is built on top of Incremental.

14 Jan 2019

13 min read

Russian Translation by Akhmad Karimov My software setup has been surprisingly constant over the last decade, after a few years of experimentation since I initially switched to Linux in 2006. It might be interesting to look back in another 10 years and see what changed. A quick overview of what’s running as I’m writing this post: Motivation My software priorities…

21 min read

This post introduces paging, a very common memory management scheme that we will also use for our operating system. It explains why memory isolation is needed, how segmentation works, what virtual memory is, and how paging solves memory fragmentation issues. It also explores the layout of multilevel page tables on the x86_64 architecture. This blog is openly developed on GitHub.…

13 Jan 2019

5 min read

I thought it might be fun to write a blog post on “The Life of a GitHub Action.” When you go through orientation at Google they walk you through “The Life of a Query” and it was one of my favorite things. So I am re-applying the same for a GitHub Action. For those unfamiliar Actions was a feature launched…

12 Jan 2019

1 min read

I’ve now been the co-founder and CTO of Splice for almost 6 years. It’s officially the longest place I ever worked at. It’s funny because it does feel like we just started yesterday. I decided to write down some unedited thoughts and share them here. I remembered thinking that I’d love to know what it was really like to be…

11 Jan 2019

10 Jan 2019

1 min read

At work I’m are engaged in the maintenance and development of a pretty big legacy monolithic application. Some time ago team size basically doubled. To keep things simple and activate more people we decided that we need to split the huge team into smaller more focused parties. Here is how we are working on many features of the same code…

bohops 21 min read

Introduction Greetings, Everyone! It has been several months since I’ve blogged, so it seems fitting to start the New Year off with a post about two topics that I thoroughly enjoy exploring: Application Control/Application Whitelisting (AWL) and the Component Object Model (COM). As the title suggests, I stumbled upon a technique for bypassing Microsoft Application […]

uncategorized

9 Jan 2019

8 Jan 2019

2 min read

Some people really liked the dark DDNet theme for Halloween by Soreu, so we decided to keep it possible to use the default bright or the dark theme. Thanks to xse we got a JavaScript based theme switcher. After some improvements I finally I switched it away from JavaScript entirely and finally am also using it on this blog with…

Dave Cheney 2 min read

Writing a good Go package starts with its name. Think of your package’s name as an elevator pitch, you have to describe what it does using just one word. A common cause of poor package names are utility packages. These are packages where helpers and utility code congeal. These packages contain an assortment of unrelated functions, […]

go

1 min read

With expanding web technoligies, we can now interpret responsive design as the way it affects a user’s context, and how we can be the most responsive to the user’s needs and experience.

7 Jan 2019

6 Jan 2019

4 Jan 2019

3 Jan 2019

2 Jan 2019

lukaseder 1 min read

Standard SQL is a beautiful language. Vendor specific implementations, however, have their warts. In Oracle, for example, it’s not possible to update any columns in a MERGE statement, which have been referenced by the ON clause. For example: Now, in MySQL, we can run a non-standard INSERT .. ON DUPLICATE KEY UPDATE statement like this: … Continue reading How to…

sqlmerge statementora-38104oracle bugoralce

31 Dec 2018

1 min read

Two men start running at each other with loaded pistols, ready to shoot! It’s a foggy morning for a duel. Newton and Leibniz have decided this macabre contest is the only way to settle their dispute over who invented Calculus. Each pistol is fitted with a silencer and has a single bullet. Neither can tell when the other has attempted…

30 Dec 2018

27 Dec 2018

Dave Cheney 3 min read

Garbage collection is a field with its own terminology. Concepts like like mutators, card marking, and write barriers create a hurdle to understanding how garbage collectors work. Here’s an analogy to explain the operations of a concurrent garbage collector using everyday items found in the workplace. Before we discuss the operation of concurrent garbage collection, let’s introduce […]

gosmall ideasgarbage collectiongc

21 Dec 2018

20 Dec 2018

19 Dec 2018

18 Dec 2018

8 min read

In a previous post, Docker PHP/PHP-FPM Configuration via Environment Variables, I described how to use environment variables to configure PHP FPM and CLI. With my method you can override one of over 650 PHP INI settings. More INI settings are but a PR away! In a more recent post, PHP Modules Toggled via Environment Variables I extended this concept to…

dockerphpnginxapacheblog

17 Dec 2018

Matthew Green 9 min read

The past few years have been an amazing time for the deployment of encryption. In ten years, encrypted web connections have gone from a novelty into a requirement for running a modern website. Smartphone manufacturers deployed default storage encryption to billions of phones. End-to-end encrypted messaging and phone calls are now deployed to billions of users. While this … Continue…

uncategorized

15 Dec 2018

jgamblin 1 min read

I have developed a bad habit of picking up vanity domain names and not really doing much with them. Last month at AWS Re:Invent I picked up ServerlessSecurity.org and really wanted to do something with it but didn’t feel like maintaining, or paying for, a VPS so after doing some looking around I found that is was possible to point…

uncategorized

14 Dec 2018

1 min read

We’ve discovered that the gradient noise scale, a simple statistical metric, predicts the parallelizability of neural network training on a wide range of tasks. Since complex tasks tend to have noisier gradients, increasingly large batch sizes are likely to become useful in the future, removing one potential limit to further growth of AI systems. More broadly, these results show that…

research

8 min read

In my previous post, Docker PHP/PHP-FPM Configuration via Environment Variables I introduced my new PHP image that uses environment variables to configure its INI settings. The Dockerfile is a beast, to be sure. At over 650 lines it documents my attempt at bringing true flexibility to an immutable PHP image. With it, you can set any number of PHP INI…

dockerphpblog

13 Dec 2018

Molly King 4 min read

Being Reviewed Putting your code up for peer review can be a scary proposition. You’ve artfully crafted this code over multiple hours and cups of coffee. Your precious, perfect baby is about to be exposed to the big, dark, scary world and torn to pieces by your coworkers. Okay, maybe I’m overstating things a bit. But code reviews can be…

code-reviewsoftware-development

12 Dec 2018

10 Dec 2018

jgamblin 1 min read

Here is a list of my favorite security books from 2018 if you are looking for that last minute gift or have some extra time around the holidays to catch up on some reading. The GCHQ Puzzle Book 2 I just got The GCHQ Puzzle Book 2, and like the original, it has quickly become the book that I always…

uncategorized

7 Dec 2018

lukaseder 1 min read

Annotation processors can be useful as a hacky workaround to get some language feature into the Java language. jOOQ also has an annotation processor that helps validate SQL syntax for: Plain SQL usage (SQL injection risk) SQL dialect support (prevent using an Oracle only feature on MySQL) You can read about it more in detail … Continue reading How to…

javaannotation processingannotation processorjooqjoor

6 Dec 2018

1 min read

We’re releasing CoinRun, a training environment which provides a metric for an agent’s ability to transfer its experience to novel situations and has already helped clarify a longstanding puzzle in reinforcement learning. CoinRun strikes a desirable balance in complexity: the environment is simpler than traditional platformer games like Sonic the Hedgehog but still poses a worthy generalization challenge for state…

research

5 Dec 2018

0xADADA 1 min read

★★★★★ Review of the manga “Opus” by Satoshi Kon. “Opus” is a brilliant postmodernist introspection of the challenges of writing, creativity, and the cliches of pop culture; delivered in a manga format. Author Satoshi Kon worked on this manga between 1995-1996 as it was serialized in “Comic Guy” manga magazine until the magazine closed abruptly in 1996. The final 3…

notesreviews

4 Dec 2018

Stanko 1 min read

I want to brag a little - my npm packages have been downloaded more than 1 million timesStats are coming from npm-stat.com. this year! And I finally got a real domain: https://muffinman.io/ I've been quiet for the last couple of months. Mostly because I was busy with other things, both work and personal. But I do have a few small…

3 Dec 2018

Henrik Warne 5 min read

For the system at work, I am on call one week every seven weeks. For most of the past ten years, I have been on organized on call rotations for the systems I have been developing. I think being on … Continue reading →

workon call

1 Dec 2018

1 min read

For the last four years I’ve been working on a book for programmers who want to learn mathematics. It’s finally done, and you can buy it today. The website for the book is pimbook.org, which has purchase links—paperback and ebook—and a preview of the first pages. You can see more snippets later in the book on the Amazon listing’s “Look…

jgamblin 1 min read

I spent this last week in Las Vegas attending AWS Re:Invent. This event is mind-numbingly massive with classes happening at 4 or 5 hotels all over the strip. I personally spent over an hour every day on their (nice but extremely slow) shuttle buses between the MGM Grand, Aria and the Sands Expo Center. It would be impossible to see…

uncategorized

30 Nov 2018

29 Nov 2018

36 min read

This is #4 in a very long series of posts on Stack Overflow’s architecture. Stack Overflow: How We Do Deployment - 2016 Edition What is monitoring? As far as I can tell, it means different things to different people. But we more or less agree on the concept. I think. Maybe. Let’s find out! When someone says monitoring, I think…

blog

28 Nov 2018

27 Nov 2018

26 Nov 2018

Molly King 4 min read

Self-Review Code reviews are an integral part of software engineering, and unless you work alone, are likely to be a regular part of your work life in building software products. Code reviews can occasionally be contentious, and about as fun as a root canal, but they don’t have to be! Over the course of this three-part blog series, I will…

code-reviewsoftware-development

Unknown 2 min read

We are making some changes to the cPouta flavours offering You won't be able to launch _new_ hpc-gen1.*core, hpc-gen2.2core, hpc-gen2.8core, hpc-gen2.16core flavours. We are adding hpc.4 flavours. We are adding a standard.xxlarge flavour. hpc.4.5core - 5 cores 22GB RAM - replacement for hpc-gen1.1core, hpc-gen1.4core, alternative to hpc-gen2.2core, hpc.4.10core - 10 cores 44GB RAM - replacement for hpc-gen1.8core, alternative to hpc-gen2.8core…

1 min read

Poor cash flow is responsible for almost half of small business insolvencies in Australia. In this guide, we ask small business leaders to tell us how they took control of cash flow, and what lessons they learned along the way.

23 Nov 2018