Top all-time · #907
Daniel Holden
Personal blog · theorangeduck.comprogramminggames
Daniel Holden's personal blog at theorangeduck.com covers programming and games. Since 2012, 75 different Hacker News readers have linked it 101 times, most often “Phase-functioned neural networks for character control in games”. It has a working feed you can follow.
Computer Science, Machine Learning, Programming, Art, Mathematics, Philosophy, and Short Fiction
Most-linked posts?
- Phase-functioned neural networks for character control in games8 people · 8 mentions · first linked 2017-04-30
- You could have invented Parser Combinators7 people · 8 mentions · first linked 2014-12-01
- 17 Line Markov Chain3 people · 3 mentions · first linked 2017-04-12
- Cubic Interpolation of Quaternions3 people · 3 mentions · first linked 2023-04-27
- My Neural Network isn't working! What should I do?3 people · 3 mentions · first linked 2017-09-03
- /page/c-preprocessor-turing-complete2 people · 2 mentions · first linked 2014-01-28
- Subspace Neural Physics: Fast Data-Driven Interactive Simulation2 people · 2 mentions · first linked 2019-07-28
- Latinendian vs. Arabendian2 people · 2 mentions · first linked 2020-02-18
- Spring-It-On: The Game Developer's Spring-Roll-Call2 people · 2 mentions · first linked 2021-03-28
- Writing Portable OpenGL2 people · 2 mentions · first linked 2013-04-11
What Hacker News says?
That reminds me of this story[1]. The author shared some code that was so bad, that the recipient of the code was kicked out of the country. Receiving bad code can have some extreme consequences. [1] http://theorangeduck.com/page/reproduce-their-results#source...
Comment linking /page/reproduce-their-results
on “GitHub Source Code Leak”Submitted Let's talk about animation quality as a story · 237 points
HN discussionIf you want a quick insight into Markov Chains I recommend this resource by Orange Duck. Orange Duck has an implementation of a Markov chain in 17 lines of Python. [0] [0]: https://theorangeduck.com/page/17-line-markov-chain
Comment linking /page/17-line-markov-chain
on “Markov Chains are the Original Language Models”Submitted Why Can't I Reproduce Their Results? as a story · 154 points
HN discussionI wonder how this would behave if trained on 1 trillion words like the LLMs. Also, Is training a Markov cheaper that training neural nets? It would be a great way to cut AI costs if they could be made as effective as neural nets. There is also an interesting post by Orange duck. [0] [0] https://theorangeduck.com/page/17-line-markov-chain
Comment linking /page/17-line-markov-chain
on “Using a Markov chain to generate readable nonsense with 20 lines of Python”Submitted You could have invented Parser Combinators as a story · 147 points
HN discussion[Plain Elixir has one data type.]( http://www.theorangeduck.com/page/defence-unitype )
Comment linking /page/defence-unitype
on “Building a Reddit-like site after 3-4 months learning Elixir”Submitted Inverse Kinematics and Foot Locking as a story · 146 points
HN discussionAnother good introduction: http://theorangeduck.com/page/you-could-have-invented-parser...
Comment linking /page/you-could-have-invented-parser-combinators
on “What the heck is a parser-combinator?”Submitted Machine Learning, Kolmogorov Complexity, and Squishy Bunnies (2019) as a story · 143 points
HN discussionSource paper is here: http://theorangeduck.com/media/uploads/other_stuff/phasefunc...
Comment linking /media/uploads/other_stuff/phasefunction.pdf
on “Using NeuralNets to make smooth character animations”Submitted Machine Learning, Kolmogorov Complexity, and Squishy Bunnies (2019) as a story · 77 points
HN discussionCool... but nitpick about the parsing part (only glanced at it): why do people always forget about parser combinators and don't present them as obviously 'the first thing to try' when making a new language?! They seem the simplest and most intuitive tool for an unbiased newbie designing a new language, and you can even introduce them by skipping the theory with something like this: http://theorangeduck.com/page/you-…
Comment linking /page/you-could-have-invented-parser-combinators
on “How to implement a programming language in JavaScript”Submitted Generating Icons with Pixel Sorting as a story · 72 points
HN discussionIt would be pretty interesting to use a neural network for AO! It's a good coincidence you linked to SSIM based adaptive sampling, I'm actually using the research you linked to: I implemented the OptiX API for SSIM prediction. So far, we've used it for choosing where to send more rays, but I'm not aware of anyone using it to adapt the max distance for AO rays. That might be fun & fruitful to try! I'm not certain, bu…
Comment linking /page/neural-network-ambient-occlusion
on “Corners Don't Look Like That: Regarding Screenspace Ambient Occlusion (2012)”Submitted What type of Machine is the C Preprocessor? as a story · 62 points
HN discussionIf you enjoyed this post, I would highly recommend this blog post on springs. Springs basically are PD controllers, and I reference this post all the time to understand how to use them: https://theorangeduck.com/page/spring-roll-call
Comment linking /page/spring-roll-call
on “PID Controllers in Unity3D (2021)”Submitted 14 Character Random Number Generator in C as a story · 61 points
HN discussionThe C Preprocessor might be functional in the same sense as the lambda calculus but that's about it. And actually it isn't really: it needs to be supplied "evaluations" to work. Evaluation is naturally recursive but cpp only performs one pass, so you need to explicitly request more evaluations (or "scans"). See here: http://pfultz2.com/blog/2012/05/10/turing/ and here: http://theorangeduck.com/page/c-preprocessor-tu…
Comment linking /page/c-preprocessor-turing-complete
on “The C language is purely functional (2009)”Submitted Local Minima, Saddle Points, and Plateaus as a story · 50 points
HN discussionI've already quoted Daniel Holden on ##c once under GPP, but his evidence on the matter, deserves, I think, a repost here: I remember witnessing a new C programmer ripped for several minutes on the channel for simply mentioning the heap and stack in their explanation. Instantly he was shot down with "implementation detail and not defined in the C standard" and told to ask his question in #unix. You can find the whol…
Comment linking /page/ready-fight
on ““Learn C the Hard Way” is no longer available for free”Submitted My Neural Network isn't working! What should I do? as a story · 41 points
HN discussion"people on the 'net jerking themselves off" is a pretty good descriptiob of freenode's ##c. I'll quote Daniel Holden (the author of the book on implementing a lisp you mentioned above)'s words on the matter[1]: This channel is hardly known for being friendly. Generally anything other than K&R is regarded as Socratic corruption. And not checking the return value of malloc is on par with adultery. Nor do they have muc…
Comment linking /page/ready-fight
on ““Learn C the Hard Way” is no longer available for free”Submitted Machine Learning, Kolmogorov Complexity, and Squishy Bunnies as a story · 35 points
HN discussionFrom a previous article of the same author: http://theorangeduck.com/page/c-preprocessor-turing-complete > This is a fairly clear distinction and a compelling argument. Clearly there are languages where you can effectively express unbounded recursion function() { function() } and the C preprocessor is not one of them. >* But there are a number of subtleties going on here. For example, if we consider the set of macro…
Comment linking /page/c-preprocessor-turing-complete
on “What type of Machine is the C Preprocessor?”Submitted The code I shared was so bad, someone got kicked out of the country as a story · 32 points
HN discussionI think both the library and the book are written by the same author [1]. [1] http://theorangeduck.com/page/you-could-have-invented-parser...
Comment linking /page/you-could-have-invented-parser-combinators
on “A Parser Combinator library for C”Submitted Six Myths About Ray Tracing as a story · 20 points
HN discussionWhy write an FSM and backtracking explicitly? Use parser combinators, they basically do the same thing, just express it in a clearer, grammar-friendly way: http://theorangeduck.com/page/you-could-have-invented-parser...
Comment linking /page/you-could-have-invented-parser-combinators
on “Parsing command line arguments using a finite state machine and backtracking”Submitted Phase-functioned neural networks for character control in games as a story · 15 points
HN discussion