~/devreads

2 May 2020

Dave Cheney 6 min read

In the previous post I discussed how leaf inlining allows the Go compiler to reduce the overhead of function calls and extend optimisation opportunities across function boundaries. In this post I’ll discuss the limits of inlining and leaf vs mid-stack inlining. The limits of inlining Inlining a function into its caller removes the call’s overhead […]

goprogramminginliningoptimisationperformance

Stanko 1 min read

My first attempt at real 3D vector composition. The gap was initially added to hide the border between two papers, but it grew on me. Created: May 2020 Size: 83x30cm (2 x A3) Paper: Fabriano Bristol 250gsm Pens: Pigma Micron

Stanko 1 min read

Created: May 2020 Size: 83x30cm (2 x A3) Paper: Fabriano Black Black 300gsm Pens: Uni-ball Signo UM-153

1 May 2020

30 Apr 2020

ericlippert 6 min read

Code for this episode can be found here. I have not added any more code to the engine, but the client now has two features of great use to me; pressing space toggles whether the simulation is running or paused, … Continue reading →

conwayslife

Jason Kratzer 11 min read

Fuzzing, or fuzz testing, is an automated approach for testing the safety and stability of software. For the past 3 years, the Firefox fuzzing team has been developing a new fuzzer to identify security vulnerabilities in the implementation of WebAPIs in Firefox. This fuzzer leverages the WebAPIs’ own WebIDL definitions as a fuzzing grammar. The post Fuzzing Firefox with WebIDL…

featured articlefirefoxfirefox development highlightssecurityweb apis

1 min read

We’re introducing Jukebox, a neural net that generates music, including rudimentary singing, as raw audio in a variety of genres and artist styles. We’re releasing the model weights and code, along with a tool to explore the generated samples.

research

Chris Castle 4 min read

This blog post is adapted from a discussion during an episode of our podcast, Code[ish]. Over the last twenty years, software development has advanced so rapidly that it’s possible to create amazing user experiences, powerful machine learning algorithms, and memory efficient applications with incredible ease. But as the capabilities tech provides has changed, so too […] The post Evolving Alongside…

engineering

MapTiler (Nicolas Bozon) 1 min read

Toner, map style created a decade ago by a famous Stamen Design studio, is now available in vector tiles.

Aaron Tushabe, Seve Kim 1 min read

Imagine you are an owner of a small batch grape vineyard. You find yourself to be so successful that you are acquired by a large distributor who spans grocery stores, bakery and wine industries. Now being a part of a large organization that has many different types of consumers and ways of distribution, your grape vineyard is expected to meet…

Peter Gillard-Moss 1 min read

When COVID-19 hit, entire workforces had to suddenly abandon their office infrastructure and work from home. For many companies, this has been a giant logistical nightmare which has driven their corporate virtual private network (VPN) and network appliances into meltdown and significantly impacted their ability to deliver.

29 Apr 2020

28 Apr 2020

27 Apr 2020

David Walsh 1 min read

I don’t need to tell you how important search engine placement is. You either earn it with quality content, loads of SEO work, paying for placement, or all of the above. And even we you achieve best placement, you need to be wary of your content becoming stale or someone else coming along with a better ranking. To keep aware…

ericlippert 8 min read

Code for this episode can be found here. I have not updated the Life algorithm, but I have added a new feature to the client, namely, you can now resize the form and the display box will resize along with … Continue reading →

conwayslife

Henrik Warne 4 min read

In the fall of 1999 I got the biggest productivity boost of my entire career as a software developer. In the October issue of IEEE Computer magazine, there was an article by Kent Beck called “Embracing change with extreme programming”. … Continue reading →

programmingworkagileextreme programmingwaterfall

Alan Gomes, Brunno Hofmann 1 min read

If you’ve had any form of relationship, you know that emotional intelligence is key to keep it functioning. And, when it comes to teams, Rosete and Ciarrochi (2005) [1] found that there is a correlation between leadership efficiency and emotional intelligence. If we want to construct ours, and help others do the same, communication, and specifically, regular feedback, is a…

26 Apr 2020

1 min read

On any given day, we handle around 15% of daily retail trading volume across all stock exchanges in India. Billions of requests generated in the process are handled by a suite of systems we have built in-house. Also, we are very particular on self-hosting as many dependencies as possible, everything from CRMs to large databases, Kafka clusters, mail servers etc.…

25 Apr 2020

Dave Cheney 6 min read

This is a post about how the Go compiler implements inlining and how this optimisation affects your Go code. n.b. This article focuses on gc, the de facto Go compiler from golang.org. The concepts discussed apply broadly to other Go compilers like gccgo and tinygo but may differ in implementation and efficacy. What is inlining? […]

goprogramminginliningoptimisationperformance

24 Apr 2020

Laura Heisman 6 min read

At GitHub, working remotely has been in our DNA from the start. With over 80% of our engineers working remotely before COVID-19, the team has established some amazing best practices that foster a strong collaborative environment, inspire creativity, and a bit of levity with the ultimate goal of building trust within teams. What’s it like for GitHub engineers to work…

Stanko 1 min read

The base is white Bristol and the upper layer is tracing paper. I really like how it turned out, transparency gives it a nice sense of depth. But tracing paper is incredibly hard to work with, it has mind of it's own. Once it gets framed, I hope glass will press it evenly against the base layer. Created: April 2020…

23 Apr 2020

ericlippert 6 min read

Code for this episode can be found here. All right, let’s get into it. Since I want this series to concentrate on the algorithms and not the user interface, what I will probably do is make incremental improvements to the … Continue reading →

conwayslife

Dzmitry Malyshau 7 min read

We are excited to bring WebGPU support to Firefox because it will allow richer and more complex graphics applications to run portably on the web. WebGPU is an emerging API, designed from the ground up within the W3C, to provide access to the graphics and computing capabilities of hardware on the web. The post A Taste of WebGPU in Firefox…

featured articleweb apisfirefox nightlygamesnightly

Gayathri Moghe 1 min read

camaraderie /ˌkaməˈrɑːd(ə)ri,ˌkaməˈrad(ə)ri/ “mutual trust and friendship among people who spend a lot of time together.” When you work across time zones with someone for 8 hours a day, building a platform of trust and friendship is essential.

22 Apr 2020

Garen Torikian 5 min read

Text-based communication has a long history weaved into the evolution of the Internet, from IRC and XMPP to Slack and Discord. And where there have been humans, there have also been chatbots: scriptable programs that respond to a user’s commands, like messages in a chat room. Chatbots don’t require much in terms of computational power […] The post Building and…

engineeringcloud infrastructuredeveloper tools

Mario Fernandez 1 min read

Exceptions are a mainstay of programming languages. They are commonly used to handle anomalous or exceptional conditions that require special processing, breaking out of the normal flow of the application. Some languages, such as C++ or Java, use them liberally. But not every language follows that design. C# or Kotlin don't have checked exceptions.

21 Apr 2020

Bastien Abadie 6 min read

Here's an insider's look at Firefox's code quality toolchain that's been designed to manage the ongoing development and monthly releases of our desktop browser. This post explores the architecture, challenges, and ongoing evolution of the process for managing code quality and patches for dealing with 21 million lines of code. The post Engineering code quality in the Firefox browser: A…

developer toolsfirefoxfirefox development highlights

20 Apr 2020

ericlippert 7 min read

Code for this episode can be found here. There are literally fifty years of articles explaining Conway’s Game of Life, starting with the one that introduced it to me: the October 1970 issue of Scientific American. Seems like a great … Continue reading →

conwayslife

bertalan 10 min read

This article defies a lot of trending patterns, like: React hooks, avoiding mutable data, traditional dependency injection, and full front-end testing. The post Reinventing Hooks with React Easy State appeared first on RisingStack Engineering.

reactedited

David Walsh 3 min read

Video games are always a fun time, something we desperately need during our COVID lockdown. A few years back I shared how to play retro games on Mac, as well as how to patch games to play popular ROM hacks like Grand Poo World and Invictus. One disadvantage that Macs have, however, is performance — your typical gaming PC has…

Sunit Parekh 1 min read

The ongoing global COVID-19 pandemic has pushed the distributed model to the forefront, with remote work becoming the norm, even for teams that are usually co-located. This impacts everything, from an organization’s global footprint, to cultural aspects like prioritising communication, building autonomous teams, and valuing collaboration.

19 Apr 2020

Jeff Atwood 4 min read

Hard to believe that I’ve had the same PC case since 2011, and my last serious upgrade was in 2015. I guess that’s yet another sign that the PC is over, because PC upgrades have gotten really boring. It took 5 years for me to muster

hardwarepc buildingpc cases

srinivas.tamada@gmail.com (Srinivas Tamada) 1 min read

Node Express web framework is a best solution to create RESTful APIs in quick time. Previously we published some concepts with different technologies like PHP and Java. This article will explain to you a more simple way to use external plugins to enrich your project APIs. Here you will find to create GET and POST requests with request payload validations…

expressmysqlnoderestful

18 Apr 2020

Stanko 1 min read

On the second to last image, you can see one of my first attempts to simulate tearing. If I ever return to this algorithm, I'll make a new composition wider. Created: April 2020 Size: 42x30cm Paper: Kunstdruck Pens: Pigma Micron

17 Apr 2020

Laura Heisman 5 min read

For years, a majority of Hubbers have been working remotely, including many of our senior leaders. As a result, GitHub naturally developed a culture centered around collaboration and communication. Today we continue our series to share how Hubbers are managing remote work. Our first post featured Kem Boggs, Head of Global Talent Acquisition at GitHub, who provided a unique perspective…

1 min read

Web browsers have supported custom plug-ins and extensions since the 1990s, giving users the ability to add their own features and tools for improving workflow or building closer integration with applications or databases running on back-end servers.

16 Apr 2020

David Walsh 2 min read

Those of you who follow this blog know that not every blog post is an endorsement of a technique but simply a tutorial how to accomplish something. Sometimes the technique described is probably not something you should do. This is one of those blog posts. The Babel parser is an essential tool in the web stack these days. Babel helps…

1 min read

We’ve contributed to a multi-stakeholder report by 58 co-authors at 30 organizations, including the Centre for the Future of Intelligence, Mila, Schwartz Reisman Institute for Technology and Society, Center for Advanced Study in the Behavioral Sciences, and Center for Security and Emerging Technologies. This report describes 10 mechanisms to improve the verifiability of claims made about AI systems. Developers can…

research

David Colls, Sue Visic 1 min read

As the world battles to contain the COVID-19 pandemic, every organization is seeing unprecedented changes in patterns of customer demand. Mandated and organically adopted shifts in the movement of people have dramatically changed the ecosystem of our daily lives, and in turn, what roles organizations play in this. While many businesses are facing hibernation or closure, some are thriving, with…

15 Apr 2020

Chris Mills 12 min read

Incluso en los actuales tiempos de aislamiento, nuestros equipos de ingeniería han sabido adaptarse, enfocarse y trabajar duro para ofrecer otra nueva y emocionante versión de Firefox al mundo. En lo que respecta a las herramientas para desarrollador, a partir de ahora encontramos un sistema de evaluación instantánea en la consola, puntos de interrupción de […] The post Firefox 75:…

firefox

Chris Mills 2 min read

即使在這段隔離的時期,我們的工程團隊也已經調整好步調,保持專注並努力工作,並獻上令人興奮的新版Firefox。在開發人員工具方面,你可以在網頁主控台中使用即時求值、WebSockets事件斷點以及許多其他功能。在網頁平台方面,新增的功能包括HTML延遲載入圖片、CSS min(),max()和clamp()函數、公開靜態類別屬性以及支援網頁動畫API附加功能等。 與往常一樣,請點擊下方閱讀重點,或在下文瀏覽所有新增功能的完整列表: Firefox 75 開發人員專區 Firefox 75網頁相容性 Firefox 75終端用戶專區 新增開發人員工具 讓我們先來看看Firefox 75中最有趣的開發人員新工具。 即時測試控制台表達式 在控制台中測試表達式是了解應用程序狀態、查詢DOM或試用JavaScript API非常便捷的方法。現在,利用Firefox控制台的多行模式使編寫較長的代碼更為容易,在使用上更為友善,且更貼近整合開發環境。 新的即時測試可以在輸入時預覽當前表達式的結果,有點類似Quokka.js編輯器。只要在Web控制台中鍵入的表達式沒有副作用,在輸入時便可以直接預覽結果。

Chris Mills 2 min read

即使在隔离时期,我们的工程团队也努力适应、保持专注并努力工作,为您带来又一个令人兴奋的新版Firefox。在开发人员工具方面,您会找到控制台中的即时评估、WebSockets的事件断点,以及其他许多功能。在网络平台方面,新增的功能包括图像的HTML延迟加载、CSS min()、max()和clamp()函数、公共静态类字段以及对Web动画API支持的补充。 请照例阅读重点内容或从以下文章中找到所有新增内容的完整列表: Firefox 75开发人员必读 Firefox 75的网站兼容性 Firefox 75最终用户发行说明 开发人员工具补充 我们首先来看看75最有趣的开发人员工具。 控制台表达式即时评估 控制台中的评估表达式是探索应用程序状态、查询DOM或试用JavaScript API的快速方法。现在,Firefox的多行控制台模式已经变得更友好、更像IDE,可用于更轻松地为更长的代码制作原型。 新的即时评估会在您键入时显示当前表达式的结果预览,类似于Quokka.js 这样的编辑器。只要在Web控制台中键入的表达式没有副作用,就会在您键入时显示结果预览。 为了使预览尽可能无缝,进行了

firefox

14 Apr 2020

David Walsh 2 min read

As a huge fan of media on the web, I’m always excited about enhancements to how we can control our media. Maybe I get excited about simple things like the <video> tag and its associated elements and attributes because media on the web started with custom codecs, browser extensions, and Flash. The latest awesome media feature I’m excited about on…

1 min read

We’re introducing OpenAI Microscope, a collection of visualizations of every significant layer and neuron of eight vision “model organisms” which are often studied in interpretability. Microscope makes it easier to analyze the features that form inside these neural networks, and we hope it will help the research community as we move towards understanding these complicated systems.

research

Kuldeep Singh 1 min read

In Part I of the article, we summarized our observations of eXtended reality’s foundational blocks - AR, VR and MR. We also discussed the popular and most relevant tools and implementations of the new technology. In Part II of the article, we will be looking at a few accessible and novel implementations of the tech.

Kuldeep Singh 1 min read

The way we interact with technology today is not too far from what was predicted by futuristic, sci-fi pop culture. We are living in a world where sophisticated touch and gesture based interactions are collaborating with state of the art wearables, sensors, Augmented Reality (AR), Virtual Reality (VR) and Mixed Reality (MR). And, this is eXtending user experiences to be…

13 Apr 2020

ericlippert 3 min read

The mathematician John Horton Conway has died, apparently due to the covid-19 epidemic, at the age of 82. I never met him but by all accounts, he was a delightful person and brilliant mathematician; his charming book on introductory game … Continue reading →

conwayslife

David Walsh 1 min read

Chris Coyier of CSS-Tricks is an amazing engineer and blogger. He’s not only creative but has always had the drive to put his thoughts to work, no matter how large. He also has a good eye for the little things that can make CSS-Tricks or your site special. One of those little things is his custom scrollbar — let’s have…

12 Apr 2020

1 min read

Learn how to create a robust rating system using Bayesian Average to rank items effectively. Explore its advantages over arithmetic mean and cumulative ratings, and see how it can be applied using the MovieLens Dataset.

11 Apr 2020

Stanko 1 min read

Another Zappa, again generated by my Vertigo project. I still have this one lying around, I have to finally frame it. Created: April 2020 Size: 21x21cm Paper: Fabriano Bristol 250gsm Pens: Molotow Blackliner

10 Apr 2020

ericlippert 3 min read

Welcome to yet another working-from-home pandemic episode of Fun For Friday Fabulous Adventures. Over the past while I’ve gradually been looking for music, movies and games I enjoyed as a teenager and seeing how they hold up. So I am … Continue reading →

uncategorized

lukaseder 1 min read

The SQL MERGE statement is a device whose mystery is only exceeded by its power. A simple example shows its full power according to standard SQL. Imagine you have a production table for product prices, and a staging table from which you want to load the latest prices. For once, I’m using the Db2 LuW … Continue reading The Many…

sqlmergemerge statement