Understand the differences between the four main dividend policy types.
27 May 2020
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
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
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.…
For Luanna, Thoughtworks has been more than an organization to start her technology career as an apprentice. For her, it's become a home: a vibrant community that embraces her for who she is and a company that has given her unique ways to grow in ways she never imagined. What's your name? Luanna MirellyWhat are you based? Recife, BrazilWhen did…
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.
23 May 2020
A step-by-step tutorial on deploying a version of your website based on a GitHub Pull Request on Netlify
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…
[Stories of social change] Building a good news site during COVID-19
A whistle-stop tour of why cloud became the major platform for modern IT
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.
The banking industry, today, is grappling with the uncertainty of how long the COVID pandemic will continue and to what extent it will impact the global industry.
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…
When creating business cards, we have the freedom to choose any title we feel like reflects us best. Officially, many of us are “Quality Analysts”, or QAs. However, as we like to push back against the traditional “Quality Assurance” label, many of us picked alternative titles to make this point. Some of the titles are: Quality Alchemist, Question Authority or…
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 →
How to fix the blue lines and noise rendering problem in Chrome on macOS.
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…
The Thoughtworks Technology Radar identifies a number of themes in each edition, but tends to be focused on fairly specific recommendations. But the discussions we have as we decide on those recommendations typically hint at larger things happening in the tech industry. So here, I’ll expand on that bigger picture. Remote-everything, for the foreseeable future
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 →
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…
How to start freelancing as a developer and take the first practical steps.
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
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.
When is it time to move on from reading/watching tutorials and work on something?
When you think about joining a new company, what comes to mind? We're going to venture a guess that most of what you envision reflects a more 'normal' induction: an office tour, organizing your work space, or trying to memorize the names of everyone you met during day one. So when a virtual induction is the 'new normal' what does…
14 May 2020
Chat services that provide features users expect, that scales reliably, that integrates with tools like AWS, Azure, and Google Cloud Platform.
Chat services that provide features users expect, that scales reliably, that integrates with tools like AWS, Azure, and Google Cloud Platform.
Historically, when starting on a new React project, we’ve had to design and implement the state management infrastructure from scratch in a…
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 →
The very sucessful open-source project OpenMapTiles is used by 250 millions users every month. Here are the plans for the future.
Banks confront new customer demands, and the question: When to create or collaborate?
Thoughtworks InsightsAs the needs and expectations of Australians rapidly evolve, the country’s traditional banking institutions are under renewed pressure to diversify the end-user experience. The digital economy has fundamentally changed the ways in which people engage with businesses, and significantly enhanced their comfort with using technology to gain instant access to goods and services.
While a lot has changed in Australian banking in recent years, loan pricing strategies have remained remarkably consistent - in general, not to the benefit of banks, or their customers. But a perfect storm of technology, demand and industry trends is poised to challenge long-established practices, and the early responders are likely to secure the advantage.
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.
I must admit that during my most recent years being a leader, one of my main objectives has been to build the necessary foundations to create a high-performance team. I want to go far as a group and exceed our goals in the most efficient way. I also want to have excellent relationships within the team and with other areas…
Over the years, the world has seen remarkable and rapid advancements in technology which are deeply impacting society. Despite this, we continue to struggle with issues such as poverty, violence, and climate change. At Thoughtworks, we believe that technologists have a unique role to play in how we can positively impact society and push for a more equitable tech future.
Big Data is the set of methodologies used to capture, store and process a large volume of information from different sources in order to accelerate the decision-making process and thereby bring competitive advantage. The different types of information that can be classified into: Structured — Table of a DBMS and spreadsheets Semi Structured — Json and XML Files
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…
The popularity of design thinking in recent years has brought about renewed interest in paper prototyping - the use of simple paper sketches to communicate and test ideas with users. In fact, prototyping is one of the fundamental steps in popular methodologies such as design thinking, design sprint and agile design. Don’t feel overwhelmed by the buzzwords - it is…
Data mastery is at the heart of becoming a Modern Digital Business
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
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.
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
Security is always top of mind for Heroku customers; COVID-19 has further increased the urgency for enterprises and developers to deliver more mission-critical applications with sensitive and regulated data. Given the needs of our customers, including those in regulated industries like Health & Life Sciences and Financial Services, we are thrilled to announce that Heroku […] The post Bring Your…
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…
[Stories of social change] Protecting front-line workers during COVID-19 through technology
Thoughtworks InsightsOver the years, the world has seen remarkable and rapid advancements in technology which are deeply impacting society. Despite this, we continue to struggle with issues such as poverty, violence, and climate change. At Thoughtworks, we believe that technologists have a unique role to play in how we can positively impact society and push for a more equitable tech future.
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…
As we continue to weather the impacts of the COVID-19 crisis, organisations’ resilience and their ability to adapt to and navigate new realities have become more important than ever. Nevertheless, the relevance of resilience in the business and technology agenda is not new, it had actually been gaining momentum for quite a while, particularly in the face of heightened market…
In more normal times, an international transfer would be an undertaking from both a professional and personal perspective. But what does one look like during a global pandemic when most of the world is under lockdown? Matheus Tait, Managing Director of Spain, shares his experience transitioning from Ecuador to Spain without ever leaving his home in rural Brazil.
In part one of this series we shared some tips based on our experience about good practices of how to work remotely as a company, now is time to look at this from a team perspective. Team perspective “The whole is more than the sum of its parts”
In this article, I want to approach the topic of remote working from a different angle: beyond the individual, how to make it efficient from a team and a company perspective. Crises bring opportunities, and by this I don't want to minimize the effect on society, or worse, justify it. COVID-19, not delving into the disease, but rather into the…
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: /*…
Transformation programs have stalled but the need to transform has never been greater
Thoughtworks InsightsCOVID-19, while first and foremost a health emergency, has impacted every industry forever. It has amplified the rate of transformation and made the digital divide blindingly obvious.
3 May 2020
Explore Copy-on-Write (CoW) - Boost performance, manage resources, and enable versioning. Learn how it works with examples and trade-offs.