~/devreads

9 Jul 2019

Joe Kutner 3 min read

What is Duke? No one knows his species or genus. People say he’s a Java Bean or a Software Agent, but all we know for sure is that he reminds us of the more than twenty-year legacy of the Java language and its community. The Java community has such an affinity for Duke that designers […] The post Samurai Duke…

lifedeveloper toolseducationjava

Dan Callahan 6 min read

Firefox 68 is available today, sporting support for big integers, whole-page contrast checks checks for accessibility, and a completely new implementation of a core Firefox feature: the ever-awesome URL bar. Dan Callahan also reports on updated CSS scroll-snapping and other features, DOM API updates, next steps in the WebRender implementation, and more. The post Firefox 68: BigInts, Contrast Checks, and…

featured articlefirefoxfirefox development highlightsfirefox releasesjavascript

1 min read

Welcome to another post in our series of how to use OCaml for machine learning. In previous posts we’ve discussed artistic style-transfer and reinforcement learning. If you haven’t read these feel free to do so now, we’ll wait right here until you’re done. Ready? Ok, let’s continue …

8 Jul 2019

1 min read

In the previous article, I explained what data we needed to generate waveforms and showed how to use a BBC Free Open Source Software to generate that data. In this article, I will show how to draw a waveform using Google’s Flutter UI toolkit for mobile, desktop and web. Here is the end result will are going for: You can…

ericlippert 8 min read

Last time on FAIC we were attacking our final problem in computing the expected value of a function f applied to a set of samples from a distribution p. We discovered that we could sometimes do a “stretch and shift” of … Continue reading →

uncategorizedfixing random

jgamblin 1 min read

About once a month I need a Kali VM to use for an hour or so, and I am terrible at keeping a VM up-to-date, so this weekend I took a few hours and built a tool to download automatically, provision and update a Kali Linux VM in Virtualbox. All the code for this project is in this Github Project.…

uncategorized

Dave Cheney 11 min read

This article is based on my GopherCon Singapore 2019 presentation. In the presentation I referenced material from my post on declaring variables and my GolangUK 2017 presentation on SOLID design. For brevity those parts of the talk have been elided from this article. If you prefer, you can watch the recording of the talk. Readability […]

goprogrammingsmall ideas

Xu Hao 1 min read

It’s easy to fall into the trap of thinking that when it comes to enterprise tech, there are few surprises left. After all, we all exist in a largely homogenous world where cloud, microservices and containers are the cornerstones of today’s leading businesses. In this world of known knowns, even the fiercest of rivals can follow almost identical tech strategies.

7 Jul 2019

5 Jul 2019

Dave Cheney 1 min read

On the 17th of July I’ll be giving a version of my High Performance Go workshop updated for the upcoming changes in Go 1.13. The event is free, as in puppy, however numbers are limited due to the venue size. The event will be held in the Sydney CBD, the address will be provided to […]

gohigh performance gotrainingworkshop

Stanko 3 min read

I haven't published anything in a while, which is a shame because I have a couple of good things to write about. That said, today's post is going to be a short one. I wasn't sure if theme is interesting enough. But in the end I decided to write it anyway. And it will help me get back in the…

Anthony O'Connell 1 min read

Risk is everywhere, from the insignificant to the company killers (read Takata Corporation). Risk management is about understanding as much as we can about what we don't know; but knowing enough about what we can conceive or perceive to make informed decisions. It’s important to suspend judgement and start by simply understanding the catastrophes that may lie in wait for…

4 Jul 2019

3 Jul 2019

2 min read

Originally published here June 2019, with discussions on Hackernews and Reddit. Melvin Conway is credited with that quote back in 1967. In…

1 min read

I recently moved into a bigger condo which had a wall mount pre-installed in the bedroom for a TV, so I decided to take advantage of it and bought a second TV. Previously, I was using an Intel NUC attached to my TV and running LibreElec. If you’ve not heard of LibreElec, it’s a very cool minimal Linux OS that…

Ken Collier, Mark Brand, Pramod N 1 min read

In this article, we’ll explore common patterns of enterprise intelligence and identify the points of friction and opportunities for improvement in the Continuous Intelligence cycle.

2 Jul 2019

jgamblin 1 min read

Recently I have been working on a project to use the Trivy container scanner to scan large swath of containers for open vulnerabilities that I wanted to quickly post here. There is a full blog about the project here on the Kenna site. Here are some of the pages I have built out so far: Top 1000 Popular Containers Scanned…

uncategorized

Margaret Francis 3 min read

Pride is a word with many meanings. It can mean a job well done. It can mean satisfaction in who you are or what you stand for. For me, it is all of that and more. It is one of the values that runs deeply at Heroku and what keeps me here — pride in […] The post Pride Runs…

lifeeducation

1 Jul 2019

ericlippert 4 min read

Last time on FAIC we finally wrote a tiny handful of lines of code to correctly implement importance sampling; if we have a distribution p that we’re sampling from, and a function f that we’re running those samples through, we can compute … Continue reading →

uncategorizedfixing random

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

Multi-tenants is an architecture concept that can handle multiple projects in a single project container. If you look at popular sites like Nike.com or Mi.com, you will find out the project redirection based on the continent or country region. This post more about understanding the Angular 8 project package configuration, using this how are we leveraging the project for multi-tenant…

angulararchitecturetenanttypescriptweb development

kevin 2 min read

For a company trying to sell and explain a product, a lot of this information was amazingly difficult to find so I wrote this. For the rest of this we'll assume you're cooking a steak but the same advice applies to most other meats/cuts. Why Do You Want A Torch to Sear Meat To get […]

todays world

Emily Margo, Prashant Gandhi 1 min read

Having empathy for your stakeholders can mean many things. In our case, it meant taking something highly complex and making it look easy. Along the way, we realised there was a connection between learning to engage consortium members and learning to read philosophy. Take Heidegger for example.

30 Jun 2019

jonskeet 16 min read

This is a blog post I’ve intended to write for a very long time. (Other blog posts in that category include a recipe for tiramisu ice cream, and “knights and allies”.) It’s one of those things that’s grown in my mind over time, becoming harder and harder to start. However, there have been three recent … Continue reading Versioning limitations…

c#designversioning

1 min read

Previous posts in this series: Silent Duels and an Old Paper of Restrepo Silent Duels—Parsing the Construction Last time we waded into Restrepo’s silent duel paper. You can see the original and my re-typeset version on Github along with all of the code in this series. We digested Section 2 and a bit further, plotting some simplified examples of the…

29 Jun 2019

28 Jun 2019

Sandeep Reddy, Sudhir Tiwari 1 min read

Most, if not all our institutions need to be rethought from the ground up thanks to Great Rewrite of the planet. We first heard Leonard Brody talk about this concept at Thoughtworks ParadigmShift, an executive conference that brings together business and tech’s most influential thinkers. The main driver for this Great Rewrite is the disruption being caused to humans.

27 Jun 2019

Dan Callahan 3 min read

Introducing the initial release of Firefox Preview (GitHub), an entire browser built from the ground up with GeckoView and Mozilla Android Components. Firefox Preview is our platform for building, testing, and delivering unique features. Though still an early preview, this is our first end-user product built completely with these new technologies. Plus, we share an update on where GeckoView is…

featured articlefirefoxfirefox releasesmobilegeckoview

26 Jun 2019

1 min read

Audio visualization is a fascinating topic. We often take it for granted, but sound isn’t visible and only exists over time. In the case of a video stream, you can pick a frame/image and you have a snapshot of the video at this specific time. But you can’t do that with sound. Sound is the oscillation/vibration of molecules over time,…

Hidde de Vries 7 min read

The web was designed with built-in features to make accessibility possible; these have been part of the platform pretty much from the beginning. In recent times, inspectable accessibility trees have made it easier to see how things work in practice. In this post we look at how “good” client-side code (HTML, CSS and JavaScript) improves the experience for users of…

domfeatured articleaccessibilityaccessibility treeinspectable accessibility tree

lukaseder 1 min read

Spring Boot is great to get started very quickly with what the Spring Boot authors have evaluated to be useful defaults. This can be a lot of help when you’re doing things for the first time, and have no way to copy paste working Maven pom.xml files from existing projects, for example. When working with … Continue reading How to…

jooq-in-usedependencyjooqjooq enterprise editionjooq express edition

25 Jun 2019

Praful Todkar 1 min read

We have been collaborating with a large US based fashion retailer to improve their supply chain efficiency. One of the key factors that help solve supply chain puzzles is making sure online orders are fulfilled from the most profitable location – a warehouse or a store that maximizes the profit margin on the order. This is the responsibility of the…

24 Jun 2019

ericlippert 4 min read

One more time! Suppose we have our nominal distribution p that possibly has “black swans” and our helper distribution q which has the same support, but no black swans. We wish to compute the expected value of f when applied to samples … Continue reading →

uncategorizedfixing random

Dr J Harrison 1 min read

At Thoughtworks we wanted to look deeper into the User Experience challenge of getting healthcare when a person is non-binary. Once we defined the problem space, we then looked at what could we do to make a change. Oh and like you didn’t see the pun coming! There are big changes needed, like lobbying NHS England to include Non-Binary (or…

21 Jun 2019

Ruslan Spivak 15 min read

“I am a slow walker, but I never walk back.” — Abraham Lincoln And we’re back to our regularly scheduled programming! :) Before moving on to topics of recognizing and interpreting procedure calls, let’s make some changes to improve our error reporting a bit. Up until now, if there was a problem getting a new token from text, parsing source…

4 min read

Media and playback are at the core of SoundCloud’s experience. For that reason, we have established and grown an engineering team that is specialized in providing the best possible streaming experience to our users across multiple platforms. To do this, we combine the industry’s best-fitting solutions with our own custom technologies, libraries, and tools. In this article, let’s dive into…

20 Jun 2019

19 Jun 2019

Jason Skowronski 6 min read

There are many ways of deploying your applications to Heroku—so many, in fact, that we would like to offer some advice on which to choose. Each strategy provides different benefits based on your current deployment process, team size, and app. Choosing an optimal strategy can lead to faster deployments, increased automation, and improved developer productivity. […] The post Six Strategies…

engineeringcloud infrastructuredeveloper toolsheroku button

Ali Spivak 2 min read

Mozilla’s View Source Conference is back! This year we're in Amsterdam, September 30 – October 1, 2019. Tickets are available now. We’ve shifted our focus to take a deeper look at the web platform and how it is evolving and to offer attendees access to the folks who are shaping today's web and the web of the future. The post…

conferenceseventfeatured articleview sourceview source conference

Dr J Harrison 1 min read

At Thoughtworks we wanted to look deeper into the User Experience challenge of getting healthcare when a person is non-binary. We set up an open event and invited widely across our networks. 25 people attended, and there was a wide age range, and experience of Non-Binary representation, although we had limited Black, Asian and Minority Ethnic (BAME) representation in the…

18 Jun 2019

Rachel Andrew 4 min read

The CSS Scroll Snap specification gives us a way in CSS to snap between different elements in a page or scrolling component. In this post, Rachel Andrew explains how scroll snapping works, why we had a situation where browsers were running different versions of the specification, and how that's changing. The post CSS Scroll Snap Updated in Firefox 68 appeared…

cssfeatured articlefirefoxcss scroll snappingscroll snap

0xADADA 1 min read

This talk was presented at the Boston Ember.js Community meetup at Salsify, Inc about a unique usecase for deploying FastBoot in order to do server-side rendering of Ember applications at scale. I review traditional, single-page web applications, I discuss server-side rendering by introducing Ember FastBoot. I showcase our architecture and provide a quick summary of how we use FastBoot in…

talksopen-sourcejavascriptweb developmentember

17 Jun 2019

ericlippert 3 min read

Last time on FAIC we deduced the idea behind the “importance sampling” technique for determining the average value of a function from double to double — call it f — when it is applied to samples from a possibly-non-normalized weighted distribution of … Continue reading →

uncategorizedfixing random

15 Jun 2019

Henrik Warne 5 min read

At the end of May I attended Nordic Testing Days in Tallinn, Estonia. It was the first time I spoke at a conference outside of Sweden, and I had a great time. There was one day with tutorials, and two … Continue reading →

testingconference

14 Jun 2019

MapTiler (Eva Jelinkova) 1 min read

The new version of our open-source map publishing project OpenMapTiles 3.10 improves many water features, updates boundaries, brings new points of interest and adds four new languages.

13 Jun 2019

Chandler Mayo 1 min read

How to: PubNub MQTT gateway to send and receive a 'Hello world' message from a NodeMCU-32S development board with a built-in ESP32 WiFi Module.

Chandler Mayo 1 min read

How to: PubNub MQTT gateway to send and receive a 'Hello world' message from a NodeMCU-32S development board with a built-in ESP32 WiFi Module.

Kelsey van Haaster, Michael Strasser 1 min read

Thoughtworks has a long-standing and intentional commitment to diversity and inclusivity that is a huge part of our social fabric. As a company, we’re committed to looking beyond age, recognising the maturity, life experience and critical foresight that our employees bring no matter what career or life stage they’re at. There are at times however, industry assumptions that older people…

11 Jun 2019

Shraddha Surana 1 min read

“As a data scientist, I am not expected to write clean code as most of what I write is throwaway.” I am a data scientist and I do not identify with this sentiment. I believe that clean code practices apply to the entire team, no matter the role. Let me tell you why - software development does not really need…

10 Jun 2019

ericlippert 9 min read

Last time on FAIC we implemented a better technique for estimating the expected value of a function f applied to samples from a distribution p: Compute the total area (including negative areas) under the function x => f(x) * p.Weight(x) … Continue reading →

uncategorizedfixing random

Dave Cheney 9 min read

This essay is a derived from my dotGo 2019 presentation about my favourite feature in Go. Many years ago Rob Pike remarked, “Numbers are just numbers, you’ll never see 0x80ULL in a .go source file”. —Rob Pike, The Go Programming Language Beyond this pithy observation lies the fascinating world of Go’s constants. Something that is […]

goprogrammingsmall ideasconstantserror handling

Tina Vinod 1 min read

Vessy Tasheva, the founder of Vessy.com approached me while working on a report that she believed would help companies from around the world become more inclusive and diverse. The 2019 Diversity in the Workplace Report intends to inspire companies to understand, innovate and better serve global customers by recognizing diversity and inclusion as more than trending hashtags.

8 Jun 2019

1 min read

At Google, our organization designs, owns, and maintains a number of optimization models that automate the planning of Google’s datacenter growth and health. As is pretty standard in supply chain optimization and planning, these models are often integer linear programs. It’s a core competency of operations research, after all. One might think, “Large optimization problems? That sounds hard!” But it’s…

7 Jun 2019

6 Jun 2019

lukaseder 1 min read

How to write a simple API is already an art on its own. I didn’t have time to write a short letter, so I wrote a long one instead. ― Mark Twain But keeping an API simple for beginners and most users, and making it extensible for power users seems even more of a challenge. … Continue reading How to…

javaapiapi designdependency injectionextensibility

5 Jun 2019