[HN Gopher] Show HN: I've been making JavaScript sandbox alone f...
       ___________________________________________________________________
        
       Show HN: I've been making JavaScript sandbox alone for 6 years
        
       Hi HN! Thanks for your attention to my post.  It was a big
       challenge to run most of Node.js packages in browser, fast
       moreover. Virtual File system, resolve import/export. I got cold
       many times, depressions, burned out, yet still alive and finished
       it.  Many guys helped me with an advice. Many users give a lot of
       positive feedback. There are 200,000 monthly unique users.  I work
       full time now because of the freemium business model. To be honest
       - I am happy after many years of hard work.
        
       Author : ianberdin
       Score  : 343 points
       Date   : 2022-07-31 04:27 UTC (18 hours ago)
        
 (HTM) web link (playcode.io)
 (TXT) w3m dump (playcode.io)
        
       | [deleted]
        
       | foxbee wrote:
       | I really like the videos on the landing page. Straight to the
       | point.
        
         | ianberdin wrote:
         | Thanks. Made them recently.
        
       | pyrossh wrote:
       | Really love the interface. Very simple and easy to use. The
       | themes are good as well.
        
         | ianberdin wrote:
         | Thank you! Really pleasant to hear that.
        
       | saasxyz wrote:
       | wow this is bult by a single man? I am an avid user of this site.
       | I thought it is a VC backed product or something. Neat work.
       | Thanks for building this.
       | 
       | It used to be free without any time limitation. But now it only
       | allows 30 minutes of free usage per day. Is this model actually
       | working?
        
         | ianberdin wrote:
         | Thanks for your feedback. Unfortunately this model does not
         | work.
        
       | [deleted]
        
       | dannersy wrote:
       | Does anyone have experience with the courses?
       | 
       | I'm trying to recommend material for learning to a friend and
       | this looks like a great way to learn and see if there is interest
       | without bogging someone down with environment configuration.
       | 
       | I'd love to hear people's experiences.
        
       | lagrange77 wrote:
       | Impressive work!
       | 
       | > I work full time now because of the freemium business model.
       | 
       | Not sure, if i understand correctly. You're working fulltime on
       | this project, because the freemium model earns enough to make you
       | a living?
        
         | ianberdin wrote:
         | Exactly, I wish it is completely free, Ad free for years.
         | However, full-time job takes energy and time from me and
         | playcode also. So I had to figure out a way to make money to
         | invest my time in PlayCode and its users.
        
           | listenallyall wrote:
           | > So I had to figure out a way to make money to invest my
           | time in PlayCode and its users.
           | 
           | This is quite an impressive project, to which you've
           | dedicated 6 years of hard work. If you really have users at
           | Google, Microsoft, Amazon, etc., I would just ask them for
           | money. These companies have tons of it and they certainly
           | aren't giving their primary products away for free (don't be
           | distracted by side projects like VSCode or GMail). Inform
           | them that you'll be charging $39/month starting September 1.
           | 
           | > I wish it is completely free, Ad free
           | 
           | I get it, you have benefited from the open-source community
           | and probably use a lot of free tools yourself, and you want
           | to contribute or "give back." But your time, effort,
           | intelligence and persistence are all valuable, don't dismiss
           | that and don't assume you owe anybody stuff for free,
           | especially trillion-dollar corporations.
        
       | roetlich wrote:
       | This is actually incredible! The live view updates so fast. There
       | more I look at this the more amazed I am. There's even a feature
       | to publish the page with a custom domain? And there's versioning
       | included. Great job!
        
         | ianberdin wrote:
         | Yup, you can publish a blog, a personal page, an app, a Single
         | page application with custom domain and HTTPS :) it will be
         | production ready with CDN.
         | 
         | Thank you for your feedback!
        
       | cebert wrote:
       | I'm amazed that you were single-handedly able to build such a
       | complex utility working solo in your free-time. I'm impressed
       | with all the features you've added and that the pro version only
       | costs $4.99/mo. I hope you took notes about the progression of
       | the project, as it would be an interesting story to tell one day
       | on a blog or as a presentation.
        
         | ianberdin wrote:
         | Thank you for your kind. It is hard to forget problems, so I
         | remember anyway :) As I said above: where to start a blog? What
         | kind of subjects interesting for HN?
        
           | cebert wrote:
           | I wonder how you were able to manage your time and break down
           | and implement such a significant project.
        
             | ianberdin wrote:
             | One word: sacrifice.
             | 
             | Friends, sport, tv, family sometimes, good mood, work,
             | money, everything except product.
             | 
             | I am focused on 9 hours sleep and work.
             | 
             | Unfortunately that is truth.
        
       | adave wrote:
       | Great achievement just for delivering something after 6 years!!!
        
         | ianberdin wrote:
         | Is it? Thanks. My friend's product has 10M views/month and 100K
         | MRR. :) Photopea
        
           | pbhjpbhj wrote:
           | Ideas from a non-programmer: Perhaps you can cross-seed
           | somehow, would it be possibly to use your sandbox to
           | procedurally generate imagery in Photopea, for example? Can
           | you pair Photopea up with something like processing.org's
           | p5.js (I think that's what they call it) so people can do
           | image processing use JS and outputting into Photopea?
           | 
           | Also, fwiw, I've read--and consider it useful to reflect on--
           | the idea that one should avoid comparison with others and
           | seek first to compare yourself with yourself: have you
           | improved, are you nearer your goals, have you increase your
           | fulfilment ...
        
             | ianberdin wrote:
             | You are absolutely right, thanks. It is better to compare
             | to myself in the past.
             | 
             | I just forwarded your suggestion to him.
        
       | murdho wrote:
       | This is very impressive! I also admire that you stayed working on
       | it for 6 years!
       | 
       | Here's a quote I stumbled upon just earlier today: "Genius is
       | eternal patience". I think it applies here too.
       | 
       | Would be great to read a blog post about your journey with ups
       | and downs. Do you plan to write something like that at some
       | point?
        
         | ianberdin wrote:
         | Thank you, honestly I do not even know where to start, a lot of
         | ups and downs. Yet, I am just in a middle of a way. If not a
         | begining. I will try to write something, I promise.
        
       | ndom91 wrote:
       | Great project! Love the focus on speed as well compared to other
       | web IDE competitors out there.
       | 
       | However, that carefree plan 8 lines of code thing seems
       | ridiculous, no? Most of the templates are already longer than 8
       | lines.. I think if you just removed many of the other "nice-to-
       | have" features like publishing, npm packages, etc. but made it
       | unlimited lines of code / time per day, the free plan would be
       | much more compelling!
       | 
       | Also i agree with the other commentors that the logos on the
       | homepage are a bit off-putting. I'd prefix it with "Used by
       | engineers at...", as others have suggested as well.
       | 
       | All in all great job though!
        
         | ianberdin wrote:
         | Thanks for the honest feedback. That is valuable.
         | 
         | I agree, this limitation 8 lines and 20 minutes if over, sounds
         | strange.
         | 
         | One user from Google suggested me to make just 30 min daily or
         | feature limited. Both of them makes 3 times smaller conversion.
         | 
         | Still the same choice: let it be maximum Freemium or focus on
         | paid users who really value the product because I need to work
         | full-time on playcode? A thin line. I do not know. Maybe it is
         | better to take seed round.
         | 
         | If anyone has better answer, I wish you tell me.
        
           | robocat wrote:
           | The best talk ever on self-funding (bootstrapping):
           | https://youtu.be/otbnC2zE2rw - some of what he says should be
           | immediately relevant to you.
           | 
           | > Maybe it is better to take seed round
           | 
           | I would be very cautious about that: 1. search likely to be
           | distracting , 2. do you want to be your own boss, or not? 3.
           | generally investors want you to become a gigadollar business
           | which I would guess is not your goal.
           | 
           | Elsewhere you wrote: "I am pretty bad at B2B sales"
           | 
           | Perhaps join up with someone who complements your skills that
           | you like working with? Not easy, but I think easier and more
           | flexible than taking money.
        
       | sgammon wrote:
       | I love this. Could it be embedded for use in other software?
       | Curious as we might have a use case if so.
        
         | mehal wrote:
         | I was thinking the same! What's your use-case for embedding?
        
         | ianberdin wrote:
         | Thank you for the feedback. Can you please tell me about the
         | case? Here or at ruslan@ playcode.io
        
           | sgammon wrote:
           | I'll drop you a line :)
        
       | ChrisMarshallNY wrote:
       | Great job!
       | 
       | I can sort of relate. I worked on an infrastructure system,
       | almost entirely alone, for ten years, before it was finally taken
       | over by a capable team, and I was able to step away, and it took
       | on a life of its own. It is now a worldwide standard, used daily,
       | by thousands.
       | 
       | I say "sort of," because it was never something I planned to make
       | money on. It filled a need. Also, and it's a long story, I had to
       | weather a fairly hefty level of abuse during that time. The
       | demographics of the target user base were ... _challenging_.
       | 
       | It's all good, now.
       | 
       | One thing all that time brought me, was a _really_ high-Quality
       | product. Lots of time to squash bugs, and iterate the UX.
        
         | ianberdin wrote:
         | Insane. I wish you tell more, please! About the abuse: wooah,
         | playcode had and has many abusers, carders , phishing pages.
         | Playcode was banned for many times by hosting providers. A lot
         | of reports from google, Microsoft, etc.
         | 
         | It is so incredible meet a man who run product also. Can we
         | connect? Telegram @ ruslan_ianberdin
        
           | ChrisMarshallNY wrote:
           | I don't do Telegram (nothing against it, but I don't really
           | need it). You have options to get in touch w/me from my HN
           | ID. Happy to chat!
        
         | selestify wrote:
         | Wow, would you be willing to say which infrastructure system
         | you had worked on?
        
           | ChrisMarshallNY wrote:
           | Not in public (not going out of my way to take public credit
           | for it is part of the deal).
           | 
           | However, it's not confidential, and I have no problem sharing
           | it on a one-to-one (also, it isn't too hard to guess).
        
       | larodi wrote:
       | Software development is a lone business...
        
         | ianberdin wrote:
         | Yeah, it is. My friend is a computer and psychologist.
        
       | pkrotich wrote:
       | I wish you had a blog detailing your journey! Perhaps I missed it
       | - but would love to learn more about what got you into the
       | project and how you kept going!
        
       | inflam52 wrote:
       | Nice work! I wish I would have come across this sooner or I might
       | not have started building https://webden.dev for the past year
       | haha. PLAYCODE is definitely more robust as far as features
       | (courses, virtual file system, pro version, users, node.js,
       | transpiled projects, etc) but it's cool to see your big focus on
       | speed. The rest of the ecosystem felt so heavy and bloated when I
       | originally started looking.
       | 
       | Also, thanks for sharing your story! Very inspiring!
        
       | synergy20 wrote:
       | how is this different from other online editors,e.g.codepen etc
        
         | ianberdin wrote:
         | Thanks for the question. First of all it isn't a Pen :)
         | 
         | Codepen is a community first while having a pretty limited and
         | slow editor without NPM modules, multiple files, rich console,
         | etc.
        
           | synergy20 wrote:
           | so the key here is that you put node.js inside a browser,
           | that anyone can use your platform directly to work in a
           | nodejs system for frontend without local npm installation and
           | node_modules/ hassles?
        
             | ianberdin wrote:
             | Absolutely. Zero setup coding environment with result view
             | as you type.
        
               | synergy20 wrote:
               | Thanks, that's very impressive!
        
       | deanc wrote:
       | If I can offer one minor criticism when i see every major tech
       | company listed as your users, I instantly get a sense of a
       | distrust as people do this to inflate the legitimacy and
       | popularity of their service. Why should we trust the statement
       | that all these companies are using your product? I think it's
       | disingenuous to suggest that a lone employee uses it or even a
       | collection without an actual commitment from those companies.
       | Imagine if every company that ever had traffic from a Google IP
       | put this on their homepage. I could add it to my blog.
        
         | autoconfig wrote:
         | As a counterpoint, I don't think it's disingenuous and I have
         | zero problems with it. I would only find it disingenuous if the
         | statement made was false (trusted by developers at). Comparing
         | traffic alone with actual usage of a product is weird.
         | Obviously two very different things.
        
         | ianberdin wrote:
         | Yep, I understand your feelings. I have Developers from these
         | companies. Not a company itself, I am pretty bad at B2B sales.
        
           | randomdigitz wrote:
           | Who's to say that person is right? If anything test it. That
           | person may have a personal and incorrect feeling about the
           | logos. They may be worse at b2b sales than you.
        
             | lupire wrote:
        
           | enduroman wrote:
           | Make sure you are authorized to use their logos. I know Intel
           | would request removal from sites like this when I worked
           | there.
        
             | micromacrofoot wrote:
             | lots of companies put a logo up without permission and just
             | wait for a takedown request, there usually aren't
             | consequences as long as you comply
        
               | davidro80 wrote:
        
           | scrollaway wrote:
           | Those company-legitimacy boxes are useful for b2b sales when
           | you're trying to sell a product that the companies in
           | question actually pay for. This doesn't seem to be what
           | you're trying to do so IMO I agree with the GP and you're
           | better off removing it.
           | 
           | Look at the ReactJS homepage (https://reactjs.org/), it's the
           | same as yours minus b2b fluff, and heaven knows they could
           | list some companies in there :)
        
           | TheTaytay wrote:
           | For what it's worth, as an individual dev, if I can trust the
           | logos, I think it does add social proof. "Trusted by
           | developers at..." can be a way to contextualize it.
        
         | neilv wrote:
         | My favorite use of brand name-dropping is the kind when a
         | competitor of a seed-stage startup generated a news piece on
         | their new partnership with Microsoft...
         | 
         | I was instantly concerned, at a sign of a huge player with
         | major platform control entering our space.
         | 
         | Then I looked into it a bit, and it appeared all the competitor
         | company had gotten is normal free startup cloud credits for
         | Azure.
        
       | Wowfunhappy wrote:
       | I can't tell from the landing page, what are the limitations of
       | the free version / what do you get for subscribing? I always want
       | to know this before I invest my time in anything.
        
         | tyingq wrote:
         | There wasn't a link to this page I could find, but Google found
         | this: https://playcode.io/pricing
         | 
         | If that's current, the free plan is limited to 8 lines of code.
         | That kind of pushes the definition of "freemium".
        
       | joshuajomiller wrote:
       | How do you stay motivated to continue working on this alone for
       | such a long time?
        
         | TAForObvReasons wrote:
         | You charge money and it becomes your livelihood. No obvious
         | pricing page, but uBlock Origin detects Stripe scripts
        
           | ianberdin wrote:
           | Right, it is not fully free. And it makes sense, right?
        
         | joshxyz wrote:
         | courses here have pro tier
         | 
         | https://playcode.io/learn/basic-javascript
         | 
         | to OP: the contact links on the page are not working, i wonder
         | how much team pricing is ty
        
         | ianberdin wrote:
         | Thanks for the question. It is the biggest problem ever. I
         | wanted to stop a million times. A super hard problem to solve
         | and super taugh to get motivation to move forward.
         | 
         | There are few quotes which helps me in bad days: "I choose
         | whether I will succeed or not.>>
        
           | endorphine wrote:
           | Care to share other similar quotes? I've been working on a
           | passion project for a few months and I definitely have my
           | downs in terms of motivation.
        
             | ctxc wrote:
             | Hey, what are you working on? :D
        
             | htp wrote:
             | I'm a fan of this one:                 Never give up on a
             | dream just because of the time it will take to accomplish
             | it. The time will pass anyway.              Earl
             | Nightingale
        
               | ianberdin wrote:
               | Wow, love it! Thanks.
        
             | ianberdin wrote:
             | - "Defeat is a temporary thing."
             | 
             | - "Nothing could stop him."
             | 
             | - "One of the most common reasons for failure is the
             | tendency to quit the game, faced with temporary defeats,
             | and immediately give up."
             | 
             | - "Despite any difficulties, we must continue the work we
             | have started"
             | 
             | All about the same :)
        
             | asicsp wrote:
             | I use this quote as inspiration (don't remember where I
             | adapted it from):
             | 
             | > _Doing is often better than thinking of doing_
        
       | fbarred wrote:
       | Resubmit with "Show HN" in the title? Then it will be visible in
       | https://news.ycombinator.com/shownew and
       | https://news.ycombinator.co.m/show
        
         | ianberdin wrote:
         | Thanks, I just tried, yet HN do not allow to submit multiple
         | times.
        
           | Gys wrote:
           | Send an email to the contact at the bottom of each page. They
           | are very helpful.
        
             | ianberdin wrote:
             | Sent, still no response. Maybe he is at weekend.
        
               | ianberdin wrote:
               | Thanks @dang. You are awesome.
        
         | dang wrote:
         | We've added it now.
        
         | pbhjpbhj wrote:
         | @dang ? Sometimes the mod will show up when tagged, although
         | officially there isn't any user tagging here.
        
       | heddycrow wrote:
       | OP, I've been working on a very similar thing for some years now,
       | too. I could write a book about this at this point, but I will
       | avoid gushing here.
       | 
       | Please let me share some pain.
       | 
       | Many developers/companies make this thing and none of them really
       | know how to (or can) share. I'm happy to share my list.
       | 
       | The end result, as I see it, is a fragmented mess of either
       | partially completed or fully completed and walled (and/or poorly
       | modularized) software.
       | 
       | Take for example VS Code's tree view. Can a developer with a need
       | for an explorer view just use VS Code's tree module? Not hardly.
       | Go reinvent.
       | 
       | Contrast that with CodeMirror. If you look, you will see
       | CodeMirror everywhere. This software truly empowers devs and it
       | has resulted in pure awesomeness.
       | 
       | There's no shame in not open sourcing what you've created, I'm
       | assuming you haven't. And I can't say anything about how you have
       | modularized your components.
       | 
       | But it pains me that the next dev who gets an idea like yours
       | will either give up or spend 6 years struggling to create the
       | same thing (except the CodeMirror part).
       | 
       | Worse, Microsoft can afford to struggle and or throw people/money
       | at this. They can pay people to work full time. They can give
       | away their editor(and more) for free. That's a win from user's
       | POV.
       | 
       | Are you aware that VS Code runs on GitHub and does the majority
       | of this kind of thing? I think they could completely shut down
       | all sandboxes or similar kinds of software from a financial
       | perspective.
       | 
       | I said I wouldn't write a book.
       | 
       | Anyways, I strongly appreciate what you have done. It looks
       | great.
       | 
       | I wish we lived in a world where we could work on the same team
       | building this kind of thing.
       | 
       | My best wishes to you on getting paid to do it full time.
        
         | ianberdin wrote:
         | For sure. There are a lot of things to do:
         | 
         | - files tree,
         | 
         | - windows manager (it looks simple to implement, yet 2000 lines
         | of code),
         | 
         | - tabs,
         | 
         | - better syntax highlighter,
         | 
         | - code bundler (3-4 years to research),
         | 
         | - transpilers,
         | 
         | - preview (service worker serve it with bidirectional request
         | between bundler worker and service worker and another window
         | preview also),
         | 
         | - console (it is pretty hard to describe every data type and
         | make client-server between iframe and console to show nested
         | structures dynamically)
         | 
         | And more...
         | 
         | Yeah, I do not think I can share source code. Thanks for your
         | message.
        
           | heddycrow wrote:
           | It certainly is a lot of work.
           | 
           | Humble suggestion: please call out the open source software
           | you have used in some sort of credits section.
           | 
           | Forgive me if this exists and I am missing it.
        
       | virgil_disgr4ce wrote:
       | Any chance you've open-sourced any of this? I've been looking for
       | a way to run Node.js packages in-browser!
        
       | apineda wrote:
       | Hey I just recently used this to play with a package (`deep-
       | diff`). Thanks for making this!
        
         | ianberdin wrote:
         | So I strongly suggest
         | https://www.npmjs.com/package/@n1ru4l/json-patch-plus/v/0.1....
         | then. If you need diff and patch.
        
       | jawns wrote:
       | @ianberdin, there's a link to "Sign up." But it doesn't give a
       | good indication of what signing up does. Does it give me access
       | to additional features? Does it sign me up for marketing emails?
       | Normally at the sign-up stage, users are presented with a Terms
       | of Service link or something else that gives further details, but
       | it looks like you only present this information after the user
       | has entered their info. Would you consider adding something like
       | this up-front so I know what I'm actually signing up for BEFORE I
       | enter my info?
        
         | LionTamer wrote:
         | https://playcode.io/pricing might help?
        
           | bogwog wrote:
           | The free tier on that page says you get "8 lines of code". Is
           | that a typo? Does the app really not let you write more than
           | 8 lines of code? Of what use is that to anyone?
        
             | plugin-baby wrote:
             | You can do a lot with 8 lines.
        
       | mrtksn wrote:
       | One reason for the love part of my love-hate relationship with JS
       | is its low barrier to get from 0 to productive thanks to tools
       | like this(and the console in the browser dev tools).
       | 
       | JS actually has a lot of buffer until you hit the bloat.
        
         | ianberdin wrote:
         | Absolutely. I was Golang/Python dev before. Node.js is so nice
         | and simple compared. Love it.
        
       | tentacleuno wrote:
       | If I were to offer some feedback, the English on the homepage
       | needs some tightening up. There's some bad grammar in there. That
       | would definitely make it look a bit more professional :-)
        
         | ianberdin wrote:
         | It would be awesome if you can help. Do you use telegram? @
         | ruslan_ianberdin
        
           | Zanni wrote:
           | Not OP, but here's a couple of quick fixes for you (honestly,
           | your English is pretty good): "Play with any of 2 millions of
           | NPM packages ..." -> "Play with any of 2 million NPM packages
           | ..." "PlayCode is fastest coding experience ever." ->
           | "PlayCode is the fastest coding experience ever." "It helps
           | to avoid looking for a documentation ..." -> "It helps avoid
           | looking for documentation ..."
        
             | ianberdin wrote:
             | Thank you for your time.
        
               | soxocx wrote:
               | Also note, the section "Bug Finder" on the landingpage
               | just contains the text of the "Emmet" section above it.
               | 
               | Cool project besides that :)
        
               | ianberdin wrote:
               | Interesting :) thanks.
        
       | shmde wrote:
       | I actually used this as an online editor for my Javascript
       | interview. I love the interface and the pure dark mode throughout
       | the UI.
        
         | ianberdin wrote:
         | Wow really? Thank you. I had a pretty "dark" year when: I was
         | unable to finish 3rd release with real-time collaboration,
         | nested project folders, flexible permissions, workspaces,
         | offline cache and many more as Notion has. And it was too much
         | for myself. Just unable to merge it to production because of
         | many changes. So that is sad. I wish to move some of this
         | features to production. It will be nice to use in coding
         | bootcamps, schools, finding interview, etc.
        
       ___________________________________________________________________
       (page generated 2022-07-31 23:02 UTC)