~/devreads

7 Jan 2020

2 min read

Happy New Year! This post gives an overview of the recent updates to the Writing an OS in Rust blog and the corresponding libraries and tools. blog_os The repository of the Writing an OS in Rust blog received the following updates: Update x86_64 dependency to version 0.8.1. This included the dependency update itself, an update of the frame allocation code,…

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

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

Kalle Happonen 20 min read

We have released our new Allas object storage service. We firmly believe it will play a growing role for data management, at CSC and for the whole academic field in Finland. Alas, the road to Allas was not completely without pain. Replace cPouta object storage with Allas Make sure all the user data from cPouta object storage moves over. Make…

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.

1 min read

On almost every job interview there are questions about frameworks, programming principles, maybe some coding or whiteboard architecting. On the other side, there is the way you work. Tools and skills you use on a daily basis which define how you work. No one really asks about those things but I find them quite important. Read more

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

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…

20 Dec 2019

1 min read

Roses are red Violets are blue I have stuck in vim And so have you. Vim ain't for newbies But I'm a curious soul So I went down That shell rabbit hole. I tried to edit hosts Everything went wrong The file remained open For two hours long. When I found the magic Semicolon double-u q The file was readonly…

humordevhumorpoemlinuxprogramming

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

18 Dec 2019

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

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

1 min read

At work, we are slowly breaking down the monolithic application into smaller manageable services. Some time ago we had a very interesting issue which proved that microservices are hard to implement. It’s especially true if you are not there yet but somewhere in the middle. When you need to introduce intermediate solutions which will enable you to work further on…

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…

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…

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

Joel Spolsky 3 min read

For the last couple of months, Prashanth Chandrasekar has been getting settled in as the new CEO of Stack Overflow. I’m still going on some customer calls… Read more "So, how’s that retirement thing going, anyway?"

news

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

1 min read

Me: $ git commit -m "Closes issue #13" * Remove obsolete reference to core entity * Refactor module generating values * Log every ac... Colleague: “Hey, the pizza is heeeere” Me: * backspaces * $ git commit -m "Fixes"

humordevhumorprogramming

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

3 min read

WE STARTED A COMPUTER COMPANY!! You have no idea how long I’ve been waiting to say that! I guess some context would help… Steve Tuck, Bryan Cantrill, and I officially started the Oxide Computer Company. Since then, we’ve been working on closing up fundraising, getting an awesome office, and hiring! You are probably thinking “a computer company? that’s outrageous!”.. well…

1 min read

This post gives an overview of the recent updates to the Writing an OS in Rust blog and the used libraries and tools. I moved to a new apartment mid-October and had lots of work to do there, so I didn’t have the time for creating the October status update post. Therefore, this post lists the changes from both October…

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.…

28 Nov 2019

27 Nov 2019

15 min read

You need to negotiate at a new job: for your salary, or benefits, or my personal favorite, a shorter workweek. You’re not sure what to do, or how to approach it, or what to say when the company says “how much do you want?” or “here’s our offer—what do you say?” Here’s the thing: that final conversation about salary might…

1 min read

Some time ago we had a problem with performance caused by generating big reports for users. During one of the firehouse meetings, there was an idea to generate reports from the replica database. We’ve solved the issue differently but the idea got me interested. In this post, I’ll configure spring-boot based application to use the replica database for all read-only…

26 Nov 2019

25 Nov 2019

jonskeet 1 min read

I’ve been immensely privileged to be invited to speak at various international developer conferences, and until now I’ve usually tried to accept the majority of those invitations. I’ve had a wonderful time, and made many dear friends – who I’ve often then caught up with at other events. However, I’ve recently found that travelling has … Continue reading Reducing my…

speaking engagements

22 Nov 2019

1 min read

Roses are red Violets are blue I was looping forever And then I found you. i was your name I think j was next to you Born inside a for Died in there too. I saw you getting bigger Loop over loop over loop And j was getting smaller You were a great group. And then you just vanished You…

humordevhumorpoemprogramming

21 Nov 2019

Nick Fitzgerald 31 min read

Multi-value is a proposed extension to core WebAssembly that enables functions to return many values, among other things. It is also a prerequisite for Wasm interface types. Nick Fitzgerald has been adding multi-value support all over the place recently, started with the Rust and WebAssembly toolchain. Next he added support to the Wasmtime runtime, and the Cranelift code generator it’s…

craneliftrustwasmwasm-bindgenwasmtime

1 min read

We’re releasing Safety Gym, a suite of environments and tools for measuring progress towards reinforcement learning agents that respect safety constraints while training.

safety alignment

20 Nov 2019

Rachel Andrew 5 min read

Firefox 71, now available in Developer Edition and Beta, is an exciting release for fans of CSS Layout. Recently, we covered the arrival of subgrid in Firefox, but there is another property that we've also been keeping an eye on. Firefox 71 implements column-span from Multiple-column Layout. In this post Rachel Andrew describes the progress of the Multiple-column Layout specification.…

cssfeatured articlecolumn-spancss layoutmulticol

MapTiler (Jiri Komarek) 1 min read

MapTiler appeared in the Swiss National TV (SRF1 channel) broadcasted in the main Friday news at a prime time.

19 Nov 2019

Michael Stegeman 5 min read

Version 0.10 of Mozilla’s WebThings Gateway brings support for extension-type add-ons. Released last week, this powerful new capability lets developers modify the user interface (UI) to their liking with JavaScript and CSS. We also provide libraries for writing UI extensions in Python or node.js if you prefer. Let us know what you build! The post Creating UI Extensions for WebThings…

featured articleiotmozilla webthingsthings gatewaywot

MapTiler (Martin Elias) 1 min read

MapTiler.nl launched in cooperation with Webmapper in the Netherlands.

18 Nov 2019