Browse the linkblog archives.

Monday 31st August, 2020 #

  • bytenode - A minimalist bytecode compiler for Node.js
  • How to read a log scale - Does a good job of explaining log scales using some interesting examples
  • webrtc-for-the-curious - WebRTC for the Curious: Go beyond the APIs - The github repo for the book, you can build your own version using the Hugo Static site generator
  • WebRTC for the curious - A book about the protocols and APIs of WebRTC

Sunday 30th August, 2020 #

  • John Gruber comments on the ongoing Apple - Epic situation
  • Building a website doesn’t need to be complicated, the approach outlined here has a static site feel to it though it does have a basic web server to serve the pages - Markdown files, plain CSS and HTML
  • Algorithms and data structures are pretty important, this article covers the various tree data structures, how they are implemented and how to traverse them - I haven’t had a chance to fully read the article but it looks good based on the Intro, diagrams, animations and linked pre-requisit material

Saturday 29th August, 2020 #

  • Manage your agile development backlog using markdown files
  • Streaming Data Using Node.js - The general discussion about Node.js streams in this article is quite informative
  • Why use Node.js? Scalability, performance and other benefits of Node.js based on famous apps - Does a fantastic job of highlighting all the reasons to choose Node.js for projects, also a very impressive list of companies running Node.js
  • Debug Visualizer - A VS Code extension for visualizing data structures while debugging

Friday 28th August, 2020 #

  • Why is node.js fast? Libuv & epoll & fcntl - Gabriel Zimmerman continues his video series on node internals, awkward in places but the high level approach is good imo, showing the c++ code next to a flow diagram is very illustrative, I hope he does more of these, I think he’ll find a great way to pass his knowledge on to others
  • This guy is building a VSCode plugin for managing daily tasks, something similar to my agile blog repo I posted yesterday - Managing coding tasks via markdown files is trending :)

Thursday 27th August, 2020 #

  • Show HN - Eleventy blog template to manage agile web development
  • Mongoose 5.10 -Improved Transactions - The previous transactions implementation did not fully implement all the MongoDB driver functionality, this release adds support for the session object withTransaction feature
  • script-httpd - Turn a command line script into a web service - “invokes your script and writes the request body to your process' stdin. Stdout is then passed back to the client as the HTTP response body” - Neato
  • Fortnite splits into two different games tomorrow because of Epic and Apple’s fight

Wednesday 26th August, 2020 #

  • radEventListener - a Tale of Client-side Framework Performance
  • Facebook accelerates News tab launch abroad - countries include the U.K., Germany, France, India and Brazil - notably absent from the list is Australia
  • How to write in plain English - Over the years I’ve picked up a similar style, It’s certainly something I try to do, worth taking the time to read
  • Apple and Epic square off in preliminary hearing on Zoom
  • Mastering Git Stash Workflow - Great article about what is undoubtably one of the most useful git workflows, it’s a technique I use all the time

Tuesday 25th August, 2020 #

  • New Repo: mjgs/eleventy-agile-blog - A minimal blog template using Eleventy, this one implements a simple agile development workflow so you can get stuff done
  • React's default way of appending itself to a DOM tree considered harmful - Makes a case for why separation of concerns is still a best practice worth remembering in front end development
  • More from unreal zoom court - the judge is muting participants in order to force them to answer yes/no questions [for some reason Twitter is currently displaying this link differently based on referer, so copy and paste it to see the tweet what I am actually trying to link to]
  • More tweets from zoom court - “The judge is expressing deep doubts about Apple’s walled garden ecosystem - If you have an iphone you can't buy [apps] from anyone else“
  • The Apple vs Epic case is in session and I guess it’s on zoom and people are live tweeting it, anyway one of the attorneys was the judge for the Silk Road case, also they are not allowed to screenshot the zoom call so people are posting sketches of the zoom call - is this the real world?
  • Web workers vs Service workers vs Worklets
  • HTML Web Workers in Depth

Sunday 23rd August, 2020 #

  • Deftones - Rivière - An example PeerTube hosted video, I don’t consider myself a Deftones fan, though I do like the soundgardeny guitars that kick in mid way through this quite raunchy video, I guess part of me misses the 90s
  • Moving from YouTube to PeerTube - I wasn’t aware of PeerTube, it’s a way to self host your videos, uses a variant of BitTorrent that runs directly in the browser, the article makes the case that it’s a good way to have functional backups of your YouTube hosted videos
  • Apple apologizes to WordPress, won’t force the free app to add purchases after all

Saturday 22nd August, 2020 #

  • An Update on MDN Web Docs - Mozilla outline how the recent job cuts will affect the MDN docs
  • Linux From Scratch (LFS) is a project that provides you with step-by-step instructions for building your own customized Linux system entirely from source - I really like the philosophy behind this project, it would be great to build a minimal Linux distro specifically for NodeJS development
  • Apple fires back in court, says Epic Games CEO asked for special treatment
  • WordPress founder claims Apple cut off updates to his completely free app because it wants 30 percent

Friday 21st August, 2020 #

  • Migrating from Node and Express to the Jamstack (Parts 1-3) - Quite rambley piece but interesting because it highlights the many difficulties in migrating from a server-side Express app to a JAMstack/serverless architecture, all the issues highlighted are problems I have also encountered, I feel like the JAMstack still can’t gracefully handle the functionality needed for many web applications

Thursday 20th August, 2020 #

  • What if the Statue of Liberty went on tour? It’s a silly idea, but I think it could be quite fun
  • A Community-Driven Site with Eleventy: Preparing for Contributions - Nice article that covers setup, configuration and workflows necessary to build a contribution based statically generated website
  • Chapter 3 -The Website - The latest instalment from the web history series, looks at the very early web - In 1993 there were only 100 websites, in 1994 there were 10000, I started browsing websites in 1996, I miss those early disorganised websites

Wednesday 19th August, 2020 #

  • An example of code that imo makes good use of javascript classes is the eleventy code base, the cli script imports one class that builds the rest of the app structure by importing a bunch of other classes, good for readability and testing
  • Decorators for ES6 classes - The description from the proposal “Decorators make class declarations programmable” does sound interesting, however reading the description and examples I am not convinced that the added language complexity is worth it, classes are already decorators and these new decorators are meant to be applied to classes, feels a bit like an “implement everything” feature - How many of the examples could be implemented using existing language features?
  • Shortish video presentation covering the NodeJS internals (V8, Heap/Stack, Libuv) - I watched this on a mobile device so it was a bit difficult to read all the details in the slides, however it goes into quite a lot of depth from the NodeJS code right down to the C++ while loop code that implements the event loop
  • The Market For Discontinued Photographic Film
  • SkyCircles Twitter bot for NYC @SkyCirclesNYC, each post has a detailed description of the plane, map screenshot and any available photography of the vehicle
  • What’s Flying Above Us? - Interesting project that tracks planes overhead that are not going places, but instead are being used in a variety of data gathering operations, code is open source, there is even a Siri shortcut

Tuesday 18th August, 2020 #

  • An Introduction to Moleculer JS - The local dev experience looks pretty great, and it’s easily deployable to any cloud provider via docker, supports api gateway and message broker type components, so you get load balancing and fault tolerance, also event based architecture
  • moleculer - Progressive microservices framework for Node.js - I wasn’t aware of this framework, the feature set looks interesting
  • How To Start Using Microservices - It’s a rather complex landscape, this piece does a good job of summarising the environment and suggests many useful concepts, design philosophies as well as services and tools
  • Apple, Epic, and the App Store - App makers want a direct relationship with their customers and for Apple to stop favouring it’s own services

Monday 17th August, 2020 #

  • Promise.allSettled() VS Promise.all() in JavaScript
  • Linear, Binary, and Interpolation Search Algorithms Explained
  • India to run optic fibre to 450,000 villages in 1,000 days and give 1.3bn a digital Health ID
  • Looks at how much influence Google has on the open web in the current moment
  • Linux Commands frequently used by Linux Sysadmins - Most of these are beginner level but it’s a very good summary and part 2 has a nice list of system monitoring tools
  • How Apple's and Google's defenses to Fortnite maker Epic Games' antitrust lawsuits over their app store policies will likely differ - Explores the landscape of the case with a minimum of legalese

Saturday 15th August, 2020 #

  • Some larger companies including Microsoft, Salesforce and Indeed have set up FOSS funds and have started awarding recipient, ESlint the very popular linting tool has received $10,000 - iIt would be great if this trend continues as there are many important projects that need support
  • React v17.0 Release Candidate - Focuses on improving upgrades, it’s now possible to run different versions of React in the same component tree, also some changes to make integrations with other frameworks easier
  • US DoD reveals official task force to investigate UFOs after releasing videos

Friday 14th August, 2020 #

  • Epic Goes to War With Apple Over the App Store - Something that occurred to me while reading this piece is that In days gone by it was royal families that had to deal with such dilemmas, I have no idea whether the current situation is better or worse, but it’s interesting nonetheless
  • Typing is coming to Ruby - You can define your types in separate files so the typing doesn’t clutter up the Ruby code, which is nice
  • Amazon launches Braket quantum computing service in general availability
  • Shifting from Express.js to Azure Functions - I quite like the Azure functions implementation, at least for relatively simple endpoints, it looks very straight forward to setup
  • The NodeJS core team are redesigning the main website to Gatsby/React/Typescript
  • Interesting writeup of the push to move Node.js EventTarget to a browser standards compliant implementation

Wednesday 12th August, 2020 #

  • 4 Lessons Web App Designers Can Learn From Google - They do make exceedingly great web applications
  • Twitter is for real rolling out its reply-limiting feature to all users
  • The EU is launching a market for personal data - This could be quite interesting, it would be great if every citizen could have a small bit of cloud storage guarantied for their whole life and beyond
  • Illustrated JS - Promises - Some more cake based javascript cartoons

Tuesday 11th August, 2020 #

  • Started reading about CSS Modules, gave up at "CSS Modules compile to a low-level interchange format" - Really, is that what we do these days when current tech does not do what we want, just create a superset, surely we just end up with binary (the superest?) eventually
  • I've been running through the Next.js tutorials, I like how the framework is put together, so far all the abstractions feels quite natural - The one area that feels weird though is debugging, the debugger stops at all the breakpoints, which is great, but I'm not sure I even know what it actually means to be paused in the middle of some serverside running JSX, the level of mysteriousness of what seems to me at this point to be a layer of magic, the potential instability feels uncomfortable

Saturday 8th August, 2020 #

  • It’s been a while since I watched some movie trailers, these a pretty good
  • Breaking Down Serverless Anti-Patterns - Honestly I lost interest mid way through this article, so perhaps that’s an indication of the quality, however it’s an important topic
  • Browser developer tools timeline
  • Illustrated JS - JavaScript asynchronous behaviour - I liked this article, it’s about baking chocolate cakes, and also javascript
  • TypeScript, Minus TypeScript - Turns out your can use Typescript with vanilla javascript by creating the type definitions in JSDoc comments, that’s pretty cool
  • Introducing DevNews - A New Podcast From DEV!
  • To Head Off Regulators, Google Makes Certain Words Taboo - Sort of unsurprising in a lot of ways, of course they are going to be careful when it comes to future legal problems, but also some of the training material communication rules of thumb are actually quite good for users

Friday 7th August, 2020 #

  • How NodeJS revolutionised software development - High level overview of the qualities that make it one of the fastest growing runtimes out there
  • Twitter to label state controlled media accounts
  • Automattic (makers of Wordpress) launches a team communication and collaboration product called P2
  • Some people are saying that with the introduction of it’s Reels feature, Instagram is becoming too complicated to use
  • airtable.js - Airtable javascript client - Airtable is very popular with small to medium sized companies, with this library you can easily build custom cli tools and backend Integrations
  • c8 - output coverage reports using Node.js' built in coverage
  • Let's Debug a Node.js Application - Describes some very useful advanced debugging techniques, tools and libraries

Thursday 6th August, 2020 #

  • Interesting discussion around which large companies (PayPal, Netflix etc) use NodeJS for their backend services
  • Top-Level Await is now enabled by default - Appears to only be applicable to ES modules
  • HarperDB - Building a Database Written in Node.js from the Ground Up - I wouldn’t have thought NodeJS was a good choice for implementing a database but there are surprisingly many benefits
  • A searchable index of public APIs

Wednesday 5th August, 2020 #

  • New Repo: Implements a Books API for a Library, intended to be run on AWS Lambda/DynamoDB using serverless - From a recent demo project I completed, get in touch with me if you are looking to build serverless APIs
  • A deep dive into queues in Node.js - Great article that covers the runtime’s core queues, it’s also worth noting that NodeJS has some great libraries for implementing application level queues, I recently implemented a very robust and fault tolerant backend queuing system for handling inbound Stripe webhooks
  • A bit of self promotion - if you are looking for a developer, or know someone else that is, consider reaching out to me with freelance / contract projects - Now is a great time to start a project :)
  • AWS Serverless LAMP stack - There are a lot of PHP websites out there, so this new serverless offering in this space is noteworthy
  • Future MacBook Pro trackpads may be larger, adjustable, and backlit - Based on the diagrams in the patent it looks like a giant trackpad that spans the entire width of the device, and if I’m understanding the description correctly, the active region of the trackpad could change size based on the app being used, and perhaps even have different regions somehow drawn / backlit onto the trackpad - Sounds like it could be quite cool
  • Apple Maps’ Look Around feature gets first international expansion - It’s Apple’s version of Google Street View
  • In spite of an increase in Internet speed, webpage speeds have not improved over time
  • Disney is launching a new Star-branded streaming service internationally

Tuesday 4th August, 2020 #

  • SpaceX looks for government approval to serve broadband to 5 million customers mostly in underserved areas of the US
  • Introduction to web APIs - I hadn’t seen this MDN article before, it’s a pretty good overview of web APIs
  • Microsoft Teams adds support for 20K participants in meetings
  • Microsoft’s operations will be zero waste by 2030

Monday 3rd August, 2020 #

  • Is TypeScript the future of web development?
  • Creative Coders are the Celebrities of the Future - Sees a future where celebrity coders running algoraves is the next big thing - I don’t know about this exact vision but there is something to the idea that watching a programmer mid-flow is interesting, seeing the ideas stream out into the editor and the software slowly take shape
  • Web apps aren't tech. They're "tech" - Rather average article but it has a very good Douglas Adams quote in it
  • On some of the unexpected benefits of using a PowerPC (really old) mac