frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

ASCII characters are not pixels: a deep dive into ASCII rendering

https://alexharri.com/blog/ascii-rendering
106•alexharri•1h ago

Comments

nathaah3•1h ago
that was so brilliant! i loved it! thanks for putting it out :)
Jyaif•1h ago
It's important to note that the approach described focuses on giving fast results, not the best results.

Simply trying every character and considering their entire bitmap, and keeping the character that reduces the distance to the target gives better results, at the cost of more CPU.

This is a well known problem because early computers with monitors used to only be able to display characters.

At some point we were able to define custom character bitmap, but not enough custom characters to cover the entire screen, so the problem became more complex. Which new character do you create to reproduce an image optimally?

And separately we could choose the foreground/background color of individual characters, which opened up more possibilities.

Sharlin•35m ago
And a (the?) solution is using an algorithm like k-means clustering to find the tileset of size k that can represent a given image the most faithfully. Of course that’s only for a single frame at a time.
finghin•22m ago
In practice isn’t a large HashMap best for lookup, based on compile-time or static constants describing the character-space?
spuz•13m ago
In the appendix, he talks about reducing the lookup space by quantising the sampled points to just 8 possible values. That allowed him to make a look up table about 2MB in size which were apparently incredibly fast.
brap•6m ago
You said “best results”, but I imagine that the theoretical “best” may not necessarily be the most aesthetically pleasing in practice.

For example, limiting output to a small set of characters gives it a more uniform look which may be nicer. Then also there’s the “retro” effect of using certain characters over others.

sph•51m ago
Every example I thought "yeah, this is cool, but I can see there's space for improvement" — and lo! did the author satisfy my curiosity and improve his technique further.

Bravo, beautiful article! The rest of this blog is at this same level of depth, worth a sub: https://alexharri.com/blog

adam_patarino•32m ago
Tell me someone has turned this into a library we can use
nathell•5m ago
Well there's aalib and libcaca, but I'm not sure about their fidelity compared to this.
guerby•2m ago
Don't know what algorithm are used by the famous libcaca:

https://github.com/cacalabs/libcaca

nickdothutton•32m ago
What a great post. There is an element of ascii rendering in a pet project of mine and I’m definitely going to try and integrate this work. From great constraints comes great creativity.

The Risks of AI in Schools Outweigh the Benefits, Report Says

https://www.npr.org/2026/01/14/nx-s1-5674741/ai-schools-education
1•backpackerBMW•2m ago•0 comments

OpenAI brings advertising to ChatGPT in push for new revenue

https://www.ft.com/content/ec1656cd-e07b-48ed-92a8-26c7fe517899
2•1vuio0pswjnm7•6m ago•0 comments

Fast Pair, loose security: Bluetooth accessories open to silent hijack

https://www.theregister.com/2026/01/17/fast_pair_flaw/
1•Bender•7m ago•0 comments

NotiFilter: Silence Annoying Notifications

https://github.com/BURG3R5/NotiFilter
1•thunderbong•10m ago•0 comments

New 'StackWarp' Attack Threatens Confidential VMs on AMD Processors

https://www.securityweek.com/new-stackwarp-attack-threatens-confidential-vms-on-amd-processors/
1•Bender•11m ago•0 comments

Names for stone skipping around the world

https://en.wikipedia.org/wiki/Stone_skipping
1•ancillary•11m ago•0 comments

Joe Rogan Experience #2440 – Matt Damon and Ben Affleck [video]

https://www.youtube.com/watch?v=AVEZBy1uAk8
1•keepamovin•12m ago•0 comments

Is there an evolutionary reason for same-sex sexual behaviour?

https://www.newscientist.com/article/2511053-is-there-an-evolutionary-reason-for-same-sex-sexual-...
1•Anon84•13m ago•0 comments

Show HN: A lightweight, no-JS landscape photo album

https://ethan.dev/album
1•Beefin•13m ago•0 comments

For 99 Years It's Been Illegal to Mail a Handgun, That Soon Could Change

https://cowboystatedaily.com/2026/01/16/wyomingites-cheer-potential-reversal-of-ban-on-mailing-guns/
1•Bender•14m ago•0 comments

An archive of letters sent to Santa this year through USPS operation Santa

https://archive.org/details/usps2025
1•elfatnorthpole•15m ago•1 comments

Show HN: Intuitive Minecraft Skin Editor - Full FOSS Rewrite, try new mobile UX

https://needcoolershoes.com
2•moxvallix•17m ago•0 comments

ChatGPT could not apply the Law of the Excluded Middle

https://chatgpt.com/share/696b7f8a-9760-8006-a1b5-89ffd7c5d2d9
1•rafaelbeirigo•18m ago•0 comments

Matthew McConaughey trademarks iconic phrase to stop AI misuse

https://www.bbc.com/news/articles/cp87z6vexl3o
1•deegles•18m ago•1 comments

Tested 31 AI detection/humanization tools – $5/mo GPTs beat $300/mo

1•khadinakbar•19m ago•0 comments

Show HN: KissMotion – AI kiss video generator from a single photo

https://aikissvideo.app
1•Yreminder•19m ago•0 comments

Move Over, ChatGPT: You are about to hear more about Claude Code

https://www.theatlantic.com/technology/2026/01/claude-code-ai-hype/685617/
1•pretext•20m ago•0 comments

K6: A web load testing tool, written in Golang and configured in JavaScript

https://github.com/grafana/k6
1•fanf2•20m ago•0 comments

Tested 31 AI detection/humanization tools for 90 days – $5/mo GPTs beat $300/mo

1•khadinakbar•20m ago•0 comments

Terminal Lucidity

https://my.clevelandclinic.org/health/symptoms/terminal-lucidity
2•thunderbong•27m ago•0 comments

Show HN: Cyber+ – a security-focused programming language

https://github.com/TanmayCzax/CyberPlus-1.0
1•CzaxTanmay•32m ago•1 comments

Show HN: Chatbot with Let's Encrypt Community support database

https://axelspire.com/chatbot/chat/
1•dc352•32m ago•0 comments

Git Gandalf (Local LLM–Powered Pre-Commit Code Reviewer)

https://github.com/Faizan711/git-gandalf
1•Faizan711•34m ago•1 comments

Flux: A Kanban Board That Speaks MCP

https://paddo.dev/blog/flux-kanban-for-ai-agents/
1•splurgez•35m ago•0 comments

I'll Build This Later

https://cnicodeme.com/ill-build-this-later
1•cx42net•40m ago•0 comments

WhatsApp web doesn't support voice/video call

1•webtcp•40m ago•1 comments

CSS-only Mario World (with keyboard)

https://codepen.io/t_afif/pen/JoKYwXO
1•l34k•41m ago•0 comments

Updated Vulkan Tutorial from Sascha Willems (2026)

https://www.howtovulkan.com/
1•socki•43m ago•1 comments

Understanding FIPS 202: The Design of Keccak, SHA-3, and Shake

https://codingpirate.com/understanding-fips-202-the-design-of-keccak-sha-3-and-shake-aaad72608cc9
1•Deeptiman•44m ago•1 comments

Musk seeks up to $134B from OpenAI, Microsoft in fraud lawsuit

https://www.business-standard.com/world-news/musk-seeks-up-to-134-billion-from-openai-microsoft-i...
1•hagbard_c•51m ago•0 comments