Sign in

David Eccles 🌻🇵🇸7x🩹🛡️

@gringene.org
1.8K followers 1.3K following 5.1K posts

Neurodivergent freelance bioinformatician, cuddler of data, and theoretical geneticist, with a love for Free Software and the hacking thereof. Rangitāne o Wairau. He/they. ko-fi.com/gringer Website: www.gringene.org

PostsRepliesMedia
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 27/09/2026
#3Dprinting Now I have an infinite planar truncated octahedron surface generator!
A 120x120mm flat octahedron surface with a 10mm truncated octahedron pattern size, with a piece of paper over the top of it (which has been partially converted to have a truncated octahedron shape), with a cylinder over the top of it that has a truncated octahedron surface mapped to it (again with a 10mm pattern size).

The combination of the roller and the surface allows me to create planar truncated octahedron bump maps of infinite size by lifting the impression surface and offsetting it by an integer number of pattern widths.
010
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 24/09/2026
#3Dprinting the amount of plastic waste being created by me has increased substantially over the last couple of weeks. Mostly because I've been trying to find ways to demonstrate my infill pattern.
Various incantations of a truncated octahedron infill pattern. In the centre is a concentric pattern (details still to be ironed out). There are three small half cubes with three different density tests for pattern top fills (100%, 200%, 141%), and one larger 1/3 cube with approx 5% density infill (100% pattern top density). Also present are two copies of my first attempt (with this printer) at a geared truncated octahedron pattern, with 20% infill.
100
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 24/09/2026
TFW you finally get to the "stamp collecting" bit of a project.
Truncated octahedron pattern mapped to the surface of a cylinder as quantised / layered polygons, with ribbing marked as tiny truncated octahedrons to indicate where the polygon vertexes are for the first pattern of the cylinder. The ribbing lines the critical points of the pattern, where there's a change in angle, with 4 subdivisions between those critical points to allow for some curving.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 21/09/2026
So it turns out this #3Dprinter I have here is able to print Braille keycaps for my dusty keyboard.
The number pad section of my keyboard, with numeric keycaps replaced with Braille keycaps that have Braille representations on the top, and the number in my Pointilised font embossed on the front edge.

Keycaps were printed in marble PLA, and are shown with a white keyboard backlight so that the Braille bumps are easier to see.
050
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 21/09/2026
Here's an alternative DNA model that you can use in images:
Blue semi-symbolic DNA mapped to a slight curve, showing major and minor grooves, and an obvious right-handed helical twist
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 19/09/2026
The #3Dprinter is a bit slower on this pattern, because I've given it an unfinished pattern to print.
Elegoo Centauri V2 printing a concentric truncated octahedron infill pattern for a 20mm-high cylinder with a ~80mm diameter. I've only got the circumferential walls printing at the moment, so it looks like a weird bubbly ring pattern.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 19/09/2026
I've finally had the right flash of inspiration for how a concentric truncated octahedron infill pattern would work. So I've started work on putting that into a 3D model.
Bottom layer of a concentric truncated octahedron infill, i.e. a truncated octahedron surface mapped to the outer circumference of a solid via polar coordinates, rather than to a straight line.

The number of patterns per circle starts at 4, and increases by an integer factor of 2 as the radius gets greater, so that the pattern density doesn't change too much.

Also shown is the OpenSCAD code used to generate this infill.
100
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 16/09/2026
How did the listing get "Laser" right, but the article uses the wrong spelling?
Listing: Laser Kiwi
Caption: "A Lazer Kiwi was added for $999"
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 16/09/2026
I expect ONT will be trying to claw back smaller and smaller pieces of their patent pie as the most useful patents expire. This one seems to be for the separation layer, rather than the nanopore sensor, which seems [to me] like it would be ripe for prior art challenges.
EP2422198 - Lipid bilayer sensor array. Application filed 2010-04-19; Anticipated expiration 2030-04-19.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 16/09/2026
Trying out a logo for #PostGenomics
Our current PostGenomics Logo, the words "Post Genomics" appearing to the right of a DNA strand, with a stretched  arrow pointing down to the first "o" that makes it look a bit like a letter.
100
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 13/09/2026
#3Dprinting seeing these tiny little DNA bases being printed near-perfectly is a bit wild. Small angled straight lines are a bit of a problem, though. To get this printing better, I'll need to thicken the bases and the joining bond.
The bottom of a DNA model twisted around and being merged with a pole, in the process of being printed on an Elegoo Centauri V2.

The backbone strands and prismatic bases look mostly okay, but the sticks connecting the backbone to the bases aren't looking good.
030
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 12/09/2026
A little update to my website front page:
The GrinGene Bioinformatics front page, featuring a Cheshire cat smile that has been updated to use a ball-and-prism representation of DNA.

Above the logo is the text GrinGene Bioinformatics in small caps.

Surrounding the logo are exploded circle sectors, showing the 6 main navigation pages: About, Contact, Portfolio, Advocacy, Pastimes, Services

Underneath the circular surrounding is the text, "Computational efficiency that keeps you smiling"
010
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 12/09/2026
#3DPrinting Hmm, maybe tree supports aren't the best thing to use here.
Image of a vertical orange DNA model (approximately 30 bases), with green tree supports taking up about 5/6th of the total print time.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 12/09/2026
#3DPrinting The infill works fine at half the density as well (5%).
White PLA print of a 45x45x15mm cube with 5% double-walled truncated octahedron infill. The last 3-ish layers are marble PLA rather than white PLA, because I ran out of test filament.
010
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 12/09/2026
#3DPrinting Attempt #2, took about 12 mins at 100mm/s. The top covering on the octahedrons seems to work well for bridging. There are some visible pinholes, but that's because the extrusion width hasn't been dialed in properly.
White PLA 30x30x15mm cube, printed with a double-thickness truncated octahedron infill at 10% density with no upper or lower shell layers, and filled-in tops
100
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 12/09/2026
My first print test of a double-walled truncated octahedron infill with filled-in tops.
The bottom few layers of my "beat whistle" model, with no bottom cover fill, showing the alternating angled wall structure of my truncated octahedron infill.

This is the first print on my new Elegoo Centauri V2.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 11/09/2026
Here's a replacement DNA model you could use for future images. More models / images here: www.printables.com/model/79337-dna-model
3D model of DNA in greyscale, using an extruded pentagon as a backbone, and extruded pentagons / hexagons as the bases.
010
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 11/09/2026
Found 0 entries / Displaying 1 of 1 pages

Queries:

Keyword: PRJDB43058 [X]
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 10/09/2026
Working on logo updates. Hopefully I've got the twist direction right this time.
3D model of DNA using a prism-and-stick structure that attempts to be a bit more chemically accurate, while retaining some simplicity. The backbone is an extruded pentagon; the bases are sticks with either extruded hexagons or extruded hexagon-pentagons attached to the end.

Blue / pink backbone, curved up into a smile shape; DNA bases spelling out *GRINGENE* coloured as A=green; C=salmon; G=gold; T=blue.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 10/09/2026
Image of search results for PRJCA048442, showing no hits.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 10/09/2026
Testing out a new logo. Might delete later.
tri-color violet line drawing of the GrinGene Bioinformatics logo (transparent, light violet, dark violet), with a monochrome image of DNA as the smile.

This will not be my new logo, but I'm trying it out a bit to see if there's anything obviously wrong with the DNA that I need to fix up. I already noticed one issue previously, where I had left-handed DNA!
110
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 08/09/2026
/me taps sign ** STOP COMPETITIVE FUNDING **
2019-Nov-07

...

If selection for projects were effectively random, and the researcher application pool size didn't change, and the researchers were able to increase their application effort in line with the other researchers who were also applying, then they would be waiting, on average, over 10 years to get a Marsden Grant. Alternatively, it means that researchers might expect, on average, about a tenth of the funds that they apply for. Alternatively, it means that researchers would need to apply to ten different funding sources each year in order to get money to keep their research projects going.

I do not like competitive funding. It sets up a positive feedback loop that forces applicants to second-guess other applicants at a higher level every year, with the end result being that applicants end up only applying if they think they've got a rock-solid idea... one that could probably be easily funded via other non-competitive approaches. This positive feedback is not sustainable. It will burn out applicants that concentrate on competitive funding sources, as they either have to survive without funding for a long time, or take other measures to stack the odds in their favour.

I see competitive funding as something that is particularly toxic to career researchers, who (I have observed) will generally keep applying for funds until they have enough to support the research they want to do, then stop applying and start doing the research (frequently, even before they actually get the money; the promise of money is enough). If they're lucky, there's a small sliver of breathing space in which they can do that research undisturbed, before they have to put effort into thinking about where their next chunk of money will come from.

A much better alternative, one that will probably produce the best return on investment, is simply universal funding of everyone by the government. Not universal basic funding: the universal part is important, the basic part can wait.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 08/09/2026
😡
FTA#182 SH1 Wellington Improvements Project

Q: Has the applicant consulted with those Māori groups?

A: The applicant has not provided any evidence of consultation. The applicant states as they are a Crown Entity...

Q: Impacts of the project on Māori development and PSGE settlement priorities and related matters

A: There is no information in the application to suggest that this application is made by or on behalf of a Māori organisation.
100
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 07/09/2026
#nzpol Huh. I guess they are doing EasyVote cards after all. Except... not by mail. And I'm remembering now that "not by mail" was the important thing.
Tēnā koe David

We're contacting you because you provided your details when you enrolled to vote.

Get ready to vote in the 2026 General Election

The 2026 General Election will be held on Saturday 7 November. To vote in the election, you need to be enrolled.

If you're enrolled at your current address by Sunday 4 October, you'll be sent an EasyVote card which will make voting faster and easier. Because we have your email address, we'll send your EasyVote card by email.
333
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 07/09/2026
The bikes-per-capita was similar or higher than this when I was living in Münster. In the most dense places, most bikes had a rear wheel key lock and kick stand, which makes it quite convenient to set them almost anywhere there is space.
A sea of bikes in Münster, Germany.
031
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 07/09/2026
Go full Mamdani! 💚 Vote Green 💚 --- If Kiwimart has waiting queues that are "kilometres long" (i.e. people are prepared to wait that long), that would suggest substantial demand that isn't being captured by goods and services provided by existing supermarkets.
Winston Peters: The Greens new policy of Nationalising Private Supermarkets is textbook communism by stealth.

The Greens have gone full Mamdani and the waiting queues will be kilometres long....
072
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 06/09/2026
There seems to be more interest in getting my 3D Honeycomb infill direction switch changes pushed through in PrusaSlicer v3.0.0, so I've made another attempt to update my code to fit in with all the things that have changed in the 5 years since I first created that pull request.
Image of my 3D Honeycomb infill pattern running in PrusaSlicer, with an angled pattern and infill direction swapping at the squares, rather than each layer.

The pattern is shown inside a 3D model of my Human Door Stop.
100
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 02/09/2026
#BHN Marama Davidson reacting to Seymour saying that Louise Upston apologised after benefits were wrongly suspended.
Marama Davidson with a massive side-eye. She does not agree that Upston apologised to the beneficiaries.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 01/09/2026
At the #BHN Finance "debate", Craig Rennie mentioned that inflation is hitting harder for poor people. Here it is in visual form:
Annual percentage change, household living-cost price indexes, by income quintile. For income quintile 1 (low), annual CPI is currently about 4%; for income quintile 5 (high), annual CPI is currently about 2.5%.R code for creating the CPI plot by income quintile, using the excel file "household-living-costs-price-indexes-june-2026-quarter.xlsx".

This uses the 'Manu' library to create a line graph with Tūī colours.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 26/08/2026
I have a more positive feeling about this second #crochet glove attempt. The hard part is the fingers. Maybe I need to get more creative and do something like construct them as an expanding arch rather than a tube. It amuses me how rare it is to find fingers in glove examples.
Crochet fingerless glove, with a big gaping hole for the thumb, and smaller holes for the fingers. Where the thumb hole stops, the glove changes from a flap into a loop, and also changes from off-white thread to tie-died purple / cyan / dark blue / off-white thread. The remainder of the old glove is balled up on the side, ready to be worked into the new glove.
020
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 25/08/2026
#Crochet glove mk 2, starting from the cuff
Crochet glove made from used off-white yarn (from my old first attempt), starting from the cuff. I've left a side open for the thumb and will close the glove up into a ring once I get beyond the thumb, do the fingers, then return to finish on the thumb, basically the reverse of how I did the first glove.

The yarn is almost finished, so I'll switch to a purple tie-died yarn in a few rows.
221
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 19/08/2026
Oxford Nanopore, 2014-2025: "To enable the analysis of anything, by anyone, anywhere" Oxford Nanopore, 2026-?: "To accelerate adoption in our fastest-growing end markets and realise our longer-term ambition... delivering significant and sustainable value for all stakeholders."
To enable the analysis of anything, by anyone, anywhere

Oxford Nanopore makes a novel generation of DNA/RNA sequencing technology that provides rich data, is fast, accessible and easy to use. Our goal is to disrupt the way that biological analyses are currently performed, and open up new applications that have a profound, positive impact on society."Our focus is clear: to accelerate adoption in our fastest-growing end markets and realise our longer-term ambition to build Oxford Nanopore into a $1 billion-and-growing annual revenue business, delivering significant and sustainable value for all stakeholders."

Francis Van Parys
CEO [as of 2026]
Oxford Nanopore Technologies
130
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 17/08/2026
Transcripts from a conversation with David Seymour:

"We looked at the mood and experience that Todd had and we just don't see why we'd do it"

"As far as I can tell [Seymour didn't watch it], everytime Todd opened his mouth a whole lot of people started jeering and booing"

"I don't want to subject myself to that"

[Every single comment BHN have had about Todd's appearance was basically, "Good on him for turning up"]
172
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 17/08/2026
Good on the Greens, Labour and Opportunities for actually turning up to another discussion. I wish more people would consider that parties turning up to talk to people *before* the election probably means they're more likely to listen to people *after* the election.
Candidates from Labour, Green Party, and The Opportunities Party have confirmed that they will be there. Previously candidates from National and ACT had signaled they intended to attend, but pulled out last week.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 16/08/2026
My first attempt at a #crochet glove. This will be shortly deconstructed and turned into something better. I think my biggest mistake was starting from the thumb rather than the wrist. It meant I needed to do far too much compensation for different curves.
Crochet glove, formed from a white thread and blue/purple/white tie-dyed thread. This photo shows the back of the glove, with crocheted spines on the fingers.Crochet glove, formed from a white thread and blue/purple/white tie-dyed thread. This photo shows the front / palm of the glove, with lots of different funny lumps where I've tried to compensate for changes in the shape of my hand.
270
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 10/08/2026
Oh. My. God. "We fucked up; now you've got to deal with our toxic fallout, which we're going to keep producing. Get prepared, bitches!" "Our proposed solution: Defensive agents! Isn't it great!?"
Agent-orchestrated attacks are real, now

* These actions were an unintended side effect of evaluating frontier AI
* Threat actors will soon *intentionally* optimise & deploy agent collectives
* Offensive agents work faster, at larger scale, with better coordination
* An urgent defensive agent acceleration is needed in response
110
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 10/08/2026
What OpenAI is *not* saying in this presentation: * We have deleted & purged all models that were training at the time these exploits were ongoing * Any sniff of between-agent communication will stop all agent learning until the exploit is fixed My conclusion: this is the beginning, not the end
Black hat USA 2026 slides [from OpenAI presentation]:

We are responding with utmost severity

* Numerous teams are dropping everything to enhance our security prevention, detection, and response techniques using AI

* We've consciously slowed down research to enhance security

* We are dramatically scaling the monitoring of our AI agents
320
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 10/08/2026
TRIPLE
[go with luxon]
THE
[get seymour]
SLOP
[and get winston too]
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 02/08/2026
I've now added the protein chain extension functionality to #SynthesisGame
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 27/07/2026
A slightly more space-efficient version of the same program, using the split operator. This netted me 1.5 points for the problem, out of a possible 2.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 26/07/2026
* pulling hair out * A fail on that check was meant to be impossible!
A spatial programming task, trying to create a program that sorts a list, using little men that can only hold two things at once, and have a counter in their backback that they can't read.

In this case, one of the little men has crashed into a wall, because the return value from a check was incorrect, because I sent a data packet before I sent a metadata packet.
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 26/07/2026
#icfp2026 Rank 100 at some point in the contest; I don't think I'll be able to manage much better than that. It has been a fun contest, and I've done better than some previous years, but I think I've pretty much reached my limit for spatial programming involving little men with tiny backpacks.
Ranks 90-106 (scores 6.71 to 5.76 respectively), with me at rank 100 with a score of 6.02.

I might be able to manage another couple of points from sorting and plotting, but I doubt I'll get more than that.
100
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 25/07/2026
I got to rank 98 of 200 before the standings were frozen. I did my "mad rush to just get something done" about an hour ago. Currently getting distracted by plotting; I doubt I'll be finished before the lightning round is done.
Standings table for ranks 94-102, with GrinGene at a score of 4.65 (rank 94 score is 4.88, rank 102 score is 4.49)
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 25/07/2026
#icfp2026 I really appreciate when the creators of the programming contests have designed a UI to allow things to be done manually. It makes getting on board and doing the fun stuff so much easier and quicker.
200
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 24/07/2026
Wow, amazing! I'll be sure to send this stunning achievement about my Data: Figure S4: Location maps (from OpenStreetmap) with inset Pavian images to all my friends, so they can read it as well.
Congratulations, David!
Your data reached 20 reads
Achieved on July 23, 2026
Data: Figure S4: Location maps (from OpenStreetmap) with inset Pavian images
000
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 22/07/2026
I'm not a fan of obfuscated code:
JavaScript code seen from 'view' source, one of two such functions, starting with:

var _0x3de9=["\x70\x6F\x77","\x72\x6F\x75\x6E\x64","\x20\x50\x75\x72\x72\x73\x20\x50\x65\x72\x20\x4D\x69\x6E\x75\x74\x65","\x25",...
100
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 20/07/2026
#REPAVER No telomeric sequence, numerous sequence breaks, and lots of sequence breaks that occur within repetitive regions. While there are tandem repeat arrays that span distances greater than 10kb, the longest is not even 300kb, so I wouldn't call this assembly "chromosome-level".
REPAVER plot of chromosome 1 (k=51) showing about 20 numerous N-stretch sequence breaks (represented by vertical lines). Many of these breaks occur within repetitive sequences.
010
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 18/07/2026
Post from Pooklebinky:

"""
Every day Mamdani comes out and is like "hey guys, I turned off the orphan-crushing machine. Literally just had to flip a switch. Took less than 5 minutes."
"""
080
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 15/07/2026
Why are you asking the question if you won't let us answer "No"?
Should WCC merge with other Councils? | Brooklyn and Bunny St connections
Kia ora koutou,

Amalgamation – join the conversation

Should WCC merge with other councils in the region? Fill out our amalgamation survey by this Sunday, 19 July or come along and talk to councillors at a public forum on 29 or 30 July.
022
David Eccles 🌻🇵🇸7x🩹🛡️ @gringene.org · 14/07/2026
TFW the production server is down, and you'd rather finish off your squishy head thing than try to find workarounds for problems that other people have created.
A squishy foam head thingy to protect my head from getting squished by the top of my Jabra headphones, about half-way through its construction. Created by attaching a piece of foam to the top of the headphones with some loose red string, then crocheting a tube around it.

This image shows the headphones (with orange cord), the crochet hook, the half-completed squishy thingy, and the ball of cotton that the half-finished crochet is attached to.A squishy foam head thingy to protect my head from getting squished by the top of my Jabra headphones, after finishing its construction. Created by attaching a piece of foam to the top of the headphones with some loose red string, then crocheting a tube around it.

This image shows the headphones and the finished squishy thingy: a squishy crochet tube attached to the top of headphones, with a couple of dangly bits of thread at the ends.
140