I currently lead an enterprise digital Product Design team, and I'm also design co-lead (together with my dev co-lead) for our Design System. We already have multiple UI (code) components that use container queries. This is gonna be soooooooooo helpful on the design model side, because with this plugin, our designers don't have to remember when to manually swap layouts on our models.
First iteration took about 10-12 hours total, and about 100~ credits on my personal Pro account. Fixing the bugs took another 200 or so credits. Learned quite a bit of stuff along the way though. Adding support for components imported into libraries (without which the plugin is basically pointless) took another 300~ credits.
Still need to get it cleaned up, it's a mess, but at least the core bugs are fixed.
This is a working copy, and here's how to use it, if you're curious. :)
FrameQuery appends 🤖 to component names that have FQ enabled, and prepends 🤖 to frames that contain component instances with FQ enabled, so we can keep track of 'em without messing up how our prototypes look in demos.
Proliferate little web apps, proliferate! Doesn't make up for the crap that's polluting the interwebs in terms of content, but I guess at least I can have my own little web apps now.
Bartering is basically a trading (mini) game. You sail around trading stuff (...bartering it). BDO has a really really big map, and it's almost all non-instanced, so you can (literally) sail around for hours if (a) you want to for some reason; (b) you are bartering or hunting sea monsters.
Windsurf told me how to install Python, and wrote the base HTML and JS, plus the PY file needed to run the Droplet server locally. My original idea was to use the web browser's localstorage, but that didn't work out, not least because the amount of data I could store that way is puny. The first iteration was very ugly and unfriendly, as the text/instructions were written in a way that made sense only to me.
After testing with my partner helping with uploading files (it worked, yay MVP), then it was refinement time.
Today, I learned that Google Docs doesn't save accessible PDFs, even if you conscientiously wrote the doc accessibly. I.e. With the correct heading structure, lists that are actual lists, tables that are tables, figures, captions, alt text, oh my!
Instead, when exporting to PDF, Google Docs strips all accessibility-related information, resulting in an untagged PDF.
This was rather annoying to me, since I absolutely needed this particular document (a VPAT) to be accessible while in PDF form.
Poking around the interwebs, I came to the conclusion that most PDF accessibility remediation tools are one of the following:
It's really simple, but I didn't find anyone else laying out the exact steps, so here they are. Every article or answer I found assumed access to specific paid tools, which I don't have (MS Word, Acrobat Pro).
I've recently started learning Python for fun, and I've manually copy-typed my way to my very first Streamlit app - CatGPT Nekomancer!
In the process, I've discovered some fascinating things about Large Language Models (LLMs) like ChatGPT, and how they fit into learning a new programming language.
I'm particularly tickled by how I (mostly) implemented CatGPT Nekomancer by blindly following instructions, and then used it to understand what I'd done. There's just something magical about making something, and then having it teach you how you made it.
It's generally agreed - at least among software development managers and similar roles - that a good developer can pick up a new language pretty quickly and competently. That's because the core of what makes a good developer isn't the knowledge of a particular language. Rather, it's their grasp of transferrable concepts, frameworks, and understanding of best practices as principles. It's not about rote memorisation - it's about good judgement powered by understanding and experience.
Before LLMs exploded on the scene, a good developer could have everything I listed above, but when picking up a new language, or working with one they're rusty at, there'd still be a lag due to needing to learn the basics of the language (syntax, etc). With LLMs that lag is much smaller, allowing the developer to bring their strengths to bear much faster.
I'm proud to say that today, I came up with a new term for what I usually call "pplshit"! :D
Now, I call it "pplshit" because it doesn't come naturally to me, and it's not something I love doing. I've gotten decent at it over the years, within certain boundaries - enough so that I can provide some degree of training/coaching in that area.
Which has lead me to the realisation that when I talk to someone who likes doing that stuff, or I'm trying to train or coach someone to be better at it, then the name "pplshit" is probably not the most inspiring one.
And so I I will now henceforth call "pplshit"... "peoplecraft"!
"Ma'am, I think we have a problem. This is a still from some footage captured by Midge Ourney. You know that Nat Geo photographer who's on shooting on location in Jebil park for the next three weeks."
"Is this some kind of joke?"
"No Ma'am. We've got multiple reliable corroborating witnesses. Quite a few of them are park rangers."
"But that's impossible! Even with climate change. It's got to be a hoax."
"Yes, that's what I thought too. But last night, one of our best people sent me this. They spotted this woman in Toual el-Hadhali and managed to snap a photo. Don't worry, they weren't spotted
"And you're sure this isn't a coincidence? Maybe some kids were having one of those dress-up party things, what do they call it, co-playing?"
"Afraid not."
"All right, thank you. Looks like we have a situation here. Just when things were finally starting to calm down too."
Yes, I is! The nugget wasn't setting out to create a vegan cheese foam, it just sort of happened based on other requirements.
The foam is really stable, pretty fuss-free to put together, AND it tastes like cheese foam! All the cheese foam recipes I found either required planning ahead (softened cream cheese), or wouldn't taste like cheese at all. I like coconut milk, and I like maple syrup. I am completely unconvinced that the combination of the two tastes like any sort of cheese. :P
...but I was never that good anyway. Oh wells!
Manual retouching and merging by the nugget.
Prompt: dark skinned magpie woman wearing intricate silver jewelry, trending on artstation, uplight
This is actually GFPGAN - for some reason the Colab page seems to be titled differently. GFPGAN is for face restoration.
Midjourney isn't great at noses, so that was where the retouching was needed. Very simple job of masking the original nose with the retouched nose.
Derived from running the original through an image restoration generated adversarial network - Real-ESRGAN Inference Demo. (This is actually GFPGAN - for some reason the Colab page seems to be titled differently. GFPGAN is for face restoration.)
^If you want to use this, you need to log into your Google account, and make a copy of it. Not 100% sure you have to make a copy, but you do need to be logged into your Google account.
I drew these years ago as part of our submission to Immigration for the bear's partner sponsorship visa. In Australia, Immigration requires you to write essays about each other, and "your life together". I figured essays must get kinda boring, so I added cartoons too.
...and then after a loooooooooooooooong pause (laziness, the sponsored visa was approved ages ago), here's a new one! I really like pruning and weeding. <.<; The observant will notice that in 6 years, we both grew 2 extra fingers...
Specificity is the most !important part of the declaration.
<scamper scamper>
Even if it does kinda remind me of Marvel comics' Inferno arc from ages ago.
I would send this to Bellroy, but not sure it's the kind of "customer action shot" they'd like.
...on the off chance that someone, somewhere, somewhen will find them useful. Might even be future-nugget, though that's unlikely.
These builds are literally everything I ever found interesting enough to save, so there's no guarantees that any of them are good.
However, I've linked to my guides for the good ones in the spreadsheet.
We've been thickening savoury sauces with tapioca starch for a while now. We like it better than cornstarch, because it doesn't muddy the flavour of things the way cornstarch does.
At some point, we decided to thicken a pie filling with tapioca starch. <.< There's no going back. Tapioca starch is magical in fruit filling type goops. It makes everything so wonderfully blobby and clear and pretty, without being sticky and tacky. And it even re-bakes nicely, if you want to stuff it in a puff pastry and bake it.
Makes about 500g of goop. Don't worry about measuring exactly. :P I don't really measure stuff, and this is all conjecture anyway haha. If you use too much tapioca starch, you'll just end up with a more solid and bouncy goop.
The goop is great both hot and cold, and it reheats and bakes well. So once you have the goop, go on and GOOP ALL THE THINGS!
Unfortunately, most UI-kits are not awesome, and so I end up having to roll my own - like this text input component.
Glad to be back to using Adobe XD after just about 2 years of Sketch-Hell.
...why does my microwave have an icon of a farting cat with a clock for a face?
Is it because cats lick their bowls really clean? Oh well, I like cats.
I made a very very very basic Airtable template for a COVID-19 customer logbook for small businesses.
Like many Victorians, I watch our Victorian Premier's (Dan Andrews) press conference near every day.
At
one of the press conferences a couple of days ago, one of the reporters kept talking about "QR codes" for small businesses,
as if QR codes are magical things that will somehow record everything when a
customer scans em.
After that press conference, I was complaining to my partner, Does
the reporter even know what a QR code does? If it doesn't redirect to a
database, with form, etc, what's the point? How will a small shop set
this up?
Then I realised, Hey, I happen to know this no-code tool... (Airtable)......and this kinda happened.
The bulk of the work was writing the instructions in a way that normal people can understand and follow.
https://airtable.com/universe/expzohzqb7PE07lhl/covid-19-logbook
Some ponderings as I learn the wonders of CSS-grid, fluid typography, and all the shiny new toys kids these days have.
No, designers shouldn't code
I don't think designers need to be able to write production quality code. It stands to reason that I have a vested interest in this "no", as I haven't committed production code in over a decade. Plus, production quality code, especially at an enterprise-level, is a completely different beast from building a small static website. When it comes to enterprise code, scalability, maintainability, extensibility are all very important - and I prefer to leave them to the experts (my developers).
Yes, designers should code
Ideally, designers should have some familiarity with, and understanding of the basic "materials" used to build the digital products they design. Additionally, the "materials" will vary, even across digital products. Just because I can write js and css certainly does not mean I know the "materials" for native Windows, Mac, Android, or Linux.
With that as the caveat - being able to code just enough to know my materials is a very big plus. I did a basic Vue course fairly recently. Nothing fancy, just a single page app. However, what I learnt from that course gave me a much better idea of how Vue (and React, and Angular) work at a very high level, and how that can translate into implementation. It also made it collaborating with front-end web developers easier, as we had some degree of shared knowledge.
I've also been experimenting with the "new" (not so new, I know) CSS toys all the kids have these days. What's really cool about this is that unlike the Vue course, what I'm learning about CSS is changing the way I think and design - and think about design. These learnings change the bounds of what I know are possible.
For example, I have been reading about fluid typography on the web for a couple of years now - and before I started poking around the code, it's been a very abstract sort of interest. E.g. "Nice and interesting abstract concept, I should try to design for that when I have the opportunity". Now that I've poked around the code, and gotten a basic understanding of how things work, this has changed to a much more real and practical, "ZOMG now that I actually know how that bit of code holds together, I can actually set a typographic scale that way, and see it work. And I can see how I could make it work in so many places. Waoohh!"
Here's my supernoob code-pen, which I'm modifying on the fly as I learn more about css-grid and fluid typography.
All the noob inline comments, every noob inline comments!
See the Pen Flying Red Horse - CSS-Grid Experiments by JC (@nuggettyone) on CodePen.
]]>When we use Ease-In-Out for
something that animates OUT of view, the human-goldfish mind (you see
where this is going) takes a while to notice what's going on. ;) So it
likely doesn't notice the first "slow" in the slow-fast-slow sequence.*
*Updated on 28 Jan 2022 to change ease in-out to accurately reflect a slow-fast-slow sequence. I got sequence of what happens with ease in-out wrong originally, but using it still works, because the human-goldfish principle still applies.
Some samples, using 200ms and (naughty naughty, ALL ease-in).
Each click as shown is triggering a new 200ms animation to the next keyframe.
Green ship gear
+1 attempt failstacks
+2 attempt failstacks
+3 attempt failstacks
These are what I used to get to 1000 amity with each of these NPCs. Not saying it's the best, just what I used. ;)
Best used in conjunction with this list of amity knowledge NPCs. Note that some of the ones I list are traders, and not amity knowledge NPCs.
Also related - knowledge locator.