markjgsmith

Linkblog

2023/10/27 #

  • deepmerge - In javascript Object.assign only does a shallow merge of objects, which means top level object properties with the same name overwrite each other. For a propper merge of objects it's actually very non-trivial. This library appears to do it correctly. www.npmjs.com #

2023/10/26 #

  • Israeli think tank lays out a blueprint for the complete ethnic cleansing of Gaza - This like a total blockage situation, it's horrible. My main concern is how to get the Gazan families to safety. Long term safety. The plan is basically a relocation plan, where they would all be moved to apartments in Egypt. When I hear the term ethnic cleansing I think of mass murders, which this isn't, but I guess technically it is a sort of ethnicity clense of the region. Isreali's can no longer sustain the terror attacks or constant threat of them in their back yard. One problem with the plan is not all apartments are built yet. I'd like to understand how the quality of life would be for them in Egypt. Would they all get full citizenship for instance? mondoweiss.net #

  • Short history of the bookmarklet - Bookmarlets are awesome, I have a few that I use regularly. Interesting history too, where they enhanced the address bar in Netscape Navigator v2 so that it recognised a URL protocol of 'javascript:' as being a script and then run the subsequent code on the current page. I imagine it was at the time quite a strange idea, but it quickly became very popular because similar to URLs they are easily shareable, and since you can drag them and store them in your bookmark bar, they are one-click. thehistoryoftheweb.com #

  • bbc/sqs-consumer - "Build SQS-based applications without the boilerplate. Just define an async function that handles the SQS message processing." - Looks like a very straight forward and useful library. github.com #

2023/10/25 #

2023/10/24 #

  • Getting started with #atdev - This looks like a pretty good tutorial. Unfortunately the world is repeatedly blocking everything I do today with enormous rightiousness. It's a real shame because my experience with Bluesky onboarding had been quite good the past couple of days, which is perhaps the reason I'm getting pushback. I'm too tired to fight it, the world was already murdering me two nights in a row of sleep depravation from motorbike gang stalkers, so I'm posting the link now, maybe I'll be able to read it later. If I don't die of starvation or thirst that is. Just another day in hell, where nothing is good enough. I'll get punished for not reading the article probably. graysky.app #

  • Leaving Twitter - Bennedict Evans piece that nicely summarises the past decade and especially the past year's Twitter happenings. It's choas, incentives are creating a toxic atmosphere, the user experience is suffering. It no longer seems like a good bet to invest your time and effort into the platform. Good thing he has some other options these days. www.ben-evans.com #

  • Introducing MSW 2.0 - Big changes to Mock Service Worker. It now uses standard platform APIs for Request, Response and Header objects as well as the platform's fetch implementation. The way you declare request and response handlers changes but that unlocks a load of functionality. mswjs.io #

2023/10/23 #

  • Preserving humanity forever, in space and on Earth - Ever wondered how you would go about preserving your writting for really long time periods. This is the article you are looking for, describing a microfiche style technology, etched onto nickel plates, that can last for thousands of years in harsh environments such as outer space or the surface of the moon. Example: "20 x 20 mm nickel Nanofiche sheet can hold up to 8,000 pages of text rendered at 150 dpi". Also supports images in greyscale. Predicted to last 10000 years on earth, 50 million years on the moon and billions of years in space. It would be pretty darn cool to have this as a possible render target for my website. Can't find any price information though, so I bet it's quite pricey. www.archmission.org #

2023/10/22 #

2023/10/20 #

  • Cost of Spam - Matt Mullenweg on Twitter charging to stop proliferation of bots: "It’s an appealing idea, and charging definitely does introduce a "proof of work" that wasn’t there before, but the history of the web shows this is not really a big deterrent". It's also censorship of the unbanked, some of the most vulnerable people in our societies. ma.tt #

  • ECB starts preparation for digital euro in multi-year project - Banks are worried it will lead to their customers moving their funds to the ECB rather than holding them in the private banks. There will likely be a limit to how many digital euros can be kept by any one person. It's not clear to me how this will in practice be any different to using a bank card. Isn't that already basically all digital? www.reuters.com #

  • After ChatGPT disruption, Stack Overflow lays off 28 percent of staff - People are using AI chat bots more and more, and Stack Overflow is in trouble. The chat bots were trained on their data, now they are eating their lunch. That will be a heck of a disaster if they go under. It's hard to imagine getting unstuck on some coding problems without Stack Overflow. Although to be honest, recently it has seemed to me that some of the answers looked like they might have already been generated by bots. arstechnica.com #

  • Ozone hole goes large again - "The hole has reached a size of 26 million sq km on 16 September 2023. This is roughly three times the size of Brazil". Holy f-ing shit, not a good time to be outside a lot then. www.esa.int #

2023/10/19 #

  • Bookmarks in the Fediverse - Andy Piper writeup of how he's been modifying his setup to be on the Fediverse, with a focus on sharing links using a self hosted express app he runs on glitch. Some interesting ideas. I'd like to add ActivityPub support for things I publish on the website, though I'm not yet convinced it's much better than RSS. Managing an ActivityPub server is quite a lot of effort. It would be awesome if there was a service that republished RSS feed items into the fediverse. andypiper.co.uk #

  • MI5 head warns of 'epic scale' of Chinese espionage - They are worried about a doubling of the reported cases of people being appeoached by chinese spies in order to cultivate them to provide sensitive information. The environment that spies operate in is going to be massively changed by AI tools, but will have a profound impact on society at large. www.bbc.com #

  • The Matrix reloads again: Danny Boyle dance version opens Manchester's Aviva Studios - Great article that covers all the main topics without too much sensasionlism. Much of Boyle's work is phenominal. The opening ceremony for the Olympics was a master piece imo. I've never seen anything like it. Many of his books are ceminal too. I can't think of anyone better to re-explore the ever more important themes of the Matrix. Interestingly I think Boyle now lives in the US. Fun factoid, I was interviewed by a TV crew walking out of the cinema after watching the 2nd Matrix film. The one with all the CGI spaceships with tentacles. I didn't have much to say about it. I felt it had lost the spirit of the original movie in favor of over the top VFX. Curious to see his interpretation, the modern world is so the Matrix, but it's not about flashy VFX, it's much more incidious. www.bbc.com #

2023/10/18 #

  • PDF Chat with Node.js, OpenAI and ModelFusion - Tutorial on how to create a ChatGPT bot to ask questions about a specific PDF. This demistified things quite a bit for me. There isn't that much to it. Parse the PDF, split text into chunks, add to a vector index, create chatbot that uses the vector index to get answers to user questions. There's a lot of complicated sounding words, but overall it's not that difficult, it's just the API has a very different shape to what I'm used to. Also this is a classic example of Typescript making it harder to learn something basic. IMHO, it's totally unnecessary in this context. modelfusion.dev #

  • Organizing multiple Git identities - A handy way to include reference and include different git config settings based on project path. Enables you to use different git identities for different projects. Could be quite useful if you work say on many client projects simultaneously. garrit.xyz #

  • Speeding up the JavaScript ecosystem - The barrel file debacle - So called barrel files that re-export modules so they can all be easily imported somewhere else is such a common pattern in javascript. It can make code more readable by not having millions of imports at the top of the file. Turns out it can increase runtime in some cases because the module graph becomes unnecesarily large. It's especially noticeable in tests because the same code is running again and again, each time adding the overhead. Tldr, don't overuse barrel files. Check that they aren't slowing down your tests. marvinh.dev #

2023/10/17 #

  • Killed by Google - For those in any doubt that Google has a habbit for killing iff its often very popular projects, here's a site that lists all the projects in the Google graveyard. The recently announced they are killing off Google Podcasts. I think it's a huge shame because there really isn't a comparable site that lists podcasts. It's important because a huge amount of podcasters don't have their own websites. I've noticed this from compiling the newsletter for the past few years. This is podcasting's Google Reader extinction event, and I don't think folks realise. Hey Google, will you open source the Google Podcasts website? Let someone else try to run it for the benefit of the community. killedbygoogle.com #

  • Metaphors We Web By - A look at the metaphores that we use in the modern web. It's one of those topics you never think about, like a fish never thinking about the water around it. The metaphores actually have very subtle and impactful influence on the design and functionality we imagine and ultimately build into the web. maggieappleton.com #

2023/10/14 #

  • The Whole of the Whole Earth Catalog Is Now Online - It's nice to see these seminal publications not being firgitten about and relegated to the dustbin of history. There are very often fantastic nuggets of information that are and can be made relevant for the current generation. Things were cool in the old days too :) www.wired.com #

  • Michael Caine confirms retirement from acting after The Great Escaper - I used to see Michael Caine relatively often dinning at a trendy restaurant on the road between High Street Kensington that goes up towards the Notting Hill & the Portobelo Road. There were some pubs on that road that me and my mates would go to sometimes. I always thought how cool it was to be in the same city. The other connection is his film the Ipcress File. There's a library he is in in one of the scenes, and that library is the library in the Royal School of Mines. Some location then and now pictures. I'd go there sometimes to study because the Materials Department is part of the RSM. Anyhow, I wish Michael Caine all the best in his retirement, I've really enjoyed watching the characters he'd played in all the movies he's been in over the years, and of course everyone trying to parody his accent. What a legend :) www.bbc.com #

2023/10/13 #

  • WordPress.com adds an ActivityPub plugin - "This plugin empowers your readers to follow your blog posts on Mastodon, Pleroma, Friendica, and more. In addition, replies to your posts from these platforms are automatically turned into comments on your WordPress blog." wordpress.com #

  • Warning AI industry could use as much energy as the Netherlands - Worth noting that only a few months ago people were saying the same about Bitcoin. That worry has mostly disapeared, as calculations were innacurate, often taken out of context, and applications that work synergisticly with power generation have been developed. It could be similar for AI, certainly it's worth considering that AI has the potential to massively speed up progress in scientific research in many sectors. Decades could be saved. There remains many places where optimisations are possible, though it will be important to get the balance right, optimising too much too early could be very detrimental in the long run. www.bbc.com #

  • A Developer's Experience: Framework 13 AMD 7040 Series - Great developer writeup from Zach Silviera. I've been quite excited about this device for a while now. Unfortunately it seems like there are still quite a few issues with firmware updates etc. The only way he was able to get the finger sensor working on Linux was to first install windows which comes with a firmware pack that fixes the issue. But he ran into a load of other niggly things that all add together to make me very worried to get this device with the aim to have it running Ununtu. I would at least expect a fresh install to work first time with all hardware operational. Having to mess around with re-installing kernels feels a bit too much. I like to tinker with Linux but at the end of the day I'm a web developer, and if the device is getting in the way of that, it's a big issue for me. zach.codes #

  • The midwit home - Makes the case that current home automation tools are way too complicated and in fact you can get quite far with just hooking up a variety of remote power on/off devices. There's an insane amount of different types of these and the author lets his OCD fully hang out, culminating in a final paragraph has to be one of the most ridiculous yet somehow quite sensible observations of all time. dynomight.substack.com #

2023/10/12 #

  • The Person or the Culture? - A short exploration into the philosophy around historical determinism vs great man theory. I'm hlad the folks at gapingvoid are keeping these schools of thought accessible to those of us who don't have the time or energy for it. They are really good at making the past relevsntvto to the present. www.gapingvoid.com #

  • Six Months Ago NPR Left Twitter. The Effects Have Been Negligible - Interesting data point. I would have thought they were getting more trafic from Twitter. I wonder how into the Fediverse they are. Looks like they are liking Threads. For me the worste things about Twitter at the minute are that it's overrun with bot accounts and even the advertizers seem to be cyborg chicks with ridiculously enormous breasts. It's pretty gross. It sort of feels like you are wondering into a red light district some times. niemanreports.org #

2023/10/11 #

  • The Hidden Performance Cost of NodeJS and GraphQL - Performance is such a critical issue sometimes, as I recently found out with a nasty 6X build time regression. This is the sort of problem that's quite fun to work on when you have time on your side, but it's absolute hell when you are up against it. Some useful tips on how to see if your code is getting clogged up with promises in this article. www.softwareatscale.dev #

  • Deploy and Test AWS Step Functions with Node.js - This is awesome functionality to have in your serverless tool box, but I find AWS to be too complicated for everyday programming. Getting the permissions right is always a nightmare, and the UI is very bad in places. I wish Netlify offered something similar but executed with their eye for simplifying the developer experience. blog.appsignal.com #

2023/10/10 #

2023/10/09 #

  • How we manage 200+ open-source repos - A lot of interesting tips, most I would say are in the human to human interaction side of things, which is very important. Some useful ideas as to what types of metrics to track, though a bit light on implemenation details, as it doesn't mention what external database it's using and doesn't have any github action example workflows. Like I said sone hood ideas, but you'll have to implement it all yourself. turbot.com #

2023/10/04 #

  • Lessons From Debugging - Debugging is absolutely crucial to any code writing. A lot of the items on Matt Rickard's list rang true to me. One thing that I have found useful is to add flags that turn major features on/off so you can quickly rule out big sections of code. Be able to run the code with a mininal set of data so you don't get completely overwhelmed with logs, and a way to only print debug logs for specific files. Log verbosity levels can be useful too. matt-rickard.com #

  • usebruno/bruno - Opensource IDE For Exploring and Testing Api's (lightweight alternative to postman/insomnia) - Ability to save routes and settings to an external file which you can then version in Github. github.com #

2023/10/03 #

  • Weekly roundup - 10.02.2023 Ep#24 (Peter St Onge Podcast) - I usually keep these for the newsletter but this episode struck me as being particularly good. Peter has clearly thought through the dynamics he speaks of so many times that his ability to navigate through the weeds is jaw droping at times, effortlessly mixing in uterly perfect analogies into equaly perfect structured descriptions. The segment about the situation in Nigeria is especially good. Also how is it that I was totally unaware of what has happened there over the past year? We need to all be able to converse and think about finance topics with the same fluidity as Peter. podcasts.google.com #

For enquiries about my consulting, development, training and writing services, aswell as sponsorship opportunities contact me directly via email. More details about me here.