In the beginning, before the go tool, before Go 1.0, the Go distribution stored the standard library in a subdirectory called pkg/ and the commands which built upon it in cmd/. This wasn’t so much a deliberate taxonomy but a by product of the original make based build system. In September 2014, the Go distribution […]
6 Oct 2019
Released a tiny npm package today: @0xadada/random-emoji, a javascript random emoji function with zero dependencies. $ yarn add @0xadada/random-emoji $ node > const random = require('@0xadada/random-emoji'); > random() '😁' let a = random(); // defaults to 'emoticons' let b = random('emoticons'); let c = random('food'); let d = random('animals'); let e = random('expressions'); console.log(a, b, c, d, e); // 😍…
Shared some tips about managing medium-sized OpenSource projects. The slides are in Portuguese.
This post gives an overview of the recent updates to the Writing an OS in Rust blog and the used libraries and tools. I finished my master thesis and got my degree this month, so I only had limited time for my open source work. I still managed to perform a few minor updates, including code simplications for the Paging…
4 Oct 2019
This week-long event recognises great customer service, and we're celebrating.
Invoice finance can give you fast access to cash – could it work for you?
3 Oct 2019
There are a number of variants to this accounting process, useful for ensuring correct balances are recorded within accounts. This guide explains what they are, why reconciliation is important, and how to conduct reconciliation.
Your monthly resource for tackling the complexities and challenges of the international recurring payments space.
2 Oct 2019
CSS is the design language of the web — one of three core web languages — but it also seems to be the most contentious and often perplexing. It's too easy and too hard, too fragile and too resilient. Love it or hate it, CSS is weird: not quite markup, not quite programming in the common (imperative) sense, and nothing…
Node 8 won’t get any more updates from 2020. In this article, we’ll discuss how and why you should move to newer, feature-packed, still supported versions. The post Update Now! Node.js 8 is Not Supported from 2020. appeared first on RisingStack Engineering.
1 Oct 2019
Create a TypeScript and React Native app using Presence in the final part of my Air Traffic Control game development series.
Create a real-time React Native app using PubNub and Redux in the second part of my Air Traffic Control game development series.
Create a real-time Node.js server application using PubNub in this first post of my Air Traffic Control game development series.
Today we’re launching a new video channel, with a selection of shorts to kick things off. Get started with an intro to Dark Mode on the web, by Deja Hodge. Then, Jen Simmons shows us how to access a handy third-panel in the Firefox Developer Tools. Miriam Suzanne has a video all about the ::marker pseudo-element and list counters. No…
Use our handy cheat sheet to make sure your payment experience is fully optimised for the requirements of your customer. Learn how to maximise payment success, get better insights into your process and reduce churn.
MapTiler in cooperation with Airbus presents high-resolution satellite map of Europe.
We are adding support for Python to the Serverless Framework Dashboard to enable monitoring, alerts, and much more for your Python serverless applications.
This is part two in a series about solving Gradle remote build cache misses. Solving build cache misses is important to both avoid work that…
30 Sept 2019
One of the Stream APIs greatest features is its laziness. The whole pipeline is constructed lazily, stored as a set of instructions, akin to a SQL execution plan. Only when we invoke a terminal operation, the pipeline is started. It is still lazy, meaning that some operations may be short circuited. Some third party libraries … Continue reading A Quick…
Creating experiences that look and work great across different browsers is one of the biggest challenges on the web. It can also be the most rewarding part, as it gets your app to as many users as possible. Testing legacy browsers late in the development process can break a feature that you spent hours on, even requiring rewrites to fix.…
29 Sept 2019
I like to use Test-Driven Development (TDD) when coding. However, in some circumstances, TDD is more of a hinderance than a help. This happens when how to solve the problem is not clear. Then it is better to first write … Continue reading →
27 Sept 2019
MySQL 8 does not yet support the BOOLEAN type as specified in the SQL standard. There is a DDL “type” called BOOL, which is just an alias for TINYINT: The above produces: TABLE_NAME|COLUMN_NAME|DATA_TYPE|COLUMN_TYPE| ----------|-----------|---------|-----------| t |b |tinyint |tinyint(1) | Notice that BOOL translates to a specific “type” of TINYINT, a TINYINT(1), where we might be … Continue reading How to…
The digital transformation of energy payments in the UK: how other countries can take note
GoCardlessWhat can other countries learn from the UK's digital-first approach to payments?
26 Sept 2019
MapTiler team was presenting at the open-source State of the Map conference.
Two years ago I wrote this rant. Firefox had a problem on MacOS on scaled resolutions, resulting in insanely high CPU usage and battery drain. Issue is finally fixed, and I'm happy to say I'm using it again. The fix is expected to land in the stable version in late October 2019, with the release of Firefox 70. Meanwhile you…
25 Sept 2019
Fascism is an expensive to maintain state-of-siege by the capitalist economy attempting to defend itself by an irrational means. Fascism rallies to the defense of the conservative bourgeois ideology of the family, private property, the moral order, and patriotic nationalism. It unites the petty-bourgeois, the unemployed who have been hurt by the crisis or disappointed by the impotence of the…
Creative web design and systematic web design don’t need to be at arms. This post examines how to use a design system (Material) and extend it to make it your own.
24 Sept 2019
Edward Snowden recently released his memoirs. In some parts of the Internet, this has rekindled an ancient debate: namely, was it all worth it? Did Snowden’s leaks make us better off, or did Snowden just embarass us and set back U.S. security by decades? Most of the arguments are so familiar that they’re boring at … Continue reading Looking back…
Last March, I shared that we were starting to look for a new CEO for Stack Overflow. We were looking for that rare combination of someone who… Read more "Welcome, Prashanth!"
As we look at advancements in mixed reality like the WebXR API, we are able to explore ways to feel more present with others through technology. Hubs by Mozilla is built on top of WebRTC and supports real-time conversations between users in a shared virtual environment. Users embody 3D models in the glTF format called avatars. The code powering Hubs…
APIs should be easy to use and hard to misuse. — Josh Bloch A good example of a simple looking, but hard to use correctly, API is one which takes two or more parameters of the same type. Let’s compare two function signatures: What’s the difference between these functions? Obviously one returns the maximum of […]
23 Sept 2019
Cloud-based solutions abound in the digital age, with many of us using online software to manage our emails, our banking or our photo storage. So why not move your business’ accounting and bookkeeping needs to the cloud too?
Introducing DDSketch, the first fully-mergeable, relative-error quantile sketching algorithm with formal guarantees.
22 Sept 2019
Mocking library is an important tool in every developer toolbox. Sometimes you want to do things that at first glance look a bit more complex than returning number 42 from some method. Let’s see what stubbing techniques are available in Mockito out of the box and what they offer. Read more
20 Sept 2019
19 Sept 2019
I just spent a day and a half recovering my Github account after the code in my 2FA application stopped working for authentication. GitHub has a good support article on how to recover your account that has this ominous warning on it: Warning: For security reasons, GitHub Support may not be able to restore access to accounts with two-factor authentication…
One of the biggest and undead myths in SQL is that COUNT(*) is faster than COUNT(1). Or was it that COUNT(1) is faster than COUNT(*)? Impossible to remember, because there’s really no reason at all why one should be faster than the other. But is the myth justified? Let’s measure! How does COUNT(…) work? But … Continue reading What’s Faster?…
The cost-benefit analysis: A procedure used by businesses to assess the value of undertaking a project or making an important decision. Here's how you do one, and when and why you should.
We’ve fine-tuned the 774M parameter GPT-2 language model using human feedback for various tasks, successfully matching the preferences of the external human labelers, though those preferences did not always match our own. Specifically, for summarization tasks the labelers preferred sentences copied wholesale from the input (we’d only asked them to ensure accuracy), so our models learned to copy. Summarization required…
18 Sept 2019
GoCardless now supports ACH payments in the US
17 Sept 2019
PubMoji: An open source, React Native app for billowing emojis anywhere in the world, in real time.
Building and releasing a browser is complicated and involves many players. To optimize the process, and make it more reliable for all users, over the years we’ve developed a phased release strategy that includes ‘pre-release’ channels: Firefox Nightly, Beta, and Developer Edition. Starting Q1 2020, we're making a change. We plan to start shipping a major Firefox release every 4…
We’ve observed agents discovering progressively more complex tool use while playing a simple game of hide-and-seek. Through training in our new simulated hide-and-seek environment, agents build a series of six distinct strategies and counterstrategies, some of which we did not know our environment supported. The self-supervised emergent complexity in this simple environment further suggests that multi-agent co-adaptation may one day…
Deploy Next.js on AWS Lambda@Edge for global, fast server-side rendered react applications, and easily interact with other AWS resources.
Learn how to create, run and deploy a simple REST API to Azure Functions with the Serverless Framework
16 Sept 2019
I love bookmarklets, those small and elegant lines of javascript that you can bookmark and which do random functions in the browser when clicked. uri-editor.js is 1-line of HTML that’ll run a text editor in your browser. Drag the link into your bookmarks to save it as a quick browser-based editor tool for those moments you need a quick editor…
Using Lambda@Edge is a great way to speed up your application. And the Serverless Framework now has support for it.
15 Sept 2019
I often get contacted by recruiters asking if I am interested in changing company. Even if I am happy where I am, I briefly check out companies I have not heard of before. One reason is that you never know, … Continue reading →
13 Sept 2019
Two days at PDX DevOpsDays, a gathering of system administrators who use version control, and write a lot of YAML.
12 Sept 2019
Five women on Clever’s engineering team discuss what inclusivity looks like at Clever, how to grow and maintain female leadership at a tech company, and the challenges they are excited to tackle within their roles. The engineering team is passionate about improving education and solving hard problems. One problem the Clever team is constantly solving […] The post How Clever…
In an electric car, the (enormous) battery is a major part of the price. If electric car prices are decreasing, battery costs must be decreasing, because it’s not like the cost of fabricating rubber, aluminum, glass, and steel into car shapes can decline that much,
Use captureError to monitor and debug caught errors in your Serverless Framework services even when they are caught by your code.
Please note that I'm not using Jekyll anymore, so this post might be outdated. I'm using Staticman as a comment system on this blog. Unfortunately public instance can't handle all of the requests coming in. That resulted in some readers being unable to post a comment. That is why I decided to run my own instance on Heroku. It was…
11 Sept 2019
Using the right data type for some calculation sounds like some obvious advice. There are many blogs about using temporal data types for temporal data, instead of strings. An obvious reason is data integrity and correctness. We don’t gain much in storing dates as 2019-09-10 in one record, and as Nov 10, 2019 in the … Continue reading Oracle’s BINARY_DOUBLE…
Ionic 5 and Angular 8: Restful API User Authentication Login and Signup using Guard and Resolver
Srinivas TamadaThis is a continuation of my previous article creating an Ionic Angular project with welcome and tabs home page. Today’s post explains how to implement login authentication system for your Ionic Angular application with guards and resolvers. It will show you how to log in with a user and store the user data and protect the routes, so it deals…
New Geocoding API service is available for free: use place name search, reverse geocoding, proximity search, and other functionality.
We are improving cache in the project Im working on. In the code base I’ve found a method which accepted a collection of ids and returned collection of objects for those ids. My goal was to add cache on individual values returned by the method. Creation of items was IO heavy and time-consuming operation so removal of cache was not…
We’re happy to announce that you can now deploy Twilio Functions using the Serverless Framework. Here's how!
10 Sept 2019
Last week I attended the Open Source Firmware Conference. It was amazing! The talks, people, and overall feel of the conference really left me feeling inspired and lucky to attend. Having been pushed to attend vendor conferences and trade shows through my career for various jobs, it was so refreshing to have the chance to hang out with folks from…
Pines and firs are dying across the Pacific Northwest, fires rage across the Amazon, it’s the hottest it’s ever been in Paris—climate change is impacting the whole planet, and things are not getting any better. You want to do something about climate change, but you’re not sure what. If you do some research you might encounter an essay by Bret…
img.plot { max-height: 400px !important; } My job nowadays involves a lot of music and JavaScript. You know what musicians really care about? Paychecks (support your local musicians, go to concerts, don’t steal music from indie musicians). But also: keeping time. Keeping time in JavaScript is kind of a joke, not just because time is a social construct (this is…
9 Sept 2019
Online Direct Debit resources for accountants
A guide to major local payment methods in Europe.
A detailed guide to Direct Debit in Australia.
A user guide for Direct Debit in New Zealand.
A comprehensive guide to Direct Debit in Denmark.
How to collect Direct Debit payments in Sweden.
Insight and advice to help you master cash flow.
A guide for anyone who wants to learn more about Direct Debit.
Everything you wanted to know about Direct Debit.
A complete guide to invoicing and invoices.
A guide to invoicing for Australian businesses, including how it works and best practices
Online payments for businesses: a complete guide.
The complete guide to Direct Debit in Canada.
Find out how to create an effective RFP.
Our guide to collecting payments by SEPA
Everything businesses need to know about SCA.
How to take ACH payments from customers in the US.
Today we’re announcing the integration of MDN’s compat data into the caniuse website. Together, we’re bringing even more web compatibility information into the hands of web developers. The post Caniuse and MDN compatibility data collaboration appeared first on Mozilla Hacks - the Web developer blog.
A nice little gem in PostgreSQL’s SQL syntax is the DISTINCT ON clause, which is as powerful as it is esoteric. In a previous post, we’ve blogged about some caveats to think of when DISTINCT and ORDER BY are used together. The bigger picture can be seen in our article about the logical order of … Continue reading Using DISTINCT…
Like many developers in the realm of Software Engineering, we are using git as our version control system. The most typical git workflow looks like the following: Create a new branch for implementing a new feature Commit new changes and push them to the remote branch Create a pull request and let your colleagues (or contributors in case of open…
This post gives an overview of the recent updates to the Writing an OS in Rust blog and the used libraries and tools. I was very busy with finishing my master’s thesis, so I didn’t have any to implement any notable changes myself. Thanks to contributions by @vinaychandra and @64, we were still able to publish new versions of the…
8 Sept 2019
Learn how to configure NPM packages to publish only the files needed by users, avoiding bloating node_modules folders.
6 Sept 2019
Find out more about the expansion of our partnership with Zuora.
MapTiler team was presenting at FOSS4G 2019 open-source conference with two talks.
5 Sept 2019
Writing a Go/C polyglot Someone on a Slack I’m on recently raised the question of how you might write a source file that’s both valid C and Go, commenting that it wasn’t immediately obvious if this was even possible. I got nerdsniped, and succeeded in producing one, which you can find here. I’ve been asked how I found that construction,…
Firefox Debugger has evolved into a fast and reliable tool chain over the past several months and it’s now supporting many cool features. Though it's primarily used to debug JavaScript, did you know that you can also use Firefox to debug your TypeScript applications? Jan 'Honza' Odvarko walks through some real world examples. The post Debugging TypeScript in Firefox DevTools…
This is a post about performance. Most of the time when worrying about the performance of a piece of code the overwhelming advice should be (with apologies to Brendan Gregg) don’t worry about it, yet. However there is one area where I counsel developers to think about the performance implications of a design, and that […]
Quantified comparison predicates One of SQL’s weirdes features are quantified comparison predicates. I’ve hardly ever seen these in the wild: The above example is equivalent to using the much more readable IN predicate: This equivalence is defined in the SQL standard. There are more esoteric cases that could be solved using such quantified comparison predicates … Continue reading Quantified LIKE…
4 Sept 2019
WebAssembly has begun to establish itself outside of the browser via dedicated runtimes like Mozilla’s Wasmtime and Fastly’s Lucet. While the promise of a new, universal format for programs is appealing, it also comes with new challenges. At Mozilla, we’ve been prototyping ways to enable source-level debugging of .wasm files using existing tools, like GDB and LLDB. The post Debugging…
3 Sept 2019
For our latest excellent adventure, we’ve gone and cooked up a new Firefox release. Version 69 features a number of great new additions including JavaScript public instance fields, the Resize Observer and Microtask APIs, CSS logical overflow properties (e.g. overflow-block) and @supports for selectors. The post Firefox 69 — a tale of Resize Observer, microtasks, CSS, and DevTools appeared first…
30 Aug 2019
Find out about our work with Xero in New Zealand.
Modern web applications load and execute a lot more JavaScript code than they did just a few years ago. While JIT (just-in-time) compilers have been very successful in making JavaScript performant, we needed a better solution. We’ve added a new, generated JavaScript bytecode interpreter to the JavaScript engine in Firefox 70. Instead of writing a new interpreter from scratch, we…
Here's how to get your tenants to pay rent on time
Jane Street’s intern program yet again is coming to an end, which is a nice opportunity to look back over the summer and see what they’ve accomplished.
Until recently, one of the top technical risks facing SoundCloud’s Android team was increasing build times. Our engineering leadership was well aware of the problem, and it was highlighted in our company’s quarterly goals and objectives as modularization. Faster build times means more productive developers. More productive developers are happier and can iterate on products more quickly. Modularization is key…
29 Aug 2019
jOOQ 3.12 has been released with a new procedural language API, new data types, MemSQL support, formal Java 11+ support, a much better parser, and reactive stream API support In this release, we’ve focused on a lot of minor infrastructure tasks, greatly improving the overall quality of jOOQ. We’ve reworked some of our automated integration … Continue reading jOOQ 3.12…