If you are freelancing and somebody asks for your rate, give a number and stop talking.
The silence after is not rejection. It is arithmetic. #ideas
Community Feed
The feature nobody asks for and everybody notices when it is missing: an empty state that tells you what to do next. #design #ideas
The human body replaces most of its cells over several years, at wildly different rates. Gut lining in days, bone over a decade, and some neurons never. You are mostly new and partly original. #science
Kuandika code usiku ni tamu. Kusoma hiyo code asubuhi ni adhabu.
What is a piece of advice you were given early that turned out to be completely wrong for you?
A form that loses what somebody typed is worse than no form.
If validation fails, put the values back. If the connection drops, keep the draft. People fill forms on buses and in queues, and they do not get a second go a...
Long one.
I used to think the goal was to write code so clever that other people would admire it. Then I had to go back to something I wrote eight months earlier and I could not work out what I had been thinking....
Sharks existed before trees. Sharks are about 400 million years old, the first trees around 350 million.
They have also outlived four mass extinctions, which is a better record than most companies. #science
Faith is not certainty. Certainty does not need faith. It is moving while you are still unsure, which is most of what any of us do anyway. #faith
If a page needs a loading spinner for something that takes 80 milliseconds, do not show the spinner. A flash of loading is worse than a short wait. #design
Your API is a promise. Every field you return, somebody will depend on, including the one you added by accident. #dev
Pricing Hover
Tabs That Slide
Tabs with an underline that travels to whatever you pick, measured from the tab itself rather than hard coded.
Arrow keys work, because tabs are a listbox to a keyboard and the browser will not do that part for you. #ja...
Something I keep noticing about building for the web from here.
The person opening what you made might be on a bus, on a cheap phone, on two bars of signal, in the dark. Not on your laptop with your fibre and your 27 in...
Backups you have never restored are not backups. They are a feeling.
Pick a quiet Saturday, take the newest one, and put it somewhere harmless. You will find out something you did not know, and it is much better to find...
What is the worst production incident you have survived? No names, no companies. Just the feeling.
There is more water in the Sun than in all of Earth's oceans. Not liquid water, but hydrogen and oxygen, and in the cooler sunspots actual water molecules have been detected. #science
Idea, free, take it: a service that tells Kenyan landlords when their rent is above market for the area, using actual listing data. Half of this country is overpaying out of politeness. #ideas
On rest: I used to think resting was what you did when the work was finished. The work is never finished. Rest is a thing you schedule, like anything else that matters. #faith
Prayer before a deploy is not a joke to me. I have also written tests. Both. #faith
Octopuses have three hearts, and two of them stop beating when it swims. So it prefers to crawl, because swimming exhausts it. #science
Water expands when it freezes, which is almost unique among liquids. If ice sank, lakes would freeze from the bottom up and most of them would never fully thaw.
Almost everything alive in cold water exists because of th...
Accessibility is not a checklist at the end. The easiest way to pass most of it is to use the right element in the first place: a button for a button, a link for a link. #design
Kenyan freelancers: write the scope down. Not because you expect trouble, but because "we agreed" is a sentence two people can say about completely different things.
Alt text is not for search engines. It is for the person whose connection failed, and for the person using a screen reader.
Write what the picture is doing in the sentence, not what is in it. #design
Theme Switch
The cheapest performance win on most sites is still the images. Not the framework, not the server, the images.
Resize before upload, pick a sane quality, give every tag a width and height. That is most of it. #dev
Mtu akikuuliza unafanya nini, na ujibu 'nakaa tu kwa laptop', ujue hajui unapitia nini.
Bahati ni kazi iliyofichwa. Hakuna mtu ameamka akakuta amefanikiwa.
Thing about shared hosting that nobody warns you: you will not have a migration runner, a queue worker, or shell access. You will have PHP, a database, and a cron that fires a URL.
It is enough. It has always been enoug...
Nimegundua kitu. Code review ni kama kuchelewa kanisa. Unaingia kimya na unatumaini hakuna mtu amekuona.
Design systems are just agreeing with yourself in advance. #design
Writing a commit message is the last chance to notice you changed two unrelated things. If the message needs an 'and', that was two commits.
Still the fastest tool I own.
Every planning app I have tried wanted me to pick a project, a tag and a due date before I could write down the thought. By then the thought is gone. #ideas
Nimegundua kitu: client akisema 'ni kitu kidogo tu', jipange kwa wiki mbili.
Real Dialog
A modal built on the dialog element. Escape closes it, focus is trapped, the page behind does not scroll, and none of that is my code.
Every one of those is a bug in a hand built modal. The browser already shipped the f...
Kenya switched to a new curriculum and nobody told the websites. Half the school sites I open still list Form One to Four like nothing happened. There is work in that for somebody. #kenya
HTTPS is not about hiding secrets. Most of what it protects is boring. It is about nobody being able to change the page on its way to you, which is the part people forget. #dev
Sunday reminder that rest is not laziness. Even the instruction to rest came with a reason attached, and it was not productivity. #faith
Your browser ships with a whole database. IndexedDB has been there for years and most of us still reach for localStorage and then complain about the five megabyte limit. #javascript
Loading comments...
Sign in to comment.