Skip to main content

Interactive Project Euler

There is a popular website called Project Euler. The main purpose of this website is to provide people with math/coding problems to solve. I first found this website last year when I was looking for resources to become a better programmer and thinker.

Project Euler

Project Euler works like this: You sign up for an account. With this account you are able to view problems to solve. Once you solve a problem, you submit your answer to Project Euler.  The hook is the problems are fun to solve -> https://projecteuler.net

Problems are typically solved via code. This will mean you need to have an environment to write and execute code. Once you execute your program and have an answer, you need to enter its value into the Project Euler website.  The flow looks somewhat like this:
What I thought would be interesting would be to solve and submit problems directly from the environment you write and execute code.  Kind of like this:

Interactive Project Euler

From this idea Interactive Project Euler was started.  It is an online command line tool that lets you 1. Find a problem to solve, 2. Solve the problem, and 3. Submit the answer.

ieuler is a standalone command line tool that helps with your Project Euler workflow.  The ieuler tool does basic things like logging in to Project Euler, submitting captcha's, executing code and submitting results. Ieuler doesn't save your submissions, not exactly.  You can save your files; I guess that would save your submissions, but only on your computer.

To address this, another tool was created called ieuler-server.  It is a web API and database that is used to save or fetch submissions.  Anyone can download ieuler-server and use it in conjunction with the ieuler command line tool.  Here is a visual of the integration:
ieuler-server can be used on your own computer, however, this would not help you if you were wanting to solve your problems on another computer - your submissions would still be saved on your first computer.

A public online version of this system is available on https://ieuler.net.  It is a deployment of ieuler & ieuler-server.  For more details on the deployment, see here.  Here is the simplified, abstract flow:
With ieuler.net, you are able to work on your Project Euler submissions from any computer connected to the internet.

If you have been interested in Project Euler but have never tried it out, ieuler.net should lower the barrier to entry.

Get a Project Euler account https://projecteuler.net/register.
Read about it https://ieuler.net.
Try it out https://ieuler.net/app.




Comments

Popular posts from this blog

PPTX Templates with Python

The ability to create PowerPoint presentations is a requirement these days for most companies. So much so, you may think even stating so is unnecessary. A lot of people are used reading PowerPoint presentations, and despite how much you might dislike it, you are most likely going to need to make reports with PowerPoint. From my perspective as a data analyst, the problem with PowerPoint is loading data to be visualized. I find myself creating charts or tables outside of PowerPoint, and repeatedly manually copying and pasting into the presentation. When you are creating the same presentation day after day, week after week, and the only thing changing is the data used to populate the report, you might think, "why am I doing this?", or "why am I still doing this?". There is a better way, and you don't really need any programming skills (although it won't hurt to be familiar using the command line).  tl;dr Go here to try it out the examples. pptx-template ppt

Getting Into Trouble Scraping the Web

The idea behind web scraping is to get information from a web page.  When people talk about web scraping, people are usually talking about running a computer program to extract information. How to scrape the web You are scraping information right now with your eyes as you read this sentence.  You opened your browser, visited this site, and are mentally tracking things you care about. Ok, ok, so technically that's not web scraping, but the process is similar.  You might really like to scrape my favicon.  Let's try extracting it using Python: >>> import urllib.request >>> web_page_response = urllib . request . urlopen( 'https://hellofrom.liamcryan.com/) >>> html = web_page_response . read() >>> html[html . find(b 'href' ) + 5 :html . find(b "'" , html . find(b 'href' ) + 10 )] b "https://hellofrom.liamcryan.com/favicon.ico" So, there is is; a quick and dirty program that scra

Training for Bryce Canyon 50K

I am starting to get super excited for a long-coming run in Bryce canyon with some friends on May 29, 2021.  The race is 50K - farther than any of us have run.  Well, I may have run one other 50K, but it wasn't exactly a run if you know what I mean. I decided on February 1st that I needed to start easing into training for the race.  My training motivation needed a boost as well as some better planning & record keeping. To ease into training, I chose a few trails and planned to complete them every one to two weeks.  Here is the list of trails I chose:   https://www.alltrails.com/lists/training--1311 .  To really hold myself accountable, I created calendar events and reminders with the trails details. I had planned three runs on my calendar, so that's how many I ran despite wanting to do more (amazing how well calendar planning works!).  The trail running had served as a great motivator, and I felt motivated enough to run on the more boring streets near my house.  By the time