The blog post mentions "P99 of ~1s of producer-to-consumer latency". What about just producer latency i.e. message successfully received into the queue ready to be picked up? S3 writes seem be in the low 100s of ms so I assume that's part of the quoted end-to-end latency.
HN user
dmytton
- Writing https://console.dev
- Researching sustainable computing in the Department of Engineering Science, University of Oxford - publications at https://davidmytton.blog/publications/
david@console.dev / https://davidmytton.blog
I'm tracking >200 betas for devtools, infra, & cloud projects at https://console.dev/betas/
You can get the feed via https://console.dev/betas/rss.xml and the 4-5 most interesting go into a weekly newsletter at https://console.dev/latest/
We've been featuring 3 devtools companies that are hiring for technical roles in the weekly https://console.dev/ newsletter since the start of this year. It's been seeing some very good click -> application rates.
We're now in the process of building out profiles on the website and are working with the companies to add interesting details about things like dev processes, tools used, tech stack, how planning works, how on-call works, etc.
Bit different from what SO does/did with our devtools focus. Our inspiration is the Joel Test, if anyone remembers that! https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-s...
Also worth a mention is that Mozilla provide some cross-platform power monitoring tools as part of Firefox which you can build and run yourself:
https://firefox-source-docs.mozilla.org/performance/tools_po...
and a good description of how power consumption actually happens: https://firefox-source-docs.mozilla.org/performance/power_pr...
The story behind Svix and how the idea developed following Tom's work on the end-to-end encrypted backend product EteSync and Etebase is interesting, and something I covered with him in an interview last month:
I've been using Deepnote to do some energy modelling for an academic paper I'm writing, and it's been great. The UI is much nicer than any other Jupyter editor I've used, and the integration with GitHub works well. Just started collaborating with some other researchers on another project so the real-time editing is coming in handy. So much better than using Excel.
I also interviewed their CTO, Jan Matas, as part of my developer interview services about how it's all built around k8s behind the scenes: https://console.dev/interviews/deepnote-jan-matas/
https://singhkays.com/blog/apple-silicon-m1-video-power-cons... has a writeup of power consumption for certain tasks on the Mac Mini M1 (not written by me).
I've been using Plausible on https://console.dev for 2 weeks now and will be paying once the trial ends. The UI is very straightforward and it makes it easy to see the key stats: visitors, popular pages, referrers, and goal tracking. We really don't need anything else and Plausible's reasonable, privacy-first approach to how they implement tracking[1] fits our philosophy. Google Analytics supports Google's mass tracking and I like the fact I have the option to run Plausible myself if I want.
Since our site is deployed on Cloudflare Workers, I had tried Cloudflare's Privacy Analytics but the dashboard data retention of just 1 week is insufficient. And unless you use their beacon, the network stats seem completely inaccurate.
I'm in the process of starting https://console.dev - a free weekly email digest of the best tools and new beta releases for developers.
I really enjoy trying new tools (APIs, products, SaaS, opensource, CLIs, libraries, etc) but it's difficult to keep up to date. You have to continually check Twitter, HN, Reddit, and loads of other forums and blogs. Console aims to pick out the best few each week and say we'll what is good/not so good about each one. No payment for inclusion.
Another open source tool that does something similar is https://k6.io/ which I have been using recently. Tests are written in JS and you can define thresholds such as % errors, P95 and P99 response time for specific request components e.g. blocking, receiving, waiting, etc. There is also a SaaS product connected to it for doing tests from locations around the world.
Moving large numbers of files - like the 50k of Google Photos the author mentions - can be done using https://rclone.org. Set up Google Photos as a source and then use the copy command to move it to a different location[1]. There are a lot of different commands which work with many different cloud storage systems e.g. sync everything one way locally to a backup, mount a FUSE filesystem, do two-way sync, etc.
I have a Star LabTop Mk4 running Manjaro which suspends and resumes without any issues (laptop lid as well as sleep from OS). They build their laptops specifically for Linux and test on a range of major distros.
See https://starlabs.systems/ and https://starlabs.kb.help/compatibility-reports/
There is also the paper that introduced it at https://paris-traceroute.net/images/imc2006.pdf
Traceroute is fine for casual analysis but it is inaccurate and/or incomplete for anything serious because it misses routers that use load balancing on packet headers. For research purposes, it's better to use Paris Traceroute: https://paris-traceroute.net
Why should you use Paris traceroute?
Because traceroute fails in the presence of routers that employ load balancing on packet header fields. The failures lead to the discovery of inaccurate and incomplete paths, that may mislead operators during problem diagnosis and result in erroneous internet maps. Paris traceroute, by controling packet header contents, obtains a more precise picture of the actual routes that packets follow.
I moved my notes out of Apple Notes and into Markdown inside text files last year due to the bugs I encountered. This means I can sync them with whatever product I like (currently OneDrive) and open them on any system (currently macOS) with any app that can parse Markdown (currently iA Writer). It also means whenever any new app comes along, I can play around.
Usually what I want is something that loads very quickly and has a minimal UI that allows me to focus on writing, but also allows me to search all files quickly. iA Writer ticks all those boxes, and also has support for simple #hashtags so I can organise the notes.
Where things become more difficult is if the app adds a lot of custom functionality that is either specific to that app or adds lots of custom metadata to the files. Then you start to lose some of the above benefits, particularly cross-platform.
I looked at Obsidian but found the UI to be heavy and slow, and lots of extra functionality I wasn't interested in. I've tried a lot of apps[1] but always come back to iA Writer.
[1] https://davidmytton.blog/the-best-note-taking-apps-for-mac-m...
Note-taking seems to be a hot topic lately. I used Apple Notes for a long time because it was very lightweight and minimalist, but recent releases of macOS have been very buggy, so I decided to review all the options. I wrote this up at https://davidmytton.blog/the-best-note-taking-apps-for-mac-m... which has become one of the most trafficked post on my blog in the last few months!
The key for me is a) plain text files I can manage myself i.e. no database or mandatory custom sync; b) markdown.
Apps will come and go. You might decide to switch platforms and maybe a new editor will come along sometime. This means you want a format that can be opened by anything (plain text) but with lightweight markup that the editor can parse to make it look nice, but you can also parse with your eyes and get a reasonable sense of the document structure (markdown).
Then it's all about search. There's no point making notes if you can't find them. This is where something more than Markdown - that allows you to link notes - is handy. It's what is appearing more and more in the likes of Roam, Obsidian, etc.
I ultimately chose iA Writer on macOS because it is lightweight and really nicely designed, plus has good native support for Markdown. I sync using OneDrive but you can use anything because they're all individual files. iA Writer is also native, and I find most Electron apps to be slow and/or buggy. There are exceptions e.g. VS Code, but I prefer native where possible.
You need to get it from the vendor so it's really up to them if they publish LCAs for their products. Apple and Microsoft do for their hardware but I've not seen many other companies do so.
E.g. https://www.apple.com/euro/environment/pdf/a/generic/product... and https://www.microsoft.com/en-us/download/details.aspx?id=559...
It's great to see new services that help consumers make choices about the products they buy. However, without details of the methodology being used to determine the carbon footprint, there is no way to gauge the accuracy of the service. These types of analysis are often quite inaccurate.
The Bloomberg article is paywalled. Their press release at https://enfuce.com/enfuce-launched-new-sustainability-servic... says:
My Carbon Action is based on a validated calculation method called Life Cycle Assessment (LCA), which has been developed together with D-mat, a Finnish consultancy experienced in lifestyle carbon and material footprint calculations. The calculation takes into account the environmental impacts of a product’s entire lifecycle from raw-material extraction, manufacturing and transport to use and disposal.
This is good but it doesn't actually say what the "validated" LCA is.
Consumer supply chains are notoriously complex. You need details of every element of the supply chain for every product to be able to properly calculate the LCA. This is why we get things like the assumption that local produce always has lower carbon emissions, which isn't always true[1], or switching from plastic bags to organic cotton totes, which are worse on many environmental measures[2].
This is a very complex area[3] and Enfuce need to release their methodology to demonstrate that their data is accurate. Lack of transparency of data is a major problem with sustainability claims of all kinds, something I wrote about this week at https://davidmytton.blog/sustainability-doesnt-work-without-...
[1] https://doi.org/10.1111/j.1467-7679.2009.00445.x
[2] https://www2.mst.dk/Udgiv/publications/2018/02/978-87-93614-...
[3] https://link.springer.com/article/10.1007/s10806-015-9591-6
Due to the bugs in Apple Notes on macOS 10.15 and iOS 13, I just spent some time evaluating as many note taking apps for Mac as possible. I ended up picking https://ia.net/writer
Typora was interesting but it was very buggy, and doesn't handle tags which are important for notes.
My main criteria were an open file format, ideally editing plain text files on disk using Markdown as the formatting. This ruled out apps like OneNote, InkDrop, Standard Notes and others.
If you don't mind about having a proprietary database so long as the data can be exported to Markdown, https://bear.app is my favourite so long as you're on an Apple device.
I will also be interested in https://nvultra.com/ once it comes out of private beta.
I published my full writeup today at https://davidmytton.blog/the-best-note-taking-apps-for-mac-m...
It'd be great to understand a bit more about how you'd like to see this working. The WAF product team report into me so I can get a discussion going with the right people if you'd like to email me: david.mytton@stackpath.com
I'm VP, Product Engineering at https://www.stackpath.com and we feel like our products compete nicely alongside Cloudflare in DNS, WAF, CDN and Serverless (our EdgeEngine product uses v8 just like Cloudflare workers).
Our Edge Containers product launch was also on HN last month: https://news.ycombinator.com/item?id=19089614
I'd like to suggest my company blog: https://blog.serverdensity.com
As an example, our frontend engineering team just wrote up a series of posts about implementing graphing in React, migrating from Redux:
- https://blog.serverdensity.com/time-series-charts-react-redu...
- https://blog.serverdensity.com/building-a-color-engine-for-g...
- https://blog.serverdensity.com/lessons-learned-implementing-...
And I wrote about recent backend changes to our time series storage: https://blog.serverdensity.com/time-series-data-opentsdb-big...
Thanks! We just recently released this new pricing page as a test. We've done a few iterations over the years and patio11 did a great writeup at http://www.kalzumeus.com/2012/08/13/doubling-saas-revenue/
If you want to hand off all the hard stuff about monitoring and get some easy to use, core functionality (graphing, alerts, dashboards) then my company https://www.serverdensity.com has been going 7+ years now.
For highly sophisticated environments then https://www.datadog.com is a very advanced product.
Both are based off my original agent: https://github.com/serverdensity/sd-agent (DataDog forked it in 2010 and we forked them back last year).
We're also behind http://www.humanops.com trying to build monitoring that also helps you run on-call and ops teams generally in a way that considers fatigue, stress and the realities of the humans running IT systems! E.g. https://blog.serverdensity.com/introducing-alert-costs/ and https://opzzz.sh
The Spotify graphs from Google's monitoring support the numbers I quoted. They may well be batching but Google is seeing (and billing) the numbers I quoted.
Yes then it would be down to their consumers to split them out. However, the graphs Spotify show from Google's monitoring do not support this and they show the actual volume of messages as quoted in the article.
That doesn't match the graphs Spotify post in their blog post. If the batch gets split out into individual operations then Google still prices for each message and each message gets delivered to the consumer. If it's just a single message that'd show up as a single message as far as Google is concerned, which is not what the Spotify test is showing.
I could only write about pub/sub in this article because that's the only service we have a full enough set of numbers for. I hope Spotify will be releasing more stats in their future blog posts about the other GCP services they'll be using.
Right but that only affects networking costs, because the batch is split out into individual publish API calls on Google's side, and that's what you're billed for.