News for hackers. Stuff that matters.

glynnormington

Re:Developer's block on Sunday August 24, 2025 @01:15PM (#45005896)
That's hard. My only advice when working in a stifling, corporate environment is to find out what your education budget is and then use it for the kind of learning I was referring to in the article. (If you don't have an education budget, that's one more reason to start planning a job move...)
Re:Developer's block on Sunday August 24, 2025 @01:12PM (#45005881)
Did you see this helpful link: https://littlegreenviper.com/testing-harness-vs-unit/. According to that usage of "test harness", it's not the same as a unit test. It's a way of driving code manually to explore different usages and to recreate certain kinds of bugs. It is used to complement unit tests.
Re:Developer's block on Saturday August 23, 2025 @11:00AM (#44996473)
I try to think in terms of owing the dependency a contribution as a small payment for using it, and this bugs me until I do it. But, sure, better to contribute docs sooner rather than not at all.

(One advantage of deferring is that the contribution may be better quality when I've had more experience of using the dependency.)

Re:Developer's block on Saturday August 23, 2025 @09:29AM (#44995842)
Fair point. I often copy stuff across from one project to the next. But this point is most relevant when I'm using another language etc. for the first time and I'm tempted to try to retrofit all my previous best practices.

For example, I used to work on a mainframe product that dumped the address space to disk on a crash. Then it was possible to build all sorts of fancy tooling to analyse the dump. When I moved to a different platform, without those kinds of dumps, it was tempting to try to reinvent all this stuff, but it would have been a massive time sink (and would have failed too).

Re:Developer's block on Saturday August 23, 2025 @09:20AM (#44995782)
If there's a definite performance problem and a simple solution, then sure, go ahead. But applying every optimisation that comes to mind can produce a dog's breakfast of unmaintainable code and then when a real performance problem comes along, it can be really hard to fix.
Re:Developer's block on Saturday August 23, 2025 @09:07AM (#44995703)
Nice - thanks.
Re:Developer's block on Saturday August 23, 2025 @09:05AM (#44995691)
I take your point as I'm retired. But I had my previous working life squarely in mind when writing the post.

"Sustainable pace" helps, which in my case came down to 37 hour working weeks, not working at weekends, and taking all my vacation (and some extra when my employer let me buy it). I know this might sound like madness to Americans, but as a Brit employed mostly by American companies, it worked fine for me.

I found that taking plenty of breaks during the working day helped. Coffee breaks with colleagues, a decent lunch break (ideally including exercise), and plenty of tea breaks. So many times I've had a good idea or solved a problem during a break, so they are actually productive.

Then there's finding other useful things to do which aren't as taxing as the thing that's blocking you (e.g. the next large feature). Fixing bugs, writing docs, and doing preparatory investigations about the upcoming work are all productive ways to give yourself a bit of a mental break. (This was hardest when working in teams with continual short sprints or doing XP and pairing, but if I allowed myself to start to burn out, my productivity started to decline - essentially my brain was forcing me to take things a little more slowly in order to recover.)

I like that. There are other ways of capturing work in progress adjacent to the code, instead of writing a journal. One of my favourites is to write a failing test - pretty much impossible to overlook or misunderstand on "re-entry" to the task.

Another is to write a temporary commit log, with "WIP" in the first line and a TODO list in the rest of the log. This is good for ephemeral information that would just clutter up the code.

If I do need something like a journal, I have occasionally just written a private gist and put that in a tab on my browser.

Re:AI-Shunning robots.txt on Thursday March 28, 2024 @12:02PM (#39853223)
Feel free to submit a PR. :-)
Re:AI-Shunning robots.txt on Thursday March 28, 2024 @12:00PM (#39853185)
That was one of the points of the new repo. A plain text version of the file is https://raw.githubusercontent.com/ai-robots-txt/ai.robots.tx...

The other point was to make this community maintained rather than rely on one source to provide all the inputs.

Re: on Tuesday March 12, 2024 @01:52PM (#39682583)
This project generates some tests of non-deterministic features of JSONPath using Haskell's list monad.
Re: on Wednesday February 28, 2024 @05:44AM (#39536346)
The underlying technology, https://gource.io/, has probably been mentioned here before, but it's a superb tool which produces beautiful animations, so deserves another airing.
Re: on Saturday February 17, 2024 @12:36PM (#39411484)
These are the top ten technical books I can't bear to part with. What are yours?
Re: on Tuesday January 30, 2024 @11:43AM (#39192241)
These days there are several aspects of software development that we take for granted. Perhaps we don't know how we'd manage without them. But it wasn't always that way.
Re: on Wednesday December 27, 2023 @09:27AM (#38782202)
An introduction and overview of the state of the art and work in progress. Discussion at: https://fosstodon.org/@underlap/111652832812061992
Re:Software Characters on Sunday December 10, 2023 @11:39AM (#38592764)
Have you worked with anyone like these people?
Re:Pedagogical Downsides of Haskell on Friday April 14, 2023 @04:07AM (#35566809)
I provide a dependency diagram so students can work out where to apply most effort and how to catch up if they miss something.

I also show likely dependencies from the course assessment to the various topics. For instance, there is a strong dependency on the IO monad, but a weaker/optional dependency on (general) monads.

In terms of presentation order, I tend to over-simplify early in the course and circle back and make things more precise later.

(I'm teaching a 2nd year university course on Functional Programming with Haskell for the first time, so I found the OP fascinating. Thanks!)

Re:A Persistent Rope in Go on Friday June 17, 2022 @11:43AM (#31779891)
Really "An Immutable Rope in Go". (Raised https://github.com/deadpixi/rope/issues/2.)
Re:Learn the workings of Git, not just the commands (2015) on Tuesday January 18, 2022 @01:56PM (#29983965)
Excellent! Two updates since it was written: use main rather than master for the default branch; use git switch to change or create branches.