markjgsmith

Blog

2025/04/27 #

The ankle had been getting somewhat better following 2 days of almost no walking. I went to the shops earlier though, just a 10 minute walk away, and it definitely still was feeling weak, I couldn't put any weight on it. I've been back now for a few hours and it feels quite painful again. Having an injury like this is basically the last thing I need right now. Very difficult to focus and stay motivated.

The weather has cleared up a bit, with some sunshine this afternoon. It even got a bit warm, reaching to the low twenties (Celcius). #

Today’s links:

2025/04/26 #

Vibe job hunting

I was listening to the latest All-In Podcast earlier. Great epsiode. Loads of insightful commentary about the Trump tarrifs, Google's AI workflow design issues, and Elon & DOGE. The show often reminds me of the weekly sales calls I used to be on when I worked in enterprise software sales. Well anyway, hot off the back of yesterday's vibe coding blog post, it occurred to me that perhaps I could use some AI in my job search. I was thinking to perhaps write a few relevant blog posts. Perhaps Grok might have some ideas.

Here was my first question:

Hey Grok, I'm looking to get back into the European tech startup scene. I have a lot of experience in US startups and 10 years ago I was working in the European tech scene, across the continent, but things have changed since I've been gone. You have access to the latest conversations on Twitter/X which gives you an interesting and relevant perspective. What do you think, broadly speaking, are the main topics of concern for European tech startups? And can you help me identify some areas I could position myself towards, by writing blog posts, for prospective employers to become interested in hiring me?

Here was my second question:

Thanks Grok, that was a really excellent first attempt, with lots of interesting angles. Reminds me of my previous role in technical enterprise software sales. It seems a bit too enterprise software / startup strategy for me as I have moved into a career more focused on software development. Here's a blog post I wrote yesterday which might be more directionally aligned with my goals. I'll also post a link to a blog post that talks about some of my recent development projects. Could you read both of these, including the linked articles, get a bit inspired, and reformulate your previous answer with this new direction?

Vibe coding

Development strategy ideas

Grok's code snippets made me laugh. It actually did read my blog and had based it's code on some of minebut sort of had gone hilariously high level. And some of the stuff it was saying was clearly made up, but I thought that on the whole it actually was quite good at outlining some vague thoughts and approaches. I was particulary impressed at how it morphed it's answer directionally using the updated question.

I'm still getting used to using these AIs. It's very different to searching using a web browser. But perhaps we are still at the stage of trying to figure out where and how AI can be inserted into our workflows. That's a very different type of workflow and solution design than I am used to, but it could be kind of interesting.

Now you'll have to read the answers yourself to see what you think. While I don't think the All-in guys need to be worried about being replaced anyime soon, I was actually really impressed with Grok's answers. It probably won't be long before we will all have our very own All-In podcast gang in our pockets to help us with big difficult life changing moves. It's kind of mindblowing. #

Today’s links:

2025/04/25 #

I've noticed that all the links in yesterday's 'today's links' section all have words missing at the end of the link text. It's because the editor I'm using to edit the files adds a newline at the end of files when you save them, and that causes the link posts generated from them to not have space between the text and the domain. I wrote about it previously. I tried to modify the editor to not add newlines, but that didn't work for whatever reason, so I found a workaround which was to use the 'truncate' command. I thought it was only removing newlines, but turns out it was just truncating the file by a small amount each time, so if I ran it multiple times, which I was doing by running it on all the links each time I created a new link, then after removing the newline, it would start removing actual words. Oh noes!

Maybe at some point I'll find a better solution, but for the minute I jut need to remember to only run it once per file after saving the file.

Computers are fabulous, but also kind of annoying sometimes. #

Vibe coding

I've been hearing the term vibe coding being thrown about quite a lot recently, and especially in the past week. Of course there is a vibe coding wikipedia page. They describe it as a software development methodology that is strongly influenced by AI tools. An example that popped up earlier today in my Twitter/X feed was from Peter Levels, who described one of his most recent projects as using this technique.

Peter Levels: "Vibe coded my own $4.99/mo socal media screenshot service in 2 hours in Node JS"

I thought the thread was pretty interesting because it reminded me of personal projects that I have worked on. He basically created a self hosted tool to take screenshots of websites, and used it on some of his existing websites to save thousands of dollars per month. I was having trouble figuring out exactly what the tool did and more importantly why it was so useful from the thread, and wouldn't you know it others were too so somebody in the thread, Brandon Watson, used Grok to generate a well reasoned case for the tool. Vibe coding all the way down it seems.

Is what he did much different from my self hosted linkblogging SaaS? There are certainly a lot of similarities like a queuing system for backend processing, everything running on a simple VPS instance, but the main thing seems to be that with AI tools he was able to put it all together very quickly. Pretty cool I guess.

Not sure my blogging environment recent developments meet the definition since I'm still not using AI tools, but I've always felt that I channel some sort of vibe when I build stuff. Maybe I need to get in on the vibe coding action, and of course blog about it afterwards. I do note that there are many that are rolling their eyes at this "new" trend. #

I've been checking out the NodeJS certifications that the Linux foundation are selling. They look kind of interesting, though I find their marketing a bit confusing. I guess the JSNAD and JSNSD would be most appropriate for a web developer. It's a bit confusing whether the certification is included in the training course or not. I know some industries really like these types of certifications. #

Today’s links:

2025/04/24 #

Cold and drizzly rain day today where I am. Ankle still hurting quite a lot, so I'm trying to keep that leg rested and perched up on a cushion. All the new blogging scripts, bash aliases and of course the laptop, are making writing much more enjoyable. #

Start with aliases and scripts

It's always amazing to me how far you can get with just bash scripts and bash aliases on a unix/linux based system.

I often find when I'm configuring a new environment that it's a great place to start. As you go about your workflow of whatever activity you are trying to accomplish, you start adding small repeatable commands into aliases, which speeds up whatever you are doing, eventually moving more complicated things into a few small scripts, which you then of course trigger using some more aliases. With enough thought you can optimise it so that with just a few key strokes, you can achieve what used to take tens of minutes maybe even hours in seconds.

That's what I have been finding setting up my new laptop with a basic blogging environment. I can now tap a few keys and all the necessary markdown files get automatically created, in the right place, with any needed folders created too, and the frontmatter in the markdown files has the meta data inserted. That used to all be manually done, which not only is time consuming but very error prone. I've also got some aliases that automatcally create a new feature branch in my Github repo at the start of every day, and it automatically gets merged at midnight. What's even cooler is that by using bash heredocs in my blogging script, I can copy and paste urls, post titles and body text into environment variables placed on the same line when executing the alias and all that data gets inserted into the frontmatter, with nice defaults if I don't set them.

I can also navigate directly to important folders on the file system by typing single letter aliases, which are clever enough to know where in the filesystem you wan to go based on the current date.

It's really amazing what features are available in the standard operating system if you use the command line. All these features have been tried and tested for multiple decades by programmers all over the world.

Of course most regular non programmer people will never use such a setup, but when you have your workflow working smoothly, it can act as a sort of prototype for a possible web based tool, which other regular normies could use. #

Today’s links:

2025/04/23 #

Now that I have my feed reading setup on the new laptop with Feedly and Newsify, I am familiarising myself with how everything looks. Around the start of the year, I pruned my RSS feeds and orgnanised them into two groups, News and Bloggers. News has stuff from media publications, organisations, that kind of stuff, while Bloggers is basically just for individuals running their own website. It's super simple and feels really clean. #

Jim Nielsen appears to have figured out the whole having your websites on different subdomains thing. When I did it myself, everything felt very scattered to me, which is why I decided to move to having everything on a seperate domain. Jim's setup looks pretty cool though. He's also got a lot of neat things on the websites like inbound and outbound links, useful stats, social validation, projetcs, notes. I think the fact that his main landing page doesn't have any tabs, menus or sidebars is crucial. #

Today’s links:

2025/04/22 #

I've managed to somehow twist by ankle so I've been hobbling along the past few days. It's swollen and really hurts to walk. So I'm trying not to put too much weight on it.

Making some progress on setting up the laptop. I think I finally got a cross platform solution for daily note taking using Notion. I've also gotten all my Bookmarks synched between all my devices using Google Chrome sync. And while I was on the organising front, I removed android apps I wasn't using, re-organised the ones I am using, and I just improved my blogging workflow by adding some bash aliases that will make it easy to create the markdown files I use for posts. Adding the uuids, date and times has been a real pain, as well as naming the files. With the new aliases that will all happen instantly and be always correct.

I also decided I haven't been listening to enough music recently, so I logged back into Spotify after many years not using the account, and used their very intuitive software to tell them what bands I like. It was a little trip down memory lane, passing through all the major music epochs of my life, with Spotify suggesting bands as I clicked on ones I liked.

One day all these small niggley things you have to do when you setup a new machine will be automatic. Though it's definitely getting easier in many places. There is a long way to go. #

2025/04/20 #

Setting up a basic blogging environment on the new laptop. If this note makes it onto the website then it worked! #

Today’s links:

2025/04/18 #

Very hectic few days, so I haven't had much of a chance to do any blogging. I've been spending quite a lot of time setting up the new laptop, lots of sort of annoying issues that I've needed to iron out, maybe I'll get some time to write about them soon. Mostly they have been related to re-activating various accounts and online tools. The laptop itself is very great. I have things in a functional state, but still quite a bit to do. I have found some temporary accomodation which should make things a bit easier. I just moved in earlier today, I will be here for the next month, at which point I will have found a job, and be in a more stable situation. Lots to do. #

2025/04/15 #

I just bought a new Mac Book Air 15". I've been trying to buy a laptop for something like 4 years now, so as you can imagine, I am quite happy :) #

2025/04/14 #

Memory, maps and humour

Memory is such a strange thing. It's very bizare being back in a place where the last time I was here there were no digital maps in these magic rectangular computers we all carry around in our pockets. I guess back in those days we used to construct our mental models of the space around us in a relative way. Each location was relative to all other locations and you learnt over time how to get between those places.

The very weird thing that I am finding is that now that I have a basically live map in my pocket, that my mental models often were incorrect from a north-south-east-west perspective, but ultimately thaat didn't really matter, because you still knew how to get between places.

Also it's really quite difficult to re-learn over the top of some of these reflex memories. I'm finding all the time that the map is completley upside down compared to my mental model. It's so disorientating sometimes that I just end up closing the map, and figuring out where I'm going the old school way. Trial and error basically. It's often quicker than trying to integrate the maps back together.

Anyhow, maybe memory manifests in layers or something. When you monkey around with the base layer, obviously things will temporarily get bizare. Funny old world isn't it? You need a bit of humour to get through some of this stuff, which is a lot easier said than done. #

Today’s links:

2025/04/12 #

Day trip into the capital today. Really sunny weather, cold in the mornings but by afternoon really quite warm. And oh my gosh Europe can be so very beautiful. #

2025/04/11 #

Today’s links:

2025/04/10 #

I figured out a compromise as for the dotfiles dilema. Fully updating the dotfiles was indeed too big a job for right now, however progress was too slow not to do something, so I've created a temporary bashrc file containing alias' for navigation, file creation and file editing for all the basic blogging tasks I do day to day. That should make things a big more streamlined. Also backed it up. #

Some internet connectivity / WiFi issues today for some reason. Thankfully with a static website powered by git, I can still blog without complete interuption. #

Matthew Mazinski on the Peter McCormack Podcast [30:42]: "A very interesting phenomenon, since Trump has taken power, you could look at all the defence stocks in the United States, they are down. In Europe they are up. Complete polar opposites, and big. European stocks are flying right now. Europea defense contractors are flying right now. Specifically because Europe knows that they need to shoulder more of the burden, because they need to rely on the United States anymore". #

Internet / WiFi connection appears to be operational again. #

A quick update to the issue I was having with the Notion UI a few days ago. I contacted their support team and after a bit of back and forth, and some screenshots, we were able figure out the issue. They had been describing a different interface for some reason. Turns out there is a button for turning text into a list. #

Today’s links:

2025/04/09 #

Pysh and Lavish on China vs Trump

Okay so I could have chosen a slightly less inflamatory title for this post. Really it's China vs the USA rather than vs Trump, but the former does sound a lot better.

Anyhow I thought this segment from the latest We Study Billionaires Podcast was a perspective offering a lot of clarity. Preston Pysh and James Lavish are discussing China’s response to the Trump tariffs [37:42]:

Preston Pysh: I wanted to talk this, this is really interesting, this happened this morning. This was posted like 4 hours ago: “Trump: If China does not withdraw it’s 34% increase above their already long term abuses by tomorrow April 8th 2025, the United States will impose additional tariffs on China of 50%, effective April 9th”. An hour later Zero Hedge posts this 10 year treasury yield chart, that shows that the yields are back up to where they were at when the tariffs were originally announced with the headline, “China responds by selling $50 billion in treasuries. Oh by the way, the yields on the treasuries are now almost unchanged since liberation day".

James Lavish: And that’s the problem.

Preston Pysh: That’s the problem...is their response isn’t words, it’s actions of “Hey all these paper promises you have been shoving down our throat, we are just going to basically…

James Lavish: We don’t want them anyways! We know that they are real negative yield, we know that, because you guys print SO much money. We know that.

Preston Pysh: Yeah, crazy.

Really feels like a scene from one of those manga cartoons, Godzilla vs Megatron or something. If nothing else, it's clear that these two are both very definitely mega. #

Today’s links:

2025/04/08 #

Fun with Midjourney

Following on from yesterday's experimentation with Grok, after hearing about Midjourny's latest features on This Weeek in Startups while having breakfast this morning, I thought it might be fun to take Midjourney for a quick spin. After installing it, I asked it to give me it's impression of me drinking my morning coffee on the balcony with a forest in the background at sunrise. That's essentially exactly what I was doing. Here was Mdjourney's rendition:

Midjourney me

Very impressive, but I have to say in this case reality was much more beautiful than the AI mind's eye.

After drinking my coffee, I went inside and sat with my friend and her two wonderful kids having breakfast. Here was how Midjourney thought we looked:

Midjourney me, friend and her kids

This was greeted with much hilarity by the gang. My friend was a little upset that her AI imagined self looked older than me. I tried to update the prompt, but Midjourney held me to ransom, asking me to signup for a yearly or monthly subscription.

Oh well, it was fun while it lasted. Might try again tomorrow :) #

Turns out the text editor I was using in iOS was automatically removing newlines at the end of posts, but Neovim, which I'm using on Android, does not. That resulted in no space betwwen daily link text and it's domain. Removing the newline fixed the space problem. Now I just need to figure out a way to make this the default, because having the manually do it each time will be way too tedious. #

I really need to update my dotfiles so that they work on Android. It feels like a bit of an impossible task at the minute. Though I have the essentials of my publishing workflow working on Android, it's so tedious to do many things. Normally I would customize my bash shell, adding shortcuts and customisations that would speed things up, eliminating repetitive tedious steps in my workflow. That normally would go in the dotfiles. However updating the dotfiles I fear could become a much bigger job than I want to tackle right now. Classic programmer catch 22 situation. #

Today’s links:

2025/04/07 #

I've been testing out the Notion app on Android today, because I really need a replacement for OneNote which is so horrible to use. Notion looks great in lots of ways, but it seems impossible to turn existing text into a bulletted or check list. You have to know before you start typing that you are going to be writing a list. That's totally impractical, makes it very hard to work alongside existing apps. Cut and pasting a list from another app just isn't possible, as far as I can tell. #

As part of last week's Android setup I have installed all major GPTs. So that's ChatGPT, Claude and Gemini. I've been using them to answer basic questions, like for instance which are the best Android text editors and git clients. The answers have been quite good.

Today I noticed that there was a push notification that Grok had been installed. I had tried to install it a few days ago but was told it wasn't available yet but that I could opt for it to auto-install when it was available, which I did. When I opened the app, this time instead of just using it a bit like a web browser, I decided to "have a chat" with it. It was pretty interesting, and to be honest quite fun.

We talked about general life stuff, and that turned into a conversation about my software development projects, and I gave Grok links to the docs, and it was able to read through them and asked me some useful questions. It was kind of like a brainstorming session where you are trying to find a way to best present your product. It was neat. I got the impression that I could have gotten very technical if I had wanted to.

Later we also talked about the Trump tariffs and the effect on the stock markets and general chaos around the world. Grok was able to search through live market data and correlate with tweets from the past few days. Everyone it seems is moving to safety, basically that's treasury bonds and gold. After a bit of back and forth we came up with a set of metrics to watch to get an idea of when the tides will be turning and folks will be starting to get back into Bitcoin.

Then I ran out of messages. I guess I used all my quota. Oh well.

Pretty cool though. I am wondering now how else I could use AI in daily activities. #

Today’s links:

2025/04/05 #

Back in the Europe (Issue #199)

This week’s newsletter is out!

In this week’s edition:

Politics, detention centers, deportations, AI, tariffs, crypto, dev environments on Android, peace, love, and back in wonderful Europe :)

Issue details:

Another awesome issue of the newsletter. #

Today’s links:

2025/04/04 #

Android setup useful links

In my quest to setup my new android phone with a minimal development environment I've read through a ton of articles online. These were some of the most useful:

In hindsight I would have recorded in more detail the setup I was going through, but that's much easier said than done when you are in the thick of it, especially if you are using the tool you are setting up to write your notes. You end up being taken of course debugging an issue in your note taking workflow and tools while debugging a setup issue, and before you know it you are debugging a bug in a bug in a bug, and you get totally lost.

So many annoyances, all stacked and compounding each other. But I am making progress. Even being able to blog about the issues, however vague, is huge progress.

Anyhow this should give you a vague idea of the path I tredded and some of the problems I encountered along the way.

Things are getting somewhat better now that I am re-learning useful bash and git commands. I expect I will have things more streamlines in the comming days. #

2025/04/03 #

Setup on Android

I have spent the past several days setting up my new Samsung a05s Android mobile device. So many things to install and configure. It's been quite a ride. I've put this todo list together in case I need to do it again in the future, and maybe it could be useful for others, hence this post.

  • Buy the phone - Amazon
  • Buy portable hardware bluetooth keyboard - Amazon
  • Buy USB-c power plug - Amazon
  • Buy phone case - Amazon
  • Buy USB-a to USB-c cables to use with old power bateries
  • Hook it up to a Wifi network
  • Hook it up to your Google account
  • Install a VPN app
  • Re-organise the homescreens - Remove stuff you don't need
  • Figure out useful keyboard shortcuts - switch between open apps (option/alt-tab)
  • Get used to new buttons to show homescreen and show open apps (square, hamburger)
  • Install password manager - Lastpass
  • Install 2FA key generation app - Authy
  • Install read later app - Paperscan
  • Install notes app - Microsoft Onenote
  • Install podcast app - Pocket casts
  • Install Android file browser
  • Install money apps - Bank, Paypal, XE
  • Install Chrome browser
  • Install Amazon shoping app
  • Install Linux environment - Termux
  • Install CLI file editing - Neovim
  • Install figure out how to use incorrectly mapped keys like Esc, ", £, ~, #
  • Install CLI version control tool - git
  • Install CLI C compiler
  • Install CLI nodejs
  • Generate public / private keys
  • Add public key as Github ssh key
  • Install Gihub app
  • Update browser settings so Github repo URLs still open in browser
  • Clone personal Github code repos
  • Install GUI file editing - Acode, GitJournal
  • Install GUI version control apps - ?
  • Install taxi / delivery app - Uber
  • Install social media apps - Twitter, LinkedIn, Reddit, Threads, Bluesky

It's not a totally comprehensive list, but it does cover most of the things I had to setup. Finding a simple file editing and version control solution was a lot more complicated than you would expect. I might write another post about the various, and many snags I ran into. #

Android annoyances

I have been setting up my new Android device the past few days. I've been an iOS user for many many years now, probably nearing 2 decades at this stage. Android has come a long way in the intervening years, and I like a lot of the new design. I of course really like the much bigger screen the device has, however there are some annoyances. Here is a short list:

  • During initial setup it really felt like I was having to signin to Google for everything repeatedly
  • Show open apps and home screen buttons feel back to front to me and look confusing
  • Switching betweem apps can be slow at times
  • OS Keyboard shortcuts sort of suck - you end up having to tap screen a lot
  • Mixing between keyboard and touchscreen kind of sucks
  • Difference between homescreen and app screens isn't obvious at first
  • Speed of typing in some apps is slow
  • No good replacement for iOS Notes app
  • No good replacement for Working Copy app
  • Vimium doesn't exist for Chrome so no way to function using just keyboard

Finding replacement apps is frustratingly difficult for things that should be standard like file editing and version control. The overall feeling is that you are constanly having to jump through hoops, even if the hoops are sometimes very well designed. I feel like with Apple the setup was simpler, more straight forward, less being blocked, and less frustrating to find apps and a workflow for what I needed to do.

I am howwever sowly getting the hang of things, and I think that my dev environment setup could potentially be much better than what I had on iOS. And actually some of the 3rd party vendor apps that I already used on iOS have Android versions that are pretty cool. It will be interesting to see how things are in a week or two, whether I am able to blog and write code more efficiently than on iOS. #

Just a test note to see if the notes feature is still working. If this note appears as the last post in the current day then this test worked! :) #

2025/04/01 #

Back in Europe

First things first, I'm back in Europe. I made it out of the deportation centre in Vietnam that I was taken to after being taken in by the local police. I'm healthy and safe.

I'm slowly getting my bearings again after quite an ordeal. I was in there for 3 months, and it was kind of scary.

I have a new cheap Android phone that I'm trying my best to get used to. It's both really cool and really frustrating at the same time.

Not sure how much I'm going to write about this whole episode yet. It's been very very strange. #

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