Explore the advantages and disadvantages of automated reconciliation tools.
29 May 2020
Public liability insurance can protect your business in the event of a claim.
Are you creating a mobile app or website with dark mode and looking for a map to fit the design? Try Dark and Night maps and create your own!
28 May 2020
Source code for this episode is here. Just as a reminder: I am developing my C# version of Stafford’s “QLIFE” algorithm by taking Abrash’s “keep the neighbour counts around” algorithm and gradually adding optimizations. That’s much easier to understand than … Continue reading →
27 May 2020
“You’re not really a developer. Sooner or later people are going to realize you don’t know what you’re talking about. You’re just not good enough.” You’ve probably had thoughts like these at one point or another. You’ve never heard someone else tell you that you’re not a developer, but you’re still thinking it. You may be thinking along these lines…
Find out how to handle recurring payment processing for a start-up business.
Understand the differences between the four main dividend policy types.
I always liked the flow on this one, it feels natural. Created: May 2020 Size: 30x36cm Paper: Fabriano Bristol 250gsm Pens: Pigma Micron
Orchestrating animations with promises, performance improvements with replaceable animations, smoother animations with composite modes, and more.
26 May 2020
Code for this episode can be found here. Exciting news for the client; I have added a play/pause button. I suppose I could have added that single line of code earlier, but hey, better now than later. Last time on … Continue reading →
Implement Two Hat enterprise-level profanity filtering and content moderation in PubNub Chat
Serverless Express enables you to easily host Express.js APIs on AWS Lambda and AWS HTTP API
25 May 2020
My mom has a tendency to buy these really terribly spec’d Windows machines. She’s been doing it for as long as I’ve been alive. I was surprised when on one of our latest Zoom calls she said “You know what, I’m beginning to think that size matters.” I’ve only been telling her this for years! Here’s the problem. There are…
Steganography. The art of hiding something right under your nose. For as long as humans have been alive, we’ve been trying to hide things — whether it’s our last slice of pizza or the location of a buried treasure. Do you remember the cool invisible lemon ink trick, where we’d write the secret message with lemon and heat the paper…
LibreSSL is a fork of OpenSSL that improves code quality and security. It was originally developed for OpenBSD, but has since been ported to several platforms (Linux, *BSD, HP-UX, Solaris, macOS, AIX, Windows) and is now the default TLS provider for some of them. When debugging a program that uses LibreSSL, it can be useful to see decrypted network traffic.…
24 May 2020
There are situations in which you want to use your own Artifactory server for resolving Maven dependencies. Maybe you have private artifacts or are not yet in the process of migrating from Artifactory to GitHub Packages. What is the goal of this blog post? This blog shows you how you […] The post How to use a private Maven repository…
Per the overlapping interfaces proposal, Go 1.14 now permits embedding of interfaces with overlapping method sets. This is a brief post explain what this change means: Let’s start with the definition of the three key interfaces from the io package; io.Reader, io.Writer, and io.Closer: Just as embedding a type inside a struct allows the embedded type’s […]
Consistent hashing is a hashing technique that performs really well when operated in a dynamic environment where the distributed system scales up and scales down frequently.
22 May 2020
In Go, how do you run several operations that might return an error, and return those errors at the end? Here's how I do it.
In my book I discuss the importance of context in reading and writing mathematics. An early step in becoming comfortable with math is deciphering the syntax of mathematical expressions. Another is in connecting the symbols to their semantic meanings. Embedded in these is the subproblem of knowing what to call the commonly used symbols. The more abstract you go, the…
21 May 2020
GoCardless helps 8x8 cater to global payment preferences for Direct Debit.
Source code for this episode is here. I’ve added a panel to the UI that moves as the UI is resized; I’ll add some controls to it in future episodes. Back in 1994 I made a photocopy of an article … Continue reading →
Learn about VAT exemption in the UK, VAT-exempt items, and much more.
Learn everything you need to know about how dividends policies affect cash flow.
Find out everything you need to know with our supply chain finance definition.
20 May 2020
.gist table { margin-bottom: 0; } Although GitHub.com is still a Rails monolith, over the past few years we’ve begun the process of extracting critical functionality from our main application, by rewriting some of the code in Go—mostly addressing the pieces that need to run faster and more reliably than what we can accomplish with Ruby. Last year, we deployed…
Firefox Profiler is a powerful web-based performance analysis interface featuring call trees, stack charts, flame graphs, and more. All data filtering, zooming, slicing, and transformation actions are preserved in shareable URLs. FunctionTrace is a low-overhead profiler that runs on unmodified Python applications. Integrated with Firefox, it's a new breed of analysis tool project built conveniently on top of the Firefox…
With the release of Blender 2.83, Blender Foundation will start a LTS (Long Term Support) pilot program.
At GoCardless, this week is all about lending an ear.
Stretch opportunities are tasks or projects that are a bit beyond your current skill or knowledge level and that allow you to improve and…
19 May 2020
I really enjoyed reading Artificial Intelligence – A Guide for Thinking Humans by Melanie Mitchell. The author is a professor of computer science and an artificial intelligence (AI) researcher. The book is her attempt at working out if the singularity … Continue reading →
Are you interested to create and publish NPM packages/libraries to enrich Angular functionality? Take a quick look at this post. You can share solutions with other developers. A simple package can solve many problems and resolve the issue quickly. If you are working with multiple applications? Package approach will help you to solve the components problems easily. In this post…
18 May 2020
I have been spending a lot of time over the last few weeks looking at the OSQuery to get a better understanding of what it can do since it seems every major security tool from Sophos to Cisco to CarbonBlack is building it into their product. I have also been looking at Juypter notebooks for machine learning and data science…
Last time on FAIC I discussed a technique for parallelizing computation of Life grids by using SIMD instructions to handle 256 bits worth of grid state truly in parallel. Today I’m going to not present an implementation, but rather discuss … Continue reading →
When you’re looking for a new programming job, how do you explain your value? The usual approach is a long list of technologies, but this leaves out a critical skill: your ability to solve problems. If you can convey your level of skill at problem solving, you can get: More job offers. Jobs with technologies you don’t know. A higher…
17 May 2020
This essay is a slightly modified version of the closing chapter of A Programmer’s Introduction to Mathematics. We are no longer constrained by pencil and paper. The symbolic shuffle should no longer be taken for granted as the fundamental mechanism for understanding quantity and change. Math needs a new interface. –Bret Victor, “Kill Math” Math is a human activity. It’s…
The Second Edition of A Programmer’s Introduction to Mathematics is now available on Amazon. The second edition includes a multitude of fixes to typos and some technical errata, thanks to my readers who submitted over 200 errata. Readers who provided names are credited in the front matter. I also added new exercises, and three new appendices: a notation table to…
Dive into Python's integer implementation! Explore how singletons and reference counting optimize performance for small integers.
Real elevation data but with applied exponential scale to emphasize the relief. I made three plots, all three a little bit different. They ended up in three different countries. Created: May 2020 Size: 42x30cm Paper: Fabriano Bristol 250gsm Pens: Pigma Micron
16 May 2020
A few days ago Fatih posted this question on twitter. I’m going to attempt to give my answer, however to do that I need to apply some simplifications as my previous attempts to answer it involved a lot of phrases like a pointer to a pointer, and other unhelpful waffling. Hopefully my simplified answer can […]
15 May 2020
In the last few months I’ve worked with contributors who wanted to be selected to work on Treeherder during this year’s . The initial proposal was to improve various Treeherder developer ergonomics (read: make Treeherder development easier). I’ve had three very active contributors that have helped to make a big difference (in alphabetical order): , and .Google Summer of CodeShubhamShubhankSuyash…
The relationship between HTML and CSS is special: mixing content via HTML with presentation from CSS to make an awesome presentation. Sometimes, however, you need to employ CSS tricks solely to enhance functionality. This could be one of those cases. When browsing through the Firefox DevTools console code, I noticed a really clever technique for hiding text on screen but…
What are alternative payment methods? Check out our definitive guide.
Discover more about how to boost your SaaS company’s customer lifecycle.
14 May 2020
Chat services that provide features users expect, that scales reliably, that integrates with tools like AWS, Azure, and Google Cloud Platform.
Code for this episode can be found here, which — unusually — is not my GitHub repo. Last time on FAIC I mentioned that there were two basic techniques for improving raw performance: keep the algorithm the same but find … Continue reading →
Another week has passed, and another 3 million people in the US have filed for unemployment. While the current situation hasn’t impacted programming jobs quite as much, it’s just a matter of time before the economic damage hits most everywhere. There will be layoffs, and plenty of them, and occasionally whole companies shutting down. So even if your job is…
The very sucessful open-source project OpenMapTiles is used by 250 millions users every month. Here are the plans for the future.
13 May 2020
Hola amigos, espero que todos estén bien y se mantengan sanos y salvos. Cada nueva versión de nuestro navegador favorito viene siempre con una buena pizca de expectación, ¡y ya estamos aquí con Firefox 76! El soporte de la plataforma web recibe algunas excelentes novedades en esta actualización, como los worklets de audio y ciertas […] The post Firefox 76:…
I convinced myself six months ago that I needed to give the Apple Watch a try. While I wear it every day and enjoy a few features, I’ve felt a bit let down by the experience. I do, however, believe that the Apple Watch makes notifications and other “little things” easier. One of those little things is unlocking my Mac…
How the GoCardless team is experiencing Ramadan during the global lockdown.
12 May 2020
Introduction Lateral movement techniques in the wonderful world of enterprise Windows are quite finite. There are only so many techniques and variations of those techniques that attackers use to execute remote commands and payloads. With the rise of PowerShell well over a decade ago, most ethical hackers may agree that Windows Remote Management (WinRM) became […]
During my early years in web development, one of the most costly and annoying tasks was securing and installing security certificates on client websites. Most providers charged hundreds of dollars for SSL certs and getting them configured properly was a huge source of stress. Securing sites is much easier these days, thanks to services like ZeroSSL. With ZeroSSL you get…
After 4 months, the tracker curfew comes to an end - it's time to wrap things up.
Firefox 76 在 Web 平台上提供很棒的新功能,例如改善 JavaScript 的 Audio Worklets 和 Intl。此外,我們也在 Firefox 的開發工具中添加許多新工能,使開發的過程更加輕鬆且便利。 The post Firefox 76: Audio worklets 以及其他更新 appeared first on Mozilla Hacks - the Web developer blog.
Firefox 76为Web平台支持带来了新的出色功能,如Audio Worklet和JavaScript的Intl改进等。另外,Firefox DevTools中也添加了诸多一流改进,让JavaScript调试和开发变得更加轻松快捷。 The post Firefox 76:Audio Worklet和其他诀窍 appeared first on Mozilla Hacks - the Web developer blog.
Mobile iOS Safari doesn't display preview thumbnail until you tap on the video. My go-to solution was to define a poster attribute and move on. But today I learned I could use something called Media Fragments. Media Fragments specify a way of sharing parts of audio and video files by simply adding url params. Browser support varies, but fortunately support…
11 May 2020
Last time on FAIC we took a look at Scholes’ extremely concise Life algorithm, which treats a grid as an array that you can treat as a mathematical value with some unusual but entirely straightforward manipulations. We didn’t get the … Continue reading →
10 May 2020
Explore Binary Search variations k-searches, unified search & fractional cascading. Optimize search time in k sorted lists!
9 May 2020
Let's revisit one of the most humiliating (and expensive) moments of my life. It happened a decade ago and even today I cringe and seethe when I think about it. I was one of 25 finalists for a $20,000 scholarship in my junior year of college. The last step was an hour long interview with […]
Conventional wisdom dictates that the larger the number of types declared in a Go program, the larger the resulting binary. Intuitively this makes sense, after all, what’s the point in defining a bunch of types if you’re not going to write code that operates on them. However, part of the job of a linker is […]
8 May 2020
Or how to use Pattern-Matching for Tests While acting as a mentor on the FutureLearn MOOC about Erlang I presented an idea that folks like Adolfo Neto loved ( he even tweeted about it 🧡). It is, in fact, the way I introduce people to pattern-matching when I’m teaching them Erlang. It’s a way to write tests that let you…
High-resolution aerial imagery and official government map data of entire Japan is now available to the global audience via Maps API. It becomes possible thanks to a partnership with our local business partner, MIERUNE.
7 May 2020
Code for today’s episode can be found here. I’ve added drag scrolling to the user interface, so if you click and hold, you can move around the grid much the same way that you’d move around an online map site. … Continue reading →
Earlier this week, Audio Worklets landed in the release of Firefox 76. We’re ready to start bridging the gap between web audio and native. Developers can now leverage AudioWorklet to write arbitrary audio processing code. This exciting new functionality raises the bar for emerging web experiences like 3D games, VR, and music production. The post High Performance Web Audio with…
Another one of these? Really? # Yes. I love my Ambilight setup on my TV, and when I was originally doing this had some trouble oweing to different information here and there, so decided to do my own blog post on the matter.
The circuit breaker is a communication pattern that helps to avoid cascading failure of the system and gives dependent services time to recover. Along with fallback values defined by the developer, it gives a pretty wide safe net when communication channel is broken. Read more
It has been almost two months since my last post because I was super busy with my new passion, generative artFor now, you can see my work on my Instagram profile. Expect new posts about my process and tools in the near future.. I also got my hands on the brilliant little machine by Evil Mad Scientist, AxiDraw plotter, and…
6 May 2020
Two of the most prominent utilities in web development today are ESLint and Microsoft’s Visual Studio Code. I enjoy using both, and I love the integration between both tools, but warnings from ESLint inside Visual Studio Code aren’t fulfilling — I’d rather lint errors be fixed each time I save. Complete the following steps to make Visual Studio Code fix…
5 May 2020
SQL Server supports transforming flat tabular SQL result sets into hierarchical structures by convention using the convenient FOR XML or FOR JSON syntaxes. This is really convenient and less verbose than the standard SQL/XML or SQL/JSON APIs – although the standard ones are more powerful. In this blog post, I’d like to show a few … Continue reading Using SQL…
Firefox 76 delivers great new features for web platform support, such as Audio Worklets and Intl improvements, on the JavaScript side. Also, we’ve added a number of topnotch improvements to Firefox DevTools to make JavaScript debugging and development easier and quicker. The post Firefox 76: Audio worklets and other tricks appeared first on Mozilla Hacks - the Web developer blog.
Async Iterators can be used when we don't know the values & end state we iterate over. Instead, we get promises eventually resolving to the usual object. The post About Async Iterators in Node.js appeared first on RisingStack Engineering.
Freemium business models can help to attract a large user base.
Cash flow management can ensure your business stays financially healthy.
There are several challenges associated with global cross-border payments.
Answers to all your questions about debt vs. equity financing.
We’re releasing an analysis showing that since 2012 the amount of compute needed to train a neural net to the same performance on ImageNet classification has been decreasing by a factor of 2 every 16 months. Compared to 2012, it now takes 44 times less compute to train a neural network to the level of AlexNet (by contrast, Moore’s Law…
A little while back, the web team at SoundCloud got an urgent report that our upload page looked weird in the US. Web engineering is based…
4 May 2020
Code for this episode can be found here. The only interesting change I’ve made to the client is that if you press “P”, it pauses the simulation and runs 5000 steps of the “acorn” pattern, and then dumps the number … Continue reading →
Making Tax Digital makes it easier for businesses to get taxes right.
Now that we have most of the basics of HTML and CSS in the browser, we’ve begun implementing new features that I would consider “quality of life” improvements, many of which have been inspired by mobile. One great example is the CSS prefers-color-scheme media query, which allows developers to cater their design to system theme (dark or light) preference: /*…
3 May 2020
Being cooped up at home got me looking into the new Xbox and PlayStation 5. I was curious about the innovations in the consoles since their successors. Both claim to have ray tracing and support for 8K graphics. This then got me thinking about how prevalent 8K televisions are today. 8K televisions seem to be in the same state as…
Explore Copy-on-Write (CoW) - Boost performance, manage resources, and enable versioning. Learn how it works with examples and trade-offs.
2 May 2020
In the previous post I discussed how leaf inlining allows the Go compiler to reduce the overhead of function calls and extend optimisation opportunities across function boundaries. In this post I’ll discuss the limits of inlining and leaf vs mid-stack inlining. The limits of inlining Inlining a function into its caller removes the call’s overhead […]
My first attempt at real 3D vector composition. The gap was initially added to hide the border between two papers, but it grew on me. Created: May 2020 Size: 83x30cm (2 x A3) Paper: Fabriano Bristol 250gsm Pens: Pigma Micron
Created: May 2020 Size: 83x30cm (2 x A3) Paper: Fabriano Black Black 300gsm Pens: Uni-ball Signo UM-153
30 Apr 2020
The Dart SDK provides developers a simple way to build client-optimized multi-platform applications using Dart with the Flutter Framework on PubNub.
Code for this episode can be found here. I have not added any more code to the engine, but the client now has two features of great use to me; pressing space toggles whether the simulation is running or paused, … Continue reading →
Fuzzing, or fuzz testing, is an automated approach for testing the safety and stability of software. For the past 3 years, the Firefox fuzzing team has been developing a new fuzzer to identify security vulnerabilities in the implementation of WebAPIs in Firefox. This fuzzer leverages the WebAPIs’ own WebIDL definitions as a fuzzing grammar. The post Fuzzing Firefox with WebIDL…
What do payment service providers do? Read on to find out.
We’re introducing Jukebox, a neural net that generates music, including rudimentary singing, as raw audio in a variety of genres and artist styles. We’re releasing the model weights and code, along with a tool to explore the generated samples.
Toner, map style created a decade ago by a famous Stamen Design studio, is now available in vector tiles.
29 Apr 2020
Telemedicine, telehealth, and mhealth are all healthcare technologies that allow medical information to be communicated remotely.
Your little Firebase project is getting bigger every day? Never underestimate the need to establish a solid and firm integration tests from the get go.
Find out how to measure customer loyalty and retention with our useful guide.
Learn more about the importance of requisition forms with our handy guide.