Thank you. I’d love to spend some time studying the codebases of projects I admire like sqlite, luajit, or whatever Fabrice Bellard has a hand in, and try to find something interesting about them to share with everyone through CodeMic. There's so much to learn from human engineers of that caliber.
> As for the usefulness aspect, personally I am not sure that this has a benefit over e.g. watching youtube tutorials/following books.
I do like YouTube video tutorials, but only as long as they're short. Watching Handmade Hero (by Casey Muratori) for example was a little frustrating: the videos are long, the codebase is large, things are moving fast, and I'd get lost.
I often wished I could pause the video to look up the definition of a function, or get an overview of when each file/line was edited and jump straight to that point.
Books/blogs are ok for explaining large codebases that already exist, but not for following a project as the code constantly changes. The book Crafting Interpreters did a really good job there, but that's really rare and hard to do.
I think CodeMic could be useful for this kind of long-form tutorials.
I think you mean Scrimba. Yes, it's similar in the sense that in both tools, when you're playing back a recording, you're not looking at the code as a video. But instead the code is there as text. You can pause the recording, look at the files in the project, scroll up and down the editor etc.
The difference is that CodeMic records and replays inside your editor, not on the web. Currently, only VSCode is supported, but the output is independent of VSCode, making it easy to bring it to other editors and even the web.
Another difference is that CodeMic is not focused on web development or any particular stack. It's more general.
> “But what about collaboration?” - I use work tools for work. This is for my life.
I've been experimenting with this at work too. I created a separate internal git repo for the team with 4 never ending files:
- in-progress.md
- up-next.md
- for-future.md
- done.md
So far it's been easier to use than trello or any other project management platform.
Personally I use a single emacs org-mode file for my private work which is 30K lines as of today, but I'm not sure how other people's editors (vscode) handle big files like that.
I've gone through this too and came to the same conclusion except for phone.
While on laptop/desktop nothing beats txt (or md or org), it's just so uncomfortable using a text file like that on the phone and relying on dropbox or something.
And I get it, all the note taking apps on the phone have issues: not local first, proprietary, subscriptions, or no encryption, or a thousand features before making sure the full text search works even offline.
Last year I finally sat down and wrote my own PWA out of frustration [1]. There was a SHOW HN too [2]. Yes, shameless plug. There are only a handful of other people using it (and probably never more than that) but I really wrote it for myself and it's been such a relief the past year knowing I always have my notes whenever wherever and works exactly the way I want.
I probably spent <5h fixing a few issues in the past year. As far as I'm concerned, my problem is solved once and for all.
I think you're misunderstanding what it does. It's not sending your data to the cloud. It just lets you record a session when you press record. Also it's opensource too.
The frontend is in pure HTML and CSS. But we can't build the server with HTML and CSS. These are markup languages. We still need a programming language. Now of course you could pick something with a thinner runtime like C instead of js on node.js, but there's no escaping a runtime.
Frameworks and runtimes though very similar technically, are different conceptually. Frameworks dictate a structure (a framwork) for how code is written (think React components) whereas runtimes are more concerned with letting you run the code and interface with the underlying platform (think libc).
Agreed. ciechanow.ski has been a huge inspiration, as well as 3blue1brown, Bret Victor, and Chris Granger (remember Light Table?). But none of them provide a way to walk through thousands of lines of real code and show how it is built and evolves over time. That is the key problem Scrimba and CodeMic are trying to solve.
The two people I have seen who really master this are Robert Nystrom (Crafting Interpreters) and Casey Muratori (Handmade Hero). But even they are limited by the mediums they use: books and videos, which are not ideal for this kind of guided exploration.
This looks fantastic! I’ve been seeing a growing number of tools trying to bring more interactivity to programming tutorials and for good reason. Screencasts are too passive, and it’s easy to get lost halfway through. Books and blogs don’t really show how code evolves over time either.
I’m working on a solution too, called CodeMic [1] where instead of bringing the environment to the web, it brings video and workspace sync into the IDE so viewers can follow along directly inside their own editor.
You’ve done an impressive job integrating everything, including the Console for example, that’s especially tricky to pull off in an extension for VSCode, Emacs, or Vim.
I can't understand why your comments were downvoted. Don't let it discourage you. Congrats again on your launch and making it to HN's front page! CodeVideo is incredible and it’s clear that a lot of effort and passion went into it.