You sent everyone an email[1] to participate in the discussion, and after this an over-capacity message[2] is a bit disappointing because it seems like you did expect the attention this time. On the other hand, I know that things can go wrong and I wish you a quick recovery and all the success.
I'm excited to see this in fruition. I don't know how much of a concern this is but https://hyperdev.com/about/ loads an attachment (mime/octet-stream). I've never seen this behavior before so I didn't download it. Win 10, FF 46.0.1
Cool tech, fun toy! I hope it is successful. I think Joel should focus on it's toy-like nature, and potential as a learning tool, rather than trying to build this into a production grade tool.
I spent years building tools for this market between professional devs and non-developers. (Backlift.com and then Brace.io) It's really tough. Most people learning to code are trying to gain transferrable skills that can help them land a job. For them, learning git is a fruitful tangent along the path to shipping. Those that aren't interested in building those transferrable skills probably don't self-identify as developers. Making developer tools for non-developers is tough.
> Cool tech, fun toy! I hope it is successful. I think Joel should focus on it's toy-like nature, and potential as a learning tool, rather than trying to build this into a production grade tool.
Agreed, and I think the latter part of the post (the "FAQ") indicates that Joel doesn't see this as a deployment strategy for professional developers...
"Listen, this is not the future of all software development. Professional software development teams will continue to use professional, robust tools like Git and that’s great. But it’s surprising how just having continuous merging and reliable Undo solves the “version control” problem for all kinds of simple coding problems. And it really does create an insanely addictive form of collaboration that supercharges your team productivity."
Basically it's a platform that makes a major trade-off: practically zero accountability in exchange for maximum usability. To us professionals, this doesn't seem like a worthwhile choice. However, to those non-programmers or budding programmers which I believe this product is geared towards, it's a step in the right direction. This feels like it wants to be the "Google Docs" of programming.
I could see this as a great tool for doing coding interviews. You get instant feedback to see if it works, and you can share the results with others almost as a code resume of sorts.
Pretty cool, the idea looks similar to `now` by Zeit[1]
Platform as a service has gone from click to get a server that needs configuring (AWS), to get a server already configured (Heroku), and now to write code and get URL without even needing to think about servers
Yeah the timing is interesting. Given the close release dates, I don't think there'd have been time for one to inspire the other, yet now we have both. Are there any other services like this? Maybe it's a new trend.
HyperDev is a little different - it has the editor and isn't, or at least won't be, Node.js specific - there will be support for several programming languages.
This is concerning as free tools often don't make economic sense. Even more concerning is how casually Joel treats this issue in the Q&A section. He should know better.
To be fair, he does. Fog Creek has been going for over 15 years. Trello started with a similar model - only free use at the start as they figured out the best way to monetize, and now they are making $10M+ a year [1]
Worse than not making economic sense, it opens the door wide for malicious users - I'm sure some guy is already working on setting up JS-based bitcoin miners that just use up these free, no-login servers' CPU capacity, or set up malware sites, child porn hosting, you name it.
The barriers - login, mainly - aren't there to annoy users.
I was looking at issues on the c9.io github yesterday and saw someone complaining that he was banned ... after running a minecraft server, slack bots and more lol.
I haven't had a chance to test HyperDev extensively cause it's a bit early and unstable, but c9 is like a full-fledged traditional IDE supporting anything you might program while a full Ubuntu virtual machine can install anything your project needs. C9 is open source and can be deployed on your own hardware.
HyperDev is specifically for web stuff and really slickly optimized around that handling deployment and everything.
It is similar in that both allow you to create applications using web based editors but HyperDev focuses much more on simplicity. We start with the idea that everyone will experience their development environment from a web based interface in the future and try to design one as simple and powerful as possible.
I'm not an expert c9 user, but from my experience with it it is much more about recreating existing development environments on the web.
With HyperDev you don't need to pick a server OS or configure your environment to match your local, it is already set up and deployed. You just need to write the code.
Whenever I use these services they are pretty much never as responsive as a local editor, which is to be expected I guess, but I don't see how this could replace someones dev environment if they're a serious programmer. Big companies are going to want to have a lot more control over the backend and how things are wired together. People just learning will want to know how to actually make things work and not just have their hand held the whole time. For small freelance work this looks like it cold be good, but even then you have to learn the "HyperDev" work flow.
I just build and deploy everything in containers using Vim as my editor.
There isn't anything special about the HyperDev work flow. You can take any project that runs in HyperDev and `git push heroku master` and have it running on Heroku, or run it locally in a similar manner. HyperDev gives you an environment where you can update and deploy your code without having to set anything up to get started. You can collaborate with anyone by just sending them a link. There will always be a place for more custom environments, but we hope that HyperDev can serve 99% of developers and people who write code on computers.
Hmm. I don't know about serving "99% of developers" without support for at least top 10 languages/frameworks, catering for enterprise (which is, in my country, like 50% or more of all jobs for software devs), and an IDE that has at least the most basic of features... but most of all, I do not feel like the blog post or the site itself communicates in any way the two most important feelings I'd like to get as a developer: 1) I'm in control if I need to be, 2) I understand what's going on. These are of course related, but I have neither the sense that I can control things here, nor that I understand what's so special about this. For working alone my own dev machine is better in every regard with the exception of being able to code away from that machine; for working together I would never let a 3rd party provide glue and choice of architecture, security etc. anyway, since anything bigger would likely be a more serious (not more frivolous) endeavour... what am I not getting?
It's not a serious dev environment. It's a playground with zero setup. If you've never even touched node, you can still start writing it and have it run right now.
I really like the concept of this. Especially with node/react I found learning webpack and setting everything up takes FOREVER.
Unfortunately, platforms like these always seem ridiculously overpriced when compared to a bare metal dedicated server. I'd be curious to see how it is priced.
I'll have to check it out. I remember back when I was doing Angular I looked through several and none of them were even close for what I wanted to do. I think React is much more standardized.
> I found learning webpack and setting everything up takes FOREVER.
That's because you are learning webpack and setting everything up. It's akin to setting out to learn java by learning maven first and downloading all your dependencies through that and then learning how to bundle your code into a war for deployment on a J2EE server. Of course that's going to take more time than just copying some jars in your classpath and getting to work and learning the language.
If you want to learn React, copy the latest CDN, use the in-browser transpiler, and start learning react. Add the goodies on later.
It's a little opinionated but aligns well with the decisions I independently made after spending way too much time learning "build tool bullshit". That said, it's a little rough around the edges and development is not very active.
We changed the URL from http://blog.fogcreek.com/announcing-hyperdev-the-developer-p... to Joel's blog post. We can change it back if people prefer, but it gives more background and is a fun read and there shouldn't be two articles about the same project on the front page.
That was a fast beta invite! Got errors and looking forward to when it's more stable. Curious about pricing -- if this is freemium set up like heroku, will gladly dive deeper in
1) host this myself. Something like apt-get install hyperdev.
2) have an integrated SQL database in the runtime. Concept of migrations should be known by the runtime.
3) have a one click deploy option that synced everything to a remote runtime, be it on my own servers or hosted by a 3rd party. Syncing to a runtime with older schema should automatically run migrations.
2) You can use your favorite Node SQL package for that. Yeah, the DB has to be hosted somewhere else, but that's getting pretty easy if you're using PAAS services.
something that might be interesting is a hosting this (https://github.com/gabrielcsapo/node-notebook). It does not have sql database support, but can use all of node's capabilities. Another plus is you can self host it
I am getting a 502 message on your about page (hyperdev)...really frustrating that I get the over capacity message two weeks after signing up for the private beta, I would have thought this would have been resolved by now especially with this new press.
1. Codepen is front-end only, whereas hyperdev runs back-end code as well (node.js)
2. Codepen gives you 1 html, 1 css, and 1 js file per pen... hyperdev lets you have as many front-end and back-end files as you want. (Technically you can have multiple files in a codepen by linking to them, but it's not the primary use-case and is not as in-your-face as hyperdev is).
I like the theme—I'm guessing it's supposed to be reminiscent of early Mac OS and HyperCard? That seems to fit HyperDev's goal of getting up and running quickly so you can enjoy building something.
Cool idea, but it feels a little like using FTP to develop in a live environment. The pitch seems to be saying SCM and deployment tools are bad things, but they're valuable and useful tools.
Joel made very clear he is not saying anything of the sort. He is saying they are very useful tools for professional development, but sometimes you just want to type some code and see what it does.
I'm a big fan of Fog Creek (having worked there for 7 years). But I'm a little stumped on who this is for.
Without any persistence (Mongo, SQL, Redis, something) this is nothing more than a toy. Right now, the forums suggest setting one up via some PAAS, which obviates the whole "it's only one step" thing. Presumably persistence is on its way, as this is just a beta.
Persistence aside, it's still lightweight for an experienced developer. All of the things listed in Joel's "look what you don't have to do list" exist because they are good practice. In fact, 16 years ago Joel wrote about the 12 things that you need to make good software[0], which, coincidentally, includes almost everything on that convenience list.
On the other hand, if you're just learning to code, not having to provision a server or deal with Git isn't really fixing the hard part. Heroku and GitHub are making that easier and easier. HyperDev drops you right into an active NodeJS project without explaining what package.json is, where you define your views, or even what views are.
This leaves it serving a very narrow demographic, which is often the problem with these sorts of tools. Hopefully Fog Creek will be able to make it more broadly appealing before the shine wears off.
My first thought was that I could finally teach my mum that code is not magic, and that is a very, very powerful concept.
It's all about diminishing the barrier to entry, and honestly I'm very impressed with this project. To me, this is a breakthrough. I think that combining this with a very minimalistic class could teach people that computers aren't magical, and anyone can try.
I think you’re underestimating the addressable market. StackOverflow has 45M unique users [1], and yet Evans Data [2] and others put the number of developers at around 20M. So there are tens of millions of people looking for help with programming issues who aren’t professionals. I think a lot of them, and professional developers with side-projects and quick scripts to write, will find utility here. The typical Git workflow best-practice is something of a one-size-fits-all at the moment, and we think it’s not a great fit in some circumstances. So this is just another option.
On persistence - each HyperDev project gets a DynamoDB. It’s definitely trickier to use than we’d like, so we’ll be getting to that, but for now here’s an example project you can remix that uses it - https://hyperdev.com/#!/project/typhoon-pine. Or there are other options like one that uses a free mlab MongoDB - https://hyperdev.com/#!/project/navy-flower that’s pretty easy to get going with.
I often go on jsfiddle to quickly do some stuff that may or may not be shown to other people. Hyperdev does that with a little twist that allow me to do even more quicker. It's not meant to make your next product, it's meant to quickly prototype something, probably for fun, possibly to do something bigger later, but certainly not to develop on some kind of commercial project.
Nobody mentioned AppJet yet? AppJet was exactly the same product, 10 years ago! It was awesome and I hope this product sticks around longer than AppJet did (pivoted into EtherPad and then acquihired by Google).
99 comments
[ 0.20 ms ] story [ 41.8 ms ] threadGot a message saying Hyperdev has hit capacity and to try again later.
:-\",
Thanks for your patience!
- A frantic HyperDev developer
[1]: http://i.imgur.com/ZazMSgt.png
[2]: http://i.imgur.com/NXyTHBB.png
edit: BTW I reloaded the page and the error disappeared but now the whole thing is unresponsive.
But tradeoffs and stuff!
Edit: Posted then the fix appeared. Love the speedy response to everything here.
> {"status":"Error","statusCode":503,"statusDetail":"Waiting To Serve for cosmic-panther: No service found running on port"}
Nice sense of humour at least ;)
I spent years building tools for this market between professional devs and non-developers. (Backlift.com and then Brace.io) It's really tough. Most people learning to code are trying to gain transferrable skills that can help them land a job. For them, learning git is a fruitful tangent along the path to shipping. Those that aren't interested in building those transferrable skills probably don't self-identify as developers. Making developer tools for non-developers is tough.
Agreed, and I think the latter part of the post (the "FAQ") indicates that Joel doesn't see this as a deployment strategy for professional developers...
"Listen, this is not the future of all software development. Professional software development teams will continue to use professional, robust tools like Git and that’s great. But it’s surprising how just having continuous merging and reliable Undo solves the “version control” problem for all kinds of simple coding problems. And it really does create an insanely addictive form of collaboration that supercharges your team productivity."
Basically it's a platform that makes a major trade-off: practically zero accountability in exchange for maximum usability. To us professionals, this doesn't seem like a worthwhile choice. However, to those non-programmers or budding programmers which I believe this product is geared towards, it's a step in the right direction. This feels like it wants to be the "Google Docs" of programming.
Platform as a service has gone from click to get a server that needs configuring (AWS), to get a server already configured (Heroku), and now to write code and get URL without even needing to think about servers
[1]: https://zeit.co/
[1] https://github.com/keithwhor/nodal
[2] https://polybit.com
Also, would Hyperdev be capable of PHP, MySQL?
I think the code editor is 'Ace'[1] and that supports lots of languages.
[1] https://ace.c9.io/#nav=about
1 - http://www.forbes.com/sites/alexkonrad/2016/05/23/trello-get...
The barriers - login, mainly - aren't there to annoy users.
How does this compare to c9.io?
HyperDev is specifically for web stuff and really slickly optimized around that handling deployment and everything.
I'm not an expert c9 user, but from my experience with it it is much more about recreating existing development environments on the web.
With HyperDev you don't need to pick a server OS or configure your environment to match your local, it is already set up and deployed. You just need to write the code.
I just build and deploy everything in containers using Vim as my editor.
Joel explicitly says that it does not.
{ "status": "Error", "statusCode": 503, "statusDetail": "GetPort: Application failed to start on container cosmic-panther" }
Unfortunately, platforms like these always seem ridiculously overpriced when compared to a bare metal dedicated server. I'd be curious to see how it is priced.
That's because you are learning webpack and setting everything up. It's akin to setting out to learn java by learning maven first and downloading all your dependencies through that and then learning how to bundle your code into a war for deployment on a J2EE server. Of course that's going to take more time than just copying some jars in your classpath and getting to work and learning the language.
If you want to learn React, copy the latest CDN, use the in-browser transpiler, and start learning react. Add the goodies on later.
Ah perhaps the "remix" button serves this function.
It's a little opinionated but aligns well with the decisions I independently made after spending way too much time learning "build tool bullshit". That said, it's a little rough around the edges and development is not very active.
1) host this myself. Something like apt-get install hyperdev.
2) have an integrated SQL database in the runtime. Concept of migrations should be known by the runtime.
3) have a one click deploy option that synced everything to a remote runtime, be it on my own servers or hosted by a 3rd party. Syncing to a runtime with older schema should automatically run migrations.
2) You can use your favorite Node SQL package for that. Yeah, the DB has to be hosted somewhere else, but that's getting pretty easy if you're using PAAS services.
3) Yeah, that'd be nice.
Wish the site wasn't down, but I like this as a way to handle the blow up during launch.
The email notification during overload is a very thoughtful feature. Awesome UX enhancement especially for a dev service.
2. Codepen gives you 1 html, 1 css, and 1 js file per pen... hyperdev lets you have as many front-end and back-end files as you want. (Technically you can have multiple files in a codepen by linking to them, but it's not the primary use-case and is not as in-your-face as hyperdev is).
Without any persistence (Mongo, SQL, Redis, something) this is nothing more than a toy. Right now, the forums suggest setting one up via some PAAS, which obviates the whole "it's only one step" thing. Presumably persistence is on its way, as this is just a beta.
Persistence aside, it's still lightweight for an experienced developer. All of the things listed in Joel's "look what you don't have to do list" exist because they are good practice. In fact, 16 years ago Joel wrote about the 12 things that you need to make good software[0], which, coincidentally, includes almost everything on that convenience list.
On the other hand, if you're just learning to code, not having to provision a server or deal with Git isn't really fixing the hard part. Heroku and GitHub are making that easier and easier. HyperDev drops you right into an active NodeJS project without explaining what package.json is, where you define your views, or even what views are.
This leaves it serving a very narrow demographic, which is often the problem with these sorts of tools. Hopefully Fog Creek will be able to make it more broadly appealing before the shine wears off.
[0] http://www.joelonsoftware.com/articles/fog0000000043.html
It's all about diminishing the barrier to entry, and honestly I'm very impressed with this project. To me, this is a breakthrough. I think that combining this with a very minimalistic class could teach people that computers aren't magical, and anyone can try.
On persistence - each HyperDev project gets a DynamoDB. It’s definitely trickier to use than we’d like, so we’ll be getting to that, but for now here’s an example project you can remix that uses it - https://hyperdev.com/#!/project/typhoon-pine. Or there are other options like one that uses a free mlab MongoDB - https://hyperdev.com/#!/project/navy-flower that’s pretty easy to get going with.
But I think you should just try building something with it - here’s a good excuse: https://hyperdev.com/blog/developer-contest-get-back-nature/. From what I remember from Aavardk’d [3] you’re a keen photographer so it should be your thing!
1 - https://www.quantcast.com/stackoverflow.com 2 - http://www.computerworld.com/article/2483690/it-careers/indi... 3 - https://www.youtube.com/watch?v=0NRL7YsXjSg
I also found refreshingly honest: > This is still a beta so don’t ask me how many 9’s. You can have all the 8’s you want.
https://en.wikipedia.org/wiki/AppJet