Creează un cont pentru a te abona la acest blog și a-i urmări articolele pe pagina Lectură.
-
For Moment Wall Art (and other printed product sites in future), we need to show the customer not just the main print design itself but also mock-up images demonstrating how it would look in various settings.
-
Preamble: Introduction to interface segregation (Skip this if you’re aware of what the Interface Segration Principle is.)
-
A common maxim of computer security is “the attacker knows the system”.
-
Whether or not you’re practicing test-driven development, it’s helpful to begin writing tests with the “Given, When, Then” structure. // Given we have a queued order; // When we cancel it; // Then the order should be cancelled.
-
The “Specification driven development” post mentions the idea of a “a low-resistance workflow” that can be achieved with test-driven development.
-
Recently we were trying to set-up some network configuration to route FIX traffic from a single Docker container on a VM instance through four of our VPN gateways, two of the other side’s VPN gateways and on to two destination machines on the other side.
-
I’m often dealing with little bits of JSON, and sometimes it’s helpful to pretty-print them for readability.
-
There’s a type of small “gotcha” bug that is easy to hit with promises for boolean values in JavaScript.
-
A simple cause of failure in software systems is a single problematic item in a set causing the entire set to fail.
-
(Cross-posted from https://blog.freetrade.io/a-day-in-the-life-of-a-software-engineer-at-freetrade-a39a590d7ffa) I joined Freetrade as Senior Software Engineer in October 2018.
-
If you accidentally run a bash script with sh, you’re probably going to have a bad time.
-
Sometimes I want to manually generate a UUID for some test or example data.
-
Here’s a handy Python one-liner for generating a random string of letters and digits on the command line: python -c 'import random; import string; print("".join(random.choice(string.ascii_letters + string.digits) for i in range(30)))' To make it easier to
-
Here’s a Python one-liner for generating a random UK National Insurance Number (aka NINo) on the command line, which is useful for testing apps that use one: python -c 'import random; import string; p="ABCEGHJKLMNPRSTWXYZ"; print("".join([random.choice(p)…
-
One way to configure Apache Airflow is with “Variables” that can be modified programmatically or via the Airflow UI.
-
(Cross-posted from https://blog.freetrade.io/serverless-integration-testing-at-freetrade-5359fb0b0e57) Our tech stack at Freetrade is 99% serverless.
-
There’s something fun about QR codes, and I wanted an easy way generate them as SVGs.
-
Nodejs has a handy Promise.all function that awaits an entire batch of promises.
-
I’m casually going through the Japanese course in Duolingo, and found this handy wiki series on Duolingo Fandom Japanese with lists of all of the vocab.
-
Hugo’s taxonomies feature is very flexible and covers a lot of use cases for organising static content.
-
“Every comment represents a failure to make the code self explanatory.”
-
Given a binary tree represented sequentially as a list of integer node values, we want to identify whether the sum of the left branch or the sum of th right branch is larger.
-
(Cross-posted from https://blog.freetrade.io/coming-to-firebases-nosql-realtime-database-from-a-sql-background-b605b2910c4c) We use the Firebase Realtime Database at Freetrade, as part of our infrastructure on Google Cloud.
-
“What’s the Difference Between” is a childish word-play game where you give clues for other players to guess a spoonerism phrase pair.
-
A local ElasticSearch instance powers the Chinese example sentence search feature on Chinese Boost.
-
The catalogue data model in our 3D pop up cards shop includes Product and Tag entities.
-
Be careful with the S3 origin URL for a Cloudfront distribution.
-
I was Principal Software Engineer at Freetrade, primarily working on the platform but also some client-side work.
-
One of my pastimes is translating Chinese poetry and other text into English on my East Asia Student blog.
-
A friend mentioned a code screen interview question he likes to ask based on counting the number of discrete “islands” in a grid: Given a square grid of cells, some of which are sea (0) and some of which are land (1), implement an island counter that iden…
-
https://algodaily.com/challenges/count-the-planes This is the same as the island counting problem. function* enumerateGrid(grid) { if (!
-
Given that “implement Fizz-Buzz in a language of your choice” is quite a common programming interview task, I was wondering if it would be possible to do it in one line on the command line using Unix tools.
-
https://algodaily.com/challenges/contiguous-subarray-sum There’s a fairly obvious brute-force O(n^2) way to do this by looping through every possible sub-array: function sum(numbers) { return numbers.reduce((sum, x) => sum + x, 0); } function* allSubArr…
-
https://algodaily.com/challenges/uniqueness-of-arrays This is pretty trivial with the Set class in ECMAScript 2015. function uniques(items) { return [...new Set(items)]; } If that seems like cheating, then we can achieve this with a hash map and a new a…