Project Nayuki


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 web site.

I maintain this web site 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]

(Prospective employer? Please browse this site as my portfolio, and also glance at the supplement to my résumé.)

Elsewhere on the web

Most of the work I produced is hosted on this web site (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 Coding projects
Stack Overflow Programming Q&A
MyAnimeList Anime series watched
Flickr Leisure photography
Goodreads Books read
Wikipedia (English) Pages copyedited
YouTube Technical videos
SoundCloud Transcribed music

Donate by Bitcoin

Bitcoin 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 read the rules below before contacting me. This will help you under­stand what is/isn’t appropriate, and to foster a pleasant conversation for the both of us.

Email address: (usually reply under 24 hours)

Good topics:

  • Friendly greetings and acknowledgements
  • Copyright and licensing requests
  • Fixing typos, phrases, facts, logic in my writing/code
  • Your quality work which builds upon my published work
  • Your work which exceeds my work on the same topic
  • Paid consulting offers for software development

Bad topics:

  • “Please urgently help me with my code/problem”
  • “Please give me code/advice/tips/tutorial/explanation”
  • “Please publish new content that I need right now”
  • “Please teach me how to get better at programming/math”
  • However, I will help you if you pay me appropriately
  • “Please promote our company or buy our service/product”
  • Irrelevant and low-quality commercial solicitations

My explanation and notes:

  • There are numerous messages exemplifying decent feedback and poor feedback from readers. The recommendations above are derived from these real experiences.

  • I like hearing about your background – e.g. who you are, what you do, and any work you published (web site / blog). You might notice that many of the poor feedback examples are people who start the conversation bringing nothing to the table but a plea for help, whereas the examples of decent feedback are people who show me their own skill and effort before making a modest, reasonable request of my time.

  • If you find a mistake anywhere in my published writing or code, I appreciate your feedback. Because I aim to provide reference-quality articles, code, and documentation, I welcome all typo and factual corrections, no matter how small the change is. When submitting a correction, please quote my URL, text, and code clearly; please explain and justify why your change is better.

  • If you want me to help solve your problem or you want advice on math and programming, I will require payment before answering. My published work is available free of charge, but my time and attention are not a free service. Helping individual people in private does not improve my published work and does not generate useful material for the public audience, hence I require payment for these personalized help requests.

    You can always get free programming help and technical advice by searching/asking on Stack Overflow (or a suitable site in the Stack Exchange network). You can always teach yourself to get better at math and programming by searching the web, reading lots of books and articles from other people, reading my own web site, practicing your skills deliberately, and publishing your own work.

  • Copyright rules and licensing procedures are explained in the bottom section of this page. The policy is generous and is often free for academic use. (But please ask me first.)

  • If you need software development work done, I am available for hire. For example: Customizing one of my existing programs for your needs, writing a new program that is similar to my past works, debugging code/design/documentation, adding new functionality to a codebase. My consulting rate starts at $80 USD/hr. You will expect to receive the same quality of work as you see on this web site.