~/devreads

10 Jan 2020

1 min read

2019 was a massive year for me. I like to reflect on the year and set some goals for the future.

9 Jan 2020

Schakko 2 min read

Inside a native Linux environment the error UNPROTECTED KEY FILE always means that the permissions of private key file are way too open. The error usually occurs if you are trying to connect with SSH and a private key to a remote host. As Ansible does also use SSH, you […] The post Fixing “UNPROTECTED KEY FILE” when using SSH…

linux

David Walsh 3 min read

I didn’t fly until I was 25 years of age — I was hopeless in knowing I had to be there early, the process of security, and the whole gate structure. Now that I’ve flown dozens of times for Mozilla, I feel much more comfortable with the process of flying, but feel less comfortable about expectations of delays and knowing…

Ferenc Hámori 6 min read

We prepared a new, 5-days-long training agenda for engineering teams who'd like to dive deep into Node.js, but have little to none experience with it. The post Production Ready with Node.js Training appeared first on RisingStack Engineering.

node.jsedited

8 Jan 2020

1 min read

Every frontend framework has their own opinionated way to solve the same three problems. 1. Data storage Defining the shape, changing, and…

Tiffany Leung 1 min read

Senior Consultant Developer Tiffany Leung recently joined Thoughtworks, moving 16,000km away from Boston, USA to settle into a new home in Sydney, Australia. Interested to hear what her experience was like, we asked her to share her journey to landing a job at Thoughtworks and starting an international career. Tell us a little bit about you

Felix Hammerl 1 min read

The required steps to build security into your products from the ground up. The goal is to create a product that is resilient against defects from the inside and attacks from the outside.

7 Jan 2020

1 min read

Looking back at the last 10 years, two specific trends are very clear to me, here they are highlighted by Fred Wilson: “The massive experiment in using capital as a moat to build startups into sustainable businesses has now played out and we can call it a failure for the most part.” “The big four tech companies own monopolies or…

Chris Mills 7 min read

Though we are moving to a more frequent four-week browser release cycle, the Firefox 72 release is feature-rich and full of goodies. It includes many requested DevTools' updates and improvements. We also introduce Shadow Parts and the CSS Motion Path, and useful new JavaScript features. Plus, Picture-in-picture for video is now enabled for Mac and Linux users too! The post…

cssdeveloper toolsfirefoxfirefox releasesjavascript

Scott Davis 1 min read

What exactly is a developer advocate, and how do they connect developers and companies around the world? Why is the area of developer relations set to explode? Can anybody with a passion for tech become a developer advocate? What are the keys to success on a global scale? How does a developer advocate maintain authenticity when balancing the needs of…

6 Jan 2020

Aditya Sinha 1 min read

The first breath after my return to Sydney felt as relieving as I imagined it would. The sweet scent that reminded me of tree sap and freshly mown grass was a good contrast to the exhaust fumes that filled the Xi’an air. The flight had been on time, but my mind was still soaking on five weeks of memories. Day…

5 Jan 2020

1 min read

Thanks to the MSYS2 project, now there is an easy way to utilize Clang to build C/C++ application on Windows. This works equally well for both 32-bit and 64-bit programs.

25 min read

When I ask people at trendy big tech companies why algorithms quizzes are mandatory, the most common answer I get is something like "we have so much scale, we can't afford to have someone accidentally write an O(n^2) algorithm and bring the site down"1. One thing I find funny about this is, even though a decent fraction of the value…

4 Jan 2020

3 Jan 2020

2 Jan 2020

19 min read

At the time of writing this, I've been on Earth for about ~2.4 decades. That means that ten years ago, I was the very tender age of fourteen…

31 Dec 2019

Stanko 4 min read

Last time I wrote one of these recaps was in 2016. Not sure why I waited three years to write another, and from now on I'll try to do these annually. 2019 was a good year for me, and I want to highlight a couple of things. Blog # I'm really proud of my blog. And judging by the analytics,…

30 Dec 2019

ericlippert 7 min read

One last post for this decade. There has been some discussion on tech twitter lately on the subject of whether it is possible to be “successful” in the programming business without working long hours. I won’t dignify the posts which … Continue reading →

uncategorized

29 Dec 2019

{"twitter"=>"hlaueriksson"} 1 min read

About a year ago I was experimenting with local functions and reflection, to improve my unit tests and the way to write BDD specs. I had been using Machine.Specifications and Machine.Fakes for years. MSpec has served me well, but the lack of async support made me look for alternatives. The experiment with local functions in tests led to the release…

27 Dec 2019

Michael Carroll 1 min read

In this tutorial, learn how to use Raspberry Pi to create the IoT prototypes of your dreams. Check out our step-by-step process and get started today.

Michael Carroll 1 min read

In this tutorial, learn how to use Raspberry Pi to create the IoT prototypes of your dreams. Check out our step-by-step process and get started today.

26 Dec 2019

jgamblin 4 min read

As the 2010s come to an end I started to think about what security stories from the last ten years changed how we think about security in this decade and the next. While this list is in no way complete these are the ten stories that I think had a lasting impact on security in the last decade and the…

uncategorized

25 Dec 2019

Richard Schneeman 1 min read

When Heroku launched in 2007 there was only a single Ruby version that could be used on the platform. In 2012 Heroku began to support multiple Ruby versions. Since then, we’ve had a holiday tradition of releasing the new versions of Ruby on the same day they come out, which always happens on Christmas day […] The post Ruby 2.7.0:…

newsdeveloper toolseducationruby

24 Dec 2019

1 min read

While talking about thinking about tests and testing in software engineering recently, I’ve come to the conclusion that there are (at least) two major ideas and goals that people have when they test or talk about testing. This post aims to outline what I see as these two schools, and explore some reasons engineers coming from these different perspectives can…

23 Dec 2019

1 min read

I have two 4K TVs at home, one in the bedroom and one in my living room. Both have consoles attached. One has a PS4 Pro and one has a Nintendo Switch and both are great. However, I also have a gaming PC in my office, which is quite powerful compared to any home console Mine is equipped with a…

19 Dec 2019

Kadir Topal 2 min read

The first annual MDN Developer Needs Assessment aims to represent the voices of developers and designers working on the web. We've analyzed the data provided by more than 28,000 completed surveys, and we've identified 28 discrete needs, sorted into 14 different themes. Four of the top ten needs relate to browser compatibility, our #1 theme. Documentation, Testing, Debugging, and Frameworks…

featured articlemdnnewsresearchsurvey

Ben Fritsch 3 min read

This blog post is adapted from a lightning talk by Ben Fritsch at Ruby on Ice 2019. There can be a number of reasons why your application performs poorly, but perhaps none are as challenging as issues stemming from your database. If your database’s response times tend to be high, it can cause a strain […] The post Slow Database…

engineering

Richard Schneeman 7 min read

Update: On closer inspection, the lock type was not on the table, but on a tuple. For more information on this locking mechanism see the internal Postgresql tuple locking documentation. Postgres does not have lock promotion as suggested in the debugging section of this post. I maintain an internal-facing service at Heroku that does metadata […] The post The Curious…

engineeringdatabasedeveloper toolspostgres

7 min read

I recently finished the excellent book Kochland. This isn’t my first interest in Koch—I read The Science of Success by Charles Koch himself a couple of years ago. Charles Koch inherited a tiny company in 1967 and turned it into one of the world’s largest ones. That’s impressive! Just a quick disclaimer just to get it out of the way.…

18 Dec 2019

Julián Duque 24 min read

This blog post is adapted from a talk given by Julián Duque at NodeConf EU 2019 titled “Let it crash!.” Before coming to Heroku, I did some consulting work as a Node.js solutions architect. My job was to visit various companies and make sure that they were successful in designing production-ready Node applications. Unfortunately, I […] The post Let It…

engineeringdeveloper toolsjavascriptnode.jsperformance optimization

Stanko 7 min read

Update, September 2025 # Replaced path.toShapes(true) with SVGLoader.createShapes(path) because toShapes misses some of the SVG-specific logic implemented in the loader. Thanks to forresto who pointed it out. Also updated the demo to use a fresh version of ThreeJS. These days I'm playing with three.js again. I'm not an expert but I enjoy playing with graphics. Conveniently, a friend of mine…

17 Dec 2019

Eduardo Bouças 4 min read

Mozilla Hacks covered plenty of interesting territory in 2019. Our most popular posts introduced experiments and special projects, and described the evolution of groundbreaking platform technologies like WebAssembly and WASI. Mozilla WebThings continued to engage attention and adoption. And interest in Firefox releases and Firefox DevTools was stronger than ever. Read on. The post Mozilla Hacks’ 10 most-read posts of…

abouthacksdeveloper toolsfeatured articlefirefoxmozilla

MapTiler (Petr Sloup) 1 min read

Add position of your shop in the city, hiking trails with related points of interest, electric power grid or any other vector data on a map with a few clicks.

16 Dec 2019

14 Dec 2019

13 Dec 2019

12 Dec 2019

jgamblin 2 min read

I had a new years resolution to Read More Books this past year and actually read around 20 books this year. Out of those books here is a quick list of some of my favorites from the past year that I really enjoyed. Stillness Is the Key This book was probably one of the most impactful books I read this…

uncategorized

11 Dec 2019

ericlippert 8 min read

You might recall that before my immensely long series on ways we could make C# a probabilistic programming language, I did a short series on how we can automatically computed the exact derivative in any direction of a real-valued function … Continue reading →

uncategorizedfixing random

Stanko 1 min read

Another Catalina rant, this time about Ruby. As far as I know, on MacOS, it is advisable to leave system Ruby version to the OSFor example users don't have write permission on the system's gems folder. , and install a separate version for development. I had one installed via Homebrew, and never had any issues with it. But after Catalina…

Samantha Rosa, Sara Michelazzo 1 min read

Having a culture that inspires and challenges people is not easy. At Thoughtworks, we could easily walk down the path of competitiveness and control. Instead, we walk in the opposite direction. We value a safe and autonomous environment where we cultivate each other in order to foster technical excellence.

10 Dec 2019

Miriam Budayr 3 min read

Have you ever wanted to know where properties on objects are read or set in your code, without having to manually add breakpoints or log statements? Watchpoints are a type of breakpoint that provide an answer to that question. They are new in the updated Debugger, available now in the Firefox 72 Developer Edition release. The post Debugging Variables With…

developer toolsfeatured articlefirefoxfirefox releasesbreakpoints

MapTiler (Martin Mikita) 1 min read

MapTiler Desktop 10.3 significantly improve rendering maps from PDFs or GeoPDFs and adds support for the Dutch RD New Tile Grid.

Stanko 1 min read

Yesterday I updated my work laptop to MacOS Catalina.To be able to use AirPods Pro with it :/ Apple made a change and switched the default shell to zsh (instead of bash). From what I have read, the reason is a licensing issue. Bash is not gone and everything will work like it used to. But every time you open…

9 Dec 2019

2 min read

Just a quick note that my team is always hiring at Better. A lot of new people have been joining the team here in NYC lately—the tech team has actually grown from 35 to 60 in just ~3 months. We are primarily looking for senior software engineers and/or engineering managers. But we would love to talk if you have less…

8 Dec 2019

Matthew Green 12 min read

A few weeks ago, U.S. Attorney General William Barr joined his counterparts from the U.K. and Australia to publish an open letter addressed to Facebook. The Barr letter represents the latest salvo in an ongoing debate between law enforcement and the tech industry over the deployment of end-to-end (E2E) encryption systems — a debate that … Continue reading Can end-to-end…

backdoors

Henrik Warne 8 min read

A few weeks ago I spoke at the EuroSTAR software testing conference in Prague. The conference had one and a half days of tutorials, followed by two and a half days of talks. Around a thousand people attended. I was … Continue reading →

testingconference

Dave Cheney 5 min read

This is a thought experiment in API design. It starts with the classic Go unit testing idiom: func TestOpenFile(t *testing.T) { f, err := os.Open("notfound") if err != nil { t.Fatal(err) } // ... } What’s the problem with this code? The assertion. if err != nil { ... } is repetitive and in the […]

gosmall ideastesting

6 Dec 2019

jgamblin 2 min read

I spent the last week at AWS re:Invent 2019 in Las Vegas with over 65,000 other AWS users. This conference is always jammed packed with announcements and interesting discussions with people both inside and outside of my normal security bubble. Overall I really enjoy this conference even though it is ridiculously large and I spent over 6 hours on the…

uncategorized

5 Dec 2019

Reuben Morais 7 min read

The Machine Learning team at Mozilla continues work on DeepSpeech, an automatic speech recognition (ASR) engine which aims to make speech recognition technology and trained models openly available to developers. In this overview of recent improvements, we'll show how DeepSpeech can transform your applications by enabling client-side, low-latency, and privacy-preserving speech recognition capabilities. Find out how you can participate. The…

audiofeatured articlespeechcommon voicedeepspeech

1 min read

We show that the double descent phenomenon occurs in CNNs, ResNets, and transformers: performance first improves, then gets worse, and then improves again with increasing model size, data size, or training time. This effect is often avoided through careful regularization. While this behavior appears to be fairly universal, we don’t yet fully understand why it happens, and view further study…

research

4 Dec 2019

1 min read

Is your cash flow causing you stress? We asked more than 1,000 businesses across the UK which payment methods they prefer to use, so you know which to offer them to get paid on time.

Peter Huene 13 min read

Wasmtime, the WebAssembly runtime from the Bytecode Alliance, recently added an early preview of an API for .NET Core, Microsoft’s free, open-source, and cross-platform application runtime. This API enables developers to programmatically load and execute WebAssembly code directly from .NET programs. Although .NET Core is already a cross-platform runtime, there are good reasons for .NET developers to take a closer…

featured article.netnet corewasiwasmtime

Dave Cheney 3 min read

Last year I had the opportunity to watch Cat Swetel’s presentation The Development Metrics You Should Use (but Don’t). The information that could be gleaned from just tracking the start and finish date of work items was eye opening. If you’re using an issue tracker this information is probably already (perhaps with some light data […]

small ideas

Gitanjali Venkatraman 1 min read

Everyone has their own secrets to keep — and sometimes, they're things we want to share. Here's an illustrated guide to secret sharing. It explores the concepts of crytography, some history and provides a neat insight into the ideas behind RSA.

3 Dec 2019

Chris Mills 9 min read

Please welcome Firefox 71 to the stage! This time around, we have a plethora of new developer tools features including the web socket message inspector, console multi-line editor mode, log on events, and network panel full text search! And as if that wasn’t enough, there are important new web platform features available, like CSS subgrid, column-span, Promise.allSettled, and the Media…

developer toolsfeatured articlefirefoxfirefox releasescss

1 min read

We’re releasing Procgen Benchmark, 16 simple-to-use procedurally-generated environments which provide a direct measure of how quickly a reinforcement learning agent learns generalizable skills.

research

2 Dec 2019

1 min read

If what we ship to our server is a single executable file or script that runs our entire application in one process, we have a monolith on…

1 Dec 2019

1 min read

A year ago today I self-published “A Programmer’s Introduction to Mathematics” (PIM). In this short note I want to describe the success it’s had, summarize the complaints of some readers and the praise of others, and outline what’s next. Since publication PIM has sold over 11,000 copies. A rough chart showing the sales of paperback and ebook copies of PIM.…

Stanko 4 min read

I love easter eggs in software. You may have noticed the keyboard image in the background of my blog. This thing on the right side of the screen. Those with a keen eye figured out it highlights keys as you are typing. It has been here for some time now, and on my colleague's request, I'll explain how it works.…