~/devreads

20 Apr 2022

19 Apr 2022

Ole Begemann 6 min read

The environment in SwiftUI is sort of like a global dictionary but with stronger types: each key (represented by a key path) can have its own specific value type. For example, the \.isEnabled key stores a boolean value, whereas the \.font key stores an Optional<Font>. I wrote a custom dictionary type that can do the same thing. The HeterogeneousDictionary struct…

10 min read

I’m a backend developer who worked extensively writing code in Golang before joining SoundCloud. SoundCloud mostly uses Scala for its…

18 Apr 2022

16 Apr 2022

jonskeet 17 min read

I’ve been keeping an eye on MAUI – the .NET Multi-platform App UI – for a while, but I’ve only recently actually given it a try. MAUI is essentially the evolution of Xamarin.Forms, embracing WinUI 3 and expanding from a mobile focus to desktop apps as well. It’s still in preview at the time of … Continue reading Taking .NET…

c#

15 Apr 2022

14 Apr 2022

Chloe Whitaker 1 min read

Does it feel like the cybersecurity landscape keeps changing beneath your feet? In the past two years, we’ve witnessed the definition of cybersecurity risks evolve and new types of security threats emerge. If you were to list out today’s top cybersecurity threats, it would likely look different that it did before the COVID-19 pandemic. Let’s […] The post The Top…

spotlightcyber threatscybersecurity threatscyberthreatsdns

13 Apr 2022

Dan Brown 2 min read

We’re pleased to announce that we have partnered with Center for Humane Tech, a nonprofit organization that radically reimagines the digital infrastructure. Its mission is to drive a comprehensive shift toward humane technology that supports the collective well-being, democracy and shared information environment. The post Mozilla partners with the Center for Humane Technology appeared first on Mozilla Hacks - the…

featured articlefirefoxcenter for humane techmdnpartnership

1 min read

Goodhart’s law famously says: “When a measure becomes a target, it ceases to be a good measure.” Although originally from economics, it’s something we have to grapple with at OpenAI when figuring out how to optimize objectives that are difficult or costly to measure.

safety alignment

12 Apr 2022

MapTiler (Wladimir Szczerban) 1 min read

Create your own geoportal with a custom map, your own data, a map legend, a place-name search, a satellite view of a selected building, and a street view.

11 Apr 2022

blakewilliams 3 min read

Performance is an essential aspect of any production application, and GitHub is no exception. In the last year, we’ve been making significant investments to improve the performance of some of our most critical workflows. There’s a lot to share, but today we’re going to focus on a little-known feature of some Rack-powered web servers called rack.after_reply that saved us 30ms…

Rafael Prado 7 min read

Going the Extra Mile with Our k8s Setup Photo by Conny Schneider on Unsplash ; The Kubernetes logo is a registered trademark of the Linux Foundation As part of Xandr’s long-term effort to migrate our core engines from a mixture of virtual machines (VM) and bare-metal servers to the new world of Kubernetes (k8s), my team has been charged with…

autoscalingk8s

8 Apr 2022

Szenia Zadvornykh 9 min read

Recently, we introduced Background Art as a new way for customers to add graphics to their websites. This feature leverages WebGL to generate abstract animated graphics client side. These graphics can be seamlessly added to a web page, offering an alternative to images and videos for section backgrounds.

7 Apr 2022

6 Apr 2022

Nic Raboy 1 min read

If you've been keeping up with my series of tutorials around .NET Core and MongoDB, you'll likely remember that we explored using the Find operator to query for documents as well as an aggregation pip... The post Using LINQ to Query MongoDB in a .NET Core Application appeared first on MongoDB.

9 min read

Wave is a $1.7B company with 70 engineers1 whose product is a CRUD app that adds and subtracts numbers. In keeping with this, our architecture is a standard CRUD app architecture, a Python monolith on top of Postgres. Starting with a simple architecture and solving problems in simple ways where possible has allowed us to scale to this size while…

5 Apr 2022

Arpita Patel 13 min read

At Slack, the goal of the Mobile Developer Experience Team (DevXp) is to empower developers to ship code with confidence while enjoying a pleasant and productive engineering experience. We use metrics and surveys to measure productivity and developer experience, such as developer sentiment, CI stability, time to merge (TTM), and test failure rate. The DevXp…

uncategorizedautomationautomation-testingdeveloper-productivitytesting

Brian Douglas 8 min read

From planning and tracking our work on GitHub Issues to using GitHub Discussions to gather your feedback and running our developer environments in Codespaces, we pride ourselves on using GitHub to build GitHub, and we love sharing how we use our own products in the hopes it’ll inspire new ways for you and your teams to use them. Even before…

David Walsh 1 min read

Every once in a while I learn about a JavaScript property that I wish I had known about years earlier — valueAsNumber is one of them. The valueAsNumber provides the value of an input[type=number] as a Number type, instead of the traditional string representation when you get the value: This property allows us to avoid parseInt/parseFloat, but one gotcha with…

4 Apr 2022

David Walsh 2 min read

Web apps are accepting numerous types of inputs, from basic text to code to imagery, files, and more. It’s important that we validate the contents we receive but if you do allow arbitrary text, it’s good to know what exactly has been submitted so you can present it properly. Enter the Code Detection API — an API that allows you…

3 Apr 2022

2 Apr 2022

bohops 7 min read

Yes, you read that correctly – “Dynamic Pinvoke” as in “Dynamic Platform Invoke” Background Recently, I was browsing through Microsoft documentation and other blogs to gain a better understanding of .NET dynamic types and objects. I’ve always found the topic very interesting mainly due to its relative obscurity and the offensive opportunities for defensive evasion. […]

uncategorized

1 Apr 2022

1 min read

Ever since its introduction in the 2017 paper, Attention is All You Need, the Transformer model architecture has taken the deep-learning world by storm. Initially introduced for machine translation, it has become the tool of choice for a wide range of domains, including text, audio, video, and others. Transformers have also driven most of the massive increases in model scale…

1 min read

It’s April Cools! We’re taking back April Fools. When I was younger I had a strange relationship with alcohol, not because of any sort of trauma, but because I found it decidedly boring and disgusting to the taste. I didn’t drink in high school, didn’t enjoy parties in college, and didn’t care for tailgating or other sports-based events where drinking…

0xADADA 1 min read

Software engineering, knowledge work, or most broadly any type of white collar labor is, primarily, the production of our own psychology. Our mental capacity is our means of production. We embody the values of our work. Our identity is tightly bound up with our careers, knowledge, skills, methods, company, and our industry—we are our work. Having our identities bound to…

essayssoftware-engineeringlabor

31 Mar 2022

Annabelle Wright 4 min read

Making the decision to come out is a deeply personal choice and journey. It is a process, and one in which no one person follows the same path in how they decide to share that aspect of themselves. In recognition of the Trans Day of Visibility, I wanted to share some of the thoughts and experiences I had while coming…

transgenderlgbtqiatechnologydiversity-in-techtrans-day-of-visibility

30 Mar 2022

kanadig 3 min read

The April 2022 release of the Python Extension for Visual Studio Code is now available. In this release we’re introducing a Pylint extension, a simpler way to create empty Python and Jupyter Notebook files, fixes for running and debugging files with conda environment and moving the interpreter display in the status bar to the right. The post Python in Visual…

pythonvisual studio code

Jan Honza Odvarko 3 min read

In Firefox 98, we’re shipping a new version of the existing Performance panel. This panel is now based on the Firefox profiler tool that can be used to capture a performance profile for a web page, inspect visualized performance data and analyze it to identify slow areas. The post Performance Tool in Firefox DevTools Reloaded appeared first on Mozilla Hacks…

developer toolsfeatured articlefirefoxfirefox releasesdevelopers

Johnathan Ishmael 7 min read

BBC Online — A year with serverless Its been a little over a year since I published my last two blog posts, in which I outlined the process we went through to choose the technology for BBC online and the steps we took to optimise serverless for our use. Recently my colleague Graeme has published a blog post on the…

awsaws-lambdacloudserverless

MapTiler (Dalibor Janak) 1 min read

Choosing from various pre-defined map styles and customizing maps is much easier with the new Cloud UX and the refreshed map designer tool.

29 Mar 2022

Artsiom Holub 1 min read

This has been a busy month for cyber attackers, and the Cisco Umbrella team – in conjunction with Cisco Talos – has observed several new threats for users to be aware of. In this month’s edition of the Cybersecurity Threat Spotlight, we discuss a wiper making its way through Ukraine, a dropper targeting India and […] The post HermeticWiper, SDUser,…

cybersecurity threat spotlightcisco umbrellacyber threatscyberthreats

28 Mar 2022

Ole Begemann 1 min read

We released the fifth edition of our book Advanced Swift a few days ago. You can buy the ebook on the objc.io site. The hardcover print edition is printed and sold by Amazon (amazon.com, amazon.co.uk, amazon.de). Highlights of the new edition: Fully updated for Swift 5.6 A new Concurrency chapter covering async/await, structured concurrency, and actors New content on property…

David Walsh 1 min read

For as long as developers have written CSS code, we’ve been desperate to have a method to allow styling a parent element based child characteristics. That’s not been possible until now. CSS has introduced the :has pseudo-class which allows styling a parent based on a relative CSS selector! Let’s have a look at a few use cases for :has in…