Tag: firstup
-
Once You're Asking the Right Question, You Don't Need To Ask!
The other week, a coding LLM helped me... without me ever submitting a single prompt to it. I just typed into it all the component parts of my problem, and in doing so the solution revealed itself to me. It's rubberducking... silent AI edition!
-
What breaks when one of your developers leaves?
On Friday, I said goodbye to a colleague as she left us after most of a decade with the company. Then this morning, all hell broke loose on some production servers.
Alt
DataDog graph marked to show a co-worker's departure on Friday evening being immediately followed by a flurry of errors which then stopped for the weekend before coming back in force on Monday morning.
It turns out that the API key that connected our application to our feature flag management platform was associated with her account, and hadn't shown up in the exit audit.
Let this be your reminder to go check where, if anywhere, your applications are using person-specific keys where they should be using generic ones!
-
My Salary History
Inspired by Jeremy Keith doing the same, I've made the salary history of my career transparent.
-
Today, an AI review tool used by my workplace reviewed some code that I wrote, and incorrectly claimed that it would introduce a bug because a global variable I created could "be available to multiple browser tabs" (that's not how browser JavaScript works).
Just in case I was mistaken, I explained to the AI why I thought it was wrong, and asked it to explain itself.
To do so, the LLM wrote a PR to propose adding some code to use our application's save mechanism to pass the data back, via the server, and to any other browser tab, thereby creating the problem that it claimed existed.
This isn't even the most-efficient way to create this problem. localStorage would have been better.
So in other words, today I watched an AI:
(a) claim to have discovered a problem (that doesn't exist),
(b) when challenged, attempt to create the problem (that wasn't needed), and
(c) do so in a way that was suboptimal.Humans aren't perfect. A human could easily make one of these mistakes. Under some circumstances, a human might even have made two of these mistakes. But to make all three? That took an AI.
What's the old saying? "To err is human, but to really foul things up you need a computer."
-
Highlight of my workday was debugging an issue that turned out to be nothing like what the reporter had diagnosed.
The report suggested that our system was having problems parsing URLs with colons in the pathname, suggesting perhaps an encoding issue. It wasn't until I took a deep dive into the logs that I realised that this was a secondary characteristic of many URLs found in customers' SharePoint installations. And many of those URLs get redirected. And SharePoint often uses relative URLs when it sends redirections. And it turned out that our systems' redirect handler... wasn't correctly handling relative URLs.
It all turned into a hundred line automated test to mock SharePoint and demonstrate the problem... followed by a tiny two-line fix to the actual code. And probably the most-satisfying part of my workday!
-
Peripheral Vision
The other night, I encountered an optical illusion by which I could see a particular partially-obstructed light only when it was in my peripheral vision. This put me in mind of the experience of being only peripherally able to see the internalised quirks of your employer that were once obvious to you, and this lead me to reflect a little on my first six months at Firstup.
-
In my first few weeks at my new employer, my code contributions have added 218 lines of code, deleted 2,663. Only one of my PRs has resulted in a net increase in the size of their codebases (by two lines).
Alt
GitHub change summary showing +218 lines added, -2,663 lines removed.
I need to pick up the pace if I'm going to reach the ultimate goal of deleting ALL of the code within my lifetime. (That's the ultimate aim, right?)
-
Dan Has Too Many Monitors
My new employer sent me a laptop and a monitor, which I immediately added to my already pretty-heavily-loaded desk. Wanna see?
-
Off to my first day at Firstup. Gotta have an induction: get my ID badge, learn where the toilets are, how to refill the coffee machine, and all that jazz.
Except, of course, none of those steps will be part of my induction. Because, yet again, I've taken a remote-first position. I'm 100% sold that, for me, remote/distributed work helps me bring my most-productive self. It might not be for everybody, but it's great for me.
And now: I'm going to find out where the water cooler is. No, wait... some other thing!
-
Firstup Recruitment
I'll soon by starting in my new role at Firstup, after a rollercoaster of a recruitment process that rocketed through all the usual tech job steps... but in barely over a week. What a rush!
-
Smug Interview Moment
Recently, I got to answer a technical interview question with "Coincidentally, I implemented exactly what you're describing two weeks ago. For fun. Can I show you the code and the blog post I wrote to explain my design choices?"





