Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Create your own Codecademy-style lessons (codeamigo.dev)
96 points by plondon514 6 months ago | hide | past | favorite | 31 comments

Hi HN! I'm working on codeamigo.dev, a project designed to help developers learn coding topics interactively. Codeamigo is a "decentralized" codecademy. Anyone can create lessons on any topic they wish. For now, I plan on approving the lessons before they are published. I believe that we have amazing educators in our community and that learning interactively is more efficient and enjoyable than through blog posts or videos.

Each lesson is made up of steps, and each step is made up of checkpoints. A checkpoint is one or more jest tests that run in the browser against the user's code.

For now, the app only supports JavaScript, but I hope to expand that offering in the future to more languages.

I look forward to any and all of this communities feedback!

Cool idea.

I recommend dis-requiring sign in/log in, so a user can experience some of the tutorials. It asked me to log in, then I just closed out of it.

I did exactly the same thing: login prompt -> exit.

Yeah unfortunatly, same as well.

OP: reading your comments make me want to check it out more.

Also I'm not sure what codeacademy-style lessons means. Like, interactive thingy?

Maybe you could let the first level of each lesson wide open. I don't know

Yup exactly, step by step learning interactively.

I'll definitely work on lowering the barrier to entry, currently sign up is required to save any edits you make to any lessons you create/take. Clearly this isn't ideal for playing around though.

(Thanks for the feedback!)


HN'ers don't like Show HNs that don't have any demos/samples without a login. You should at least let us see one tutorial without login/signup even if you don't us to create one without login.

Looking at the landing page I had no idea what I'm supposed to get when I signed up. Especially as a potential creator.

Is it a way to run it self hosted?

As others have said, every other request is a 504 at the moment.

But for the platform itself-- pretty cool that you have file separations and visual renderings, going beyond simple code execution. I like it. I tried build something similar on algodaily.com a while back, but found that my audience wasn't that interested in creating tutorials.

Some feedback:

1) I wasn't immediately sure there were multiple steps at first.

2) Execution time is a bit slow.

3) I was monitoring the network calls and saw no requests when code executed -- are you doing this in the client? Just a heads up that there's some security vulnerabilities to be aware of.

4) The UI could use some polishing. Maybe look for a color palette that blends colors together better.

Congrats on shipping!

Thanks for your feedback!

1) I'll try to make that more obvious

2) Working on it :)

3) Code and dependencies are bundled in the browser

4) Check out settings/themes!

Bookmarked :D

Looks cool, but would like to be able to check out an existing demo lesson before signing up.

Working now! This is great. As somebody interviewing right now, something like this would be great for drilling React concepts.

Thanks for the feedback! I was also interviewing a few months ago and really loved the interactive learning platform Codecademy offers. However, I really wanted to know who my teachers were so I could pick and choose the ones I liked. That got me thinking about this project.

This is really cool! I could see something like this being really useful for formal education too. I took a couple courses that had "test case based" projects in college and I feel something like this could be a good tool for that niche.

This is quite cool, just out of curiosity, are you planning to keep this to exclusively coding topics and skills or to also include other CS related topics too? I have a lesson I built in Jupyter Notebooks about ciphers for example, it uses code to walk through some ideas and concepts of how they work. Would you see these types of lessons as a part of the platform?

Hi tuanacelik! Yes I definitely see any and all topics being part of the platform. The idea is to create a generic structure (i.e a lesson has steps, steps have checkpoints, checkpoints have tests). Beyond that anyone is free to create a lesson for anything they're interested in. In fact, I'm sure that lessons will be created on topics I have never even heard of.

Very cool idea. Is this an open-source project?

Not currently, if you're interested in contributing definitely don't hesitate to reach out to me. Email in my profile.

May I ask whether your goal is to open source eventually, and you haven't done so yet? Or you intend to keep it closed?

If the former, then how about using Codeamigo to highlight various parts of Codeamigo source? Two birds with one stone.

Lots of requests for open source. Can I ask which parts of open source you’re interested in?

I am a beginner React developer. Currently I learn by working on my own project and reading docs.

It occurred to me that you have a working app, presumably written in React. (Actually Tic Tac Toe lesson is not working for me right now, but that is beside the point).

If some of the Codeamigo code were presented as a lesson, it could serve two purposes. To help me learn React and to see in context a working app where the lesson's code has been implemented. It needn't be all of it, just those points you feel might be most instructive. Presumably you wouldn't do that if you are planning to keep the app closed source. Hence my question.

If you're interested in helping out definitely email me at the email in my profile, and please do let me know what isn't working with regards to the React tic-tac-toe lesson!

Cool, thanks

would love if this had repl.it integration so I could teach any language Instead of just a few frontend frameworks and vanilla JS. Great idea!

cool but I want it for more than just js

Noted! I'm working on adding support for other languages.

I would love to contribute to this if this gets open-sourced.


Cool, but not creating an account just to try it.

504: GATEWAY_TIMEOUT Code: FUNCTION_INVOCATION_TIMEOUT ID: iad1::rtxfg-1615816025281-298124e3b1b4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact