About
Introduction – me and the site
Hello there! I’m a software developer who goes by the name Nayuki. My background is that I live in Toronto, Canada and studied computer science at the University of Toronto. Besides computer programming, I am also interested in mathematics, photography, and anime. As you look around, you’ll notice they are the main topics on my website.
I maintain this website to share stuff that is meaningful to me, including:
- Explaining my understanding of how things work: [0], [1], [2]
- Showcasing my work for its quality or uniqueness: [3], [4]
- Talking about one of my personal circumstances: [5]
Elsewhere on the web
Most of the work I produced is hosted on this website (Project Nayuki), but some work is hosted elsewhere. Here is a list of the other sites, with the most important ones at the top:
Site | Link | Topic |
---|---|---|
GitHub | https:// |
Coding projects |
GitLab | https:// |
Coding projects subset backup |
Stack Overflow | https:// |
Programming Q&A |
Stack Exchange | https:// |
Various Q&A |
https:// |
Controversial opinions | |
Hacker News | https:// |
Controversial opinions |
MyAnimeList | https:// |
Anime series watched |
Flickr | https:// |
Leisure photography |
Goodreads | https:// |
Books read |
Wikipedia (English) | https:// |
Pages copyedited |
YouTube | https:// |
Technical videos |
SoundCloud | https:// |
Transcribed music |
Donate by Bitcoin
If you found my writing or code to be helpful, please consider making a donation to show your support.
Contact Nayuki by email
Please select your reason and read the details.
Need help for free?
- Don’t ask me to debug your code.
I’m not interested in your personal project. Helping you would not improve the quality of my work and would not generate content that helps other people. I’ve other things to do with my time.
- Don’t ask me to explain ideas to you.
If you don’t understand my work, read it again carefully. Modify, experiment with, and debug the code. Look for other resources online that cover the same topics. Put in the effort to learn, as I will not spoon-feed you.
- Don’t ask me to recommend learning resources.
Many people want to increase their skills in math and programming. Education is a tricky subject, and not every approach (idea, explanation, textbook, etc.) works for every student. There’s a lot of trial and error involved, and learning requires a massive time investment. I am not your personal tutor, and I don’t keep a list of recommended materials/
books/ articles/ guides. Please browse Google and YouTube to find endless educational content. In the end, you are responsible for teaching yourself. - Don’t ask me to publish new stuff.
I reserve the right to choose which topics to work on and when to do it. This website is an unpaid hobby of mine, and I am not beholden to requests from random Internet strangers. If you want to see new content, either pay me or make it yourself.
- Where you can get free help:
-
- Search for your topic on Google
- Ask Stack Overflow
- Ask the programming subreddit
- Ask Code Review Stack Exchange
- Ask Mathematics Stack Exchange
Please use the public forums/services above.
- In summary
-
I put out my articles free of charge. I don’t answer personal requests for free.
I prefer to write for the public audience because hundreds of people can benefit from my words over the months and years. I dislike handling very narrow and specific questions/explanations/problems in a private one-on-one context. My time and attention are better spent on other things like working on upcoming articles.
No marketing or commercial solicitations
I will not accept commercial requests such as:
- Polls, surveys, market research
- Guest posting, link exchange
- Promoting your company, service, or product
- Job recruitment
- Selling advertising space on my pages
- Search engine optimization (SEO), digital marketing
Here are examples of poor feedback.
Greetings, acknowledgements
If you think my published content is useful and helpful, I would be happy to hear that! At minimum, please mention the title(s) or URL(s) of what you’re talking about (because I published hundreds of items and have trouble reading minds). Also, talk a bit about your background – e.g. who you are, what you do, and any work you published (website, blog, code, video, etc.).
Copyright, licensing
Read my policy in the bottom section of this page, follow the instructions, then contact me.
Found a mistake
I aim to publish reference-quality works on my website. I welcome all typo and factual corrections, no matter how small the change is, and no matter how long ago I last updated the piece.
If you spot an error in my writing, math formulas, or program code, please report it to me without hesitation. Mention the URL and include text quotes so that I can locate the problem among my hundreds of pages.
If the issue is not completely obvious, please provide justifications and details as necessary. If you are not sure whether your suggestion is correct, mention that and forgiveness will be granted.
You published related work
I read a lot of stuff to expand my knowledge. If you worked on a topic that overlaps with my stuff, I might be interested in hearing about it!
Generally speaking, I want to see work that goes above and beyond what I did. (This means I rarely want to see introductory/
You can share a link to the relevant work or send file attachments. Don’t require me to read/
Paid development, advice
You can see based on my web articles and Git repositories, the topics that I have expertise in and the quality of the work I produce.
I might be available for hire on tasks such as: Customizing my existing programs for your needs, building new applications within my domain of competence, adding functionality to your codebase, debugging code/designs, writing English text about technical topics.
As my time is limited, please be specific about your demands – e.g. specifications, constraints, deliverables, success criteria. I may refuse projects that are vague or underspecified, because I would not feel justified to charge money for a result that you might be unhappy with.
Other reasons, notes
If you wish to contact me for a reason not listed in the major categories above, please be respectful and understand that I may refuse your request. Generally speaking, you should talk about things relevant to my interests, and avoid asking for help on your problems. You should show that you put effort into your ideas, by providing prose/code as necessary.
Examples of decent feedback and poor feedback from readers.
Copyrights and licensing
Nayuki is the sole author and copyright holder of all the content on this website, unless explicitly indicated otherwise. The copyrighted content includes article text, program code, images, photos, videos, page layout/style.
Feel free to link to my web pages at any time (because this is standard behavior on the web). Only link to the pages (like https://www.nayuki.io
Some of my projects/code are open source (often MIT license), whereas others are all rights reserved; please carefully read the copyright notice for the project you are interested in using. If you use one of my open-source projects, you are not required to ask for my permission as long as you obey the written license terms. Please always retain the Project Nayuki page URL, and consider sending me a very brief courtesy note so I can appreciate your work. Thank you for understanding.
If you wish to use any of my content (such as text, pictures, program code) that isn’t covered by an open-source license, please contact me to ask for permission. I will give a speedy response to your inquiry, typically in under 24 hours. It’s best if you can show me a prototype of how you intend to use my work, so I can better understand your needs.
Generally speaking if you utilize my work, you need to cite Project Nayuki as the author and include a hyperlink to my article page (or cite the URL in text). Licensing for student/